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