Imakefile 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466
  1. XCOMM $TOG: Imakefile /main/13 1998/04/06 13:38:18 mgreess $
  2. DEPEND_DEFINES = $(CXXDEPENDINCLUDES)
  3. #include <Library.tmpl>
  4. #ifdef AlphaArchitecture
  5. /*
  6. * The OSF 3.2 compiler has a bug which prevents the use of
  7. * template class destructors (see Vector.c)
  8. */
  9. #if OSMajorVersion < 4
  10. CXX_COMPILER_BUG_OPTION = -DSP_TEMPLATE_DESTRUCTOR_COMPILER_BUG
  11. #else
  12. CXX_COMPILER_BUG_OPTION =
  13. #endif
  14. /*
  15. * put cpp directives here rather than in CXXDEFINES because
  16. * for some reason the CXXDEFINES aren't passed to the link phase
  17. * but they are needed there to instantiate templates
  18. */
  19. CXXOPTIONS = \
  20. -DSP_VOLATILE= -DSP_CONST= $(CXX_COMPILER_BUG_OPTION) \
  21. -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST
  22. /*
  23. * Flags passed into compile step when doing manual template instantiation.
  24. */
  25. CXXTEMPLATEFLAGS = -ptf
  26. M4 = /bin/m4
  27. #endif
  28. #ifdef SCOArchitecture
  29. /* put cpp directives here rather than in CXXDEFINES because
  30. * for some reason the CXXDEFINES aren't passed to the link phase
  31. * but they are needed there to instantiate templates
  32. */
  33. CXXOPTIONS = \
  34. -DSP_VOLATILE= -DSP_CONST= \
  35. -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST
  36. /*
  37. * Flags passed into compile step when doing manual template instantiation.
  38. */
  39. CXXTEMPLATEFLAGS =
  40. M4 = /bin/m4
  41. #endif
  42. #ifdef HPArchitecture
  43. /*
  44. * make null pointer use invalid
  45. *
  46. * also, put cpp directives here rather than in CXXDEFINES because
  47. * for some reason the CXXDEFINES aren't passed to the link phase
  48. * but they are needed there to instantiate templates
  49. */
  50. CXXOPTIONS = +a1 -z \
  51. -DSP_VOLATILE= -DSP_CONST= \
  52. -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_ANSI_CLASS_INST
  53. EXTRA_INCLUDES = -I/opt/CC/include/CC
  54. /*
  55. * Flags passed into compile step when doing manual template instantiation.
  56. */
  57. CXXTEMPLATEFLAGS =
  58. /*
  59. * using /usr/lib/libC.a on HPUX cause nsgmls to core dump.
  60. * use the default.
  61. */
  62. STLIBCENV =
  63. M4 = /bin/m4
  64. #endif
  65. #if defined(LinuxArchitecture) || defined(BSDArchitecture)
  66. /*
  67. * put cpp directives here rather than in CXXDEFINES because
  68. * for some reason the CXXDEFINES aren't passed to the link phase
  69. * but they are needed there to instantiate templates
  70. */
  71. CXXOPTIONS = \
  72. -DSP_VOLATILE=volatile -DSP_CONST=const -DSP_ANSI_CLASS_INST \
  73. -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST -fno-implicit-templates
  74. /*
  75. * Flags passed into compile step when doing manual template instantiation.
  76. */
  77. CXXTEMPLATEFLAGS = -fno-implicit-templates
  78. M4 = /usr/bin/m4
  79. #endif
  80. #if defined(RsArchitecture)
  81. /* put cpp directives here rather than in CXXDEFINES because
  82. * for some reason the CXXDEFINES aren't passed to the link phase
  83. * but they are needed there to instantiate templates
  84. */
  85. CXXOPTIONS = \
  86. -DSP_VOLATILE=volatile -DSP_CONST=const \
  87. -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST
  88. /*
  89. * Flags passed into compile step when doing manual template instantiation.
  90. */
  91. CXXTEMPLATEFLAGS =
  92. M4 = /bin/m4
  93. #endif
  94. #if defined(SunArchitecture)
  95. /* put cpp directives here rather than in CXXDEFINES because
  96. * for some reason the CXXDEFINES aren't passed to the link phase
  97. * but they are needed there to instantiate templates
  98. */
  99. CXXOPTIONS = \
  100. -DSP_VOLATILE= -DSP_CONST= \
  101. -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_ANSI_CLASS_INST
  102. EXTRA_INCLUDES = -I/opt/SUNWspro/SC2.0.1/include/CC
  103. /*
  104. * Flags passed into compile step when doing manual template instantiation.
  105. */
  106. CXXTEMPLATEFLAGS =
  107. M4 = /usr/ccs/bin/m4
  108. #endif /* SunArchitecture */
  109. #if defined(USLArchitecture)
  110. /* put cpp directives here rather than in CXXDEFINES because
  111. * for some reason the CXXDEFINES aren't passed to the link phase
  112. * but they are needed there to instantiate templates
  113. */
  114. CXXOPTIONS = \
  115. -DSP_VOLATILE= -DSP_CONST= \
  116. -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST
  117. /*
  118. * Flags passed into compile step when doing manual template instantiation.
  119. */
  120. CXXTEMPLATEFLAGS =
  121. M4 = /bin/m4
  122. #endif
  123. #if defined(UXPArchitecture)
  124. /* put cpp directives here rather than in CXXDEFINES because
  125. * for some reason the CXXDEFINES aren't passed to the link phase
  126. * but they are needed there to instantiate templates
  127. */
  128. CXXOPTIONS = \
  129. -DSP_VOLATILE= -DSP_CONST= \
  130. -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST
  131. /*
  132. * Flags passed into compile step when doing manual template instantiation.
  133. */
  134. CXXTEMPLATEFLAGS = -pta
  135. M4 = /usr/ccs/bin/m4
  136. #endif
  137. .SUFFIXES: .m4
  138. .m4.C:
  139. rm -f $@
  140. $(M4) instmac.m4 $< >$@
  141. PROGRAMS=nsgmls
  142. INSTALLFLAGS = $(INSTINCFLAGS)
  143. SRCS = \
  144. Allocator.C \
  145. ArcEngine.C \
  146. Attribute.C \
  147. CharsetDecl.C \
  148. CharsetInfo.C \
  149. CharsetRegistry.C \
  150. CmdLineApp.C \
  151. CodingSystem.C \
  152. ConsoleOutput.C \
  153. ContentState.C \
  154. ContentToken.C \
  155. DescriptorManager.C \
  156. Dtd.C \
  157. EUCJPCodingSystem.C \
  158. ElementType.C \
  159. Entity.C \
  160. EntityApp.C \
  161. EntityCatalog.C \
  162. EntityDecl.C \
  163. EntityManager.C \
  164. ErrnoMessageArg.C \
  165. ErrorCountEventHandler.C \
  166. Event.C \
  167. EventGenerator.C \
  168. ExtendEntityManager.C \
  169. ExternalId.C \
  170. Fixed2CodingSystem.C \
  171. GenericEventHandler.C \
  172. Group.C \
  173. Hash.C \
  174. IListBase.C \
  175. ISO8859InputCodingSystem.C \
  176. Id.C \
  177. IdentityCodingSystem.C \
  178. InputSource.C \
  179. InternalInputSource.C \
  180. Link.C \
  181. LinkProcess.C \
  182. LiteralStorage.C \
  183. Location.C \
  184. Lpd.C \
  185. Markup.C \
  186. Message.C \
  187. MessageArg.C \
  188. MessageEventHandler.C \
  189. MessageReporter.C \
  190. MessageTable.C \
  191. ModeInfo.C \
  192. Notation.C \
  193. NumericCharRefOrigin.C \
  194. OffsetOrderedList.C \
  195. OpenElement.C \
  196. OutputCharStream.C \
  197. OutputState.C \
  198. Parser.C \
  199. Param.C \
  200. ParserApp.C \
  201. ParserEventGeneratorKit.C \
  202. ParserOptions.C \
  203. ParserState.C \
  204. Partition.C \
  205. PosixStorage.C \
  206. RastEventHandler.C \
  207. Recognizer.C \
  208. RewindStorageObject.C \
  209. SGMLApplication.C \
  210. SJISCodingSystem.C \
  211. SOEntityCatalog.C \
  212. Sd.C \
  213. SdText.C \
  214. SearchResultMessageArg.C \
  215. SgmlParser.C \
  216. SgmlsEventHandler.C \
  217. ShortReferenceMap.C \
  218. StdioStorage.C \
  219. StorageManager.C \
  220. StringSet.C \
  221. StringVectorMessageArg.C \
  222. Syntax.C \
  223. Text.C \
  224. TokenMessageArg.C \
  225. TranslateInputCodingSystem.C \
  226. TrieBuilder.C \
  227. TypeId.C \
  228. URLStorage.C \
  229. UTF8CodingSystem.C \
  230. Undo.C \
  231. UnicodeCodingSystem.C \
  232. UnivCharsetDesc.C \
  233. assert.C \
  234. nsgmls.C \
  235. parseAttribute.C \
  236. parseCommon.C \
  237. parseDecl.C \
  238. parseInstance.C \
  239. parseMode.C \
  240. parseParam.C \
  241. parseSd.C \
  242. splib.C \
  243. $(GENERATED_SRCS)
  244. GENERATED_SRCS = \
  245. app_inst.C \
  246. arc_inst.C \
  247. entmgr_inst.C \
  248. nsgmls_inst.C \
  249. parser_inst.C \
  250. xentmgr_inst.C
  251. EXTRA_SRCS = \
  252. CopyOwner.C \
  253. HashTable.C \
  254. HashTableItemBase.C \
  255. IQueue.C \
  256. ISet.C \
  257. List.C \
  258. NCVector.C \
  259. Options.C \
  260. Owner.C \
  261. OwnerTable.C \
  262. ParserMessages.C \
  263. PointerTable.C \
  264. Ptr.C \
  265. RangeMap.C \
  266. StringOf.C \
  267. SubstTable.C \
  268. Vector.C \
  269. XcharMap.C
  270. OBJS = \
  271. Allocator.o \
  272. ArcEngine.o \
  273. Attribute.o \
  274. CharsetDecl.o \
  275. CharsetInfo.o \
  276. CharsetRegistry.o \
  277. CmdLineApp.o \
  278. CodingSystem.o \
  279. ConsoleOutput.o \
  280. ContentState.o \
  281. ContentToken.o \
  282. DescriptorManager.o \
  283. Dtd.o \
  284. EUCJPCodingSystem.o \
  285. ElementType.o \
  286. Entity.o \
  287. EntityApp.o \
  288. EntityCatalog.o \
  289. EntityDecl.o \
  290. EntityManager.o \
  291. ErrnoMessageArg.o \
  292. ErrorCountEventHandler.o \
  293. Event.o \
  294. EventGenerator.o \
  295. ExtendEntityManager.o \
  296. ExternalId.o \
  297. Fixed2CodingSystem.o \
  298. GenericEventHandler.o \
  299. Group.o \
  300. Hash.o \
  301. IListBase.o \
  302. ISO8859InputCodingSystem.o \
  303. Id.o \
  304. IdentityCodingSystem.o \
  305. InputSource.o \
  306. InternalInputSource.o \
  307. Link.o \
  308. LinkProcess.o \
  309. LiteralStorage.o \
  310. Location.o \
  311. Lpd.o \
  312. Markup.o \
  313. Message.o \
  314. MessageArg.o \
  315. MessageEventHandler.o \
  316. MessageReporter.o \
  317. MessageTable.o \
  318. ModeInfo.o \
  319. Notation.o \
  320. NumericCharRefOrigin.o \
  321. OffsetOrderedList.o \
  322. OpenElement.o \
  323. OutputCharStream.o \
  324. OutputState.o \
  325. Param.o \
  326. Parser.o \
  327. ParserApp.o \
  328. ParserEventGeneratorKit.o \
  329. ParserOptions.o \
  330. ParserState.o \
  331. Partition.o \
  332. PosixStorage.o \
  333. RastEventHandler.o \
  334. Recognizer.o \
  335. RewindStorageObject.o \
  336. SGMLApplication.o \
  337. SJISCodingSystem.o \
  338. SOEntityCatalog.o \
  339. Sd.o \
  340. SdText.o \
  341. SearchResultMessageArg.o \
  342. SgmlParser.o \
  343. SgmlsEventHandler.o \
  344. ShortReferenceMap.o \
  345. StdioStorage.o \
  346. StorageManager.o \
  347. StringSet.o \
  348. StringVectorMessageArg.o \
  349. Syntax.o \
  350. Text.o \
  351. TokenMessageArg.o \
  352. TranslateInputCodingSystem.o \
  353. TrieBuilder.o \
  354. TypeId.o \
  355. URLStorage.o \
  356. UTF8CodingSystem.o \
  357. Undo.o \
  358. UnicodeCodingSystem.o \
  359. UnivCharsetDesc.o \
  360. assert.o \
  361. nsgmls.o \
  362. parseAttribute.o \
  363. parseCommon.o \
  364. parseDecl.o \
  365. parseInstance.o \
  366. parseMode.o \
  367. parseParam.o \
  368. parseSd.o \
  369. splib.o \
  370. $(GENERATED_OBJS)
  371. GENERATED_OBJS = \
  372. app_inst.o \
  373. arc_inst.o \
  374. entmgr_inst.o \
  375. nsgmls_inst.o \
  376. parser_inst.o \
  377. xentmgr_inst.o
  378. EXTRA_OBJS = \
  379. CopyOwner.o \
  380. HashTable.o \
  381. HashTableItemBase.o \
  382. IQueue.o \
  383. ISet.o \
  384. List.o \
  385. NCVector.o \
  386. Options.o \
  387. Owner.o \
  388. OwnerTable.o \
  389. ParserMessages.o \
  390. PointerTable.o \
  391. Ptr.o \
  392. RangeMap.o \
  393. StringOf.o \
  394. SubstTable.o \
  395. Vector.o \
  396. XcharMap.o
  397. #ifdef HPArchitecture
  398. SpecialCplusplusObjectRule(Parser,Parser,+T)
  399. #endif
  400. SpecialCplusplusObjectRule(app_inst,app_inst,$(CXXTEMPLATEFLAGS))
  401. SpecialCplusplusObjectRule(arc_inst,arc_inst,$(CXXTEMPLATEFLAGS))
  402. SpecialCplusplusObjectRule(entmgr_inst,entmgr_inst,$(CXXTEMPLATEFLAGS))
  403. SpecialCplusplusObjectRule(nsgmls_inst,nsgmls_inst,$(CXXTEMPLATEFLAGS))
  404. SpecialCplusplusObjectRule(parser_inst,parser_inst,$(CXXTEMPLATEFLAGS))
  405. SpecialCplusplusObjectRule(xentmgr_inst,xentmgr_inst,$(CXXTEMPLATEFLAGS))
  406. NormalCplusplusObjectRule()
  407. ComplexCplusplusProgramTarget($(PROGRAMS))
  408. /* make sure the template repository is cleaned */
  409. clean::
  410. rm -rf ptrepository
  411. rm -f $(GENERATED_SRCS)
  412. /*
  413. * Required to build .o files from .m4 files on Alpha
  414. */
  415. app_inst.C: app_inst.m4
  416. arc_inst.C: arc_inst.m4
  417. entmgr_inst.C: entmgr_inst.m4
  418. nsgmls_inst.C: nsgmls_inst.m4
  419. parser_inst.C: parser_inst.m4
  420. xentmgr_inst.C: xentmgr_inst.m4