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