update ooo310-m15
[ooovba.git] / solenv / inc / _tg_def.mk
blob9d8416bb619b3a146b7e91c3d58bbf913d037cb6
1 # unroll begin
3 .IF "$(DEF1TARGETN)"!=""
5 #to make intuitiv naming work
6 .IF "$(DEF1LIBNAME)"!=""
7 DEFLIB1NAME*=$(DEF1LIBNAME)
8 .ENDIF # "$(DEF1LIBNAME)"!=""
10 .IF "$(DEFLIB1NAME)"!=""
11 .IF "$(UPDATER)"!=""
12 DEF1DEPN+=$(foreach,i,$(DEFLIB1NAME) $(SLB)$/$(i).lib)
13 .ENDIF # "$(UPDATER)"!=""
14 .ENDIF
16 .IF "$(SHL1VERSIONMAP)"!=""
17 .IF "$(DEF1EXPORTFILE)"==""
18 .IF "$(GUI)"=="WNT"
19 DEF1EXPORTFILE=$(MISC)$/$(SHL1VERSIONMAP:b)_$(SHL1TARGET).dxp
20 .IF "$(COM)"=="GCC"
21 $(DEF1EXPORTFILE) : $(SHL1OBJS) $(SHL1LIBS)
22 .ENDIF # .IF "$(COM)"=="GCC"
24 $(DEF1EXPORTFILE) : $(SHL1VERSIONMAP)
25 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
26 .IF "$(COM)"=="GCC"
27 -grep -v "\*\|?" $@ > $@.exported-symbols
28 -grep "\*\|?" $@ > $@.symbols-regexp
29 # Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
30 # Extract RTTI symbols from all the objects that will be used to build a shared library
31 .IF "$(SHL1OBJS)"!=""
32 -echo $(foreach,i,$(SHL1OBJS) $i) | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
33 .ENDIF
34 .IF "$(SHL1LIBS)"!=""
35 -$(TYPE) $(foreach,j,$(SHL1LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
36 .ENDIF
37 # overwrite the map file generate into the local output tree with the generated
38 # exported symbols list
39 cp $@.exported-symbols $@
40 .ENDIF # .IF "$(COM)"=="GCC"
42 .ENDIF # "$(GUI)"=="WNT"
44 .IF "$(GUI)"=="OS2"
45 DEF1EXPORTFILE=$(MISC)$/$(SHL1VERSIONMAP:b)_$(SHL1TARGET).dxp
46 $(DEF1EXPORTFILE) : $(SHL1VERSIONMAP)
47 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
48 .ENDIF # "$(GUI)"=="OS2"
50 .ENDIF # "$(DEF1EXPORTFILE)"==""
51 .ENDIF # "$(SHL1VERSIONMAP)"!=""
53 .IF "$(GUI)"=="WNT"
55 DEF1FILTER=$(SOLARENV)$/inc$/dummy.flt
57 RMHACK1:=$(RM)
59 .IF "$(DEF1CEXP)"!=""
60 EXPORT_ALL_SWITCH=-A $(DEF1CEXP)
61 .ENDIF
63 .IF "$(link_always)"==""
64 $(DEF1TARGETN) : \
65 $(DEF1DEPN) \
66 $(DEF1EXPORTFILE)
67 .ELSE # "$(link_always)"==""
68 $(DEF1TARGETN) .PHONY :
69 .ENDIF # "$(link_always)"==""
70 @-$(RM) $@.tmpfile
71 .IF "$(QUIET_BUILD)"==""
72 @echo ------------------------------
73 .ENDIF
74 @echo "Making: module definition file" $(@:f)
75 @echo LIBRARY $(EMQ)"$(SHL1TARGETN:f)$(EMQ)" >$@.tmpfile
76 .IF "$(COM)"!="GCC"
77 @echo HEAPSIZE 0 >>$@.tmpfile
78 .ENDIF
79 @echo EXPORTS >>$@.tmpfile
80 # getversioninfo fuer alle!!
81 @echo GetVersionInfo >>$@.tmpfile
82 .IF "$(DEFLIB1NAME)"!=""
83 .IF "$(COM)"=="GCC"
84 @-$(RM) $(MISC)$/$(SHL1TARGET).exp
85 dlltool --output-def $(MISC)$/$(SHL1TARGET).exp --export-all-symbols \
86 `$(TYPE) $(foreach,i,$(DEFLIB1NAME) $(SLB)$/$(i).lib) | sed s#$(ROUT)#$(PRJ)$/$(ROUT)#g`
87 tail --lines +3 $(MISC)$/$(SHL1TARGET).exp | sed '/^;/d' >>$@.tmpfile
88 @-$(RM) $(MISC)$/$(SHL1TARGET).exp
89 .ELSE
90 .IF "$(SHL1USE_EXPORTS)"==""
91 @-$(RMHACK1) $(MISC)$/$(SHL1TARGET).exp
92 @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)$/$(SHL1TARGET).exp $(SLB)$/$(DEFLIB1NAME).lib
93 @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)$/$(SHL1TARGET).flt $(MISC)$/$(SHL1TARGET).exp >>$@.tmpfile
94 $(RMHACK1) $(MISC)$/$(SHL1TARGET).exp
95 .ELSE # "$(SHL1USE_EXPORTS)"==""
96 @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB1NAME) $(SLB)$/$(i).lib) | $(GREP) EXPORT: > $(MISC)$/$(SHL1TARGET).direct
97 @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF1FILTER) $(MISC)$/$(SHL1TARGET).direct >>$@.tmpfile
98 .ENDIF # "$(SHL1USE_EXPORTS)"==""
99 .ENDIF
100 .ENDIF # "$(DEFLIB1NAME)"!=""
101 .IF "$(DEF1EXPORT1)"!=""
102 @echo $(DEF1EXPORT1) >>$@.tmpfile
103 .ENDIF
104 .IF "$(DEF1EXPORT2)"!=""
105 @echo $(DEF1EXPORT2) >>$@.tmpfile
106 .ENDIF
107 .IF "$(DEF1EXPORT3)"!=""
108 @echo $(DEF1EXPORT3) >>$@.tmpfile
109 .ENDIF
110 .IF "$(DEF1EXPORT4)"!=""
111 @echo $(DEF1EXPORT4) >>$@.tmpfile
112 .ENDIF
113 .IF "$(DEF1EXPORT5)"!=""
114 @echo $(DEF1EXPORT5) >>$@.tmpfile
115 .ENDIF
116 .IF "$(DEF1EXPORT6)"!=""
117 @echo $(DEF1EXPORT6) >>$@.tmpfile
118 .ENDIF
119 .IF "$(DEF1EXPORT7)"!=""
120 @echo $(DEF1EXPORT7) >>$@.tmpfile
121 .ENDIF
122 .IF "$(DEF1EXPORT8)"!=""
123 @echo $(DEF1EXPORT8) >>$@.tmpfile
124 .ENDIF
125 .IF "$(DEF1EXPORT9)"!=""
126 @echo $(DEF1EXPORT9) >>$@.tmpfile
127 .ENDIF
128 .IF "$(DEF1EXPORT10)"!=""
129 @echo $(DEF1EXPORT10) >>$@.tmpfile
130 .ENDIF
131 .IF "$(DEF1EXPORT11)"!=""
132 @echo $(DEF1EXPORT11) >>$@.tmpfile
133 .ENDIF
134 .IF "$(DEF1EXPORT12)"!=""
135 @echo $(DEF1EXPORT12) >>$@.tmpfile
136 .ENDIF
137 .IF "$(DEF1EXPORT13)"!=""
138 @echo $(DEF1EXPORT13) >>$@.tmpfile
139 .ENDIF
140 .IF "$(DEF1EXPORT14)"!=""
141 @echo $(DEF1EXPORT14) >>$@.tmpfile
142 .ENDIF
143 .IF "$(DEF1EXPORT15)"!=""
144 @echo $(DEF1EXPORT15) >>$@.tmpfile
145 .ENDIF
146 .IF "$(DEF1EXPORT16)"!=""
147 @echo $(DEF1EXPORT16) >>$@.tmpfile
148 .ENDIF
149 .IF "$(DEF1EXPORT17)"!=""
150 @echo $(DEF1EXPORT17) >>$@.tmpfile
151 .ENDIF
152 .IF "$(DEF1EXPORT18)"!=""
153 @echo $(DEF1EXPORT18) >>$@.tmpfile
154 .ENDIF
155 .IF "$(DEF1EXPORT19)"!=""
156 @echo $(DEF1EXPORT19) >>$@.tmpfile
157 .ENDIF
158 .IF "$(DEF1EXPORT20)"!=""
159 @echo $(DEF1EXPORT20) >>$@.tmpfile
160 .ENDIF
161 .IF "$(DEF1EXPORTFILE)"!=""
162 .IF "$(COM)"=="GCC"
163 $(TYPE) $(DEF1EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
164 .ELSE
165 $(TYPE) $(DEF1EXPORTFILE) >> $@.tmpfile
166 .ENDIF
167 .ENDIF
168 @-$(RM) $@
169 @$(RENAME) $@.tmpfile $@
170 .ENDIF # "$(GUI)"=="WNT"
172 .IF "$(GUI)"=="OS2"
174 #21/02/2006 YD dll names must be 8.3, invoke fix script
175 #check osl/os2/module.c/osl_loadModule()
176 SHL1TARGET8=$(shell @fix_shl $(SHL1TARGETN:f))
178 DEF1FILTER=$(SOLARENV)$/inc$/dummy.flt
179 DEF1NAMELIST=$(foreach,i,$(DEFLIB1NAME) $(SLB)$/$(i).lib)
181 .IF "$(link_always)"==""
182 $(DEF1TARGETN) : \
183 $(DEF1DEPN) \
184 $(DEF1EXPORTFILE)
185 .ELSE # "$(link_always)"==""
186 $(DEF1TARGETN) .PHONY :
187 .ENDIF # "$(link_always)"==""
188 @+-$(RM) $@.tmpfile
189 .IF "$(QUIET_BUILD)"==""
190 @echo ------------------------------
191 .ENDIF
192 @echo "Making: module definition file" $(@:f)
193 @echo LIBRARY $(SHL1TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
194 @echo DATA MULTIPLE >>$@.tmpfile
195 @echo DESCRIPTION 'StarView 3.00 $(DEF1DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
196 @echo EXPORTS >>$@.tmpfile
197 # getversioninfo fuer alle!!
198 @echo _GetVersionInfo >$@.tmp_ord
200 .IF "$(DEFLIB1NAME)"!=""
201 @+echo $(SLB)$/$(DEFLIB1NAME).lib
202 @+emxexpr $(DEF1NAMELIST) | fix_exp_file >> $@.tmp_ord
203 .ENDIF # "$(DEFLIB1NAME)"!=""
205 .IF "$(DEF1EXPORT1)"!=""
206 @echo $(DEF1EXPORT1) >>$@.tmpfile
207 .ENDIF
208 .IF "$(DEF1EXPORT2)"!=""
209 @echo $(DEF1EXPORT2) >>$@.tmpfile
210 .ENDIF
211 .IF "$(DEF1EXPORT3)"!=""
212 @echo $(DEF1EXPORT3) >>$@.tmpfile
213 .ENDIF
214 .IF "$(DEF1EXPORT4)"!=""
215 @echo $(DEF1EXPORT4) >>$@.tmpfile
216 .ENDIF
217 .IF "$(DEF1EXPORT5)"!=""
218 @echo $(DEF1EXPORT5) >>$@.tmpfile
219 .ENDIF
220 .IF "$(DEF1EXPORT6)"!=""
221 @echo $(DEF1EXPORT6) >>$@.tmpfile
222 .ENDIF
223 .IF "$(DEF1EXPORT7)"!=""
224 @echo $(DEF1EXPORT7) >>$@.tmpfile
225 .ENDIF
226 .IF "$(DEF1EXPORT8)"!=""
227 @echo $(DEF1EXPORT8) >>$@.tmpfile
228 .ENDIF
229 .IF "$(DEF1EXPORT9)"!=""
230 @echo $(DEF1EXPORT9) >>$@.tmpfile
231 .ENDIF
232 .IF "$(DEF1EXPORT10)"!=""
233 @echo $(DEF1EXPORT10) >>$@.tmpfile
234 .ENDIF
235 .IF "$(DEF1EXPORT11)"!=""
236 @echo $(DEF1EXPORT11) >>$@.tmpfile
237 .ENDIF
238 .IF "$(DEF1EXPORT12)"!=""
239 @echo $(DEF1EXPORT12) >>$@.tmpfile
240 .ENDIF
241 .IF "$(DEF1EXPORT13)"!=""
242 @echo $(DEF1EXPORT13) >>$@.tmpfile
243 .ENDIF
244 .IF "$(DEF1EXPORT14)"!=""
245 @echo $(DEF1EXPORT14) >>$@.tmpfile
246 .ENDIF
247 .IF "$(DEF1EXPORT15)"!=""
248 @echo $(DEF1EXPORT15) >>$@.tmpfile
249 .ENDIF
250 .IF "$(DEF1EXPORT16)"!=""
251 @echo $(DEF1EXPORT16) >>$@.tmpfile
252 .ENDIF
253 .IF "$(DEF1EXPORT17)"!=""
254 @echo $(DEF1EXPORT17) >>$@.tmpfile
255 .ENDIF
256 .IF "$(DEF1EXPORT18)"!=""
257 @echo $(DEF1EXPORT18) >>$@.tmpfile
258 .ENDIF
259 .IF "$(DEF1EXPORT19)"!=""
260 @echo $(DEF1EXPORT19) >>$@.tmpfile
261 .ENDIF
262 .IF "$(DEF1EXPORT20)"!=""
263 @echo $(DEF1EXPORT20) >>$@.tmpfile
264 .ENDIF
265 .IF "$(DEF1EXPORTFILE)"!=""
266 @fix_def_file < $(DEF1EXPORTFILE) >> $@.tmp_ord
267 .ENDIF
268 @sort < $@.tmp_ord | uniq > $@.exptmpfile
269 @fix_def_ord < $@.exptmpfile >> $@.tmpfile
270 @+-$(RM) $@
271 +$(RENAME) $@.tmpfile $@
272 @+-$(RM) $@.tmp_ord
273 @+-$(RM) $@.exptmpfile
274 +$(IMPLIB) $(IMPLIBFLAGS) $(SHL1IMPLIBN:s/.lib/.a/) $@
275 +emxomf -o $(SHL1IMPLIBN) $(SHL1IMPLIBN:s/.lib/.a/)
277 .ENDIF # "$(GUI)"=="OS2"
279 .IF "$(GUI)"=="UNX"
280 $(DEF1TARGETN): \
281 $(DEF1DEPN) \
282 $(DEF1EXPORTFILE)
283 @echo just a dummy for UNIX > $@
284 .ENDIF
285 .ENDIF # "$(DEF1TARGETN)"!=""
288 # Anweisungen fuer das Linken
289 # unroll begin
291 .IF "$(DEF2TARGETN)"!=""
293 #to make intuitiv naming work
294 .IF "$(DEF2LIBNAME)"!=""
295 DEFLIB2NAME*=$(DEF2LIBNAME)
296 .ENDIF # "$(DEF2LIBNAME)"!=""
298 .IF "$(DEFLIB2NAME)"!=""
299 .IF "$(UPDATER)"!=""
300 DEF2DEPN+=$(foreach,i,$(DEFLIB2NAME) $(SLB)$/$(i).lib)
301 .ENDIF # "$(UPDATER)"!=""
302 .ENDIF
304 .IF "$(SHL2VERSIONMAP)"!=""
305 .IF "$(DEF2EXPORTFILE)"==""
306 .IF "$(GUI)"=="WNT"
307 DEF2EXPORTFILE=$(MISC)$/$(SHL2VERSIONMAP:b)_$(SHL2TARGET).dxp
308 .IF "$(COM)"=="GCC"
309 $(DEF2EXPORTFILE) : $(SHL2OBJS) $(SHL2LIBS)
310 .ENDIF # .IF "$(COM)"=="GCC"
312 $(DEF2EXPORTFILE) : $(SHL2VERSIONMAP)
313 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
314 .IF "$(COM)"=="GCC"
315 -grep -v "\*\|?" $@ > $@.exported-symbols
316 -grep "\*\|?" $@ > $@.symbols-regexp
317 # Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
318 # Extract RTTI symbols from all the objects that will be used to build a shared library
319 .IF "$(SHL2OBJS)"!=""
320 -echo $(foreach,i,$(SHL2OBJS) $i) | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
321 .ENDIF
322 .IF "$(SHL2LIBS)"!=""
323 -$(TYPE) $(foreach,j,$(SHL2LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
324 .ENDIF
325 # overwrite the map file generate into the local output tree with the generated
326 # exported symbols list
327 cp $@.exported-symbols $@
328 .ENDIF # .IF "$(COM)"=="GCC"
330 .ENDIF # "$(GUI)"=="WNT"
332 .IF "$(GUI)"=="OS2"
333 DEF2EXPORTFILE=$(MISC)$/$(SHL2VERSIONMAP:b)_$(SHL2TARGET).dxp
334 $(DEF2EXPORTFILE) : $(SHL2VERSIONMAP)
335 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
336 .ENDIF # "$(GUI)"=="OS2"
338 .ENDIF # "$(DEF2EXPORTFILE)"==""
339 .ENDIF # "$(SHL2VERSIONMAP)"!=""
341 .IF "$(GUI)"=="WNT"
343 DEF2FILTER=$(SOLARENV)$/inc$/dummy.flt
345 RMHACK2:=$(RM)
347 .IF "$(DEF2CEXP)"!=""
348 EXPORT_ALL_SWITCH=-A $(DEF2CEXP)
349 .ENDIF
351 .IF "$(link_always)"==""
352 $(DEF2TARGETN) : \
353 $(DEF2DEPN) \
354 $(DEF2EXPORTFILE)
355 .ELSE # "$(link_always)"==""
356 $(DEF2TARGETN) .PHONY :
357 .ENDIF # "$(link_always)"==""
358 @-$(RM) $@.tmpfile
359 .IF "$(QUIET_BUILD)"==""
360 @echo ------------------------------
361 .ENDIF
362 @echo "Making: module definition file" $(@:f)
363 @echo LIBRARY $(EMQ)"$(SHL2TARGETN:f)$(EMQ)" >$@.tmpfile
364 .IF "$(COM)"!="GCC"
365 @echo HEAPSIZE 0 >>$@.tmpfile
366 .ENDIF
367 @echo EXPORTS >>$@.tmpfile
368 # getversioninfo fuer alle!!
369 @echo GetVersionInfo >>$@.tmpfile
370 .IF "$(DEFLIB2NAME)"!=""
371 .IF "$(COM)"=="GCC"
372 @-$(RM) $(MISC)$/$(SHL2TARGET).exp
373 dlltool --output-def $(MISC)$/$(SHL2TARGET).exp --export-all-symbols \
374 `$(TYPE) $(foreach,i,$(DEFLIB2NAME) $(SLB)$/$(i).lib) | sed s#$(ROUT)#$(PRJ)$/$(ROUT)#g`
375 tail --lines +3 $(MISC)$/$(SHL2TARGET).exp | sed '/^;/d' >>$@.tmpfile
376 @-$(RM) $(MISC)$/$(SHL2TARGET).exp
377 .ELSE
378 .IF "$(SHL2USE_EXPORTS)"==""
379 @-$(RMHACK2) $(MISC)$/$(SHL2TARGET).exp
380 @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)$/$(SHL2TARGET).exp $(SLB)$/$(DEFLIB2NAME).lib
381 @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)$/$(SHL2TARGET).flt $(MISC)$/$(SHL2TARGET).exp >>$@.tmpfile
382 $(RMHACK2) $(MISC)$/$(SHL2TARGET).exp
383 .ELSE # "$(SHL2USE_EXPORTS)"==""
384 @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB2NAME) $(SLB)$/$(i).lib) | $(GREP) EXPORT: > $(MISC)$/$(SHL2TARGET).direct
385 @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF2FILTER) $(MISC)$/$(SHL2TARGET).direct >>$@.tmpfile
386 .ENDIF # "$(SHL2USE_EXPORTS)"==""
387 .ENDIF
388 .ENDIF # "$(DEFLIB2NAME)"!=""
389 .IF "$(DEF2EXPORT1)"!=""
390 @echo $(DEF2EXPORT1) >>$@.tmpfile
391 .ENDIF
392 .IF "$(DEF2EXPORT2)"!=""
393 @echo $(DEF2EXPORT2) >>$@.tmpfile
394 .ENDIF
395 .IF "$(DEF2EXPORT3)"!=""
396 @echo $(DEF2EXPORT3) >>$@.tmpfile
397 .ENDIF
398 .IF "$(DEF2EXPORT4)"!=""
399 @echo $(DEF2EXPORT4) >>$@.tmpfile
400 .ENDIF
401 .IF "$(DEF2EXPORT5)"!=""
402 @echo $(DEF2EXPORT5) >>$@.tmpfile
403 .ENDIF
404 .IF "$(DEF2EXPORT6)"!=""
405 @echo $(DEF2EXPORT6) >>$@.tmpfile
406 .ENDIF
407 .IF "$(DEF2EXPORT7)"!=""
408 @echo $(DEF2EXPORT7) >>$@.tmpfile
409 .ENDIF
410 .IF "$(DEF2EXPORT8)"!=""
411 @echo $(DEF2EXPORT8) >>$@.tmpfile
412 .ENDIF
413 .IF "$(DEF2EXPORT9)"!=""
414 @echo $(DEF2EXPORT9) >>$@.tmpfile
415 .ENDIF
416 .IF "$(DEF2EXPORT10)"!=""
417 @echo $(DEF2EXPORT10) >>$@.tmpfile
418 .ENDIF
419 .IF "$(DEF2EXPORT11)"!=""
420 @echo $(DEF2EXPORT11) >>$@.tmpfile
421 .ENDIF
422 .IF "$(DEF2EXPORT12)"!=""
423 @echo $(DEF2EXPORT12) >>$@.tmpfile
424 .ENDIF
425 .IF "$(DEF2EXPORT13)"!=""
426 @echo $(DEF2EXPORT13) >>$@.tmpfile
427 .ENDIF
428 .IF "$(DEF2EXPORT14)"!=""
429 @echo $(DEF2EXPORT14) >>$@.tmpfile
430 .ENDIF
431 .IF "$(DEF2EXPORT15)"!=""
432 @echo $(DEF2EXPORT15) >>$@.tmpfile
433 .ENDIF
434 .IF "$(DEF2EXPORT16)"!=""
435 @echo $(DEF2EXPORT16) >>$@.tmpfile
436 .ENDIF
437 .IF "$(DEF2EXPORT17)"!=""
438 @echo $(DEF2EXPORT17) >>$@.tmpfile
439 .ENDIF
440 .IF "$(DEF2EXPORT18)"!=""
441 @echo $(DEF2EXPORT18) >>$@.tmpfile
442 .ENDIF
443 .IF "$(DEF2EXPORT19)"!=""
444 @echo $(DEF2EXPORT19) >>$@.tmpfile
445 .ENDIF
446 .IF "$(DEF2EXPORT20)"!=""
447 @echo $(DEF2EXPORT20) >>$@.tmpfile
448 .ENDIF
449 .IF "$(DEF2EXPORTFILE)"!=""
450 .IF "$(COM)"=="GCC"
451 $(TYPE) $(DEF2EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
452 .ELSE
453 $(TYPE) $(DEF2EXPORTFILE) >> $@.tmpfile
454 .ENDIF
455 .ENDIF
456 @-$(RM) $@
457 @$(RENAME) $@.tmpfile $@
458 .ENDIF # "$(GUI)"=="WNT"
460 .IF "$(GUI)"=="OS2"
462 #21/02/2006 YD dll names must be 8.3, invoke fix script
463 #check osl/os2/module.c/osl_loadModule()
464 SHL2TARGET8=$(shell @fix_shl $(SHL2TARGETN:f))
466 DEF2FILTER=$(SOLARENV)$/inc$/dummy.flt
467 DEF2NAMELIST=$(foreach,i,$(DEFLIB2NAME) $(SLB)$/$(i).lib)
469 .IF "$(link_always)"==""
470 $(DEF2TARGETN) : \
471 $(DEF2DEPN) \
472 $(DEF2EXPORTFILE)
473 .ELSE # "$(link_always)"==""
474 $(DEF2TARGETN) .PHONY :
475 .ENDIF # "$(link_always)"==""
476 @+-$(RM) $@.tmpfile
477 .IF "$(QUIET_BUILD)"==""
478 @echo ------------------------------
479 .ENDIF
480 @echo "Making: module definition file" $(@:f)
481 @echo LIBRARY $(SHL2TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
482 @echo DATA MULTIPLE >>$@.tmpfile
483 @echo DESCRIPTION 'StarView 3.00 $(DEF2DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
484 @echo EXPORTS >>$@.tmpfile
485 # getversioninfo fuer alle!!
486 @echo _GetVersionInfo >$@.tmp_ord
488 .IF "$(DEFLIB2NAME)"!=""
489 @+echo $(SLB)$/$(DEFLIB2NAME).lib
490 @+emxexpr $(DEF2NAMELIST) | fix_exp_file >> $@.tmp_ord
491 .ENDIF # "$(DEFLIB2NAME)"!=""
493 .IF "$(DEF2EXPORT1)"!=""
494 @echo $(DEF2EXPORT1) >>$@.tmpfile
495 .ENDIF
496 .IF "$(DEF2EXPORT2)"!=""
497 @echo $(DEF2EXPORT2) >>$@.tmpfile
498 .ENDIF
499 .IF "$(DEF2EXPORT3)"!=""
500 @echo $(DEF2EXPORT3) >>$@.tmpfile
501 .ENDIF
502 .IF "$(DEF2EXPORT4)"!=""
503 @echo $(DEF2EXPORT4) >>$@.tmpfile
504 .ENDIF
505 .IF "$(DEF2EXPORT5)"!=""
506 @echo $(DEF2EXPORT5) >>$@.tmpfile
507 .ENDIF
508 .IF "$(DEF2EXPORT6)"!=""
509 @echo $(DEF2EXPORT6) >>$@.tmpfile
510 .ENDIF
511 .IF "$(DEF2EXPORT7)"!=""
512 @echo $(DEF2EXPORT7) >>$@.tmpfile
513 .ENDIF
514 .IF "$(DEF2EXPORT8)"!=""
515 @echo $(DEF2EXPORT8) >>$@.tmpfile
516 .ENDIF
517 .IF "$(DEF2EXPORT9)"!=""
518 @echo $(DEF2EXPORT9) >>$@.tmpfile
519 .ENDIF
520 .IF "$(DEF2EXPORT10)"!=""
521 @echo $(DEF2EXPORT10) >>$@.tmpfile
522 .ENDIF
523 .IF "$(DEF2EXPORT11)"!=""
524 @echo $(DEF2EXPORT11) >>$@.tmpfile
525 .ENDIF
526 .IF "$(DEF2EXPORT12)"!=""
527 @echo $(DEF2EXPORT12) >>$@.tmpfile
528 .ENDIF
529 .IF "$(DEF2EXPORT13)"!=""
530 @echo $(DEF2EXPORT13) >>$@.tmpfile
531 .ENDIF
532 .IF "$(DEF2EXPORT14)"!=""
533 @echo $(DEF2EXPORT14) >>$@.tmpfile
534 .ENDIF
535 .IF "$(DEF2EXPORT15)"!=""
536 @echo $(DEF2EXPORT15) >>$@.tmpfile
537 .ENDIF
538 .IF "$(DEF2EXPORT16)"!=""
539 @echo $(DEF2EXPORT16) >>$@.tmpfile
540 .ENDIF
541 .IF "$(DEF2EXPORT17)"!=""
542 @echo $(DEF2EXPORT17) >>$@.tmpfile
543 .ENDIF
544 .IF "$(DEF2EXPORT18)"!=""
545 @echo $(DEF2EXPORT18) >>$@.tmpfile
546 .ENDIF
547 .IF "$(DEF2EXPORT19)"!=""
548 @echo $(DEF2EXPORT19) >>$@.tmpfile
549 .ENDIF
550 .IF "$(DEF2EXPORT20)"!=""
551 @echo $(DEF2EXPORT20) >>$@.tmpfile
552 .ENDIF
553 .IF "$(DEF2EXPORTFILE)"!=""
554 @fix_def_file < $(DEF2EXPORTFILE) >> $@.tmp_ord
555 .ENDIF
556 @sort < $@.tmp_ord | uniq > $@.exptmpfile
557 @fix_def_ord < $@.exptmpfile >> $@.tmpfile
558 @+-$(RM) $@
559 +$(RENAME) $@.tmpfile $@
560 @+-$(RM) $@.tmp_ord
561 @+-$(RM) $@.exptmpfile
562 +$(IMPLIB) $(IMPLIBFLAGS) $(SHL2IMPLIBN:s/.lib/.a/) $@
563 +emxomf -o $(SHL2IMPLIBN) $(SHL2IMPLIBN:s/.lib/.a/)
565 .ENDIF # "$(GUI)"=="OS2"
567 .IF "$(GUI)"=="UNX"
568 $(DEF2TARGETN): \
569 $(DEF2DEPN) \
570 $(DEF2EXPORTFILE)
571 @echo just a dummy for UNIX > $@
572 .ENDIF
573 .ENDIF # "$(DEF2TARGETN)"!=""
576 # Anweisungen fuer das Linken
577 # unroll begin
579 .IF "$(DEF3TARGETN)"!=""
581 #to make intuitiv naming work
582 .IF "$(DEF3LIBNAME)"!=""
583 DEFLIB3NAME*=$(DEF3LIBNAME)
584 .ENDIF # "$(DEF3LIBNAME)"!=""
586 .IF "$(DEFLIB3NAME)"!=""
587 .IF "$(UPDATER)"!=""
588 DEF3DEPN+=$(foreach,i,$(DEFLIB3NAME) $(SLB)$/$(i).lib)
589 .ENDIF # "$(UPDATER)"!=""
590 .ENDIF
592 .IF "$(SHL3VERSIONMAP)"!=""
593 .IF "$(DEF3EXPORTFILE)"==""
594 .IF "$(GUI)"=="WNT"
595 DEF3EXPORTFILE=$(MISC)$/$(SHL3VERSIONMAP:b)_$(SHL3TARGET).dxp
596 .IF "$(COM)"=="GCC"
597 $(DEF3EXPORTFILE) : $(SHL3OBJS) $(SHL3LIBS)
598 .ENDIF # .IF "$(COM)"=="GCC"
600 $(DEF3EXPORTFILE) : $(SHL3VERSIONMAP)
601 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
602 .IF "$(COM)"=="GCC"
603 -grep -v "\*\|?" $@ > $@.exported-symbols
604 -grep "\*\|?" $@ > $@.symbols-regexp
605 # Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
606 # Extract RTTI symbols from all the objects that will be used to build a shared library
607 .IF "$(SHL3OBJS)"!=""
608 -echo $(foreach,i,$(SHL3OBJS) $i) | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
609 .ENDIF
610 .IF "$(SHL3LIBS)"!=""
611 -$(TYPE) $(foreach,j,$(SHL3LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
612 .ENDIF
613 # overwrite the map file generate into the local output tree with the generated
614 # exported symbols list
615 cp $@.exported-symbols $@
616 .ENDIF # .IF "$(COM)"=="GCC"
618 .ENDIF # "$(GUI)"=="WNT"
620 .IF "$(GUI)"=="OS2"
621 DEF3EXPORTFILE=$(MISC)$/$(SHL3VERSIONMAP:b)_$(SHL3TARGET).dxp
622 $(DEF3EXPORTFILE) : $(SHL3VERSIONMAP)
623 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
624 .ENDIF # "$(GUI)"=="OS2"
626 .ENDIF # "$(DEF3EXPORTFILE)"==""
627 .ENDIF # "$(SHL3VERSIONMAP)"!=""
629 .IF "$(GUI)"=="WNT"
631 DEF3FILTER=$(SOLARENV)$/inc$/dummy.flt
633 RMHACK3:=$(RM)
635 .IF "$(DEF3CEXP)"!=""
636 EXPORT_ALL_SWITCH=-A $(DEF3CEXP)
637 .ENDIF
639 .IF "$(link_always)"==""
640 $(DEF3TARGETN) : \
641 $(DEF3DEPN) \
642 $(DEF3EXPORTFILE)
643 .ELSE # "$(link_always)"==""
644 $(DEF3TARGETN) .PHONY :
645 .ENDIF # "$(link_always)"==""
646 @-$(RM) $@.tmpfile
647 .IF "$(QUIET_BUILD)"==""
648 @echo ------------------------------
649 .ENDIF
650 @echo "Making: module definition file" $(@:f)
651 @echo LIBRARY $(EMQ)"$(SHL3TARGETN:f)$(EMQ)" >$@.tmpfile
652 .IF "$(COM)"!="GCC"
653 @echo HEAPSIZE 0 >>$@.tmpfile
654 .ENDIF
655 @echo EXPORTS >>$@.tmpfile
656 # getversioninfo fuer alle!!
657 @echo GetVersionInfo >>$@.tmpfile
658 .IF "$(DEFLIB3NAME)"!=""
659 .IF "$(COM)"=="GCC"
660 @-$(RM) $(MISC)$/$(SHL3TARGET).exp
661 dlltool --output-def $(MISC)$/$(SHL3TARGET).exp --export-all-symbols \
662 `$(TYPE) $(foreach,i,$(DEFLIB3NAME) $(SLB)$/$(i).lib) | sed s#$(ROUT)#$(PRJ)$/$(ROUT)#g`
663 tail --lines +3 $(MISC)$/$(SHL3TARGET).exp | sed '/^;/d' >>$@.tmpfile
664 @-$(RM) $(MISC)$/$(SHL3TARGET).exp
665 .ELSE
666 .IF "$(SHL3USE_EXPORTS)"==""
667 @-$(RMHACK3) $(MISC)$/$(SHL3TARGET).exp
668 @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)$/$(SHL3TARGET).exp $(SLB)$/$(DEFLIB3NAME).lib
669 @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)$/$(SHL3TARGET).flt $(MISC)$/$(SHL3TARGET).exp >>$@.tmpfile
670 $(RMHACK3) $(MISC)$/$(SHL3TARGET).exp
671 .ELSE # "$(SHL3USE_EXPORTS)"==""
672 @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB3NAME) $(SLB)$/$(i).lib) | $(GREP) EXPORT: > $(MISC)$/$(SHL3TARGET).direct
673 @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF3FILTER) $(MISC)$/$(SHL3TARGET).direct >>$@.tmpfile
674 .ENDIF # "$(SHL3USE_EXPORTS)"==""
675 .ENDIF
676 .ENDIF # "$(DEFLIB3NAME)"!=""
677 .IF "$(DEF3EXPORT1)"!=""
678 @echo $(DEF3EXPORT1) >>$@.tmpfile
679 .ENDIF
680 .IF "$(DEF3EXPORT2)"!=""
681 @echo $(DEF3EXPORT2) >>$@.tmpfile
682 .ENDIF
683 .IF "$(DEF3EXPORT3)"!=""
684 @echo $(DEF3EXPORT3) >>$@.tmpfile
685 .ENDIF
686 .IF "$(DEF3EXPORT4)"!=""
687 @echo $(DEF3EXPORT4) >>$@.tmpfile
688 .ENDIF
689 .IF "$(DEF3EXPORT5)"!=""
690 @echo $(DEF3EXPORT5) >>$@.tmpfile
691 .ENDIF
692 .IF "$(DEF3EXPORT6)"!=""
693 @echo $(DEF3EXPORT6) >>$@.tmpfile
694 .ENDIF
695 .IF "$(DEF3EXPORT7)"!=""
696 @echo $(DEF3EXPORT7) >>$@.tmpfile
697 .ENDIF
698 .IF "$(DEF3EXPORT8)"!=""
699 @echo $(DEF3EXPORT8) >>$@.tmpfile
700 .ENDIF
701 .IF "$(DEF3EXPORT9)"!=""
702 @echo $(DEF3EXPORT9) >>$@.tmpfile
703 .ENDIF
704 .IF "$(DEF3EXPORT10)"!=""
705 @echo $(DEF3EXPORT10) >>$@.tmpfile
706 .ENDIF
707 .IF "$(DEF3EXPORT11)"!=""
708 @echo $(DEF3EXPORT11) >>$@.tmpfile
709 .ENDIF
710 .IF "$(DEF3EXPORT12)"!=""
711 @echo $(DEF3EXPORT12) >>$@.tmpfile
712 .ENDIF
713 .IF "$(DEF3EXPORT13)"!=""
714 @echo $(DEF3EXPORT13) >>$@.tmpfile
715 .ENDIF
716 .IF "$(DEF3EXPORT14)"!=""
717 @echo $(DEF3EXPORT14) >>$@.tmpfile
718 .ENDIF
719 .IF "$(DEF3EXPORT15)"!=""
720 @echo $(DEF3EXPORT15) >>$@.tmpfile
721 .ENDIF
722 .IF "$(DEF3EXPORT16)"!=""
723 @echo $(DEF3EXPORT16) >>$@.tmpfile
724 .ENDIF
725 .IF "$(DEF3EXPORT17)"!=""
726 @echo $(DEF3EXPORT17) >>$@.tmpfile
727 .ENDIF
728 .IF "$(DEF3EXPORT18)"!=""
729 @echo $(DEF3EXPORT18) >>$@.tmpfile
730 .ENDIF
731 .IF "$(DEF3EXPORT19)"!=""
732 @echo $(DEF3EXPORT19) >>$@.tmpfile
733 .ENDIF
734 .IF "$(DEF3EXPORT20)"!=""
735 @echo $(DEF3EXPORT20) >>$@.tmpfile
736 .ENDIF
737 .IF "$(DEF3EXPORTFILE)"!=""
738 .IF "$(COM)"=="GCC"
739 $(TYPE) $(DEF3EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
740 .ELSE
741 $(TYPE) $(DEF3EXPORTFILE) >> $@.tmpfile
742 .ENDIF
743 .ENDIF
744 @-$(RM) $@
745 @$(RENAME) $@.tmpfile $@
746 .ENDIF # "$(GUI)"=="WNT"
748 .IF "$(GUI)"=="OS2"
750 #21/02/2006 YD dll names must be 8.3, invoke fix script
751 #check osl/os2/module.c/osl_loadModule()
752 SHL3TARGET8=$(shell @fix_shl $(SHL3TARGETN:f))
754 DEF3FILTER=$(SOLARENV)$/inc$/dummy.flt
755 DEF3NAMELIST=$(foreach,i,$(DEFLIB3NAME) $(SLB)$/$(i).lib)
757 .IF "$(link_always)"==""
758 $(DEF3TARGETN) : \
759 $(DEF3DEPN) \
760 $(DEF3EXPORTFILE)
761 .ELSE # "$(link_always)"==""
762 $(DEF3TARGETN) .PHONY :
763 .ENDIF # "$(link_always)"==""
764 @+-$(RM) $@.tmpfile
765 .IF "$(QUIET_BUILD)"==""
766 @echo ------------------------------
767 .ENDIF
768 @echo "Making: module definition file" $(@:f)
769 @echo LIBRARY $(SHL3TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
770 @echo DATA MULTIPLE >>$@.tmpfile
771 @echo DESCRIPTION 'StarView 3.00 $(DEF3DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
772 @echo EXPORTS >>$@.tmpfile
773 # getversioninfo fuer alle!!
774 @echo _GetVersionInfo >$@.tmp_ord
776 .IF "$(DEFLIB3NAME)"!=""
777 @+echo $(SLB)$/$(DEFLIB3NAME).lib
778 @+emxexpr $(DEF3NAMELIST) | fix_exp_file >> $@.tmp_ord
779 .ENDIF # "$(DEFLIB3NAME)"!=""
781 .IF "$(DEF3EXPORT1)"!=""
782 @echo $(DEF3EXPORT1) >>$@.tmpfile
783 .ENDIF
784 .IF "$(DEF3EXPORT2)"!=""
785 @echo $(DEF3EXPORT2) >>$@.tmpfile
786 .ENDIF
787 .IF "$(DEF3EXPORT3)"!=""
788 @echo $(DEF3EXPORT3) >>$@.tmpfile
789 .ENDIF
790 .IF "$(DEF3EXPORT4)"!=""
791 @echo $(DEF3EXPORT4) >>$@.tmpfile
792 .ENDIF
793 .IF "$(DEF3EXPORT5)"!=""
794 @echo $(DEF3EXPORT5) >>$@.tmpfile
795 .ENDIF
796 .IF "$(DEF3EXPORT6)"!=""
797 @echo $(DEF3EXPORT6) >>$@.tmpfile
798 .ENDIF
799 .IF "$(DEF3EXPORT7)"!=""
800 @echo $(DEF3EXPORT7) >>$@.tmpfile
801 .ENDIF
802 .IF "$(DEF3EXPORT8)"!=""
803 @echo $(DEF3EXPORT8) >>$@.tmpfile
804 .ENDIF
805 .IF "$(DEF3EXPORT9)"!=""
806 @echo $(DEF3EXPORT9) >>$@.tmpfile
807 .ENDIF
808 .IF "$(DEF3EXPORT10)"!=""
809 @echo $(DEF3EXPORT10) >>$@.tmpfile
810 .ENDIF
811 .IF "$(DEF3EXPORT11)"!=""
812 @echo $(DEF3EXPORT11) >>$@.tmpfile
813 .ENDIF
814 .IF "$(DEF3EXPORT12)"!=""
815 @echo $(DEF3EXPORT12) >>$@.tmpfile
816 .ENDIF
817 .IF "$(DEF3EXPORT13)"!=""
818 @echo $(DEF3EXPORT13) >>$@.tmpfile
819 .ENDIF
820 .IF "$(DEF3EXPORT14)"!=""
821 @echo $(DEF3EXPORT14) >>$@.tmpfile
822 .ENDIF
823 .IF "$(DEF3EXPORT15)"!=""
824 @echo $(DEF3EXPORT15) >>$@.tmpfile
825 .ENDIF
826 .IF "$(DEF3EXPORT16)"!=""
827 @echo $(DEF3EXPORT16) >>$@.tmpfile
828 .ENDIF
829 .IF "$(DEF3EXPORT17)"!=""
830 @echo $(DEF3EXPORT17) >>$@.tmpfile
831 .ENDIF
832 .IF "$(DEF3EXPORT18)"!=""
833 @echo $(DEF3EXPORT18) >>$@.tmpfile
834 .ENDIF
835 .IF "$(DEF3EXPORT19)"!=""
836 @echo $(DEF3EXPORT19) >>$@.tmpfile
837 .ENDIF
838 .IF "$(DEF3EXPORT20)"!=""
839 @echo $(DEF3EXPORT20) >>$@.tmpfile
840 .ENDIF
841 .IF "$(DEF3EXPORTFILE)"!=""
842 @fix_def_file < $(DEF3EXPORTFILE) >> $@.tmp_ord
843 .ENDIF
844 @sort < $@.tmp_ord | uniq > $@.exptmpfile
845 @fix_def_ord < $@.exptmpfile >> $@.tmpfile
846 @+-$(RM) $@
847 +$(RENAME) $@.tmpfile $@
848 @+-$(RM) $@.tmp_ord
849 @+-$(RM) $@.exptmpfile
850 +$(IMPLIB) $(IMPLIBFLAGS) $(SHL3IMPLIBN:s/.lib/.a/) $@
851 +emxomf -o $(SHL3IMPLIBN) $(SHL3IMPLIBN:s/.lib/.a/)
853 .ENDIF # "$(GUI)"=="OS2"
855 .IF "$(GUI)"=="UNX"
856 $(DEF3TARGETN): \
857 $(DEF3DEPN) \
858 $(DEF3EXPORTFILE)
859 @echo just a dummy for UNIX > $@
860 .ENDIF
861 .ENDIF # "$(DEF3TARGETN)"!=""
864 # Anweisungen fuer das Linken
865 # unroll begin
867 .IF "$(DEF4TARGETN)"!=""
869 #to make intuitiv naming work
870 .IF "$(DEF4LIBNAME)"!=""
871 DEFLIB4NAME*=$(DEF4LIBNAME)
872 .ENDIF # "$(DEF4LIBNAME)"!=""
874 .IF "$(DEFLIB4NAME)"!=""
875 .IF "$(UPDATER)"!=""
876 DEF4DEPN+=$(foreach,i,$(DEFLIB4NAME) $(SLB)$/$(i).lib)
877 .ENDIF # "$(UPDATER)"!=""
878 .ENDIF
880 .IF "$(SHL4VERSIONMAP)"!=""
881 .IF "$(DEF4EXPORTFILE)"==""
882 .IF "$(GUI)"=="WNT"
883 DEF4EXPORTFILE=$(MISC)$/$(SHL4VERSIONMAP:b)_$(SHL4TARGET).dxp
884 .IF "$(COM)"=="GCC"
885 $(DEF4EXPORTFILE) : $(SHL4OBJS) $(SHL4LIBS)
886 .ENDIF # .IF "$(COM)"=="GCC"
888 $(DEF4EXPORTFILE) : $(SHL4VERSIONMAP)
889 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
890 .IF "$(COM)"=="GCC"
891 -grep -v "\*\|?" $@ > $@.exported-symbols
892 -grep "\*\|?" $@ > $@.symbols-regexp
893 # Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
894 # Extract RTTI symbols from all the objects that will be used to build a shared library
895 .IF "$(SHL4OBJS)"!=""
896 -echo $(foreach,i,$(SHL4OBJS) $i) | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
897 .ENDIF
898 .IF "$(SHL4LIBS)"!=""
899 -$(TYPE) $(foreach,j,$(SHL4LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
900 .ENDIF
901 # overwrite the map file generate into the local output tree with the generated
902 # exported symbols list
903 cp $@.exported-symbols $@
904 .ENDIF # .IF "$(COM)"=="GCC"
906 .ENDIF # "$(GUI)"=="WNT"
908 .IF "$(GUI)"=="OS2"
909 DEF4EXPORTFILE=$(MISC)$/$(SHL4VERSIONMAP:b)_$(SHL4TARGET).dxp
910 $(DEF4EXPORTFILE) : $(SHL4VERSIONMAP)
911 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
912 .ENDIF # "$(GUI)"=="OS2"
914 .ENDIF # "$(DEF4EXPORTFILE)"==""
915 .ENDIF # "$(SHL4VERSIONMAP)"!=""
917 .IF "$(GUI)"=="WNT"
919 DEF4FILTER=$(SOLARENV)$/inc$/dummy.flt
921 RMHACK4:=$(RM)
923 .IF "$(DEF4CEXP)"!=""
924 EXPORT_ALL_SWITCH=-A $(DEF4CEXP)
925 .ENDIF
927 .IF "$(link_always)"==""
928 $(DEF4TARGETN) : \
929 $(DEF4DEPN) \
930 $(DEF4EXPORTFILE)
931 .ELSE # "$(link_always)"==""
932 $(DEF4TARGETN) .PHONY :
933 .ENDIF # "$(link_always)"==""
934 @-$(RM) $@.tmpfile
935 .IF "$(QUIET_BUILD)"==""
936 @echo ------------------------------
937 .ENDIF
938 @echo "Making: module definition file" $(@:f)
939 @echo LIBRARY $(EMQ)"$(SHL4TARGETN:f)$(EMQ)" >$@.tmpfile
940 .IF "$(COM)"!="GCC"
941 @echo HEAPSIZE 0 >>$@.tmpfile
942 .ENDIF
943 @echo EXPORTS >>$@.tmpfile
944 # getversioninfo fuer alle!!
945 @echo GetVersionInfo >>$@.tmpfile
946 .IF "$(DEFLIB4NAME)"!=""
947 .IF "$(COM)"=="GCC"
948 @-$(RM) $(MISC)$/$(SHL4TARGET).exp
949 dlltool --output-def $(MISC)$/$(SHL4TARGET).exp --export-all-symbols \
950 `$(TYPE) $(foreach,i,$(DEFLIB4NAME) $(SLB)$/$(i).lib) | sed s#$(ROUT)#$(PRJ)$/$(ROUT)#g`
951 tail --lines +3 $(MISC)$/$(SHL4TARGET).exp | sed '/^;/d' >>$@.tmpfile
952 @-$(RM) $(MISC)$/$(SHL4TARGET).exp
953 .ELSE
954 .IF "$(SHL4USE_EXPORTS)"==""
955 @-$(RMHACK4) $(MISC)$/$(SHL4TARGET).exp
956 @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)$/$(SHL4TARGET).exp $(SLB)$/$(DEFLIB4NAME).lib
957 @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)$/$(SHL4TARGET).flt $(MISC)$/$(SHL4TARGET).exp >>$@.tmpfile
958 $(RMHACK4) $(MISC)$/$(SHL4TARGET).exp
959 .ELSE # "$(SHL4USE_EXPORTS)"==""
960 @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB4NAME) $(SLB)$/$(i).lib) | $(GREP) EXPORT: > $(MISC)$/$(SHL4TARGET).direct
961 @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF4FILTER) $(MISC)$/$(SHL4TARGET).direct >>$@.tmpfile
962 .ENDIF # "$(SHL4USE_EXPORTS)"==""
963 .ENDIF
964 .ENDIF # "$(DEFLIB4NAME)"!=""
965 .IF "$(DEF4EXPORT1)"!=""
966 @echo $(DEF4EXPORT1) >>$@.tmpfile
967 .ENDIF
968 .IF "$(DEF4EXPORT2)"!=""
969 @echo $(DEF4EXPORT2) >>$@.tmpfile
970 .ENDIF
971 .IF "$(DEF4EXPORT3)"!=""
972 @echo $(DEF4EXPORT3) >>$@.tmpfile
973 .ENDIF
974 .IF "$(DEF4EXPORT4)"!=""
975 @echo $(DEF4EXPORT4) >>$@.tmpfile
976 .ENDIF
977 .IF "$(DEF4EXPORT5)"!=""
978 @echo $(DEF4EXPORT5) >>$@.tmpfile
979 .ENDIF
980 .IF "$(DEF4EXPORT6)"!=""
981 @echo $(DEF4EXPORT6) >>$@.tmpfile
982 .ENDIF
983 .IF "$(DEF4EXPORT7)"!=""
984 @echo $(DEF4EXPORT7) >>$@.tmpfile
985 .ENDIF
986 .IF "$(DEF4EXPORT8)"!=""
987 @echo $(DEF4EXPORT8) >>$@.tmpfile
988 .ENDIF
989 .IF "$(DEF4EXPORT9)"!=""
990 @echo $(DEF4EXPORT9) >>$@.tmpfile
991 .ENDIF
992 .IF "$(DEF4EXPORT10)"!=""
993 @echo $(DEF4EXPORT10) >>$@.tmpfile
994 .ENDIF
995 .IF "$(DEF4EXPORT11)"!=""
996 @echo $(DEF4EXPORT11) >>$@.tmpfile
997 .ENDIF
998 .IF "$(DEF4EXPORT12)"!=""
999 @echo $(DEF4EXPORT12) >>$@.tmpfile
1000 .ENDIF
1001 .IF "$(DEF4EXPORT13)"!=""
1002 @echo $(DEF4EXPORT13) >>$@.tmpfile
1003 .ENDIF
1004 .IF "$(DEF4EXPORT14)"!=""
1005 @echo $(DEF4EXPORT14) >>$@.tmpfile
1006 .ENDIF
1007 .IF "$(DEF4EXPORT15)"!=""
1008 @echo $(DEF4EXPORT15) >>$@.tmpfile
1009 .ENDIF
1010 .IF "$(DEF4EXPORT16)"!=""
1011 @echo $(DEF4EXPORT16) >>$@.tmpfile
1012 .ENDIF
1013 .IF "$(DEF4EXPORT17)"!=""
1014 @echo $(DEF4EXPORT17) >>$@.tmpfile
1015 .ENDIF
1016 .IF "$(DEF4EXPORT18)"!=""
1017 @echo $(DEF4EXPORT18) >>$@.tmpfile
1018 .ENDIF
1019 .IF "$(DEF4EXPORT19)"!=""
1020 @echo $(DEF4EXPORT19) >>$@.tmpfile
1021 .ENDIF
1022 .IF "$(DEF4EXPORT20)"!=""
1023 @echo $(DEF4EXPORT20) >>$@.tmpfile
1024 .ENDIF
1025 .IF "$(DEF4EXPORTFILE)"!=""
1026 .IF "$(COM)"=="GCC"
1027 $(TYPE) $(DEF4EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
1028 .ELSE
1029 $(TYPE) $(DEF4EXPORTFILE) >> $@.tmpfile
1030 .ENDIF
1031 .ENDIF
1032 @-$(RM) $@
1033 @$(RENAME) $@.tmpfile $@
1034 .ENDIF # "$(GUI)"=="WNT"
1036 .IF "$(GUI)"=="OS2"
1038 #21/02/2006 YD dll names must be 8.3, invoke fix script
1039 #check osl/os2/module.c/osl_loadModule()
1040 SHL4TARGET8=$(shell @fix_shl $(SHL4TARGETN:f))
1042 DEF4FILTER=$(SOLARENV)$/inc$/dummy.flt
1043 DEF4NAMELIST=$(foreach,i,$(DEFLIB4NAME) $(SLB)$/$(i).lib)
1045 .IF "$(link_always)"==""
1046 $(DEF4TARGETN) : \
1047 $(DEF4DEPN) \
1048 $(DEF4EXPORTFILE)
1049 .ELSE # "$(link_always)"==""
1050 $(DEF4TARGETN) .PHONY :
1051 .ENDIF # "$(link_always)"==""
1052 @+-$(RM) $@.tmpfile
1053 .IF "$(QUIET_BUILD)"==""
1054 @echo ------------------------------
1055 .ENDIF
1056 @echo "Making: module definition file" $(@:f)
1057 @echo LIBRARY $(SHL4TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
1058 @echo DATA MULTIPLE >>$@.tmpfile
1059 @echo DESCRIPTION 'StarView 3.00 $(DEF4DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
1060 @echo EXPORTS >>$@.tmpfile
1061 # getversioninfo fuer alle!!
1062 @echo _GetVersionInfo >$@.tmp_ord
1064 .IF "$(DEFLIB4NAME)"!=""
1065 @+echo $(SLB)$/$(DEFLIB4NAME).lib
1066 @+emxexpr $(DEF4NAMELIST) | fix_exp_file >> $@.tmp_ord
1067 .ENDIF # "$(DEFLIB4NAME)"!=""
1069 .IF "$(DEF4EXPORT1)"!=""
1070 @echo $(DEF4EXPORT1) >>$@.tmpfile
1071 .ENDIF
1072 .IF "$(DEF4EXPORT2)"!=""
1073 @echo $(DEF4EXPORT2) >>$@.tmpfile
1074 .ENDIF
1075 .IF "$(DEF4EXPORT3)"!=""
1076 @echo $(DEF4EXPORT3) >>$@.tmpfile
1077 .ENDIF
1078 .IF "$(DEF4EXPORT4)"!=""
1079 @echo $(DEF4EXPORT4) >>$@.tmpfile
1080 .ENDIF
1081 .IF "$(DEF4EXPORT5)"!=""
1082 @echo $(DEF4EXPORT5) >>$@.tmpfile
1083 .ENDIF
1084 .IF "$(DEF4EXPORT6)"!=""
1085 @echo $(DEF4EXPORT6) >>$@.tmpfile
1086 .ENDIF
1087 .IF "$(DEF4EXPORT7)"!=""
1088 @echo $(DEF4EXPORT7) >>$@.tmpfile
1089 .ENDIF
1090 .IF "$(DEF4EXPORT8)"!=""
1091 @echo $(DEF4EXPORT8) >>$@.tmpfile
1092 .ENDIF
1093 .IF "$(DEF4EXPORT9)"!=""
1094 @echo $(DEF4EXPORT9) >>$@.tmpfile
1095 .ENDIF
1096 .IF "$(DEF4EXPORT10)"!=""
1097 @echo $(DEF4EXPORT10) >>$@.tmpfile
1098 .ENDIF
1099 .IF "$(DEF4EXPORT11)"!=""
1100 @echo $(DEF4EXPORT11) >>$@.tmpfile
1101 .ENDIF
1102 .IF "$(DEF4EXPORT12)"!=""
1103 @echo $(DEF4EXPORT12) >>$@.tmpfile
1104 .ENDIF
1105 .IF "$(DEF4EXPORT13)"!=""
1106 @echo $(DEF4EXPORT13) >>$@.tmpfile
1107 .ENDIF
1108 .IF "$(DEF4EXPORT14)"!=""
1109 @echo $(DEF4EXPORT14) >>$@.tmpfile
1110 .ENDIF
1111 .IF "$(DEF4EXPORT15)"!=""
1112 @echo $(DEF4EXPORT15) >>$@.tmpfile
1113 .ENDIF
1114 .IF "$(DEF4EXPORT16)"!=""
1115 @echo $(DEF4EXPORT16) >>$@.tmpfile
1116 .ENDIF
1117 .IF "$(DEF4EXPORT17)"!=""
1118 @echo $(DEF4EXPORT17) >>$@.tmpfile
1119 .ENDIF
1120 .IF "$(DEF4EXPORT18)"!=""
1121 @echo $(DEF4EXPORT18) >>$@.tmpfile
1122 .ENDIF
1123 .IF "$(DEF4EXPORT19)"!=""
1124 @echo $(DEF4EXPORT19) >>$@.tmpfile
1125 .ENDIF
1126 .IF "$(DEF4EXPORT20)"!=""
1127 @echo $(DEF4EXPORT20) >>$@.tmpfile
1128 .ENDIF
1129 .IF "$(DEF4EXPORTFILE)"!=""
1130 @fix_def_file < $(DEF4EXPORTFILE) >> $@.tmp_ord
1131 .ENDIF
1132 @sort < $@.tmp_ord | uniq > $@.exptmpfile
1133 @fix_def_ord < $@.exptmpfile >> $@.tmpfile
1134 @+-$(RM) $@
1135 +$(RENAME) $@.tmpfile $@
1136 @+-$(RM) $@.tmp_ord
1137 @+-$(RM) $@.exptmpfile
1138 +$(IMPLIB) $(IMPLIBFLAGS) $(SHL4IMPLIBN:s/.lib/.a/) $@
1139 +emxomf -o $(SHL4IMPLIBN) $(SHL4IMPLIBN:s/.lib/.a/)
1141 .ENDIF # "$(GUI)"=="OS2"
1143 .IF "$(GUI)"=="UNX"
1144 $(DEF4TARGETN): \
1145 $(DEF4DEPN) \
1146 $(DEF4EXPORTFILE)
1147 @echo just a dummy for UNIX > $@
1148 .ENDIF
1149 .ENDIF # "$(DEF4TARGETN)"!=""
1152 # Anweisungen fuer das Linken
1153 # unroll begin
1155 .IF "$(DEF5TARGETN)"!=""
1157 #to make intuitiv naming work
1158 .IF "$(DEF5LIBNAME)"!=""
1159 DEFLIB5NAME*=$(DEF5LIBNAME)
1160 .ENDIF # "$(DEF5LIBNAME)"!=""
1162 .IF "$(DEFLIB5NAME)"!=""
1163 .IF "$(UPDATER)"!=""
1164 DEF5DEPN+=$(foreach,i,$(DEFLIB5NAME) $(SLB)$/$(i).lib)
1165 .ENDIF # "$(UPDATER)"!=""
1166 .ENDIF
1168 .IF "$(SHL5VERSIONMAP)"!=""
1169 .IF "$(DEF5EXPORTFILE)"==""
1170 .IF "$(GUI)"=="WNT"
1171 DEF5EXPORTFILE=$(MISC)$/$(SHL5VERSIONMAP:b)_$(SHL5TARGET).dxp
1172 .IF "$(COM)"=="GCC"
1173 $(DEF5EXPORTFILE) : $(SHL5OBJS) $(SHL5LIBS)
1174 .ENDIF # .IF "$(COM)"=="GCC"
1176 $(DEF5EXPORTFILE) : $(SHL5VERSIONMAP)
1177 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
1178 .IF "$(COM)"=="GCC"
1179 -grep -v "\*\|?" $@ > $@.exported-symbols
1180 -grep "\*\|?" $@ > $@.symbols-regexp
1181 # Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
1182 # Extract RTTI symbols from all the objects that will be used to build a shared library
1183 .IF "$(SHL5OBJS)"!=""
1184 -echo $(foreach,i,$(SHL5OBJS) $i) | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
1185 .ENDIF
1186 .IF "$(SHL5LIBS)"!=""
1187 -$(TYPE) $(foreach,j,$(SHL5LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
1188 .ENDIF
1189 # overwrite the map file generate into the local output tree with the generated
1190 # exported symbols list
1191 cp $@.exported-symbols $@
1192 .ENDIF # .IF "$(COM)"=="GCC"
1194 .ENDIF # "$(GUI)"=="WNT"
1196 .IF "$(GUI)"=="OS2"
1197 DEF5EXPORTFILE=$(MISC)$/$(SHL5VERSIONMAP:b)_$(SHL5TARGET).dxp
1198 $(DEF5EXPORTFILE) : $(SHL5VERSIONMAP)
1199 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
1200 .ENDIF # "$(GUI)"=="OS2"
1202 .ENDIF # "$(DEF5EXPORTFILE)"==""
1203 .ENDIF # "$(SHL5VERSIONMAP)"!=""
1205 .IF "$(GUI)"=="WNT"
1207 DEF5FILTER=$(SOLARENV)$/inc$/dummy.flt
1209 RMHACK5:=$(RM)
1211 .IF "$(DEF5CEXP)"!=""
1212 EXPORT_ALL_SWITCH=-A $(DEF5CEXP)
1213 .ENDIF
1215 .IF "$(link_always)"==""
1216 $(DEF5TARGETN) : \
1217 $(DEF5DEPN) \
1218 $(DEF5EXPORTFILE)
1219 .ELSE # "$(link_always)"==""
1220 $(DEF5TARGETN) .PHONY :
1221 .ENDIF # "$(link_always)"==""
1222 @-$(RM) $@.tmpfile
1223 .IF "$(QUIET_BUILD)"==""
1224 @echo ------------------------------
1225 .ENDIF
1226 @echo "Making: module definition file" $(@:f)
1227 @echo LIBRARY $(EMQ)"$(SHL5TARGETN:f)$(EMQ)" >$@.tmpfile
1228 .IF "$(COM)"!="GCC"
1229 @echo HEAPSIZE 0 >>$@.tmpfile
1230 .ENDIF
1231 @echo EXPORTS >>$@.tmpfile
1232 # getversioninfo fuer alle!!
1233 @echo GetVersionInfo >>$@.tmpfile
1234 .IF "$(DEFLIB5NAME)"!=""
1235 .IF "$(COM)"=="GCC"
1236 @-$(RM) $(MISC)$/$(SHL5TARGET).exp
1237 dlltool --output-def $(MISC)$/$(SHL5TARGET).exp --export-all-symbols \
1238 `$(TYPE) $(foreach,i,$(DEFLIB5NAME) $(SLB)$/$(i).lib) | sed s#$(ROUT)#$(PRJ)$/$(ROUT)#g`
1239 tail --lines +3 $(MISC)$/$(SHL5TARGET).exp | sed '/^;/d' >>$@.tmpfile
1240 @-$(RM) $(MISC)$/$(SHL5TARGET).exp
1241 .ELSE
1242 .IF "$(SHL5USE_EXPORTS)"==""
1243 @-$(RMHACK5) $(MISC)$/$(SHL5TARGET).exp
1244 @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)$/$(SHL5TARGET).exp $(SLB)$/$(DEFLIB5NAME).lib
1245 @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)$/$(SHL5TARGET).flt $(MISC)$/$(SHL5TARGET).exp >>$@.tmpfile
1246 $(RMHACK5) $(MISC)$/$(SHL5TARGET).exp
1247 .ELSE # "$(SHL5USE_EXPORTS)"==""
1248 @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB5NAME) $(SLB)$/$(i).lib) | $(GREP) EXPORT: > $(MISC)$/$(SHL5TARGET).direct
1249 @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF5FILTER) $(MISC)$/$(SHL5TARGET).direct >>$@.tmpfile
1250 .ENDIF # "$(SHL5USE_EXPORTS)"==""
1251 .ENDIF
1252 .ENDIF # "$(DEFLIB5NAME)"!=""
1253 .IF "$(DEF5EXPORT1)"!=""
1254 @echo $(DEF5EXPORT1) >>$@.tmpfile
1255 .ENDIF
1256 .IF "$(DEF5EXPORT2)"!=""
1257 @echo $(DEF5EXPORT2) >>$@.tmpfile
1258 .ENDIF
1259 .IF "$(DEF5EXPORT3)"!=""
1260 @echo $(DEF5EXPORT3) >>$@.tmpfile
1261 .ENDIF
1262 .IF "$(DEF5EXPORT4)"!=""
1263 @echo $(DEF5EXPORT4) >>$@.tmpfile
1264 .ENDIF
1265 .IF "$(DEF5EXPORT5)"!=""
1266 @echo $(DEF5EXPORT5) >>$@.tmpfile
1267 .ENDIF
1268 .IF "$(DEF5EXPORT6)"!=""
1269 @echo $(DEF5EXPORT6) >>$@.tmpfile
1270 .ENDIF
1271 .IF "$(DEF5EXPORT7)"!=""
1272 @echo $(DEF5EXPORT7) >>$@.tmpfile
1273 .ENDIF
1274 .IF "$(DEF5EXPORT8)"!=""
1275 @echo $(DEF5EXPORT8) >>$@.tmpfile
1276 .ENDIF
1277 .IF "$(DEF5EXPORT9)"!=""
1278 @echo $(DEF5EXPORT9) >>$@.tmpfile
1279 .ENDIF
1280 .IF "$(DEF5EXPORT10)"!=""
1281 @echo $(DEF5EXPORT10) >>$@.tmpfile
1282 .ENDIF
1283 .IF "$(DEF5EXPORT11)"!=""
1284 @echo $(DEF5EXPORT11) >>$@.tmpfile
1285 .ENDIF
1286 .IF "$(DEF5EXPORT12)"!=""
1287 @echo $(DEF5EXPORT12) >>$@.tmpfile
1288 .ENDIF
1289 .IF "$(DEF5EXPORT13)"!=""
1290 @echo $(DEF5EXPORT13) >>$@.tmpfile
1291 .ENDIF
1292 .IF "$(DEF5EXPORT14)"!=""
1293 @echo $(DEF5EXPORT14) >>$@.tmpfile
1294 .ENDIF
1295 .IF "$(DEF5EXPORT15)"!=""
1296 @echo $(DEF5EXPORT15) >>$@.tmpfile
1297 .ENDIF
1298 .IF "$(DEF5EXPORT16)"!=""
1299 @echo $(DEF5EXPORT16) >>$@.tmpfile
1300 .ENDIF
1301 .IF "$(DEF5EXPORT17)"!=""
1302 @echo $(DEF5EXPORT17) >>$@.tmpfile
1303 .ENDIF
1304 .IF "$(DEF5EXPORT18)"!=""
1305 @echo $(DEF5EXPORT18) >>$@.tmpfile
1306 .ENDIF
1307 .IF "$(DEF5EXPORT19)"!=""
1308 @echo $(DEF5EXPORT19) >>$@.tmpfile
1309 .ENDIF
1310 .IF "$(DEF5EXPORT20)"!=""
1311 @echo $(DEF5EXPORT20) >>$@.tmpfile
1312 .ENDIF
1313 .IF "$(DEF5EXPORTFILE)"!=""
1314 .IF "$(COM)"=="GCC"
1315 $(TYPE) $(DEF5EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
1316 .ELSE
1317 $(TYPE) $(DEF5EXPORTFILE) >> $@.tmpfile
1318 .ENDIF
1319 .ENDIF
1320 @-$(RM) $@
1321 @$(RENAME) $@.tmpfile $@
1322 .ENDIF # "$(GUI)"=="WNT"
1324 .IF "$(GUI)"=="OS2"
1326 #21/02/2006 YD dll names must be 8.3, invoke fix script
1327 #check osl/os2/module.c/osl_loadModule()
1328 SHL5TARGET8=$(shell @fix_shl $(SHL5TARGETN:f))
1330 DEF5FILTER=$(SOLARENV)$/inc$/dummy.flt
1331 DEF5NAMELIST=$(foreach,i,$(DEFLIB5NAME) $(SLB)$/$(i).lib)
1333 .IF "$(link_always)"==""
1334 $(DEF5TARGETN) : \
1335 $(DEF5DEPN) \
1336 $(DEF5EXPORTFILE)
1337 .ELSE # "$(link_always)"==""
1338 $(DEF5TARGETN) .PHONY :
1339 .ENDIF # "$(link_always)"==""
1340 @+-$(RM) $@.tmpfile
1341 .IF "$(QUIET_BUILD)"==""
1342 @echo ------------------------------
1343 .ENDIF
1344 @echo "Making: module definition file" $(@:f)
1345 @echo LIBRARY $(SHL5TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
1346 @echo DATA MULTIPLE >>$@.tmpfile
1347 @echo DESCRIPTION 'StarView 3.00 $(DEF5DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
1348 @echo EXPORTS >>$@.tmpfile
1349 # getversioninfo fuer alle!!
1350 @echo _GetVersionInfo >$@.tmp_ord
1352 .IF "$(DEFLIB5NAME)"!=""
1353 @+echo $(SLB)$/$(DEFLIB5NAME).lib
1354 @+emxexpr $(DEF5NAMELIST) | fix_exp_file >> $@.tmp_ord
1355 .ENDIF # "$(DEFLIB5NAME)"!=""
1357 .IF "$(DEF5EXPORT1)"!=""
1358 @echo $(DEF5EXPORT1) >>$@.tmpfile
1359 .ENDIF
1360 .IF "$(DEF5EXPORT2)"!=""
1361 @echo $(DEF5EXPORT2) >>$@.tmpfile
1362 .ENDIF
1363 .IF "$(DEF5EXPORT3)"!=""
1364 @echo $(DEF5EXPORT3) >>$@.tmpfile
1365 .ENDIF
1366 .IF "$(DEF5EXPORT4)"!=""
1367 @echo $(DEF5EXPORT4) >>$@.tmpfile
1368 .ENDIF
1369 .IF "$(DEF5EXPORT5)"!=""
1370 @echo $(DEF5EXPORT5) >>$@.tmpfile
1371 .ENDIF
1372 .IF "$(DEF5EXPORT6)"!=""
1373 @echo $(DEF5EXPORT6) >>$@.tmpfile
1374 .ENDIF
1375 .IF "$(DEF5EXPORT7)"!=""
1376 @echo $(DEF5EXPORT7) >>$@.tmpfile
1377 .ENDIF
1378 .IF "$(DEF5EXPORT8)"!=""
1379 @echo $(DEF5EXPORT8) >>$@.tmpfile
1380 .ENDIF
1381 .IF "$(DEF5EXPORT9)"!=""
1382 @echo $(DEF5EXPORT9) >>$@.tmpfile
1383 .ENDIF
1384 .IF "$(DEF5EXPORT10)"!=""
1385 @echo $(DEF5EXPORT10) >>$@.tmpfile
1386 .ENDIF
1387 .IF "$(DEF5EXPORT11)"!=""
1388 @echo $(DEF5EXPORT11) >>$@.tmpfile
1389 .ENDIF
1390 .IF "$(DEF5EXPORT12)"!=""
1391 @echo $(DEF5EXPORT12) >>$@.tmpfile
1392 .ENDIF
1393 .IF "$(DEF5EXPORT13)"!=""
1394 @echo $(DEF5EXPORT13) >>$@.tmpfile
1395 .ENDIF
1396 .IF "$(DEF5EXPORT14)"!=""
1397 @echo $(DEF5EXPORT14) >>$@.tmpfile
1398 .ENDIF
1399 .IF "$(DEF5EXPORT15)"!=""
1400 @echo $(DEF5EXPORT15) >>$@.tmpfile
1401 .ENDIF
1402 .IF "$(DEF5EXPORT16)"!=""
1403 @echo $(DEF5EXPORT16) >>$@.tmpfile
1404 .ENDIF
1405 .IF "$(DEF5EXPORT17)"!=""
1406 @echo $(DEF5EXPORT17) >>$@.tmpfile
1407 .ENDIF
1408 .IF "$(DEF5EXPORT18)"!=""
1409 @echo $(DEF5EXPORT18) >>$@.tmpfile
1410 .ENDIF
1411 .IF "$(DEF5EXPORT19)"!=""
1412 @echo $(DEF5EXPORT19) >>$@.tmpfile
1413 .ENDIF
1414 .IF "$(DEF5EXPORT20)"!=""
1415 @echo $(DEF5EXPORT20) >>$@.tmpfile
1416 .ENDIF
1417 .IF "$(DEF5EXPORTFILE)"!=""
1418 @fix_def_file < $(DEF5EXPORTFILE) >> $@.tmp_ord
1419 .ENDIF
1420 @sort < $@.tmp_ord | uniq > $@.exptmpfile
1421 @fix_def_ord < $@.exptmpfile >> $@.tmpfile
1422 @+-$(RM) $@
1423 +$(RENAME) $@.tmpfile $@
1424 @+-$(RM) $@.tmp_ord
1425 @+-$(RM) $@.exptmpfile
1426 +$(IMPLIB) $(IMPLIBFLAGS) $(SHL5IMPLIBN:s/.lib/.a/) $@
1427 +emxomf -o $(SHL5IMPLIBN) $(SHL5IMPLIBN:s/.lib/.a/)
1429 .ENDIF # "$(GUI)"=="OS2"
1431 .IF "$(GUI)"=="UNX"
1432 $(DEF5TARGETN): \
1433 $(DEF5DEPN) \
1434 $(DEF5EXPORTFILE)
1435 @echo just a dummy for UNIX > $@
1436 .ENDIF
1437 .ENDIF # "$(DEF5TARGETN)"!=""
1440 # Anweisungen fuer das Linken
1441 # unroll begin
1443 .IF "$(DEF6TARGETN)"!=""
1445 #to make intuitiv naming work
1446 .IF "$(DEF6LIBNAME)"!=""
1447 DEFLIB6NAME*=$(DEF6LIBNAME)
1448 .ENDIF # "$(DEF6LIBNAME)"!=""
1450 .IF "$(DEFLIB6NAME)"!=""
1451 .IF "$(UPDATER)"!=""
1452 DEF6DEPN+=$(foreach,i,$(DEFLIB6NAME) $(SLB)$/$(i).lib)
1453 .ENDIF # "$(UPDATER)"!=""
1454 .ENDIF
1456 .IF "$(SHL6VERSIONMAP)"!=""
1457 .IF "$(DEF6EXPORTFILE)"==""
1458 .IF "$(GUI)"=="WNT"
1459 DEF6EXPORTFILE=$(MISC)$/$(SHL6VERSIONMAP:b)_$(SHL6TARGET).dxp
1460 .IF "$(COM)"=="GCC"
1461 $(DEF6EXPORTFILE) : $(SHL6OBJS) $(SHL6LIBS)
1462 .ENDIF # .IF "$(COM)"=="GCC"
1464 $(DEF6EXPORTFILE) : $(SHL6VERSIONMAP)
1465 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
1466 .IF "$(COM)"=="GCC"
1467 -grep -v "\*\|?" $@ > $@.exported-symbols
1468 -grep "\*\|?" $@ > $@.symbols-regexp
1469 # Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
1470 # Extract RTTI symbols from all the objects that will be used to build a shared library
1471 .IF "$(SHL6OBJS)"!=""
1472 -echo $(foreach,i,$(SHL6OBJS) $i) | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
1473 .ENDIF
1474 .IF "$(SHL6LIBS)"!=""
1475 -$(TYPE) $(foreach,j,$(SHL6LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
1476 .ENDIF
1477 # overwrite the map file generate into the local output tree with the generated
1478 # exported symbols list
1479 cp $@.exported-symbols $@
1480 .ENDIF # .IF "$(COM)"=="GCC"
1482 .ENDIF # "$(GUI)"=="WNT"
1484 .IF "$(GUI)"=="OS2"
1485 DEF6EXPORTFILE=$(MISC)$/$(SHL6VERSIONMAP:b)_$(SHL6TARGET).dxp
1486 $(DEF6EXPORTFILE) : $(SHL6VERSIONMAP)
1487 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
1488 .ENDIF # "$(GUI)"=="OS2"
1490 .ENDIF # "$(DEF6EXPORTFILE)"==""
1491 .ENDIF # "$(SHL6VERSIONMAP)"!=""
1493 .IF "$(GUI)"=="WNT"
1495 DEF6FILTER=$(SOLARENV)$/inc$/dummy.flt
1497 RMHACK6:=$(RM)
1499 .IF "$(DEF6CEXP)"!=""
1500 EXPORT_ALL_SWITCH=-A $(DEF6CEXP)
1501 .ENDIF
1503 .IF "$(link_always)"==""
1504 $(DEF6TARGETN) : \
1505 $(DEF6DEPN) \
1506 $(DEF6EXPORTFILE)
1507 .ELSE # "$(link_always)"==""
1508 $(DEF6TARGETN) .PHONY :
1509 .ENDIF # "$(link_always)"==""
1510 @-$(RM) $@.tmpfile
1511 .IF "$(QUIET_BUILD)"==""
1512 @echo ------------------------------
1513 .ENDIF
1514 @echo "Making: module definition file" $(@:f)
1515 @echo LIBRARY $(EMQ)"$(SHL6TARGETN:f)$(EMQ)" >$@.tmpfile
1516 .IF "$(COM)"!="GCC"
1517 @echo HEAPSIZE 0 >>$@.tmpfile
1518 .ENDIF
1519 @echo EXPORTS >>$@.tmpfile
1520 # getversioninfo fuer alle!!
1521 @echo GetVersionInfo >>$@.tmpfile
1522 .IF "$(DEFLIB6NAME)"!=""
1523 .IF "$(COM)"=="GCC"
1524 @-$(RM) $(MISC)$/$(SHL6TARGET).exp
1525 dlltool --output-def $(MISC)$/$(SHL6TARGET).exp --export-all-symbols \
1526 `$(TYPE) $(foreach,i,$(DEFLIB6NAME) $(SLB)$/$(i).lib) | sed s#$(ROUT)#$(PRJ)$/$(ROUT)#g`
1527 tail --lines +3 $(MISC)$/$(SHL6TARGET).exp | sed '/^;/d' >>$@.tmpfile
1528 @-$(RM) $(MISC)$/$(SHL6TARGET).exp
1529 .ELSE
1530 .IF "$(SHL6USE_EXPORTS)"==""
1531 @-$(RMHACK6) $(MISC)$/$(SHL6TARGET).exp
1532 @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)$/$(SHL6TARGET).exp $(SLB)$/$(DEFLIB6NAME).lib
1533 @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)$/$(SHL6TARGET).flt $(MISC)$/$(SHL6TARGET).exp >>$@.tmpfile
1534 $(RMHACK6) $(MISC)$/$(SHL6TARGET).exp
1535 .ELSE # "$(SHL6USE_EXPORTS)"==""
1536 @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB6NAME) $(SLB)$/$(i).lib) | $(GREP) EXPORT: > $(MISC)$/$(SHL6TARGET).direct
1537 @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF6FILTER) $(MISC)$/$(SHL6TARGET).direct >>$@.tmpfile
1538 .ENDIF # "$(SHL6USE_EXPORTS)"==""
1539 .ENDIF
1540 .ENDIF # "$(DEFLIB6NAME)"!=""
1541 .IF "$(DEF6EXPORT1)"!=""
1542 @echo $(DEF6EXPORT1) >>$@.tmpfile
1543 .ENDIF
1544 .IF "$(DEF6EXPORT2)"!=""
1545 @echo $(DEF6EXPORT2) >>$@.tmpfile
1546 .ENDIF
1547 .IF "$(DEF6EXPORT3)"!=""
1548 @echo $(DEF6EXPORT3) >>$@.tmpfile
1549 .ENDIF
1550 .IF "$(DEF6EXPORT4)"!=""
1551 @echo $(DEF6EXPORT4) >>$@.tmpfile
1552 .ENDIF
1553 .IF "$(DEF6EXPORT5)"!=""
1554 @echo $(DEF6EXPORT5) >>$@.tmpfile
1555 .ENDIF
1556 .IF "$(DEF6EXPORT6)"!=""
1557 @echo $(DEF6EXPORT6) >>$@.tmpfile
1558 .ENDIF
1559 .IF "$(DEF6EXPORT7)"!=""
1560 @echo $(DEF6EXPORT7) >>$@.tmpfile
1561 .ENDIF
1562 .IF "$(DEF6EXPORT8)"!=""
1563 @echo $(DEF6EXPORT8) >>$@.tmpfile
1564 .ENDIF
1565 .IF "$(DEF6EXPORT9)"!=""
1566 @echo $(DEF6EXPORT9) >>$@.tmpfile
1567 .ENDIF
1568 .IF "$(DEF6EXPORT10)"!=""
1569 @echo $(DEF6EXPORT10) >>$@.tmpfile
1570 .ENDIF
1571 .IF "$(DEF6EXPORT11)"!=""
1572 @echo $(DEF6EXPORT11) >>$@.tmpfile
1573 .ENDIF
1574 .IF "$(DEF6EXPORT12)"!=""
1575 @echo $(DEF6EXPORT12) >>$@.tmpfile
1576 .ENDIF
1577 .IF "$(DEF6EXPORT13)"!=""
1578 @echo $(DEF6EXPORT13) >>$@.tmpfile
1579 .ENDIF
1580 .IF "$(DEF6EXPORT14)"!=""
1581 @echo $(DEF6EXPORT14) >>$@.tmpfile
1582 .ENDIF
1583 .IF "$(DEF6EXPORT15)"!=""
1584 @echo $(DEF6EXPORT15) >>$@.tmpfile
1585 .ENDIF
1586 .IF "$(DEF6EXPORT16)"!=""
1587 @echo $(DEF6EXPORT16) >>$@.tmpfile
1588 .ENDIF
1589 .IF "$(DEF6EXPORT17)"!=""
1590 @echo $(DEF6EXPORT17) >>$@.tmpfile
1591 .ENDIF
1592 .IF "$(DEF6EXPORT18)"!=""
1593 @echo $(DEF6EXPORT18) >>$@.tmpfile
1594 .ENDIF
1595 .IF "$(DEF6EXPORT19)"!=""
1596 @echo $(DEF6EXPORT19) >>$@.tmpfile
1597 .ENDIF
1598 .IF "$(DEF6EXPORT20)"!=""
1599 @echo $(DEF6EXPORT20) >>$@.tmpfile
1600 .ENDIF
1601 .IF "$(DEF6EXPORTFILE)"!=""
1602 .IF "$(COM)"=="GCC"
1603 $(TYPE) $(DEF6EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
1604 .ELSE
1605 $(TYPE) $(DEF6EXPORTFILE) >> $@.tmpfile
1606 .ENDIF
1607 .ENDIF
1608 @-$(RM) $@
1609 @$(RENAME) $@.tmpfile $@
1610 .ENDIF # "$(GUI)"=="WNT"
1612 .IF "$(GUI)"=="OS2"
1614 #21/02/2006 YD dll names must be 8.3, invoke fix script
1615 #check osl/os2/module.c/osl_loadModule()
1616 SHL6TARGET8=$(shell @fix_shl $(SHL6TARGETN:f))
1618 DEF6FILTER=$(SOLARENV)$/inc$/dummy.flt
1619 DEF6NAMELIST=$(foreach,i,$(DEFLIB6NAME) $(SLB)$/$(i).lib)
1621 .IF "$(link_always)"==""
1622 $(DEF6TARGETN) : \
1623 $(DEF6DEPN) \
1624 $(DEF6EXPORTFILE)
1625 .ELSE # "$(link_always)"==""
1626 $(DEF6TARGETN) .PHONY :
1627 .ENDIF # "$(link_always)"==""
1628 @+-$(RM) $@.tmpfile
1629 .IF "$(QUIET_BUILD)"==""
1630 @echo ------------------------------
1631 .ENDIF
1632 @echo "Making: module definition file" $(@:f)
1633 @echo LIBRARY $(SHL6TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
1634 @echo DATA MULTIPLE >>$@.tmpfile
1635 @echo DESCRIPTION 'StarView 3.00 $(DEF6DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
1636 @echo EXPORTS >>$@.tmpfile
1637 # getversioninfo fuer alle!!
1638 @echo _GetVersionInfo >$@.tmp_ord
1640 .IF "$(DEFLIB6NAME)"!=""
1641 @+echo $(SLB)$/$(DEFLIB6NAME).lib
1642 @+emxexpr $(DEF6NAMELIST) | fix_exp_file >> $@.tmp_ord
1643 .ENDIF # "$(DEFLIB6NAME)"!=""
1645 .IF "$(DEF6EXPORT1)"!=""
1646 @echo $(DEF6EXPORT1) >>$@.tmpfile
1647 .ENDIF
1648 .IF "$(DEF6EXPORT2)"!=""
1649 @echo $(DEF6EXPORT2) >>$@.tmpfile
1650 .ENDIF
1651 .IF "$(DEF6EXPORT3)"!=""
1652 @echo $(DEF6EXPORT3) >>$@.tmpfile
1653 .ENDIF
1654 .IF "$(DEF6EXPORT4)"!=""
1655 @echo $(DEF6EXPORT4) >>$@.tmpfile
1656 .ENDIF
1657 .IF "$(DEF6EXPORT5)"!=""
1658 @echo $(DEF6EXPORT5) >>$@.tmpfile
1659 .ENDIF
1660 .IF "$(DEF6EXPORT6)"!=""
1661 @echo $(DEF6EXPORT6) >>$@.tmpfile
1662 .ENDIF
1663 .IF "$(DEF6EXPORT7)"!=""
1664 @echo $(DEF6EXPORT7) >>$@.tmpfile
1665 .ENDIF
1666 .IF "$(DEF6EXPORT8)"!=""
1667 @echo $(DEF6EXPORT8) >>$@.tmpfile
1668 .ENDIF
1669 .IF "$(DEF6EXPORT9)"!=""
1670 @echo $(DEF6EXPORT9) >>$@.tmpfile
1671 .ENDIF
1672 .IF "$(DEF6EXPORT10)"!=""
1673 @echo $(DEF6EXPORT10) >>$@.tmpfile
1674 .ENDIF
1675 .IF "$(DEF6EXPORT11)"!=""
1676 @echo $(DEF6EXPORT11) >>$@.tmpfile
1677 .ENDIF
1678 .IF "$(DEF6EXPORT12)"!=""
1679 @echo $(DEF6EXPORT12) >>$@.tmpfile
1680 .ENDIF
1681 .IF "$(DEF6EXPORT13)"!=""
1682 @echo $(DEF6EXPORT13) >>$@.tmpfile
1683 .ENDIF
1684 .IF "$(DEF6EXPORT14)"!=""
1685 @echo $(DEF6EXPORT14) >>$@.tmpfile
1686 .ENDIF
1687 .IF "$(DEF6EXPORT15)"!=""
1688 @echo $(DEF6EXPORT15) >>$@.tmpfile
1689 .ENDIF
1690 .IF "$(DEF6EXPORT16)"!=""
1691 @echo $(DEF6EXPORT16) >>$@.tmpfile
1692 .ENDIF
1693 .IF "$(DEF6EXPORT17)"!=""
1694 @echo $(DEF6EXPORT17) >>$@.tmpfile
1695 .ENDIF
1696 .IF "$(DEF6EXPORT18)"!=""
1697 @echo $(DEF6EXPORT18) >>$@.tmpfile
1698 .ENDIF
1699 .IF "$(DEF6EXPORT19)"!=""
1700 @echo $(DEF6EXPORT19) >>$@.tmpfile
1701 .ENDIF
1702 .IF "$(DEF6EXPORT20)"!=""
1703 @echo $(DEF6EXPORT20) >>$@.tmpfile
1704 .ENDIF
1705 .IF "$(DEF6EXPORTFILE)"!=""
1706 @fix_def_file < $(DEF6EXPORTFILE) >> $@.tmp_ord
1707 .ENDIF
1708 @sort < $@.tmp_ord | uniq > $@.exptmpfile
1709 @fix_def_ord < $@.exptmpfile >> $@.tmpfile
1710 @+-$(RM) $@
1711 +$(RENAME) $@.tmpfile $@
1712 @+-$(RM) $@.tmp_ord
1713 @+-$(RM) $@.exptmpfile
1714 +$(IMPLIB) $(IMPLIBFLAGS) $(SHL6IMPLIBN:s/.lib/.a/) $@
1715 +emxomf -o $(SHL6IMPLIBN) $(SHL6IMPLIBN:s/.lib/.a/)
1717 .ENDIF # "$(GUI)"=="OS2"
1719 .IF "$(GUI)"=="UNX"
1720 $(DEF6TARGETN): \
1721 $(DEF6DEPN) \
1722 $(DEF6EXPORTFILE)
1723 @echo just a dummy for UNIX > $@
1724 .ENDIF
1725 .ENDIF # "$(DEF6TARGETN)"!=""
1728 # Anweisungen fuer das Linken
1729 # unroll begin
1731 .IF "$(DEF7TARGETN)"!=""
1733 #to make intuitiv naming work
1734 .IF "$(DEF7LIBNAME)"!=""
1735 DEFLIB7NAME*=$(DEF7LIBNAME)
1736 .ENDIF # "$(DEF7LIBNAME)"!=""
1738 .IF "$(DEFLIB7NAME)"!=""
1739 .IF "$(UPDATER)"!=""
1740 DEF7DEPN+=$(foreach,i,$(DEFLIB7NAME) $(SLB)$/$(i).lib)
1741 .ENDIF # "$(UPDATER)"!=""
1742 .ENDIF
1744 .IF "$(SHL7VERSIONMAP)"!=""
1745 .IF "$(DEF7EXPORTFILE)"==""
1746 .IF "$(GUI)"=="WNT"
1747 DEF7EXPORTFILE=$(MISC)$/$(SHL7VERSIONMAP:b)_$(SHL7TARGET).dxp
1748 .IF "$(COM)"=="GCC"
1749 $(DEF7EXPORTFILE) : $(SHL7OBJS) $(SHL7LIBS)
1750 .ENDIF # .IF "$(COM)"=="GCC"
1752 $(DEF7EXPORTFILE) : $(SHL7VERSIONMAP)
1753 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
1754 .IF "$(COM)"=="GCC"
1755 -grep -v "\*\|?" $@ > $@.exported-symbols
1756 -grep "\*\|?" $@ > $@.symbols-regexp
1757 # Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
1758 # Extract RTTI symbols from all the objects that will be used to build a shared library
1759 .IF "$(SHL7OBJS)"!=""
1760 -echo $(foreach,i,$(SHL7OBJS) $i) | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
1761 .ENDIF
1762 .IF "$(SHL7LIBS)"!=""
1763 -$(TYPE) $(foreach,j,$(SHL7LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
1764 .ENDIF
1765 # overwrite the map file generate into the local output tree with the generated
1766 # exported symbols list
1767 cp $@.exported-symbols $@
1768 .ENDIF # .IF "$(COM)"=="GCC"
1770 .ENDIF # "$(GUI)"=="WNT"
1772 .IF "$(GUI)"=="OS2"
1773 DEF7EXPORTFILE=$(MISC)$/$(SHL7VERSIONMAP:b)_$(SHL7TARGET).dxp
1774 $(DEF7EXPORTFILE) : $(SHL7VERSIONMAP)
1775 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
1776 .ENDIF # "$(GUI)"=="OS2"
1778 .ENDIF # "$(DEF7EXPORTFILE)"==""
1779 .ENDIF # "$(SHL7VERSIONMAP)"!=""
1781 .IF "$(GUI)"=="WNT"
1783 DEF7FILTER=$(SOLARENV)$/inc$/dummy.flt
1785 RMHACK7:=$(RM)
1787 .IF "$(DEF7CEXP)"!=""
1788 EXPORT_ALL_SWITCH=-A $(DEF7CEXP)
1789 .ENDIF
1791 .IF "$(link_always)"==""
1792 $(DEF7TARGETN) : \
1793 $(DEF7DEPN) \
1794 $(DEF7EXPORTFILE)
1795 .ELSE # "$(link_always)"==""
1796 $(DEF7TARGETN) .PHONY :
1797 .ENDIF # "$(link_always)"==""
1798 @-$(RM) $@.tmpfile
1799 .IF "$(QUIET_BUILD)"==""
1800 @echo ------------------------------
1801 .ENDIF
1802 @echo "Making: module definition file" $(@:f)
1803 @echo LIBRARY $(EMQ)"$(SHL7TARGETN:f)$(EMQ)" >$@.tmpfile
1804 .IF "$(COM)"!="GCC"
1805 @echo HEAPSIZE 0 >>$@.tmpfile
1806 .ENDIF
1807 @echo EXPORTS >>$@.tmpfile
1808 # getversioninfo fuer alle!!
1809 @echo GetVersionInfo >>$@.tmpfile
1810 .IF "$(DEFLIB7NAME)"!=""
1811 .IF "$(COM)"=="GCC"
1812 @-$(RM) $(MISC)$/$(SHL7TARGET).exp
1813 dlltool --output-def $(MISC)$/$(SHL7TARGET).exp --export-all-symbols \
1814 `$(TYPE) $(foreach,i,$(DEFLIB7NAME) $(SLB)$/$(i).lib) | sed s#$(ROUT)#$(PRJ)$/$(ROUT)#g`
1815 tail --lines +3 $(MISC)$/$(SHL7TARGET).exp | sed '/^;/d' >>$@.tmpfile
1816 @-$(RM) $(MISC)$/$(SHL7TARGET).exp
1817 .ELSE
1818 .IF "$(SHL7USE_EXPORTS)"==""
1819 @-$(RMHACK7) $(MISC)$/$(SHL7TARGET).exp
1820 @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)$/$(SHL7TARGET).exp $(SLB)$/$(DEFLIB7NAME).lib
1821 @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)$/$(SHL7TARGET).flt $(MISC)$/$(SHL7TARGET).exp >>$@.tmpfile
1822 $(RMHACK7) $(MISC)$/$(SHL7TARGET).exp
1823 .ELSE # "$(SHL7USE_EXPORTS)"==""
1824 @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB7NAME) $(SLB)$/$(i).lib) | $(GREP) EXPORT: > $(MISC)$/$(SHL7TARGET).direct
1825 @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF7FILTER) $(MISC)$/$(SHL7TARGET).direct >>$@.tmpfile
1826 .ENDIF # "$(SHL7USE_EXPORTS)"==""
1827 .ENDIF
1828 .ENDIF # "$(DEFLIB7NAME)"!=""
1829 .IF "$(DEF7EXPORT1)"!=""
1830 @echo $(DEF7EXPORT1) >>$@.tmpfile
1831 .ENDIF
1832 .IF "$(DEF7EXPORT2)"!=""
1833 @echo $(DEF7EXPORT2) >>$@.tmpfile
1834 .ENDIF
1835 .IF "$(DEF7EXPORT3)"!=""
1836 @echo $(DEF7EXPORT3) >>$@.tmpfile
1837 .ENDIF
1838 .IF "$(DEF7EXPORT4)"!=""
1839 @echo $(DEF7EXPORT4) >>$@.tmpfile
1840 .ENDIF
1841 .IF "$(DEF7EXPORT5)"!=""
1842 @echo $(DEF7EXPORT5) >>$@.tmpfile
1843 .ENDIF
1844 .IF "$(DEF7EXPORT6)"!=""
1845 @echo $(DEF7EXPORT6) >>$@.tmpfile
1846 .ENDIF
1847 .IF "$(DEF7EXPORT7)"!=""
1848 @echo $(DEF7EXPORT7) >>$@.tmpfile
1849 .ENDIF
1850 .IF "$(DEF7EXPORT8)"!=""
1851 @echo $(DEF7EXPORT8) >>$@.tmpfile
1852 .ENDIF
1853 .IF "$(DEF7EXPORT9)"!=""
1854 @echo $(DEF7EXPORT9) >>$@.tmpfile
1855 .ENDIF
1856 .IF "$(DEF7EXPORT10)"!=""
1857 @echo $(DEF7EXPORT10) >>$@.tmpfile
1858 .ENDIF
1859 .IF "$(DEF7EXPORT11)"!=""
1860 @echo $(DEF7EXPORT11) >>$@.tmpfile
1861 .ENDIF
1862 .IF "$(DEF7EXPORT12)"!=""
1863 @echo $(DEF7EXPORT12) >>$@.tmpfile
1864 .ENDIF
1865 .IF "$(DEF7EXPORT13)"!=""
1866 @echo $(DEF7EXPORT13) >>$@.tmpfile
1867 .ENDIF
1868 .IF "$(DEF7EXPORT14)"!=""
1869 @echo $(DEF7EXPORT14) >>$@.tmpfile
1870 .ENDIF
1871 .IF "$(DEF7EXPORT15)"!=""
1872 @echo $(DEF7EXPORT15) >>$@.tmpfile
1873 .ENDIF
1874 .IF "$(DEF7EXPORT16)"!=""
1875 @echo $(DEF7EXPORT16) >>$@.tmpfile
1876 .ENDIF
1877 .IF "$(DEF7EXPORT17)"!=""
1878 @echo $(DEF7EXPORT17) >>$@.tmpfile
1879 .ENDIF
1880 .IF "$(DEF7EXPORT18)"!=""
1881 @echo $(DEF7EXPORT18) >>$@.tmpfile
1882 .ENDIF
1883 .IF "$(DEF7EXPORT19)"!=""
1884 @echo $(DEF7EXPORT19) >>$@.tmpfile
1885 .ENDIF
1886 .IF "$(DEF7EXPORT20)"!=""
1887 @echo $(DEF7EXPORT20) >>$@.tmpfile
1888 .ENDIF
1889 .IF "$(DEF7EXPORTFILE)"!=""
1890 .IF "$(COM)"=="GCC"
1891 $(TYPE) $(DEF7EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
1892 .ELSE
1893 $(TYPE) $(DEF7EXPORTFILE) >> $@.tmpfile
1894 .ENDIF
1895 .ENDIF
1896 @-$(RM) $@
1897 @$(RENAME) $@.tmpfile $@
1898 .ENDIF # "$(GUI)"=="WNT"
1900 .IF "$(GUI)"=="OS2"
1902 #21/02/2006 YD dll names must be 8.3, invoke fix script
1903 #check osl/os2/module.c/osl_loadModule()
1904 SHL7TARGET8=$(shell @fix_shl $(SHL7TARGETN:f))
1906 DEF7FILTER=$(SOLARENV)$/inc$/dummy.flt
1907 DEF7NAMELIST=$(foreach,i,$(DEFLIB7NAME) $(SLB)$/$(i).lib)
1909 .IF "$(link_always)"==""
1910 $(DEF7TARGETN) : \
1911 $(DEF7DEPN) \
1912 $(DEF7EXPORTFILE)
1913 .ELSE # "$(link_always)"==""
1914 $(DEF7TARGETN) .PHONY :
1915 .ENDIF # "$(link_always)"==""
1916 @+-$(RM) $@.tmpfile
1917 .IF "$(QUIET_BUILD)"==""
1918 @echo ------------------------------
1919 .ENDIF
1920 @echo "Making: module definition file" $(@:f)
1921 @echo LIBRARY $(SHL7TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
1922 @echo DATA MULTIPLE >>$@.tmpfile
1923 @echo DESCRIPTION 'StarView 3.00 $(DEF7DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
1924 @echo EXPORTS >>$@.tmpfile
1925 # getversioninfo fuer alle!!
1926 @echo _GetVersionInfo >$@.tmp_ord
1928 .IF "$(DEFLIB7NAME)"!=""
1929 @+echo $(SLB)$/$(DEFLIB7NAME).lib
1930 @+emxexpr $(DEF7NAMELIST) | fix_exp_file >> $@.tmp_ord
1931 .ENDIF # "$(DEFLIB7NAME)"!=""
1933 .IF "$(DEF7EXPORT1)"!=""
1934 @echo $(DEF7EXPORT1) >>$@.tmpfile
1935 .ENDIF
1936 .IF "$(DEF7EXPORT2)"!=""
1937 @echo $(DEF7EXPORT2) >>$@.tmpfile
1938 .ENDIF
1939 .IF "$(DEF7EXPORT3)"!=""
1940 @echo $(DEF7EXPORT3) >>$@.tmpfile
1941 .ENDIF
1942 .IF "$(DEF7EXPORT4)"!=""
1943 @echo $(DEF7EXPORT4) >>$@.tmpfile
1944 .ENDIF
1945 .IF "$(DEF7EXPORT5)"!=""
1946 @echo $(DEF7EXPORT5) >>$@.tmpfile
1947 .ENDIF
1948 .IF "$(DEF7EXPORT6)"!=""
1949 @echo $(DEF7EXPORT6) >>$@.tmpfile
1950 .ENDIF
1951 .IF "$(DEF7EXPORT7)"!=""
1952 @echo $(DEF7EXPORT7) >>$@.tmpfile
1953 .ENDIF
1954 .IF "$(DEF7EXPORT8)"!=""
1955 @echo $(DEF7EXPORT8) >>$@.tmpfile
1956 .ENDIF
1957 .IF "$(DEF7EXPORT9)"!=""
1958 @echo $(DEF7EXPORT9) >>$@.tmpfile
1959 .ENDIF
1960 .IF "$(DEF7EXPORT10)"!=""
1961 @echo $(DEF7EXPORT10) >>$@.tmpfile
1962 .ENDIF
1963 .IF "$(DEF7EXPORT11)"!=""
1964 @echo $(DEF7EXPORT11) >>$@.tmpfile
1965 .ENDIF
1966 .IF "$(DEF7EXPORT12)"!=""
1967 @echo $(DEF7EXPORT12) >>$@.tmpfile
1968 .ENDIF
1969 .IF "$(DEF7EXPORT13)"!=""
1970 @echo $(DEF7EXPORT13) >>$@.tmpfile
1971 .ENDIF
1972 .IF "$(DEF7EXPORT14)"!=""
1973 @echo $(DEF7EXPORT14) >>$@.tmpfile
1974 .ENDIF
1975 .IF "$(DEF7EXPORT15)"!=""
1976 @echo $(DEF7EXPORT15) >>$@.tmpfile
1977 .ENDIF
1978 .IF "$(DEF7EXPORT16)"!=""
1979 @echo $(DEF7EXPORT16) >>$@.tmpfile
1980 .ENDIF
1981 .IF "$(DEF7EXPORT17)"!=""
1982 @echo $(DEF7EXPORT17) >>$@.tmpfile
1983 .ENDIF
1984 .IF "$(DEF7EXPORT18)"!=""
1985 @echo $(DEF7EXPORT18) >>$@.tmpfile
1986 .ENDIF
1987 .IF "$(DEF7EXPORT19)"!=""
1988 @echo $(DEF7EXPORT19) >>$@.tmpfile
1989 .ENDIF
1990 .IF "$(DEF7EXPORT20)"!=""
1991 @echo $(DEF7EXPORT20) >>$@.tmpfile
1992 .ENDIF
1993 .IF "$(DEF7EXPORTFILE)"!=""
1994 @fix_def_file < $(DEF7EXPORTFILE) >> $@.tmp_ord
1995 .ENDIF
1996 @sort < $@.tmp_ord | uniq > $@.exptmpfile
1997 @fix_def_ord < $@.exptmpfile >> $@.tmpfile
1998 @+-$(RM) $@
1999 +$(RENAME) $@.tmpfile $@
2000 @+-$(RM) $@.tmp_ord
2001 @+-$(RM) $@.exptmpfile
2002 +$(IMPLIB) $(IMPLIBFLAGS) $(SHL7IMPLIBN:s/.lib/.a/) $@
2003 +emxomf -o $(SHL7IMPLIBN) $(SHL7IMPLIBN:s/.lib/.a/)
2005 .ENDIF # "$(GUI)"=="OS2"
2007 .IF "$(GUI)"=="UNX"
2008 $(DEF7TARGETN): \
2009 $(DEF7DEPN) \
2010 $(DEF7EXPORTFILE)
2011 @echo just a dummy for UNIX > $@
2012 .ENDIF
2013 .ENDIF # "$(DEF7TARGETN)"!=""
2016 # Anweisungen fuer das Linken
2017 # unroll begin
2019 .IF "$(DEF8TARGETN)"!=""
2021 #to make intuitiv naming work
2022 .IF "$(DEF8LIBNAME)"!=""
2023 DEFLIB8NAME*=$(DEF8LIBNAME)
2024 .ENDIF # "$(DEF8LIBNAME)"!=""
2026 .IF "$(DEFLIB8NAME)"!=""
2027 .IF "$(UPDATER)"!=""
2028 DEF8DEPN+=$(foreach,i,$(DEFLIB8NAME) $(SLB)$/$(i).lib)
2029 .ENDIF # "$(UPDATER)"!=""
2030 .ENDIF
2032 .IF "$(SHL8VERSIONMAP)"!=""
2033 .IF "$(DEF8EXPORTFILE)"==""
2034 .IF "$(GUI)"=="WNT"
2035 DEF8EXPORTFILE=$(MISC)$/$(SHL8VERSIONMAP:b)_$(SHL8TARGET).dxp
2036 .IF "$(COM)"=="GCC"
2037 $(DEF8EXPORTFILE) : $(SHL8OBJS) $(SHL8LIBS)
2038 .ENDIF # .IF "$(COM)"=="GCC"
2040 $(DEF8EXPORTFILE) : $(SHL8VERSIONMAP)
2041 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
2042 .IF "$(COM)"=="GCC"
2043 -grep -v "\*\|?" $@ > $@.exported-symbols
2044 -grep "\*\|?" $@ > $@.symbols-regexp
2045 # Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
2046 # Extract RTTI symbols from all the objects that will be used to build a shared library
2047 .IF "$(SHL8OBJS)"!=""
2048 -echo $(foreach,i,$(SHL8OBJS) $i) | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
2049 .ENDIF
2050 .IF "$(SHL8LIBS)"!=""
2051 -$(TYPE) $(foreach,j,$(SHL8LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
2052 .ENDIF
2053 # overwrite the map file generate into the local output tree with the generated
2054 # exported symbols list
2055 cp $@.exported-symbols $@
2056 .ENDIF # .IF "$(COM)"=="GCC"
2058 .ENDIF # "$(GUI)"=="WNT"
2060 .IF "$(GUI)"=="OS2"
2061 DEF8EXPORTFILE=$(MISC)$/$(SHL8VERSIONMAP:b)_$(SHL8TARGET).dxp
2062 $(DEF8EXPORTFILE) : $(SHL8VERSIONMAP)
2063 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
2064 .ENDIF # "$(GUI)"=="OS2"
2066 .ENDIF # "$(DEF8EXPORTFILE)"==""
2067 .ENDIF # "$(SHL8VERSIONMAP)"!=""
2069 .IF "$(GUI)"=="WNT"
2071 DEF8FILTER=$(SOLARENV)$/inc$/dummy.flt
2073 RMHACK8:=$(RM)
2075 .IF "$(DEF8CEXP)"!=""
2076 EXPORT_ALL_SWITCH=-A $(DEF8CEXP)
2077 .ENDIF
2079 .IF "$(link_always)"==""
2080 $(DEF8TARGETN) : \
2081 $(DEF8DEPN) \
2082 $(DEF8EXPORTFILE)
2083 .ELSE # "$(link_always)"==""
2084 $(DEF8TARGETN) .PHONY :
2085 .ENDIF # "$(link_always)"==""
2086 @-$(RM) $@.tmpfile
2087 .IF "$(QUIET_BUILD)"==""
2088 @echo ------------------------------
2089 .ENDIF
2090 @echo "Making: module definition file" $(@:f)
2091 @echo LIBRARY $(EMQ)"$(SHL8TARGETN:f)$(EMQ)" >$@.tmpfile
2092 .IF "$(COM)"!="GCC"
2093 @echo HEAPSIZE 0 >>$@.tmpfile
2094 .ENDIF
2095 @echo EXPORTS >>$@.tmpfile
2096 # getversioninfo fuer alle!!
2097 @echo GetVersionInfo >>$@.tmpfile
2098 .IF "$(DEFLIB8NAME)"!=""
2099 .IF "$(COM)"=="GCC"
2100 @-$(RM) $(MISC)$/$(SHL8TARGET).exp
2101 dlltool --output-def $(MISC)$/$(SHL8TARGET).exp --export-all-symbols \
2102 `$(TYPE) $(foreach,i,$(DEFLIB8NAME) $(SLB)$/$(i).lib) | sed s#$(ROUT)#$(PRJ)$/$(ROUT)#g`
2103 tail --lines +3 $(MISC)$/$(SHL8TARGET).exp | sed '/^;/d' >>$@.tmpfile
2104 @-$(RM) $(MISC)$/$(SHL8TARGET).exp
2105 .ELSE
2106 .IF "$(SHL8USE_EXPORTS)"==""
2107 @-$(RMHACK8) $(MISC)$/$(SHL8TARGET).exp
2108 @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)$/$(SHL8TARGET).exp $(SLB)$/$(DEFLIB8NAME).lib
2109 @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)$/$(SHL8TARGET).flt $(MISC)$/$(SHL8TARGET).exp >>$@.tmpfile
2110 $(RMHACK8) $(MISC)$/$(SHL8TARGET).exp
2111 .ELSE # "$(SHL8USE_EXPORTS)"==""
2112 @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB8NAME) $(SLB)$/$(i).lib) | $(GREP) EXPORT: > $(MISC)$/$(SHL8TARGET).direct
2113 @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF8FILTER) $(MISC)$/$(SHL8TARGET).direct >>$@.tmpfile
2114 .ENDIF # "$(SHL8USE_EXPORTS)"==""
2115 .ENDIF
2116 .ENDIF # "$(DEFLIB8NAME)"!=""
2117 .IF "$(DEF8EXPORT1)"!=""
2118 @echo $(DEF8EXPORT1) >>$@.tmpfile
2119 .ENDIF
2120 .IF "$(DEF8EXPORT2)"!=""
2121 @echo $(DEF8EXPORT2) >>$@.tmpfile
2122 .ENDIF
2123 .IF "$(DEF8EXPORT3)"!=""
2124 @echo $(DEF8EXPORT3) >>$@.tmpfile
2125 .ENDIF
2126 .IF "$(DEF8EXPORT4)"!=""
2127 @echo $(DEF8EXPORT4) >>$@.tmpfile
2128 .ENDIF
2129 .IF "$(DEF8EXPORT5)"!=""
2130 @echo $(DEF8EXPORT5) >>$@.tmpfile
2131 .ENDIF
2132 .IF "$(DEF8EXPORT6)"!=""
2133 @echo $(DEF8EXPORT6) >>$@.tmpfile
2134 .ENDIF
2135 .IF "$(DEF8EXPORT7)"!=""
2136 @echo $(DEF8EXPORT7) >>$@.tmpfile
2137 .ENDIF
2138 .IF "$(DEF8EXPORT8)"!=""
2139 @echo $(DEF8EXPORT8) >>$@.tmpfile
2140 .ENDIF
2141 .IF "$(DEF8EXPORT9)"!=""
2142 @echo $(DEF8EXPORT9) >>$@.tmpfile
2143 .ENDIF
2144 .IF "$(DEF8EXPORT10)"!=""
2145 @echo $(DEF8EXPORT10) >>$@.tmpfile
2146 .ENDIF
2147 .IF "$(DEF8EXPORT11)"!=""
2148 @echo $(DEF8EXPORT11) >>$@.tmpfile
2149 .ENDIF
2150 .IF "$(DEF8EXPORT12)"!=""
2151 @echo $(DEF8EXPORT12) >>$@.tmpfile
2152 .ENDIF
2153 .IF "$(DEF8EXPORT13)"!=""
2154 @echo $(DEF8EXPORT13) >>$@.tmpfile
2155 .ENDIF
2156 .IF "$(DEF8EXPORT14)"!=""
2157 @echo $(DEF8EXPORT14) >>$@.tmpfile
2158 .ENDIF
2159 .IF "$(DEF8EXPORT15)"!=""
2160 @echo $(DEF8EXPORT15) >>$@.tmpfile
2161 .ENDIF
2162 .IF "$(DEF8EXPORT16)"!=""
2163 @echo $(DEF8EXPORT16) >>$@.tmpfile
2164 .ENDIF
2165 .IF "$(DEF8EXPORT17)"!=""
2166 @echo $(DEF8EXPORT17) >>$@.tmpfile
2167 .ENDIF
2168 .IF "$(DEF8EXPORT18)"!=""
2169 @echo $(DEF8EXPORT18) >>$@.tmpfile
2170 .ENDIF
2171 .IF "$(DEF8EXPORT19)"!=""
2172 @echo $(DEF8EXPORT19) >>$@.tmpfile
2173 .ENDIF
2174 .IF "$(DEF8EXPORT20)"!=""
2175 @echo $(DEF8EXPORT20) >>$@.tmpfile
2176 .ENDIF
2177 .IF "$(DEF8EXPORTFILE)"!=""
2178 .IF "$(COM)"=="GCC"
2179 $(TYPE) $(DEF8EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
2180 .ELSE
2181 $(TYPE) $(DEF8EXPORTFILE) >> $@.tmpfile
2182 .ENDIF
2183 .ENDIF
2184 @-$(RM) $@
2185 @$(RENAME) $@.tmpfile $@
2186 .ENDIF # "$(GUI)"=="WNT"
2188 .IF "$(GUI)"=="OS2"
2190 #21/02/2006 YD dll names must be 8.3, invoke fix script
2191 #check osl/os2/module.c/osl_loadModule()
2192 SHL8TARGET8=$(shell @fix_shl $(SHL8TARGETN:f))
2194 DEF8FILTER=$(SOLARENV)$/inc$/dummy.flt
2195 DEF8NAMELIST=$(foreach,i,$(DEFLIB8NAME) $(SLB)$/$(i).lib)
2197 .IF "$(link_always)"==""
2198 $(DEF8TARGETN) : \
2199 $(DEF8DEPN) \
2200 $(DEF8EXPORTFILE)
2201 .ELSE # "$(link_always)"==""
2202 $(DEF8TARGETN) .PHONY :
2203 .ENDIF # "$(link_always)"==""
2204 @+-$(RM) $@.tmpfile
2205 .IF "$(QUIET_BUILD)"==""
2206 @echo ------------------------------
2207 .ENDIF
2208 @echo "Making: module definition file" $(@:f)
2209 @echo LIBRARY $(SHL8TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
2210 @echo DATA MULTIPLE >>$@.tmpfile
2211 @echo DESCRIPTION 'StarView 3.00 $(DEF8DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
2212 @echo EXPORTS >>$@.tmpfile
2213 # getversioninfo fuer alle!!
2214 @echo _GetVersionInfo >$@.tmp_ord
2216 .IF "$(DEFLIB8NAME)"!=""
2217 @+echo $(SLB)$/$(DEFLIB8NAME).lib
2218 @+emxexpr $(DEF8NAMELIST) | fix_exp_file >> $@.tmp_ord
2219 .ENDIF # "$(DEFLIB8NAME)"!=""
2221 .IF "$(DEF8EXPORT1)"!=""
2222 @echo $(DEF8EXPORT1) >>$@.tmpfile
2223 .ENDIF
2224 .IF "$(DEF8EXPORT2)"!=""
2225 @echo $(DEF8EXPORT2) >>$@.tmpfile
2226 .ENDIF
2227 .IF "$(DEF8EXPORT3)"!=""
2228 @echo $(DEF8EXPORT3) >>$@.tmpfile
2229 .ENDIF
2230 .IF "$(DEF8EXPORT4)"!=""
2231 @echo $(DEF8EXPORT4) >>$@.tmpfile
2232 .ENDIF
2233 .IF "$(DEF8EXPORT5)"!=""
2234 @echo $(DEF8EXPORT5) >>$@.tmpfile
2235 .ENDIF
2236 .IF "$(DEF8EXPORT6)"!=""
2237 @echo $(DEF8EXPORT6) >>$@.tmpfile
2238 .ENDIF
2239 .IF "$(DEF8EXPORT7)"!=""
2240 @echo $(DEF8EXPORT7) >>$@.tmpfile
2241 .ENDIF
2242 .IF "$(DEF8EXPORT8)"!=""
2243 @echo $(DEF8EXPORT8) >>$@.tmpfile
2244 .ENDIF
2245 .IF "$(DEF8EXPORT9)"!=""
2246 @echo $(DEF8EXPORT9) >>$@.tmpfile
2247 .ENDIF
2248 .IF "$(DEF8EXPORT10)"!=""
2249 @echo $(DEF8EXPORT10) >>$@.tmpfile
2250 .ENDIF
2251 .IF "$(DEF8EXPORT11)"!=""
2252 @echo $(DEF8EXPORT11) >>$@.tmpfile
2253 .ENDIF
2254 .IF "$(DEF8EXPORT12)"!=""
2255 @echo $(DEF8EXPORT12) >>$@.tmpfile
2256 .ENDIF
2257 .IF "$(DEF8EXPORT13)"!=""
2258 @echo $(DEF8EXPORT13) >>$@.tmpfile
2259 .ENDIF
2260 .IF "$(DEF8EXPORT14)"!=""
2261 @echo $(DEF8EXPORT14) >>$@.tmpfile
2262 .ENDIF
2263 .IF "$(DEF8EXPORT15)"!=""
2264 @echo $(DEF8EXPORT15) >>$@.tmpfile
2265 .ENDIF
2266 .IF "$(DEF8EXPORT16)"!=""
2267 @echo $(DEF8EXPORT16) >>$@.tmpfile
2268 .ENDIF
2269 .IF "$(DEF8EXPORT17)"!=""
2270 @echo $(DEF8EXPORT17) >>$@.tmpfile
2271 .ENDIF
2272 .IF "$(DEF8EXPORT18)"!=""
2273 @echo $(DEF8EXPORT18) >>$@.tmpfile
2274 .ENDIF
2275 .IF "$(DEF8EXPORT19)"!=""
2276 @echo $(DEF8EXPORT19) >>$@.tmpfile
2277 .ENDIF
2278 .IF "$(DEF8EXPORT20)"!=""
2279 @echo $(DEF8EXPORT20) >>$@.tmpfile
2280 .ENDIF
2281 .IF "$(DEF8EXPORTFILE)"!=""
2282 @fix_def_file < $(DEF8EXPORTFILE) >> $@.tmp_ord
2283 .ENDIF
2284 @sort < $@.tmp_ord | uniq > $@.exptmpfile
2285 @fix_def_ord < $@.exptmpfile >> $@.tmpfile
2286 @+-$(RM) $@
2287 +$(RENAME) $@.tmpfile $@
2288 @+-$(RM) $@.tmp_ord
2289 @+-$(RM) $@.exptmpfile
2290 +$(IMPLIB) $(IMPLIBFLAGS) $(SHL8IMPLIBN:s/.lib/.a/) $@
2291 +emxomf -o $(SHL8IMPLIBN) $(SHL8IMPLIBN:s/.lib/.a/)
2293 .ENDIF # "$(GUI)"=="OS2"
2295 .IF "$(GUI)"=="UNX"
2296 $(DEF8TARGETN): \
2297 $(DEF8DEPN) \
2298 $(DEF8EXPORTFILE)
2299 @echo just a dummy for UNIX > $@
2300 .ENDIF
2301 .ENDIF # "$(DEF8TARGETN)"!=""
2304 # Anweisungen fuer das Linken
2305 # unroll begin
2307 .IF "$(DEF9TARGETN)"!=""
2309 #to make intuitiv naming work
2310 .IF "$(DEF9LIBNAME)"!=""
2311 DEFLIB9NAME*=$(DEF9LIBNAME)
2312 .ENDIF # "$(DEF9LIBNAME)"!=""
2314 .IF "$(DEFLIB9NAME)"!=""
2315 .IF "$(UPDATER)"!=""
2316 DEF9DEPN+=$(foreach,i,$(DEFLIB9NAME) $(SLB)$/$(i).lib)
2317 .ENDIF # "$(UPDATER)"!=""
2318 .ENDIF
2320 .IF "$(SHL9VERSIONMAP)"!=""
2321 .IF "$(DEF9EXPORTFILE)"==""
2322 .IF "$(GUI)"=="WNT"
2323 DEF9EXPORTFILE=$(MISC)$/$(SHL9VERSIONMAP:b)_$(SHL9TARGET).dxp
2324 .IF "$(COM)"=="GCC"
2325 $(DEF9EXPORTFILE) : $(SHL9OBJS) $(SHL9LIBS)
2326 .ENDIF # .IF "$(COM)"=="GCC"
2328 $(DEF9EXPORTFILE) : $(SHL9VERSIONMAP)
2329 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
2330 .IF "$(COM)"=="GCC"
2331 -grep -v "\*\|?" $@ > $@.exported-symbols
2332 -grep "\*\|?" $@ > $@.symbols-regexp
2333 # Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
2334 # Extract RTTI symbols from all the objects that will be used to build a shared library
2335 .IF "$(SHL9OBJS)"!=""
2336 -echo $(foreach,i,$(SHL9OBJS) $i) | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
2337 .ENDIF
2338 .IF "$(SHL9LIBS)"!=""
2339 -$(TYPE) $(foreach,j,$(SHL9LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
2340 .ENDIF
2341 # overwrite the map file generate into the local output tree with the generated
2342 # exported symbols list
2343 cp $@.exported-symbols $@
2344 .ENDIF # .IF "$(COM)"=="GCC"
2346 .ENDIF # "$(GUI)"=="WNT"
2348 .IF "$(GUI)"=="OS2"
2349 DEF9EXPORTFILE=$(MISC)$/$(SHL9VERSIONMAP:b)_$(SHL9TARGET).dxp
2350 $(DEF9EXPORTFILE) : $(SHL9VERSIONMAP)
2351 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
2352 .ENDIF # "$(GUI)"=="OS2"
2354 .ENDIF # "$(DEF9EXPORTFILE)"==""
2355 .ENDIF # "$(SHL9VERSIONMAP)"!=""
2357 .IF "$(GUI)"=="WNT"
2359 DEF9FILTER=$(SOLARENV)$/inc$/dummy.flt
2361 RMHACK9:=$(RM)
2363 .IF "$(DEF9CEXP)"!=""
2364 EXPORT_ALL_SWITCH=-A $(DEF9CEXP)
2365 .ENDIF
2367 .IF "$(link_always)"==""
2368 $(DEF9TARGETN) : \
2369 $(DEF9DEPN) \
2370 $(DEF9EXPORTFILE)
2371 .ELSE # "$(link_always)"==""
2372 $(DEF9TARGETN) .PHONY :
2373 .ENDIF # "$(link_always)"==""
2374 @-$(RM) $@.tmpfile
2375 .IF "$(QUIET_BUILD)"==""
2376 @echo ------------------------------
2377 .ENDIF
2378 @echo "Making: module definition file" $(@:f)
2379 @echo LIBRARY $(EMQ)"$(SHL9TARGETN:f)$(EMQ)" >$@.tmpfile
2380 .IF "$(COM)"!="GCC"
2381 @echo HEAPSIZE 0 >>$@.tmpfile
2382 .ENDIF
2383 @echo EXPORTS >>$@.tmpfile
2384 # getversioninfo fuer alle!!
2385 @echo GetVersionInfo >>$@.tmpfile
2386 .IF "$(DEFLIB9NAME)"!=""
2387 .IF "$(COM)"=="GCC"
2388 @-$(RM) $(MISC)$/$(SHL9TARGET).exp
2389 dlltool --output-def $(MISC)$/$(SHL9TARGET).exp --export-all-symbols \
2390 `$(TYPE) $(foreach,i,$(DEFLIB9NAME) $(SLB)$/$(i).lib) | sed s#$(ROUT)#$(PRJ)$/$(ROUT)#g`
2391 tail --lines +3 $(MISC)$/$(SHL9TARGET).exp | sed '/^;/d' >>$@.tmpfile
2392 @-$(RM) $(MISC)$/$(SHL9TARGET).exp
2393 .ELSE
2394 .IF "$(SHL9USE_EXPORTS)"==""
2395 @-$(RMHACK9) $(MISC)$/$(SHL9TARGET).exp
2396 @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)$/$(SHL9TARGET).exp $(SLB)$/$(DEFLIB9NAME).lib
2397 @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)$/$(SHL9TARGET).flt $(MISC)$/$(SHL9TARGET).exp >>$@.tmpfile
2398 $(RMHACK9) $(MISC)$/$(SHL9TARGET).exp
2399 .ELSE # "$(SHL9USE_EXPORTS)"==""
2400 @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB9NAME) $(SLB)$/$(i).lib) | $(GREP) EXPORT: > $(MISC)$/$(SHL9TARGET).direct
2401 @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF9FILTER) $(MISC)$/$(SHL9TARGET).direct >>$@.tmpfile
2402 .ENDIF # "$(SHL9USE_EXPORTS)"==""
2403 .ENDIF
2404 .ENDIF # "$(DEFLIB9NAME)"!=""
2405 .IF "$(DEF9EXPORT1)"!=""
2406 @echo $(DEF9EXPORT1) >>$@.tmpfile
2407 .ENDIF
2408 .IF "$(DEF9EXPORT2)"!=""
2409 @echo $(DEF9EXPORT2) >>$@.tmpfile
2410 .ENDIF
2411 .IF "$(DEF9EXPORT3)"!=""
2412 @echo $(DEF9EXPORT3) >>$@.tmpfile
2413 .ENDIF
2414 .IF "$(DEF9EXPORT4)"!=""
2415 @echo $(DEF9EXPORT4) >>$@.tmpfile
2416 .ENDIF
2417 .IF "$(DEF9EXPORT5)"!=""
2418 @echo $(DEF9EXPORT5) >>$@.tmpfile
2419 .ENDIF
2420 .IF "$(DEF9EXPORT6)"!=""
2421 @echo $(DEF9EXPORT6) >>$@.tmpfile
2422 .ENDIF
2423 .IF "$(DEF9EXPORT7)"!=""
2424 @echo $(DEF9EXPORT7) >>$@.tmpfile
2425 .ENDIF
2426 .IF "$(DEF9EXPORT8)"!=""
2427 @echo $(DEF9EXPORT8) >>$@.tmpfile
2428 .ENDIF
2429 .IF "$(DEF9EXPORT9)"!=""
2430 @echo $(DEF9EXPORT9) >>$@.tmpfile
2431 .ENDIF
2432 .IF "$(DEF9EXPORT10)"!=""
2433 @echo $(DEF9EXPORT10) >>$@.tmpfile
2434 .ENDIF
2435 .IF "$(DEF9EXPORT11)"!=""
2436 @echo $(DEF9EXPORT11) >>$@.tmpfile
2437 .ENDIF
2438 .IF "$(DEF9EXPORT12)"!=""
2439 @echo $(DEF9EXPORT12) >>$@.tmpfile
2440 .ENDIF
2441 .IF "$(DEF9EXPORT13)"!=""
2442 @echo $(DEF9EXPORT13) >>$@.tmpfile
2443 .ENDIF
2444 .IF "$(DEF9EXPORT14)"!=""
2445 @echo $(DEF9EXPORT14) >>$@.tmpfile
2446 .ENDIF
2447 .IF "$(DEF9EXPORT15)"!=""
2448 @echo $(DEF9EXPORT15) >>$@.tmpfile
2449 .ENDIF
2450 .IF "$(DEF9EXPORT16)"!=""
2451 @echo $(DEF9EXPORT16) >>$@.tmpfile
2452 .ENDIF
2453 .IF "$(DEF9EXPORT17)"!=""
2454 @echo $(DEF9EXPORT17) >>$@.tmpfile
2455 .ENDIF
2456 .IF "$(DEF9EXPORT18)"!=""
2457 @echo $(DEF9EXPORT18) >>$@.tmpfile
2458 .ENDIF
2459 .IF "$(DEF9EXPORT19)"!=""
2460 @echo $(DEF9EXPORT19) >>$@.tmpfile
2461 .ENDIF
2462 .IF "$(DEF9EXPORT20)"!=""
2463 @echo $(DEF9EXPORT20) >>$@.tmpfile
2464 .ENDIF
2465 .IF "$(DEF9EXPORTFILE)"!=""
2466 .IF "$(COM)"=="GCC"
2467 $(TYPE) $(DEF9EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
2468 .ELSE
2469 $(TYPE) $(DEF9EXPORTFILE) >> $@.tmpfile
2470 .ENDIF
2471 .ENDIF
2472 @-$(RM) $@
2473 @$(RENAME) $@.tmpfile $@
2474 .ENDIF # "$(GUI)"=="WNT"
2476 .IF "$(GUI)"=="OS2"
2478 #21/02/2006 YD dll names must be 8.3, invoke fix script
2479 #check osl/os2/module.c/osl_loadModule()
2480 SHL9TARGET8=$(shell @fix_shl $(SHL9TARGETN:f))
2482 DEF9FILTER=$(SOLARENV)$/inc$/dummy.flt
2483 DEF9NAMELIST=$(foreach,i,$(DEFLIB9NAME) $(SLB)$/$(i).lib)
2485 .IF "$(link_always)"==""
2486 $(DEF9TARGETN) : \
2487 $(DEF9DEPN) \
2488 $(DEF9EXPORTFILE)
2489 .ELSE # "$(link_always)"==""
2490 $(DEF9TARGETN) .PHONY :
2491 .ENDIF # "$(link_always)"==""
2492 @+-$(RM) $@.tmpfile
2493 .IF "$(QUIET_BUILD)"==""
2494 @echo ------------------------------
2495 .ENDIF
2496 @echo "Making: module definition file" $(@:f)
2497 @echo LIBRARY $(SHL9TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
2498 @echo DATA MULTIPLE >>$@.tmpfile
2499 @echo DESCRIPTION 'StarView 3.00 $(DEF9DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
2500 @echo EXPORTS >>$@.tmpfile
2501 # getversioninfo fuer alle!!
2502 @echo _GetVersionInfo >$@.tmp_ord
2504 .IF "$(DEFLIB9NAME)"!=""
2505 @+echo $(SLB)$/$(DEFLIB9NAME).lib
2506 @+emxexpr $(DEF9NAMELIST) | fix_exp_file >> $@.tmp_ord
2507 .ENDIF # "$(DEFLIB9NAME)"!=""
2509 .IF "$(DEF9EXPORT1)"!=""
2510 @echo $(DEF9EXPORT1) >>$@.tmpfile
2511 .ENDIF
2512 .IF "$(DEF9EXPORT2)"!=""
2513 @echo $(DEF9EXPORT2) >>$@.tmpfile
2514 .ENDIF
2515 .IF "$(DEF9EXPORT3)"!=""
2516 @echo $(DEF9EXPORT3) >>$@.tmpfile
2517 .ENDIF
2518 .IF "$(DEF9EXPORT4)"!=""
2519 @echo $(DEF9EXPORT4) >>$@.tmpfile
2520 .ENDIF
2521 .IF "$(DEF9EXPORT5)"!=""
2522 @echo $(DEF9EXPORT5) >>$@.tmpfile
2523 .ENDIF
2524 .IF "$(DEF9EXPORT6)"!=""
2525 @echo $(DEF9EXPORT6) >>$@.tmpfile
2526 .ENDIF
2527 .IF "$(DEF9EXPORT7)"!=""
2528 @echo $(DEF9EXPORT7) >>$@.tmpfile
2529 .ENDIF
2530 .IF "$(DEF9EXPORT8)"!=""
2531 @echo $(DEF9EXPORT8) >>$@.tmpfile
2532 .ENDIF
2533 .IF "$(DEF9EXPORT9)"!=""
2534 @echo $(DEF9EXPORT9) >>$@.tmpfile
2535 .ENDIF
2536 .IF "$(DEF9EXPORT10)"!=""
2537 @echo $(DEF9EXPORT10) >>$@.tmpfile
2538 .ENDIF
2539 .IF "$(DEF9EXPORT11)"!=""
2540 @echo $(DEF9EXPORT11) >>$@.tmpfile
2541 .ENDIF
2542 .IF "$(DEF9EXPORT12)"!=""
2543 @echo $(DEF9EXPORT12) >>$@.tmpfile
2544 .ENDIF
2545 .IF "$(DEF9EXPORT13)"!=""
2546 @echo $(DEF9EXPORT13) >>$@.tmpfile
2547 .ENDIF
2548 .IF "$(DEF9EXPORT14)"!=""
2549 @echo $(DEF9EXPORT14) >>$@.tmpfile
2550 .ENDIF
2551 .IF "$(DEF9EXPORT15)"!=""
2552 @echo $(DEF9EXPORT15) >>$@.tmpfile
2553 .ENDIF
2554 .IF "$(DEF9EXPORT16)"!=""
2555 @echo $(DEF9EXPORT16) >>$@.tmpfile
2556 .ENDIF
2557 .IF "$(DEF9EXPORT17)"!=""
2558 @echo $(DEF9EXPORT17) >>$@.tmpfile
2559 .ENDIF
2560 .IF "$(DEF9EXPORT18)"!=""
2561 @echo $(DEF9EXPORT18) >>$@.tmpfile
2562 .ENDIF
2563 .IF "$(DEF9EXPORT19)"!=""
2564 @echo $(DEF9EXPORT19) >>$@.tmpfile
2565 .ENDIF
2566 .IF "$(DEF9EXPORT20)"!=""
2567 @echo $(DEF9EXPORT20) >>$@.tmpfile
2568 .ENDIF
2569 .IF "$(DEF9EXPORTFILE)"!=""
2570 @fix_def_file < $(DEF9EXPORTFILE) >> $@.tmp_ord
2571 .ENDIF
2572 @sort < $@.tmp_ord | uniq > $@.exptmpfile
2573 @fix_def_ord < $@.exptmpfile >> $@.tmpfile
2574 @+-$(RM) $@
2575 +$(RENAME) $@.tmpfile $@
2576 @+-$(RM) $@.tmp_ord
2577 @+-$(RM) $@.exptmpfile
2578 +$(IMPLIB) $(IMPLIBFLAGS) $(SHL9IMPLIBN:s/.lib/.a/) $@
2579 +emxomf -o $(SHL9IMPLIBN) $(SHL9IMPLIBN:s/.lib/.a/)
2581 .ENDIF # "$(GUI)"=="OS2"
2583 .IF "$(GUI)"=="UNX"
2584 $(DEF9TARGETN): \
2585 $(DEF9DEPN) \
2586 $(DEF9EXPORTFILE)
2587 @echo just a dummy for UNIX > $@
2588 .ENDIF
2589 .ENDIF # "$(DEF9TARGETN)"!=""
2592 # Anweisungen fuer das Linken
2593 # unroll begin
2595 .IF "$(DEF10TARGETN)"!=""
2597 #to make intuitiv naming work
2598 .IF "$(DEF10LIBNAME)"!=""
2599 DEFLIB10NAME*=$(DEF10LIBNAME)
2600 .ENDIF # "$(DEF10LIBNAME)"!=""
2602 .IF "$(DEFLIB10NAME)"!=""
2603 .IF "$(UPDATER)"!=""
2604 DEF10DEPN+=$(foreach,i,$(DEFLIB10NAME) $(SLB)$/$(i).lib)
2605 .ENDIF # "$(UPDATER)"!=""
2606 .ENDIF
2608 .IF "$(SHL10VERSIONMAP)"!=""
2609 .IF "$(DEF10EXPORTFILE)"==""
2610 .IF "$(GUI)"=="WNT"
2611 DEF10EXPORTFILE=$(MISC)$/$(SHL10VERSIONMAP:b)_$(SHL10TARGET).dxp
2612 .IF "$(COM)"=="GCC"
2613 $(DEF10EXPORTFILE) : $(SHL10OBJS) $(SHL10LIBS)
2614 .ENDIF # .IF "$(COM)"=="GCC"
2616 $(DEF10EXPORTFILE) : $(SHL10VERSIONMAP)
2617 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
2618 .IF "$(COM)"=="GCC"
2619 -grep -v "\*\|?" $@ > $@.exported-symbols
2620 -grep "\*\|?" $@ > $@.symbols-regexp
2621 # Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
2622 # Extract RTTI symbols from all the objects that will be used to build a shared library
2623 .IF "$(SHL10OBJS)"!=""
2624 -echo $(foreach,i,$(SHL10OBJS) $i) | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
2625 .ENDIF
2626 .IF "$(SHL10LIBS)"!=""
2627 -$(TYPE) $(foreach,j,$(SHL10LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g | xargs -n1 nm -gP | $(SOLARENV)$/bin$/addsym-mingw.sh $@.symbols-regexp $(MISC)$/symbols-regexp.tmp >> $@.exported-symbols
2628 .ENDIF
2629 # overwrite the map file generate into the local output tree with the generated
2630 # exported symbols list
2631 cp $@.exported-symbols $@
2632 .ENDIF # .IF "$(COM)"=="GCC"
2634 .ENDIF # "$(GUI)"=="WNT"
2636 .IF "$(GUI)"=="OS2"
2637 DEF10EXPORTFILE=$(MISC)$/$(SHL10VERSIONMAP:b)_$(SHL10TARGET).dxp
2638 $(DEF10EXPORTFILE) : $(SHL10VERSIONMAP)
2639 $(TYPE) $< | $(AWK) -f $(SOLARENV)$/bin$/getcsym.awk > $@
2640 .ENDIF # "$(GUI)"=="OS2"
2642 .ENDIF # "$(DEF10EXPORTFILE)"==""
2643 .ENDIF # "$(SHL10VERSIONMAP)"!=""
2645 .IF "$(GUI)"=="WNT"
2647 DEF10FILTER=$(SOLARENV)$/inc$/dummy.flt
2649 RMHACK10:=$(RM)
2651 .IF "$(DEF10CEXP)"!=""
2652 EXPORT_ALL_SWITCH=-A $(DEF10CEXP)
2653 .ENDIF
2655 .IF "$(link_always)"==""
2656 $(DEF10TARGETN) : \
2657 $(DEF10DEPN) \
2658 $(DEF10EXPORTFILE)
2659 .ELSE # "$(link_always)"==""
2660 $(DEF10TARGETN) .PHONY :
2661 .ENDIF # "$(link_always)"==""
2662 @-$(RM) $@.tmpfile
2663 .IF "$(QUIET_BUILD)"==""
2664 @echo ------------------------------
2665 .ENDIF
2666 @echo "Making: module definition file" $(@:f)
2667 @echo LIBRARY $(EMQ)"$(SHL10TARGETN:f)$(EMQ)" >$@.tmpfile
2668 .IF "$(COM)"!="GCC"
2669 @echo HEAPSIZE 0 >>$@.tmpfile
2670 .ENDIF
2671 @echo EXPORTS >>$@.tmpfile
2672 # getversioninfo fuer alle!!
2673 @echo GetVersionInfo >>$@.tmpfile
2674 .IF "$(DEFLIB10NAME)"!=""
2675 .IF "$(COM)"=="GCC"
2676 @-$(RM) $(MISC)$/$(SHL10TARGET).exp
2677 dlltool --output-def $(MISC)$/$(SHL10TARGET).exp --export-all-symbols \
2678 `$(TYPE) $(foreach,i,$(DEFLIB10NAME) $(SLB)$/$(i).lib) | sed s#$(ROUT)#$(PRJ)$/$(ROUT)#g`
2679 tail --lines +3 $(MISC)$/$(SHL10TARGET).exp | sed '/^;/d' >>$@.tmpfile
2680 @-$(RM) $(MISC)$/$(SHL10TARGET).exp
2681 .ELSE
2682 .IF "$(SHL10USE_EXPORTS)"==""
2683 @-$(RMHACK10) $(MISC)$/$(SHL10TARGET).exp
2684 @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)$/$(SHL10TARGET).exp $(SLB)$/$(DEFLIB10NAME).lib
2685 @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)$/$(SHL10TARGET).flt $(MISC)$/$(SHL10TARGET).exp >>$@.tmpfile
2686 $(RMHACK10) $(MISC)$/$(SHL10TARGET).exp
2687 .ELSE # "$(SHL10USE_EXPORTS)"==""
2688 @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB10NAME) $(SLB)$/$(i).lib) | $(GREP) EXPORT: > $(MISC)$/$(SHL10TARGET).direct
2689 @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF10FILTER) $(MISC)$/$(SHL10TARGET).direct >>$@.tmpfile
2690 .ENDIF # "$(SHL10USE_EXPORTS)"==""
2691 .ENDIF
2692 .ENDIF # "$(DEFLIB10NAME)"!=""
2693 .IF "$(DEF10EXPORT1)"!=""
2694 @echo $(DEF10EXPORT1) >>$@.tmpfile
2695 .ENDIF
2696 .IF "$(DEF10EXPORT2)"!=""
2697 @echo $(DEF10EXPORT2) >>$@.tmpfile
2698 .ENDIF
2699 .IF "$(DEF10EXPORT3)"!=""
2700 @echo $(DEF10EXPORT3) >>$@.tmpfile
2701 .ENDIF
2702 .IF "$(DEF10EXPORT4)"!=""
2703 @echo $(DEF10EXPORT4) >>$@.tmpfile
2704 .ENDIF
2705 .IF "$(DEF10EXPORT5)"!=""
2706 @echo $(DEF10EXPORT5) >>$@.tmpfile
2707 .ENDIF
2708 .IF "$(DEF10EXPORT6)"!=""
2709 @echo $(DEF10EXPORT6) >>$@.tmpfile
2710 .ENDIF
2711 .IF "$(DEF10EXPORT7)"!=""
2712 @echo $(DEF10EXPORT7) >>$@.tmpfile
2713 .ENDIF
2714 .IF "$(DEF10EXPORT8)"!=""
2715 @echo $(DEF10EXPORT8) >>$@.tmpfile
2716 .ENDIF
2717 .IF "$(DEF10EXPORT9)"!=""
2718 @echo $(DEF10EXPORT9) >>$@.tmpfile
2719 .ENDIF
2720 .IF "$(DEF10EXPORT10)"!=""
2721 @echo $(DEF10EXPORT10) >>$@.tmpfile
2722 .ENDIF
2723 .IF "$(DEF10EXPORT11)"!=""
2724 @echo $(DEF10EXPORT11) >>$@.tmpfile
2725 .ENDIF
2726 .IF "$(DEF10EXPORT12)"!=""
2727 @echo $(DEF10EXPORT12) >>$@.tmpfile
2728 .ENDIF
2729 .IF "$(DEF10EXPORT13)"!=""
2730 @echo $(DEF10EXPORT13) >>$@.tmpfile
2731 .ENDIF
2732 .IF "$(DEF10EXPORT14)"!=""
2733 @echo $(DEF10EXPORT14) >>$@.tmpfile
2734 .ENDIF
2735 .IF "$(DEF10EXPORT15)"!=""
2736 @echo $(DEF10EXPORT15) >>$@.tmpfile
2737 .ENDIF
2738 .IF "$(DEF10EXPORT16)"!=""
2739 @echo $(DEF10EXPORT16) >>$@.tmpfile
2740 .ENDIF
2741 .IF "$(DEF10EXPORT17)"!=""
2742 @echo $(DEF10EXPORT17) >>$@.tmpfile
2743 .ENDIF
2744 .IF "$(DEF10EXPORT18)"!=""
2745 @echo $(DEF10EXPORT18) >>$@.tmpfile
2746 .ENDIF
2747 .IF "$(DEF10EXPORT19)"!=""
2748 @echo $(DEF10EXPORT19) >>$@.tmpfile
2749 .ENDIF
2750 .IF "$(DEF10EXPORT20)"!=""
2751 @echo $(DEF10EXPORT20) >>$@.tmpfile
2752 .ENDIF
2753 .IF "$(DEF10EXPORTFILE)"!=""
2754 .IF "$(COM)"=="GCC"
2755 $(TYPE) $(DEF10EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
2756 .ELSE
2757 $(TYPE) $(DEF10EXPORTFILE) >> $@.tmpfile
2758 .ENDIF
2759 .ENDIF
2760 @-$(RM) $@
2761 @$(RENAME) $@.tmpfile $@
2762 .ENDIF # "$(GUI)"=="WNT"
2764 .IF "$(GUI)"=="OS2"
2766 #21/02/2006 YD dll names must be 8.3, invoke fix script
2767 #check osl/os2/module.c/osl_loadModule()
2768 SHL10TARGET8=$(shell @fix_shl $(SHL10TARGETN:f))
2770 DEF10FILTER=$(SOLARENV)$/inc$/dummy.flt
2771 DEF10NAMELIST=$(foreach,i,$(DEFLIB10NAME) $(SLB)$/$(i).lib)
2773 .IF "$(link_always)"==""
2774 $(DEF10TARGETN) : \
2775 $(DEF10DEPN) \
2776 $(DEF10EXPORTFILE)
2777 .ELSE # "$(link_always)"==""
2778 $(DEF10TARGETN) .PHONY :
2779 .ENDIF # "$(link_always)"==""
2780 @+-$(RM) $@.tmpfile
2781 .IF "$(QUIET_BUILD)"==""
2782 @echo ------------------------------
2783 .ENDIF
2784 @echo "Making: module definition file" $(@:f)
2785 @echo LIBRARY $(SHL10TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
2786 @echo DATA MULTIPLE >>$@.tmpfile
2787 @echo DESCRIPTION 'StarView 3.00 $(DEF10DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
2788 @echo EXPORTS >>$@.tmpfile
2789 # getversioninfo fuer alle!!
2790 @echo _GetVersionInfo >$@.tmp_ord
2792 .IF "$(DEFLIB10NAME)"!=""
2793 @+echo $(SLB)$/$(DEFLIB10NAME).lib
2794 @+emxexpr $(DEF10NAMELIST) | fix_exp_file >> $@.tmp_ord
2795 .ENDIF # "$(DEFLIB10NAME)"!=""
2797 .IF "$(DEF10EXPORT1)"!=""
2798 @echo $(DEF10EXPORT1) >>$@.tmpfile
2799 .ENDIF
2800 .IF "$(DEF10EXPORT2)"!=""
2801 @echo $(DEF10EXPORT2) >>$@.tmpfile
2802 .ENDIF
2803 .IF "$(DEF10EXPORT3)"!=""
2804 @echo $(DEF10EXPORT3) >>$@.tmpfile
2805 .ENDIF
2806 .IF "$(DEF10EXPORT4)"!=""
2807 @echo $(DEF10EXPORT4) >>$@.tmpfile
2808 .ENDIF
2809 .IF "$(DEF10EXPORT5)"!=""
2810 @echo $(DEF10EXPORT5) >>$@.tmpfile
2811 .ENDIF
2812 .IF "$(DEF10EXPORT6)"!=""
2813 @echo $(DEF10EXPORT6) >>$@.tmpfile
2814 .ENDIF
2815 .IF "$(DEF10EXPORT7)"!=""
2816 @echo $(DEF10EXPORT7) >>$@.tmpfile
2817 .ENDIF
2818 .IF "$(DEF10EXPORT8)"!=""
2819 @echo $(DEF10EXPORT8) >>$@.tmpfile
2820 .ENDIF
2821 .IF "$(DEF10EXPORT9)"!=""
2822 @echo $(DEF10EXPORT9) >>$@.tmpfile
2823 .ENDIF
2824 .IF "$(DEF10EXPORT10)"!=""
2825 @echo $(DEF10EXPORT10) >>$@.tmpfile
2826 .ENDIF
2827 .IF "$(DEF10EXPORT11)"!=""
2828 @echo $(DEF10EXPORT11) >>$@.tmpfile
2829 .ENDIF
2830 .IF "$(DEF10EXPORT12)"!=""
2831 @echo $(DEF10EXPORT12) >>$@.tmpfile
2832 .ENDIF
2833 .IF "$(DEF10EXPORT13)"!=""
2834 @echo $(DEF10EXPORT13) >>$@.tmpfile
2835 .ENDIF
2836 .IF "$(DEF10EXPORT14)"!=""
2837 @echo $(DEF10EXPORT14) >>$@.tmpfile
2838 .ENDIF
2839 .IF "$(DEF10EXPORT15)"!=""
2840 @echo $(DEF10EXPORT15) >>$@.tmpfile
2841 .ENDIF
2842 .IF "$(DEF10EXPORT16)"!=""
2843 @echo $(DEF10EXPORT16) >>$@.tmpfile
2844 .ENDIF
2845 .IF "$(DEF10EXPORT17)"!=""
2846 @echo $(DEF10EXPORT17) >>$@.tmpfile
2847 .ENDIF
2848 .IF "$(DEF10EXPORT18)"!=""
2849 @echo $(DEF10EXPORT18) >>$@.tmpfile
2850 .ENDIF
2851 .IF "$(DEF10EXPORT19)"!=""
2852 @echo $(DEF10EXPORT19) >>$@.tmpfile
2853 .ENDIF
2854 .IF "$(DEF10EXPORT20)"!=""
2855 @echo $(DEF10EXPORT20) >>$@.tmpfile
2856 .ENDIF
2857 .IF "$(DEF10EXPORTFILE)"!=""
2858 @fix_def_file < $(DEF10EXPORTFILE) >> $@.tmp_ord
2859 .ENDIF
2860 @sort < $@.tmp_ord | uniq > $@.exptmpfile
2861 @fix_def_ord < $@.exptmpfile >> $@.tmpfile
2862 @+-$(RM) $@
2863 +$(RENAME) $@.tmpfile $@
2864 @+-$(RM) $@.tmp_ord
2865 @+-$(RM) $@.exptmpfile
2866 +$(IMPLIB) $(IMPLIBFLAGS) $(SHL10IMPLIBN:s/.lib/.a/) $@
2867 +emxomf -o $(SHL10IMPLIBN) $(SHL10IMPLIBN:s/.lib/.a/)
2869 .ENDIF # "$(GUI)"=="OS2"
2871 .IF "$(GUI)"=="UNX"
2872 $(DEF10TARGETN): \
2873 $(DEF10DEPN) \
2874 $(DEF10EXPORTFILE)
2875 @echo just a dummy for UNIX > $@
2876 .ENDIF
2877 .ENDIF # "$(DEF10TARGETN)"!=""
2880 # Anweisungen fuer das Linken