1 XCOMM $TOG: Imakefile /main/13 1998/04/06 13:38:18 mgreess $
3 DEPEND_DEFINES = $(CXXDEPENDINCLUDES)
5 #include <Library.tmpl>
7 #ifdef AlphaArchitecture
10 * The OSF 3.2 compiler has a bug which prevents the use of
11 * template class destructors (see Vector.c)
13 #if OSMajorVersion < 4
14 CXX_COMPILER_BUG_OPTION = -DSP_TEMPLATE_DESTRUCTOR_COMPILER_BUG
16 CXX_COMPILER_BUG_OPTION =
20 * put cpp directives here rather than in CXXDEFINES because
21 * for some reason the CXXDEFINES aren't passed to the link phase
22 * but they are needed there to instantiate templates
25 -DSP_VOLATILE= -DSP_CONST= $(CXX_COMPILER_BUG_OPTION) \
26 -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST
29 * Flags passed into compile step when doing manual template instantiation.
31 CXXTEMPLATEFLAGS = -ptf
36 #ifdef SCOArchitecture
37 /* put cpp directives here rather than in CXXDEFINES because
38 * for some reason the CXXDEFINES aren't passed to the link phase
39 * but they are needed there to instantiate templates
42 -DSP_VOLATILE= -DSP_CONST= \
43 -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST
46 * Flags passed into compile step when doing manual template instantiation.
55 * make null pointer use invalid
57 * also, put cpp directives here rather than in CXXDEFINES because
58 * for some reason the CXXDEFINES aren't passed to the link phase
59 * but they are needed there to instantiate templates
62 -DSP_VOLATILE= -DSP_CONST= \
63 -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_ANSI_CLASS_INST
64 EXTRA_INCLUDES = -I/opt/CC/include/CC
67 * Flags passed into compile step when doing manual template instantiation.
72 * using /usr/lib/libC.a on HPUX cause nsgmls to core dump.
80 #if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || defined(FreeBSDArchitecture)
83 * put cpp directives here rather than in CXXDEFINES because
84 * for some reason the CXXDEFINES aren't passed to the link phase
85 * but they are needed there to instantiate templates
88 -DSP_VOLATILE=volatile -DSP_CONST=const -DSP_ANSI_CLASS_INST \
89 -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST -fno-implicit-templates \
93 * Flags passed into compile step when doing manual template instantiation.
95 CXXTEMPLATEFLAGS = -fno-implicit-templates
101 #if defined(RsArchitecture)
102 /* put cpp directives here rather than in CXXDEFINES because
103 * for some reason the CXXDEFINES aren't passed to the link phase
104 * but they are needed there to instantiate templates
107 -DSP_VOLATILE=volatile -DSP_CONST=const \
108 -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST
111 * Flags passed into compile step when doing manual template instantiation.
118 #if defined(SunArchitecture)
119 /* put cpp directives here rather than in CXXDEFINES because
120 * for some reason the CXXDEFINES aren't passed to the link phase
121 * but they are needed there to instantiate templates
124 -DSP_VOLATILE= -DSP_CONST= \
125 -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_ANSI_CLASS_INST
126 EXTRA_INCLUDES = -I/opt/SUNWspro/SC2.0.1/include/CC
129 * Flags passed into compile step when doing manual template instantiation.
134 #endif /* SunArchitecture */
136 #if defined(USLArchitecture)
137 /* put cpp directives here rather than in CXXDEFINES because
138 * for some reason the CXXDEFINES aren't passed to the link phase
139 * but they are needed there to instantiate templates
142 -DSP_VOLATILE= -DSP_CONST= \
143 -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST
146 * Flags passed into compile step when doing manual template instantiation.
153 #if defined(UXPArchitecture)
154 /* put cpp directives here rather than in CXXDEFINES because
155 * for some reason the CXXDEFINES aren't passed to the link phase
156 * but they are needed there to instantiate templates
159 -DSP_VOLATILE= -DSP_CONST= \
160 -DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST
163 * Flags passed into compile step when doing manual template instantiation.
165 CXXTEMPLATEFLAGS = -pta
173 $(M4) instmac.m4 $< >$@
178 INSTALLFLAGS = $(INSTINCFLAGS)
192 DescriptorManager.C \
194 EUCJPCodingSystem.C \
202 ErrorCountEventHandler.C \
205 ExtendEntityManager.C \
207 Fixed2CodingSystem.C \
208 GenericEventHandler.C \
212 ISO8859InputCodingSystem.C \
214 IdentityCodingSystem.C \
216 InternalInputSource.C \
225 MessageEventHandler.C \
230 NumericCharRefOrigin.C \
231 OffsetOrderedList.C \
238 ParserEventGeneratorKit.C \
245 RewindStorageObject.C \
251 SearchResultMessageArg.C \
253 SgmlsEventHandler.C \
254 ShortReferenceMap.C \
258 StringVectorMessageArg.C \
262 TranslateInputCodingSystem.C \
268 UnicodeCodingSystem.C \
293 HashTableItemBase.C \
322 DescriptorManager.o \
324 EUCJPCodingSystem.o \
332 ErrorCountEventHandler.o \
335 ExtendEntityManager.o \
337 Fixed2CodingSystem.o \
338 GenericEventHandler.o \
342 ISO8859InputCodingSystem.o \
344 IdentityCodingSystem.o \
346 InternalInputSource.o \
355 MessageEventHandler.o \
360 NumericCharRefOrigin.o \
361 OffsetOrderedList.o \
368 ParserEventGeneratorKit.o \
375 RewindStorageObject.o \
381 SearchResultMessageArg.o \
383 SgmlsEventHandler.o \
384 ShortReferenceMap.o \
388 StringVectorMessageArg.o \
392 TranslateInputCodingSystem.o \
398 UnicodeCodingSystem.o \
423 HashTableItemBase.o \
440 #ifdef HPArchitecture
441 SpecialCplusplusObjectRule(Parser,Parser,+T)
444 SpecialCplusplusObjectRule(app_inst,app_inst,$(CXXTEMPLATEFLAGS))
445 SpecialCplusplusObjectRule(arc_inst,arc_inst,$(CXXTEMPLATEFLAGS))
446 SpecialCplusplusObjectRule(entmgr_inst,entmgr_inst,$(CXXTEMPLATEFLAGS))
447 SpecialCplusplusObjectRule(nsgmls_inst,nsgmls_inst,$(CXXTEMPLATEFLAGS))
448 SpecialCplusplusObjectRule(parser_inst,parser_inst,$(CXXTEMPLATEFLAGS))
449 SpecialCplusplusObjectRule(xentmgr_inst,xentmgr_inst,$(CXXTEMPLATEFLAGS))
451 NormalCplusplusObjectRule()
452 ComplexCplusplusProgramTarget($(PROGRAMS))
454 /* make sure the template repository is cleaned */
457 rm -f $(GENERATED_SRCS)
460 * Required to build .o files from .m4 files on Alpha
462 app_inst.C: app_inst.m4
463 arc_inst.C: arc_inst.m4
464 entmgr_inst.C: entmgr_inst.m4
465 nsgmls_inst.C: nsgmls_inst.m4
466 parser_inst.C: parser_inst.m4
467 xentmgr_inst.C: xentmgr_inst.m4