Project

General

Profile

Statistics
| Branch: | Revision:

root / src / nedxml / Makefile @ 79bb12dc

History | View | Annotate | Download (8.64 KB)

1 01873262 Georg Kunz
#
2
# Definitions to be customized by 'configure'
3
#
4
5
include ../../Makefile.inc
6
7
# Make sure that output locations are set
8
ifeq ("$(strip $(OMNETPP_BIN_DIR))","")
9
$(error OMNETPP_BIN_DIR must be correctly set)
10
endif
11
ifeq ("$(strip $(OMNETPP_OUT_DIR))","")
12
$(error OMNETPP_OUT_DIR must be correctly set)
13
endif
14
ifeq ("$(strip $(OMNETPP_LIB_DIR))","")
15
$(error OMNETPP_LIB_DIR must be correctly set)
16
endif
17
18
#
19
# Local definitions
20
#
21
LIBNAME=liboppnedxml$D
22
O=$(OMNETPP_OUT_DIR)/$(TOOLCHAIN_NAME)-$(MODE)/src/nedxml
23
L=$(OMNETPP_LIB_DIR)/$(TOOLCHAIN_NAME)
24
25
COPTS=$(CPPFLAGS) $(CFLAGS) $(XML_CFLAGS) -I. -I../common -I$(OMNETPP_INCL_DIR)/platdep -DBUILDING_NEDXML
26
27
IMPLIBS= -L$L -loppcommon$D $(XML_LIBS)
28
29
OBJS= $O/nedelements.o $O/nedelement.o $O/nederror.o $O/nedexception.o \
30
      $O/nedvalidator.o $O/neddtdvalidator.o $O/neddtdvalidatorbase.o \
31
      $O/nedsyntaxvalidator.o $O/nedcrossvalidator.o \
32
      $O/nedfilebuffer.o $O/nedparser.o $O/nedyylib.o \
33
      $O/ned2.tab.o $O/lex.ned2yy.o $O/nedtools.o \
34
      $O/nedutil.o $O/ned2generator.o $O/ned1generator.o $O/xmlgenerator.o \
35
      $O/nedxmlparser.o $O/nedsaxhandler.o $O/saxparser_$(XMLPARSER).o \
36
      $O/ned1.tab.o $O/lex.ned1yy.o \
37
      $O/msg2.tab.o $O/lex.msg2yy.o \
38
      $O/nedresourcecache.o $O/nedtypeinfo.o
39
40
GENERATED_SOURCES=nedelements.cc nedelements.h nedvalidator.cc nedvalidator.h \
41
                  ned1.tab.hh ned1.tab.cc lex.ned1yy.cc \
42
                  ned2.tab.hh ned2.tab.cc lex.ned2yy.cc \
43
                  msg2.tab.hh msg2.tab.cc lex.msg2yy.cc
44
45
#
46
# Automatic rules
47
#
48
.SUFFIXES : .cc
49
50
$O/%.o: %.cc
51
	@mkdir -p $O
52
	$(CXX) -c $(COPTS) -o $@ $<
53
54
#
55
# Targets
56
#
57
all : $L/$(LIBNAME)$(LIB_SUFFIX) $O/nedtool$(EXE_SUFFIX)
58
	cd $(OMNETPP_LIB_DIR) && rm -f $(LIBNAME).* && $(LN) $(TOOLCHAIN_NAME)/$(LIBNAME).* .
59
	chmod +x opp_msgc
60
	cp opp_msgc $(OMNETPP_BIN_DIR)
61
62
$O/nedtool$(EXE_SUFFIX): $O/nedtool.o $L/$(LIBNAME)$(LIB_SUFFIX)
63
	$(CXX) $(LDFLAGS) -o $O/nedtool$(EXE_SUFFIX) $O/nedtool.o -L$L -loppnedxml$D -loppcommon$D $(XML_LIBS)
64
	cd $O && $(OMNETPP_ROOT)/src/utils/install-prog nedtool$(EXE_SUFFIX) $(OMNETPP_BIN_DIR)
65
66
$L/$(LIBNAME)$(A_LIB_SUFFIX): $(OBJS)
67
	@mkdir -p $L
