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