68
	$(AR) $O/$(LIBNAME)$(A_LIB_SUFFIX) $(OBJS)
69
	$(RANLIB) $O/$(LIBNAME)$(A_LIB_SUFFIX)
70
	cd $O && $(OMNETPP_ROOT)/src/utils/install-lib $(LIBNAME)$(A_LIB_SUFFIX) $L
71
72
$L/$(LIBNAME)$(SO_LIB_SUFFIX) : $(OBJS)
73
	@mkdir -p $L
74
	$(SHLIB_LD) $(LDFLAGS) $(XML_LIBS) -o $O/$(LIBNAME)$(SO_LIB_SUFFIX) $(OBJS) $(IMPLIBS)
75
	$(SHLIB_POSTPROCESS) $O/$(LIBNAME)$(SO_LIB_SUFFIX)
76
	cd $O && $(OMNETPP_ROOT)/src/utils/install-lib $(LIBNAME)$(SO_LIB_SUFFIX) $L
77
	rm -f $(OMNETPP_LIB_DIR)/$(LIBNAME)$(SO_LIB_SUFFIX) && $(LN) $L/$(LIBNAME)$(SO_LIB_SUFFIX) $(OMNETPP_LIB_DIR)
78
	$(SHLIB_POSTPROCESS) $(OMNETPP_LIB_DIR)/$(LIBNAME)$(SO_LIB_SUFFIX)
79
80
$L/$(LIBNAME)$(DLL_LIB_SUFFIX) : $(OBJS)
81
	mkdir -p $L
82
	$(SHLIB_LD) $(LDFLAGS) -o $O/$(LIBNAME)$(DLL_LIB_SUFFIX) $(OBJS) $(IMPLIBS) -Wl,--out-implib,$O/$(LIBNAME)$(A_LIB_SUFFIX)
83
	cd $O && $(OMNETPP_ROOT)/src/utils/install-lib $(LIBNAME)$(A_LIB_SUFFIX) $L
84
	cp $O/$(LIBNAME)$(DLL_LIB_SUFFIX) $(OMNETPP_BIN_DIR)
85
86
nedelements.cc nedelements.h nedvalidator.cc nedvalidator.h : dtdclassgen.pl $(OMNETPP_ROOT)/doc/ned2/ned2.dtd
87
	perl dtdclassgen.pl $(OMNETPP_ROOT)/doc/ned2/ned2.dtd
88
89
ned1.tab.hh ned1.tab.cc : ned1.y
90
	$(YACC) -o ned1.tab.cc -p ned1yy -d ned1.y
91
92
lex.ned1yy.cc: ned1.lex
93
	$(LEX) -olex.ned1yy.cc -Pned1yy ned1.lex
94
95
ned2.tab.hh ned2.tab.cc : ned2.y
96
	$(YACC) -o ned2.tab.cc -p ned2yy -d ned2.y
97
98
lex.ned2yy.cc: ned2.lex
99
	$(LEX) -olex.ned2yy.cc -Pned2yy ned2.lex
100
101
msg2.tab.hh msg2.tab.cc : msg2.y
102
	$(YACC) -o msg2.tab.cc -p msg2yy -d msg2.y
103
104
lex.msg2yy.cc: msg2.lex
105
	$(LEX) -olex.msg2yy.cc -Pmsg2yy msg2.lex
106
107
depend: $(GENERATED_SOURCES)
108
	$(MAKEDEPEND) -I../../include -P\$$O/ -- *.cc
109
110
doc:
111
	# NOTE: doxy.cfg has the output directory hardcoded!
112
	$(DOXYGEN) doxy.cfg
113
114
clean:
115
	rm -f $(GENERATED_SOURCES)
116
	rm -rf $O
117
	rm -f $L/$(LIBNAME).* $(OMNETPP_LIB_DIR)/$(LIBNAME).*
118
	cd $(OMNETPP_BIN_DIR) && rm -f nedtool$(EXE_SUFFIX) opp_msgc
119
120
# DO NOT DELETE THIS LINE -- make depend depends on it.
121
$O/lex.msg2yy.o: lex.msg2yy.cc \
122
  msg2.tab.hh \
123
  nedyydefs.h \
124
  nedexception.h \
125
  nedxmldefs.h
126
$O/lex.ned1yy.o: lex.ned1yy.cc \
127
  nedyydefs.h \
128
  ned1.tab.hh \
129
  nedexception.h \
130
  nedxmldefs.h
131
$O/lex.ned2yy.o: lex.ned2yy.cc \
132
  ned2.tab.hh \
133
  nedyydefs.h \
134
  nedexception.h \
135
  nedxmldefs.h
136
$O/msg2.tab.o: msg2.tab.cc \
137
  nedfilebuffer.h \
138
  nederror.h \
139
  nedelements.h \
140
  nedutil.h \
141
  nedparser.h \
142
  msg2.tab.hh \
143
  nedyydefs.h \
144
  nedelement.h \
145
  nedexception.h \
146
  nedxmldefs.h \
147
  nedyylib.h
148
$O/ned1.tab.o: ned1.tab.cc \
149
  nedfilebuffer.h \
150
  nederror.h \
151
  nedelements.h \
152
  nedutil.h \
153
  nedparser.h \
154
  nedyydefs.h \
155
  nedelement.h \
156
  nedexception.h \
157
  nedxmldefs.h \
158
  nedyylib.h
159
$O/ned1generator.o: ned1generator.cc \
160
  ned1generator.h \
161
  nederror.h \
162
  nedelements.h \
163
  nedutil.h \
164
  nedelement.h \
165
  nedxmldefs.h
166
$O/ned2.tab.o: ned2.tab.cc \
167
  nedfilebuffer.h \
168
  nederror.h \
169
  nedelements.h \
170
  nedutil.h \
171
  nedparser.h \
172
  ned2.tab.hh \
173
  nedyydefs.h \
174
  nedelement.h \
175
  nedexception.h \
176
  nedxmldefs.h \
177
  nedyylib.h
178
$O/ned2generator.o: ned2generator.cc \
179
  nederror.h \
180
  nedelements.h \
181
  nedutil.h \
182
  nedelement.h \
183
  nedxmldefs.h \
184
  ned2generator.h
185
$O/nedcrossvalidator.o: nedcrossvalidator.cc \
186
  nederror.h \
187
  nedelements.h \
188
  nedresourcecache.h \
189
  nedcrossvalidator.h \
190
  nedtypeinfo.h \
191
  nedelement.h \
192
  nedexception.h \
193
  nedxmldefs.h \
194
  nedvalidator.h
195
$O/neddtdvalidator.o: neddtdvalidator.cc \
196
  nederror.h \
197
  nedelements.h \
198
  neddtdvalidatorbase.h \
199
  neddtdvalidator.h \
200
  nedelement.h \
201
  nedexception.h \
202
  nedxmldefs.h \
203
  nedvalidator.h
204
$O/neddtdvalidatorbase.o: neddtdvalidatorbase.cc \
205
  nederror.h \
206
  nedelements.h \
207
  neddtdvalidatorbase.h \
208
  nedelement.h \
209
  nedexception.h \
210
  nedxmldefs.h \
211
  nedvalidator.h
212
$O/nedelement.o: nedelement.cc \
213
  nederror.h \
214
  nedelement.h \
215
  nedexception.h \
216
  nedxmldefs.h
217
$O/nedelements.o: nedelements.cc \
218
  nederror.h \
219
  nedelements.h \
220
  nedelement.h \
221
  nedexception.h \
222
  nedxmldefs.h
223
$O/nederror.o: nederror.cc \
224
  nederror.h \
225
  nedelement.h \
226
  nedxmldefs.h
227
$O/nedexception.o: nedexception.cc \
228
  nedelement.h \
229
  nedexception.h \
230
  nedxmldefs.h
231
$O/nedfilebuffer.o: nedfilebuffer.cc \
232
  nederror.h \
233
  nedfilebuffer.h \
234
  nedelements.h \
235
  nedparser.h \
236
  nedyydefs.h \
237
  nedelement.h \
238
  nedxmldefs.h \
239
  nedyylib.h
240
$O/nedparser.o: nedparser.cc \
241
  nederror.h \
242
  nedfilebuffer.h \
243
  nedelements.h \
244
  nedparser.h \
245
  nedyydefs.h \
246
  nedelement.h \
247
  nedxmldefs.h
248
$O/nedresourcecache.o: nedresourcecache.cc \
249
  nedsyntaxvalidator.h \
250
  nederror.h \
251
  nedelements.h \
252
  neddtdvalidatorbase.h \
253
  nedresourcecache.h \
254
  nedparser.h \
255
  nedcrossvalidator.h \
256
  neddtdvalidator.h \
257
  nedyydefs.h \
258
  nedtypeinfo.h \
259
  nedelement.h \
260
  nedexception.h \
261
  nedxmldefs.h \
262
  nedvalidator.h \
263
  nedxmlparser.h
264
$O/nedsaxhandler.o: nedsaxhandler.cc \
265
  nederror.h \
266
  nedelements.h \
267
  nedelement.h \
268
  saxparser.h \
269
  nedexception.h \
270
  nedxmldefs.h \
271
  nedsaxhandler.h
272
$O/nedsyntaxvalidator.o: nedsyntaxvalidator.cc \
273
  nedsyntaxvalidator.h \
274
  nederror.h \
275
  nedelements.h \
276
  nedelement.h \
277
  nedexception.h \
278
  nedxmldefs.h \
279
  nedvalidator.h
280
$O/nedtool.o: nedtool.cc \
281
  ned1generator.h \
282
  nedparser.h \
283
  nedyydefs.h \
284
  nedelement.h \
285
  nedexception.h \
286
  nedtools.h \
287
  ned2generator.h \
288
  nedsyntaxvalidator.h \
289
  nederror.h \
290
  nedelements.h \
291
  xmlgenerator.h \
292
  neddtdvalidatorbase.h \
293
  neddtdvalidator.h \
294
  nedcrossvalidator.h \
295
  ../common/ver.h \
296
  nedxmldefs.h \
297
  nedvalidator.h \
298
  nedxmlparser.h
299
$O/nedtools.o: nedtools.cc \
300
  nedelement.h \
301
  nedexception.h \
302
  nedtools.h \
303
  nederror.h \
304
  nedelements.h \
305
  neddtdvalidatorbase.h \
306
  neddtdvalidator.h \
307
  nedxmldefs.h \
308
  nedvalidator.h
309
$O/nedtypeinfo.o: nedtypeinfo.cc \
310
  nedresourcecache.h \
311
  nedelement.h \
312
  nedexception.h \
313
  ned2generator.h \
314
  nederror.h \
315
  nedelements.h \
316
  nedutil.h \
317
  nedtypeinfo.h \
318
  nedxmldefs.h
319
$O/nedutil.o: nedutil.cc \
320
  nedelement.h \
321
  nedexception.h \
322
  nedelements.h \
323
  nedutil.h \
324
  nedxmldefs.h
325
$O/nedvalidator.o: nedvalidator.cc \
326
  nedelement.h \
327
  nedexception.h \
328
  nederror.h \
329
  nedelements.h \
330
  nedxmldefs.h \
331
  nedvalidator.h
332
$O/nedxmlparser.o: nedxmlparser.cc \
333
  nedelement.h \
334
  nedsaxhandler.h \
335
  nederror.h \
336
  saxparser.h \
337
  nedxmldefs.h \
338
  nedxmlparser.h
339
$O/nedyylib.o: nedyylib.cc \
340
  nedfilebuffer.h \
341
  nedparser.h \
342
  nedyydefs.h \
343
  nedelement.h \
344
  nederror.h \
345
  nedelements.h \
346
  nedxmldefs.h \
347
  nedyylib.h
348
$O/saxparser_expat.o: saxparser_expat.cc \
349
  saxparser.h \
350
  nedxmldefs.h
351
$O/saxparser_libxml.o: saxparser_libxml.cc \
352
  saxparser.h \
353
  nedxmldefs.h
354
$O/saxparser_none.o: saxparser_none.cc \
355
  nederror.h \
356
  saxparser.h \
357
  nedxmldefs.h
358
$O/xmlgenerator.o: xmlgenerator.cc \
359
  nedelement.h \
360
  nedelements.h \
361
  xmlgenerator.h \
362
  nedxmldefs.h