summaryrefslogtreecommitdiff
path: root/solenv/inc
diff options
context:
space:
mode:
Diffstat (limited to 'solenv/inc')
-rw-r--r--solenv/inc/_cppunit.mk120
-rw-r--r--solenv/inc/_tg_app.mk2840
-rw-r--r--solenv/inc/_tg_def.mk2810
-rw-r--r--solenv/inc/_tg_lib.mk1020
-rw-r--r--solenv/inc/_tg_rslb.mk770
-rw-r--r--solenv/inc/_tg_scp.mk180
-rw-r--r--solenv/inc/_tg_sdi.mk270
-rw-r--r--solenv/inc/_tg_shl.mk6060
-rw-r--r--solenv/inc/_tg_srs.mk530
-rw-r--r--solenv/inc/_tg_zip.mk1230
-rw-r--r--solenv/inc/ant.mk100
-rw-r--r--solenv/inc/ant.properties12
-rw-r--r--solenv/inc/antsettings.mk87
-rw-r--r--solenv/inc/cppunit.mk56
-rw-r--r--solenv/inc/dummy.flt0
-rw-r--r--solenv/inc/extension_helplink.mk80
-rw-r--r--solenv/inc/extension_post.mk176
-rw-r--r--solenv/inc/extension_pre.mk59
-rw-r--r--solenv/inc/found_no.mk5
-rw-r--r--solenv/inc/installationtest.mk130
-rw-r--r--solenv/inc/javaunittest.mk107
-rw-r--r--solenv/inc/lang.mk57
-rw-r--r--solenv/inc/layout.mk32
-rw-r--r--solenv/inc/libs.mk539
-rw-r--r--solenv/inc/mime.types201
-rw-r--r--solenv/inc/minor.mk5
-rw-r--r--solenv/inc/os2.mk333
-rw-r--r--solenv/inc/os2gcci.mk288
-rw-r--r--solenv/inc/pkg_config.mk49
-rw-r--r--solenv/inc/postmac.h52
-rw-r--r--solenv/inc/postset.mk150
-rw-r--r--solenv/inc/preinclude.h38
-rw-r--r--solenv/inc/premac.h52
-rw-r--r--solenv/inc/pstrules.mk176
-rw-r--r--solenv/inc/rules.mk804
-rw-r--r--solenv/inc/sc.mk28
-rw-r--r--solenv/inc/scpre.mk50
-rw-r--r--solenv/inc/set_ext.mk37
-rw-r--r--solenv/inc/set_wntx64.mk215
-rw-r--r--solenv/inc/settings.mk1360
-rw-r--r--solenv/inc/shlinfo.rc113
-rw-r--r--solenv/inc/startup/OS2/macros.mk30
-rw-r--r--solenv/inc/startup/Readme6
-rw-r--r--solenv/inc/startup/startup.mk109
-rw-r--r--solenv/inc/startup/summary3
-rw-r--r--solenv/inc/startup/wnt/macros.mk32
-rw-r--r--solenv/inc/starview.hid304
-rw-r--r--solenv/inc/target.mk2117
-rw-r--r--solenv/inc/templates/extension_tmpl.mk153
-rw-r--r--solenv/inc/tg_app.mk316
-rw-r--r--solenv/inc/tg_compv.mk158
-rw-r--r--solenv/inc/tg_config.mk203
-rw-r--r--solenv/inc/tg_def.mk313
-rw-r--r--solenv/inc/tg_dep.mk96
-rw-r--r--solenv/inc/tg_ext.mk362
-rw-r--r--solenv/inc/tg_help.mk90
-rw-r--r--solenv/inc/tg_jar.mk89
-rw-r--r--solenv/inc/tg_java.mk84
-rw-r--r--solenv/inc/tg_javav.mk53
-rw-r--r--solenv/inc/tg_lib.mk134
-rw-r--r--solenv/inc/tg_merge.mk66
-rw-r--r--solenv/inc/tg_moz.mk89
-rw-r--r--solenv/inc/tg_obj.mk94
-rwxr-xr-xsolenv/inc/tg_propmerge.mk66
-rw-r--r--solenv/inc/tg_res.mk43
-rw-r--r--solenv/inc/tg_rslb.mk108
-rw-r--r--solenv/inc/tg_scp.mk50
-rw-r--r--solenv/inc/tg_sdi.mk59
-rw-r--r--solenv/inc/tg_shl.mk645
-rw-r--r--solenv/inc/tg_slo.mk98
-rw-r--r--solenv/inc/tg_srs.mk85
-rw-r--r--solenv/inc/tg_wntx64.mk514
-rwxr-xr-xsolenv/inc/tg_xmerge.mk108
-rw-r--r--solenv/inc/tg_yxx.mk48
-rw-r--r--solenv/inc/tg_zip.mk154
-rw-r--r--solenv/inc/trustedinfo.manifest11
-rw-r--r--solenv/inc/udkversion.mk33
-rw-r--r--solenv/inc/unitools.mk186
-rw-r--r--solenv/inc/unx.mk205
-rw-r--r--solenv/inc/unxaixp.mk113
-rw-r--r--solenv/inc/unxbsda.mk99
-rw-r--r--solenv/inc/unxbsdi.mk179
-rw-r--r--solenv/inc/unxbsdi2.mk198
-rw-r--r--solenv/inc/unxbsds.mk179
-rw-r--r--solenv/inc/unxfbsd.mk229
-rw-r--r--solenv/inc/unxfbsdi.mk46
-rw-r--r--solenv/inc/unxfbsdx.mk49
-rw-r--r--solenv/inc/unxhpgr.mk133
-rw-r--r--solenv/inc/unxhpxr.mk131
-rw-r--r--solenv/inc/unxlng.mk266
-rw-r--r--solenv/inc/unxlnga.mk33
-rw-r--r--solenv/inc/unxlngaxp.mk34
-rw-r--r--solenv/inc/unxlnghppa.mk35
-rw-r--r--solenv/inc/unxlngi.mk34
-rw-r--r--solenv/inc/unxlngm68k.mk37
-rw-r--r--solenv/inc/unxlngmips.mk33
-rw-r--r--solenv/inc/unxlngppc.mk37
-rw-r--r--solenv/inc/unxlngppc64.mk34
-rw-r--r--solenv/inc/unxlngr.mk34
-rw-r--r--solenv/inc/unxlngs.mk36
-rw-r--r--solenv/inc/unxlngs390.mk36
-rw-r--r--solenv/inc/unxlngs390x.mk33
-rw-r--r--solenv/inc/unxlngx.mk35
-rw-r--r--solenv/inc/unxmacx.mk289
-rw-r--r--solenv/inc/unxmacxi.mk53
-rw-r--r--solenv/inc/unxmacxp.mk37
-rw-r--r--solenv/inc/unxscoi.mk140
-rw-r--r--solenv/inc/unxsogi.mk141
-rw-r--r--solenv/inc/unxsogs.mk140
-rw-r--r--solenv/inc/unxsoli4.mk241
-rw-r--r--solenv/inc/unxsols4.mk247
-rw-r--r--solenv/inc/unxsolu4.mk242
-rw-r--r--solenv/inc/verinfo.hrc229
-rwxr-xr-xsolenv/inc/version.hrc80
-rw-r--r--solenv/inc/version.lst30
-rwxr-xr-xsolenv/inc/version_so.hrc79
-rw-r--r--solenv/inc/versionlist.mk30
-rw-r--r--solenv/inc/wnt.mk72
-rw-r--r--solenv/inc/wntgcci.mk217
-rw-r--r--solenv/inc/wntmsci10.mk343
-rw-r--r--solenv/inc/wntmsci11.mk391
121 files changed, 33609 insertions, 0 deletions
diff --git a/solenv/inc/_cppunit.mk b/solenv/inc/_cppunit.mk
new file mode 100644
index 000000000000..8d9e45d33331
--- /dev/null
+++ b/solenv/inc/_cppunit.mk
@@ -0,0 +1,120 @@
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+.IF "$(SHL1TARGET)"!=""
+ALLTAR : test1
+test1 .PHONY : $(SHL1TARGETN)
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#1 on library $(SHL1TARGETN)
+ @echo ----------------------------------------------------------
+ $(CPPUNITTESTER) $(SHL1TARGETN)
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+.IF "$(SHL2TARGET)"!=""
+ALLTAR : test2
+test2 .PHONY : $(SHL2TARGETN)
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#2 on library $(SHL2TARGETN)
+ @echo ----------------------------------------------------------
+ $(CPPUNITTESTER) $(SHL2TARGETN)
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+.IF "$(SHL3TARGET)"!=""
+ALLTAR : test3
+test3 .PHONY : $(SHL3TARGETN)
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#3 on library $(SHL3TARGETN)
+ @echo ----------------------------------------------------------
+ $(CPPUNITTESTER) $(SHL3TARGETN)
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+.IF "$(SHL4TARGET)"!=""
+ALLTAR : test4
+test4 .PHONY : $(SHL4TARGETN)
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#4 on library $(SHL4TARGETN)
+ @echo ----------------------------------------------------------
+ $(CPPUNITTESTER) $(SHL4TARGETN)
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+.IF "$(SHL5TARGET)"!=""
+ALLTAR : test5
+test5 .PHONY : $(SHL5TARGETN)
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#5 on library $(SHL5TARGETN)
+ @echo ----------------------------------------------------------
+ $(CPPUNITTESTER) $(SHL5TARGETN)
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+.IF "$(SHL6TARGET)"!=""
+ALLTAR : test6
+test6 .PHONY : $(SHL6TARGETN)
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#6 on library $(SHL6TARGETN)
+ @echo ----------------------------------------------------------
+ $(CPPUNITTESTER) $(SHL6TARGETN)
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+.IF "$(SHL7TARGET)"!=""
+ALLTAR : test7
+test7 .PHONY : $(SHL7TARGETN)
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#7 on library $(SHL7TARGETN)
+ @echo ----------------------------------------------------------
+ $(CPPUNITTESTER) $(SHL7TARGETN)
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+.IF "$(SHL8TARGET)"!=""
+ALLTAR : test8
+test8 .PHONY : $(SHL8TARGETN)
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#8 on library $(SHL8TARGETN)
+ @echo ----------------------------------------------------------
+ $(CPPUNITTESTER) $(SHL8TARGETN)
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+.IF "$(SHL9TARGET)"!=""
+ALLTAR : test9
+test9 .PHONY : $(SHL9TARGETN)
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#9 on library $(SHL9TARGETN)
+ @echo ----------------------------------------------------------
+ $(CPPUNITTESTER) $(SHL9TARGETN)
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+.IF "$(SHL10TARGET)"!=""
+ALLTAR : test10
+test10 .PHONY : $(SHL10TARGETN)
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#10 on library $(SHL10TARGETN)
+ @echo ----------------------------------------------------------
+ $(CPPUNITTESTER) $(SHL10TARGETN)
+.ENDIF
+
diff --git a/solenv/inc/_tg_app.mk b/solenv/inc/_tg_app.mk
new file mode 100644
index 000000000000..960c8d229b76
--- /dev/null
+++ b/solenv/inc/_tg_app.mk
@@ -0,0 +1,2840 @@
+# unroll begin
+
+.IF "$(GUI)" == "OS2" && "$(TARGETTYPE)" == "GUI"
+APP1DEF = $(MISC)/$(APP1TARGET).def
+.ENDIF
+
+.IF "$(APP1LINKTYPE)" != ""
+#must be either STATIC or SHARED
+APP1LINKTYPEFLAG=$(APPLINK$(APP1LINKTYPE))
+.ENDIF
+
+# decide how to link
+.IF "$(APP1CODETYPE)"=="C"
+APP1LINKER=$(LINKC)
+APP1STDLIB=$(subst,CPPRUNTIME, $(STDLIB))
+APP1LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(APP1CODETYPE)"=="C"
+APP1LINKER=$(LINK)
+APP1STDLIB=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDLIB))
+APP1LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(APP1CODETYPE)"=="C"
+
+APP1RPATH*=OOO
+LINKFLAGSRUNPATH_$(APP1RPATH)*=/ERROR:/Bad_APP1RPATH_value
+.IF "$(OS)" != "MACOSX"
+APP1LINKFLAGS+=$(LINKFLAGSRUNPATH_$(APP1RPATH))
+.ENDIF
+
+.IF "$(APP1STACK)" != ""
+.IF "$(LINKFLAGSTACK)" != ""
+APP1STACKN=$(LINKFLAGSTACK)$(APP1STACK)
+.ENDIF
+.ELSE
+APP1STACKN=
+.ENDIF
+
+.IF "$(APP1NOSAL)"==""
+.IF "$(TARGETTYPE)" == "GUI"
+APP1OBJS+= $(STDOBJVCL)
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)$(COM)" == "WNTGCC"
+APP1RESO=
+.IF "$(APP1LINKRES)" != "" || "$(APP1RES)" != ""
+APP1RESO=$(MISC)/$(APP1TARGET:b)_res.o
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)" == "UNX"
+APP1DEPN+:=$(APP1DEPNU)
+USE_APP1DEF=
+.ENDIF
+
+.IF "$(APP1TARGETN)"!=""
+
+.IF "$(APP1PRODUCTNAME)"!=""
+APP1PRODUCTDEF+:=-DPRODUCT_NAME=\"$(APP1PRODUCTNAME)\"
+.ENDIF # "$(APP1PRODUCTNAME)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP1LIBS)"!=""
+$(MISC)/$(APP1TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ sed -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(APP1LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF #"$(APP1LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(APP1TARGETN:b)_linkinc.ls
+$(APP1TARGETN) : $(LINKINCTARGETS)
+.ENDIF # "$(linkinc)"!=""
+
+# Allow for target specific LIBSALCPPRT override
+APP1LIBSALCPPRT*=$(LIBSALCPPRT)
+
+.IF "$(GUI)" == "OS2"
+_APP1IMP_ORD = $(APP1STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(APP1STDLIBS:^"$(LB)/")
+APP1IMP_ORD = $(foreach,i,$(_APP1IMP_ORD) $(shell @-ls $i))
+.ELSE
+APP1IMP_ORD =
+.ENDIF
+
+$(APP1TARGETN): $(APP1OBJS) $(APP1LIBS) \
+ $(APP1RES) \
+ $(APP1IMP_ORD) \
+ $(APP1ICON) $(APP1DEPN) $(USE_APP1DEF)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_1.cmd
+ @-$(RM) $(MISC)/$(@:b).strip
+ @echo $(STDSLO) $(APP1OBJS:s/.obj/.o/) \
+ `cat /dev/null $(APP1LIBS) | sed s\#$(ROUT)\#$(OUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(APP1LINKER) $(APP1LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) -o $@ \
+ $(APP1LINKTYPEFLAG) $(APP1STDLIBS) $(APP1STDLIB) $(STDLIB1) -filelist $(MISC)/$(@:b).list > $(MISC)/$(TARGET).$(@:b)_1.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_1.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_1.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_1.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_1.cmd
+# Need to strip __objcInit symbol to avoid duplicate symbols when loading
+# libraries at runtime
+ @-nm $@ | grep -v ' U ' | $(AWK) '{ print $$NF }' | grep -F -x '__objcInit' > $(MISC)/$(@:b).strip
+ @strip -i -R $(MISC)/$(@:b).strip -X $@
+ @ls -l $@
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ app $(APP1RPATH) $@
+.IF "$(TARGETTYPE)"=="GUI"
+ @echo "Making: " $(@:f).app
+ @macosx-create-bundle $@
+.ENDIF # "$(TARGETTYPE)"=="GUI"
+.ELSE # "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_1.cmd
+ @echo $(APP1LINKER) $(APP1LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP1OBJS:s/.obj/.o/) '\' > $(MISC)/$(TARGET).$(@:b)_1.cmd
+ @cat $(mktmp /dev/null $(APP1LIBS)) | xargs -n 1 cat | sed s\#$(ROUT)\#$(OUT)\#g | sed 's#$$# \\#' >> $(MISC)/$(TARGET).$(@:b)_1.cmd
+ @echo $(APP1LINKTYPEFLAG) $(APP1LIBSALCPPRT) $(APP1STDLIBS) $(APP1STDLIB) $(STDLIB1) -o $@ >> $(MISC)/$(TARGET).$(@:b)_1.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_1.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_1.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+ .ENDIF
+.ENDIF # "$(OS)"=="MACOSX"
+.ENDIF
+.IF "$(GUI)" == "WNT"
+ @@-$(MKDIR) $(@:d:d)
+.IF "$(APP1LINKRES)" != ""
+ @@-$(RM) $(MISC)/$(APP1LINKRES:b).rc
+.IF "$(APP1ICON)" != ""
+ @-echo 1 ICON $(EMQ)"$(APP1ICON:s/\/\\/)$(EMQ)" >> $(MISC)/$(APP1LINKRES:b).rc
+.ENDIF # "$(APP1ICON)" != ""
+.IF "$(APP1VERINFO)" != ""
+ @-echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP1LINKRES:b).rc
+ @-echo $(EMQ)#include $(EMQ)"$(APP1VERINFO)$(EMQ)" >> $(MISC)/$(APP1LINKRES:b).rc
+.ENDIF # "$(APP1VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(APP1PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP1LINKRES:b).rc
+.ENDIF # "$(APP1LINKRES)" != ""
+.IF "$(COM)" == "GCC"
+ @echo mingw
+.IF "$(APP1LINKRES)" != "" || "$(APP1RES)" != ""
+ @cat $(APP1LINKRES) $(subst,/res/,/res{$(subst,$(BIN), $(@:d))} $(APP1RES)) > $(MISC)/$(@:b)_all.res
+ windres $(MISC)/$(@:b)_all.res $(APP1RESO)
+.ENDIF
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSAPP) $(MINGWSSTDOBJ) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP1BASEX) $(APP1STACKN) -o $@ $(APP1OBJS) \
+ -Wl,-Map,$(MISC)/$(@:b).map $(STDOBJ) $(APP1RESO) \
+ `$(TYPE) /dev/null $(APP1LIBS) | sed s#$(ROUT)#$(OUT)#g` \
+ $(APP_LINKTYPE) $(APP1LIBSALCPPRT) \
+ -Wl,--start-group $(APP1STDLIBS) -Wl,--end-group $(APP1STDLIB) \
+ $(STDLIB1) $(MINGWSSTDENDOBJ) > $(MISC)/$(TARGET).$(@:b)_1.cmd
+ # need this empty line, else dmake somehow gets confused by the .IFs and .ENDIFs
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_1.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_1.cmd
+ @ls -l $@
+.ELSE # "$(COM)" == "GCC"
+.IF "$(linkinc)" == ""
+ $(COMMAND_ECHO)$(APP1LINKER) @$(mktmp \
+ $(APP1LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP1BASEX) \
+ $(APP1STACKN) \
+ -out:$@ \
+ -map:$(MISC)/{$(subst,/,_ $(APP1TARGET)).map} \
+ $(STDOBJ) \
+ $(APP1LINKRES) \
+ $(APP1RES) \
+ $(APP1OBJS) \
+ $(APP1LIBS) \
+ $(APP1STDLIBS) \
+ $(APP1STDLIB) $(STDLIB1) \
+ )
+ @-echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);1 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);1 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP1TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP1TARGET).lst
+ $(COMMAND_ECHO)-$(RM) $(MISC)\linkobj.lst
+ for %_i in ($(MISC)\*.obj) do type %_i >> $(MISC)\linkobj.lst
+ type $(mktmp,$(MISC)\$(APP1TARGET).lst
+ $(APP1LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP1BASEX) \
+ $(APP1STACKN) \
+ -out:$@ \
+ $(STDOBJ) \
+ $(APP1LINKRES) \
+ $(APP1RES) \
+ $(APP1OBJS) \
+ $(APP1LIBS) \
+ $(APP1STDLIBS) \
+ $(APP1STDLIB) $(STDLIB1))
+ $(COMMAND_ECHO)$(SED)$(SED) -e 's/\(\.\.\\\)\{2,4\}/..\\/g' $(MISC)\$(APP1TARGETN:b)_linkobj.lst >> $(MISC)\$(APP1TARGET).lst
+ $(COMMAND_ECHO)$(SED)$(IFEXIST) $(MISC)/$(APP1TARGET).lst $(THEN) type $(MISC)/$(APP1TARGET).lst >> $(MISC)/$(APP1TARGET).lnk $(FI)
+ $(COMMAND_ECHO)$(SED)$(APP1LINKER) @$(MISC)\$(APP1TARGET).lnk
+.ENDIF # "$(linkinc)" == ""
+.ENDIF # "$(COM)" == "GCC"
+.IF "$(APP1TARGET)" == "loader"
+ $(COMMAND_ECHO)$(PERL) loader.pl $@
+ $(COMMAND_ECHO)$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "WNT"
+
+.IF "$(GUI)" == "OS2"
+ @+-$(MKDIR) $(@:d:d) >& $(NULLDEV)
+.IF "$(APP1LINKRES)" != ""
+ @+-$(RM) $(MISC)/$(APP1LINKRES:b).rc >& $(NULLDEV)
+.IF "$(APP1ICON)" != ""
+ @-+$(WRAPCMD) echo 1 ICON $(EMQ)"$(APP1ICON)$(EMQ)" | $(SED) 'sX\\X\\\\Xg' >> $(MISC)/$(APP1LINKRES:b).rc
+.ENDIF # "$(APP1ICON)" != ""
+.IF "$(APP1VERINFO)" != ""
+ @-+echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP1LINKRES:b).rc
+ @-+echo $(EMQ)#include $(EMQ)"$(APP1VERINFO)$(EMQ)" >> $(MISC)/$(APP1LINKRES:b).rc
+.ENDIF # "$(APP1VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(APP1PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP1LINKRES:b).rc
+.ENDIF # "$(APP1LINKRES)" != ""
+
+.IF "$(TARGETTYPE)" == "GUI"
+ @echo NAME $(APP1TARGET) WINDOWAPI > $(MISC)/$(APP1TARGET).def
+.ENDIF
+
+ .IF "$(VERBOSE)" == "TRUE"
+ @+echo $(APP1LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP1BASEX) \
+ $(APP1STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP1LINKRES) \
+ $(APP1RES) \
+ $(APP1DEF) \
+ $(APP1OBJS) \
+ $(APP1LIBS) \
+ $(APP1STDLIBS:^"-l") \
+ $(APP1STDLIB:^"-l") $(STDLIB1:^"-l")
+ .ENDIF
+ $(COMMAND_ECHO)$(APP1LINKER) -v \
+ $(APP1LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP1BASEX) \
+ $(APP1STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP1LINKRES) \
+ $(APP1RES) \
+ $(APP1DEF) \
+ $(APP1OBJS) \
+ $(APP1LIBS) \
+ $(APP1STDLIBS:^"-l") \
+ $(APP1STDLIB:^"-l") $(STDLIB1:^"-l")
+
+
+.IF "$(APP1TARGET)" == "loader"
+ $(COMMAND_ECHO)+$(PERL) loader.pl $@
+ $(COMMAND_ECHO)+$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)+$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "OS2"
+
+.ENDIF # "$(APP1TARGETN)"!=""
+
+
+# Instruction for linking
+# unroll begin
+
+.IF "$(GUI)" == "OS2" && "$(TARGETTYPE)" == "GUI"
+APP2DEF = $(MISC)/$(APP2TARGET).def
+.ENDIF
+
+.IF "$(APP2LINKTYPE)" != ""
+#must be either STATIC or SHARED
+APP2LINKTYPEFLAG=$(APPLINK$(APP2LINKTYPE))
+.ENDIF
+
+# decide how to link
+.IF "$(APP2CODETYPE)"=="C"
+APP2LINKER=$(LINKC)
+APP2STDLIB=$(subst,CPPRUNTIME, $(STDLIB))
+APP2LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(APP2CODETYPE)"=="C"
+APP2LINKER=$(LINK)
+APP2STDLIB=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDLIB))
+APP2LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(APP2CODETYPE)"=="C"
+
+APP2RPATH*=OOO
+LINKFLAGSRUNPATH_$(APP2RPATH)*=/ERROR:/Bad_APP2RPATH_value
+.IF "$(OS)" != "MACOSX"
+APP2LINKFLAGS+=$(LINKFLAGSRUNPATH_$(APP2RPATH))
+.ENDIF
+
+.IF "$(APP2STACK)" != ""
+.IF "$(LINKFLAGSTACK)" != ""
+APP2STACKN=$(LINKFLAGSTACK)$(APP2STACK)
+.ENDIF
+.ELSE
+APP2STACKN=
+.ENDIF
+
+.IF "$(APP2NOSAL)"==""
+.IF "$(TARGETTYPE)" == "GUI"
+APP2OBJS+= $(STDOBJVCL)
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)$(COM)" == "WNTGCC"
+APP2RESO=
+.IF "$(APP2LINKRES)" != "" || "$(APP2RES)" != ""
+APP2RESO=$(MISC)/$(APP2TARGET:b)_res.o
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)" == "UNX"
+APP2DEPN+:=$(APP2DEPNU)
+USE_APP2DEF=
+.ENDIF
+
+.IF "$(APP2TARGETN)"!=""
+
+.IF "$(APP2PRODUCTNAME)"!=""
+APP2PRODUCTDEF+:=-DPRODUCT_NAME=\"$(APP2PRODUCTNAME)\"
+.ENDIF # "$(APP2PRODUCTNAME)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP2LIBS)"!=""
+$(MISC)/$(APP2TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ sed -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(APP2LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF #"$(APP2LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(APP2TARGETN:b)_linkinc.ls
+$(APP2TARGETN) : $(LINKINCTARGETS)
+.ENDIF # "$(linkinc)"!=""
+
+# Allow for target specific LIBSALCPPRT override
+APP2LIBSALCPPRT*=$(LIBSALCPPRT)
+
+.IF "$(GUI)" == "OS2"
+_APP2IMP_ORD = $(APP2STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(APP2STDLIBS:^"$(LB)/")
+APP2IMP_ORD = $(foreach,i,$(_APP2IMP_ORD) $(shell @-ls $i))
+.ELSE
+APP2IMP_ORD =
+.ENDIF
+
+$(APP2TARGETN): $(APP2OBJS) $(APP2LIBS) \
+ $(APP2RES) \
+ $(APP2IMP_ORD) \
+ $(APP2ICON) $(APP2DEPN) $(USE_APP2DEF)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_2.cmd
+ @-$(RM) $(MISC)/$(@:b).strip
+ @echo $(STDSLO) $(APP2OBJS:s/.obj/.o/) \
+ `cat /dev/null $(APP2LIBS) | sed s\#$(ROUT)\#$(OUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(APP2LINKER) $(APP2LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) -o $@ \
+ $(APP2LINKTYPEFLAG) $(APP2STDLIBS) $(APP2STDLIB) $(STDLIB2) -filelist $(MISC)/$(@:b).list > $(MISC)/$(TARGET).$(@:b)_2.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_2.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_2.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_2.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_2.cmd
+# Need to strip __objcInit symbol to avoid duplicate symbols when loading
+# libraries at runtime
+ @-nm $@ | grep -v ' U ' | $(AWK) '{ print $$NF }' | grep -F -x '__objcInit' > $(MISC)/$(@:b).strip
+ @strip -i -R $(MISC)/$(@:b).strip -X $@
+ @ls -l $@
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ app $(APP2RPATH) $@
+.IF "$(TARGETTYPE)"=="GUI"
+ @echo "Making: " $(@:f).app
+ @macosx-create-bundle $@
+.ENDIF # "$(TARGETTYPE)"=="GUI"
+.ELSE # "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_2.cmd
+ @echo $(APP2LINKER) $(APP2LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP2OBJS:s/.obj/.o/) '\' > $(MISC)/$(TARGET).$(@:b)_2.cmd
+ @cat $(mktmp /dev/null $(APP2LIBS)) | xargs -n 1 cat | sed s\#$(ROUT)\#$(OUT)\#g | sed 's#$$# \\#' >> $(MISC)/$(TARGET).$(@:b)_2.cmd
+ @echo $(APP2LINKTYPEFLAG) $(APP2LIBSALCPPRT) $(APP2STDLIBS) $(APP2STDLIB) $(STDLIB2) -o $@ >> $(MISC)/$(TARGET).$(@:b)_2.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_2.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_2.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+ .ENDIF
+.ENDIF # "$(OS)"=="MACOSX"
+.ENDIF
+.IF "$(GUI)" == "WNT"
+ @@-$(MKDIR) $(@:d:d)
+.IF "$(APP2LINKRES)" != ""
+ @@-$(RM) $(MISC)/$(APP2LINKRES:b).rc
+.IF "$(APP2ICON)" != ""
+ @-echo 1 ICON $(EMQ)"$(APP2ICON:s/\/\\/)$(EMQ)" >> $(MISC)/$(APP2LINKRES:b).rc
+.ENDIF # "$(APP2ICON)" != ""
+.IF "$(APP2VERINFO)" != ""
+ @-echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP2LINKRES:b).rc
+ @-echo $(EMQ)#include $(EMQ)"$(APP2VERINFO)$(EMQ)" >> $(MISC)/$(APP2LINKRES:b).rc
+.ENDIF # "$(APP2VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(APP2PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP2LINKRES:b).rc
+.ENDIF # "$(APP2LINKRES)" != ""
+.IF "$(COM)" == "GCC"
+ @echo mingw
+.IF "$(APP2LINKRES)" != "" || "$(APP2RES)" != ""
+ @cat $(APP2LINKRES) $(subst,/res/,/res{$(subst,$(BIN), $(@:d))} $(APP2RES)) > $(MISC)/$(@:b)_all.res
+ windres $(MISC)/$(@:b)_all.res $(APP2RESO)
+.ENDIF
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSAPP) $(MINGWSSTDOBJ) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP2BASEX) $(APP2STACKN) -o $@ $(APP2OBJS) \
+ -Wl,-Map,$(MISC)/$(@:b).map $(STDOBJ) $(APP2RESO) \
+ `$(TYPE) /dev/null $(APP2LIBS) | sed s#$(ROUT)#$(OUT)#g` \
+ $(APP_LINKTYPE) $(APP2LIBSALCPPRT) \
+ -Wl,--start-group $(APP2STDLIBS) -Wl,--end-group $(APP2STDLIB) \
+ $(STDLIB2) $(MINGWSSTDENDOBJ) > $(MISC)/$(TARGET).$(@:b)_2.cmd
+ # need this empty line, else dmake somehow gets confused by the .IFs and .ENDIFs
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_2.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_2.cmd
+ @ls -l $@
+.ELSE # "$(COM)" == "GCC"
+.IF "$(linkinc)" == ""
+ $(COMMAND_ECHO)$(APP2LINKER) @$(mktmp \
+ $(APP2LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP2BASEX) \
+ $(APP2STACKN) \
+ -out:$@ \
+ -map:$(MISC)/{$(subst,/,_ $(APP2TARGET)).map} \
+ $(STDOBJ) \
+ $(APP2LINKRES) \
+ $(APP2RES) \
+ $(APP2OBJS) \
+ $(APP2LIBS) \
+ $(APP2STDLIBS) \
+ $(APP2STDLIB) $(STDLIB2) \
+ )
+ @-echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);1 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);1 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP2TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP2TARGET).lst
+ $(COMMAND_ECHO)-$(RM) $(MISC)\linkobj.lst
+ for %_i in ($(MISC)\*.obj) do type %_i >> $(MISC)\linkobj.lst
+ type $(mktmp,$(MISC)\$(APP2TARGET).lst
+ $(APP2LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP2BASEX) \
+ $(APP2STACKN) \
+ -out:$@ \
+ $(STDOBJ) \
+ $(APP2LINKRES) \
+ $(APP2RES) \
+ $(APP2OBJS) \
+ $(APP2LIBS) \
+ $(APP2STDLIBS) \
+ $(APP2STDLIB) $(STDLIB2))
+ $(COMMAND_ECHO)$(SED)$(SED) -e 's/\(\.\.\\\)\{2,4\}/..\\/g' $(MISC)\$(APP2TARGETN:b)_linkobj.lst >> $(MISC)\$(APP2TARGET).lst
+ $(COMMAND_ECHO)$(SED)$(IFEXIST) $(MISC)/$(APP2TARGET).lst $(THEN) type $(MISC)/$(APP2TARGET).lst >> $(MISC)/$(APP2TARGET).lnk $(FI)
+ $(COMMAND_ECHO)$(SED)$(APP2LINKER) @$(MISC)\$(APP2TARGET).lnk
+.ENDIF # "$(linkinc)" == ""
+.ENDIF # "$(COM)" == "GCC"
+.IF "$(APP2TARGET)" == "loader"
+ $(COMMAND_ECHO)$(PERL) loader.pl $@
+ $(COMMAND_ECHO)$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "WNT"
+
+.IF "$(GUI)" == "OS2"
+ @+-$(MKDIR) $(@:d:d) >& $(NULLDEV)
+.IF "$(APP2LINKRES)" != ""
+ @+-$(RM) $(MISC)/$(APP2LINKRES:b).rc >& $(NULLDEV)
+.IF "$(APP2ICON)" != ""
+ @-+$(WRAPCMD) echo 1 ICON $(EMQ)"$(APP2ICON)$(EMQ)" | $(SED) 'sX\\X\\\\Xg' >> $(MISC)/$(APP2LINKRES:b).rc
+.ENDIF # "$(APP2ICON)" != ""
+.IF "$(APP2VERINFO)" != ""
+ @-+echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP2LINKRES:b).rc
+ @-+echo $(EMQ)#include $(EMQ)"$(APP2VERINFO)$(EMQ)" >> $(MISC)/$(APP2LINKRES:b).rc
+.ENDIF # "$(APP2VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(APP2PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP2LINKRES:b).rc
+.ENDIF # "$(APP2LINKRES)" != ""
+
+.IF "$(TARGETTYPE)" == "GUI"
+ @echo NAME $(APP2TARGET) WINDOWAPI > $(MISC)/$(APP2TARGET).def
+.ENDIF
+
+ .IF "$(VERBOSE)" == "TRUE"
+ @+echo $(APP2LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP2BASEX) \
+ $(APP2STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP2LINKRES) \
+ $(APP2RES) \
+ $(APP2DEF) \
+ $(APP2OBJS) \
+ $(APP2LIBS) \
+ $(APP2STDLIBS:^"-l") \
+ $(APP2STDLIB:^"-l") $(STDLIB2:^"-l")
+ .ENDIF
+ $(COMMAND_ECHO)$(APP2LINKER) -v \
+ $(APP2LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP2BASEX) \
+ $(APP2STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP2LINKRES) \
+ $(APP2RES) \
+ $(APP2DEF) \
+ $(APP2OBJS) \
+ $(APP2LIBS) \
+ $(APP2STDLIBS:^"-l") \
+ $(APP2STDLIB:^"-l") $(STDLIB2:^"-l")
+
+
+.IF "$(APP2TARGET)" == "loader"
+ $(COMMAND_ECHO)+$(PERL) loader.pl $@
+ $(COMMAND_ECHO)+$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)+$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "OS2"
+
+.ENDIF # "$(APP2TARGETN)"!=""
+
+
+# Instruction for linking
+# unroll begin
+
+.IF "$(GUI)" == "OS2" && "$(TARGETTYPE)" == "GUI"
+APP3DEF = $(MISC)/$(APP3TARGET).def
+.ENDIF
+
+.IF "$(APP3LINKTYPE)" != ""
+#must be either STATIC or SHARED
+APP3LINKTYPEFLAG=$(APPLINK$(APP3LINKTYPE))
+.ENDIF
+
+# decide how to link
+.IF "$(APP3CODETYPE)"=="C"
+APP3LINKER=$(LINKC)
+APP3STDLIB=$(subst,CPPRUNTIME, $(STDLIB))
+APP3LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(APP3CODETYPE)"=="C"
+APP3LINKER=$(LINK)
+APP3STDLIB=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDLIB))
+APP3LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(APP3CODETYPE)"=="C"
+
+APP3RPATH*=OOO
+LINKFLAGSRUNPATH_$(APP3RPATH)*=/ERROR:/Bad_APP3RPATH_value
+.IF "$(OS)" != "MACOSX"
+APP3LINKFLAGS+=$(LINKFLAGSRUNPATH_$(APP3RPATH))
+.ENDIF
+
+.IF "$(APP3STACK)" != ""
+.IF "$(LINKFLAGSTACK)" != ""
+APP3STACKN=$(LINKFLAGSTACK)$(APP3STACK)
+.ENDIF
+.ELSE
+APP3STACKN=
+.ENDIF
+
+.IF "$(APP3NOSAL)"==""
+.IF "$(TARGETTYPE)" == "GUI"
+APP3OBJS+= $(STDOBJVCL)
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)$(COM)" == "WNTGCC"
+APP3RESO=
+.IF "$(APP3LINKRES)" != "" || "$(APP3RES)" != ""
+APP3RESO=$(MISC)/$(APP3TARGET:b)_res.o
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)" == "UNX"
+APP3DEPN+:=$(APP3DEPNU)
+USE_APP3DEF=
+.ENDIF
+
+.IF "$(APP3TARGETN)"!=""
+
+.IF "$(APP3PRODUCTNAME)"!=""
+APP3PRODUCTDEF+:=-DPRODUCT_NAME=\"$(APP3PRODUCTNAME)\"
+.ENDIF # "$(APP3PRODUCTNAME)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP3LIBS)"!=""
+$(MISC)/$(APP3TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ sed -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(APP3LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF #"$(APP3LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(APP3TARGETN:b)_linkinc.ls
+$(APP3TARGETN) : $(LINKINCTARGETS)
+.ENDIF # "$(linkinc)"!=""
+
+# Allow for target specific LIBSALCPPRT override
+APP3LIBSALCPPRT*=$(LIBSALCPPRT)
+
+.IF "$(GUI)" == "OS2"
+_APP3IMP_ORD = $(APP3STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(APP3STDLIBS:^"$(LB)/")
+APP3IMP_ORD = $(foreach,i,$(_APP3IMP_ORD) $(shell @-ls $i))
+.ELSE
+APP3IMP_ORD =
+.ENDIF
+
+$(APP3TARGETN): $(APP3OBJS) $(APP3LIBS) \
+ $(APP3RES) \
+ $(APP3IMP_ORD) \
+ $(APP3ICON) $(APP3DEPN) $(USE_APP3DEF)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_3.cmd
+ @-$(RM) $(MISC)/$(@:b).strip
+ @echo $(STDSLO) $(APP3OBJS:s/.obj/.o/) \
+ `cat /dev/null $(APP3LIBS) | sed s\#$(ROUT)\#$(OUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(APP3LINKER) $(APP3LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) -o $@ \
+ $(APP3LINKTYPEFLAG) $(APP3STDLIBS) $(APP3STDLIB) $(STDLIB3) -filelist $(MISC)/$(@:b).list > $(MISC)/$(TARGET).$(@:b)_3.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_3.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_3.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_3.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_3.cmd
+# Need to strip __objcInit symbol to avoid duplicate symbols when loading
+# libraries at runtime
+ @-nm $@ | grep -v ' U ' | $(AWK) '{ print $$NF }' | grep -F -x '__objcInit' > $(MISC)/$(@:b).strip
+ @strip -i -R $(MISC)/$(@:b).strip -X $@
+ @ls -l $@
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ app $(APP3RPATH) $@
+.IF "$(TARGETTYPE)"=="GUI"
+ @echo "Making: " $(@:f).app
+ @macosx-create-bundle $@
+.ENDIF # "$(TARGETTYPE)"=="GUI"
+.ELSE # "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_3.cmd
+ @echo $(APP3LINKER) $(APP3LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP3OBJS:s/.obj/.o/) '\' > $(MISC)/$(TARGET).$(@:b)_3.cmd
+ @cat $(mktmp /dev/null $(APP3LIBS)) | xargs -n 1 cat | sed s\#$(ROUT)\#$(OUT)\#g | sed 's#$$# \\#' >> $(MISC)/$(TARGET).$(@:b)_3.cmd
+ @echo $(APP3LINKTYPEFLAG) $(APP3LIBSALCPPRT) $(APP3STDLIBS) $(APP3STDLIB) $(STDLIB3) -o $@ >> $(MISC)/$(TARGET).$(@:b)_3.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_3.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_3.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+ .ENDIF
+.ENDIF # "$(OS)"=="MACOSX"
+.ENDIF
+.IF "$(GUI)" == "WNT"
+ @@-$(MKDIR) $(@:d:d)
+.IF "$(APP3LINKRES)" != ""
+ @@-$(RM) $(MISC)/$(APP3LINKRES:b).rc
+.IF "$(APP3ICON)" != ""
+ @-echo 1 ICON $(EMQ)"$(APP3ICON:s/\/\\/)$(EMQ)" >> $(MISC)/$(APP3LINKRES:b).rc
+.ENDIF # "$(APP3ICON)" != ""
+.IF "$(APP3VERINFO)" != ""
+ @-echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP3LINKRES:b).rc
+ @-echo $(EMQ)#include $(EMQ)"$(APP3VERINFO)$(EMQ)" >> $(MISC)/$(APP3LINKRES:b).rc
+.ENDIF # "$(APP3VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(APP3PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP3LINKRES:b).rc
+.ENDIF # "$(APP3LINKRES)" != ""
+.IF "$(COM)" == "GCC"
+ @echo mingw
+.IF "$(APP3LINKRES)" != "" || "$(APP3RES)" != ""
+ @cat $(APP3LINKRES) $(subst,/res/,/res{$(subst,$(BIN), $(@:d))} $(APP3RES)) > $(MISC)/$(@:b)_all.res
+ windres $(MISC)/$(@:b)_all.res $(APP3RESO)
+.ENDIF
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSAPP) $(MINGWSSTDOBJ) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP3BASEX) $(APP3STACKN) -o $@ $(APP3OBJS) \
+ -Wl,-Map,$(MISC)/$(@:b).map $(STDOBJ) $(APP3RESO) \
+ `$(TYPE) /dev/null $(APP3LIBS) | sed s#$(ROUT)#$(OUT)#g` \
+ $(APP_LINKTYPE) $(APP3LIBSALCPPRT) \
+ -Wl,--start-group $(APP3STDLIBS) -Wl,--end-group $(APP3STDLIB) \
+ $(STDLIB3) $(MINGWSSTDENDOBJ) > $(MISC)/$(TARGET).$(@:b)_3.cmd
+ # need this empty line, else dmake somehow gets confused by the .IFs and .ENDIFs
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_3.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_3.cmd
+ @ls -l $@
+.ELSE # "$(COM)" == "GCC"
+.IF "$(linkinc)" == ""
+ $(COMMAND_ECHO)$(APP3LINKER) @$(mktmp \
+ $(APP3LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP3BASEX) \
+ $(APP3STACKN) \
+ -out:$@ \
+ -map:$(MISC)/{$(subst,/,_ $(APP3TARGET)).map} \
+ $(STDOBJ) \
+ $(APP3LINKRES) \
+ $(APP3RES) \
+ $(APP3OBJS) \
+ $(APP3LIBS) \
+ $(APP3STDLIBS) \
+ $(APP3STDLIB) $(STDLIB3) \
+ )
+ @-echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);1 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);1 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP3TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP3TARGET).lst
+ $(COMMAND_ECHO)-$(RM) $(MISC)\linkobj.lst
+ for %_i in ($(MISC)\*.obj) do type %_i >> $(MISC)\linkobj.lst
+ type $(mktmp,$(MISC)\$(APP3TARGET).lst
+ $(APP3LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP3BASEX) \
+ $(APP3STACKN) \
+ -out:$@ \
+ $(STDOBJ) \
+ $(APP3LINKRES) \
+ $(APP3RES) \
+ $(APP3OBJS) \
+ $(APP3LIBS) \
+ $(APP3STDLIBS) \
+ $(APP3STDLIB) $(STDLIB3))
+ $(COMMAND_ECHO)$(SED)$(SED) -e 's/\(\.\.\\\)\{2,4\}/..\\/g' $(MISC)\$(APP3TARGETN:b)_linkobj.lst >> $(MISC)\$(APP3TARGET).lst
+ $(COMMAND_ECHO)$(SED)$(IFEXIST) $(MISC)/$(APP3TARGET).lst $(THEN) type $(MISC)/$(APP3TARGET).lst >> $(MISC)/$(APP3TARGET).lnk $(FI)
+ $(COMMAND_ECHO)$(SED)$(APP3LINKER) @$(MISC)\$(APP3TARGET).lnk
+.ENDIF # "$(linkinc)" == ""
+.ENDIF # "$(COM)" == "GCC"
+.IF "$(APP3TARGET)" == "loader"
+ $(COMMAND_ECHO)$(PERL) loader.pl $@
+ $(COMMAND_ECHO)$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "WNT"
+
+.IF "$(GUI)" == "OS2"
+ @+-$(MKDIR) $(@:d:d) >& $(NULLDEV)
+.IF "$(APP3LINKRES)" != ""
+ @+-$(RM) $(MISC)/$(APP3LINKRES:b).rc >& $(NULLDEV)
+.IF "$(APP3ICON)" != ""
+ @-+$(WRAPCMD) echo 1 ICON $(EMQ)"$(APP3ICON)$(EMQ)" | $(SED) 'sX\\X\\\\Xg' >> $(MISC)/$(APP3LINKRES:b).rc
+.ENDIF # "$(APP3ICON)" != ""
+.IF "$(APP3VERINFO)" != ""
+ @-+echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP3LINKRES:b).rc
+ @-+echo $(EMQ)#include $(EMQ)"$(APP3VERINFO)$(EMQ)" >> $(MISC)/$(APP3LINKRES:b).rc
+.ENDIF # "$(APP3VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(APP3PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP3LINKRES:b).rc
+.ENDIF # "$(APP3LINKRES)" != ""
+
+.IF "$(TARGETTYPE)" == "GUI"
+ @echo NAME $(APP3TARGET) WINDOWAPI > $(MISC)/$(APP3TARGET).def
+.ENDIF
+
+ .IF "$(VERBOSE)" == "TRUE"
+ @+echo $(APP3LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP3BASEX) \
+ $(APP3STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP3LINKRES) \
+ $(APP3RES) \
+ $(APP3DEF) \
+ $(APP3OBJS) \
+ $(APP3LIBS) \
+ $(APP3STDLIBS:^"-l") \
+ $(APP3STDLIB:^"-l") $(STDLIB3:^"-l")
+ .ENDIF
+ $(COMMAND_ECHO)$(APP3LINKER) -v \
+ $(APP3LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP3BASEX) \
+ $(APP3STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP3LINKRES) \
+ $(APP3RES) \
+ $(APP3DEF) \
+ $(APP3OBJS) \
+ $(APP3LIBS) \
+ $(APP3STDLIBS:^"-l") \
+ $(APP3STDLIB:^"-l") $(STDLIB3:^"-l")
+
+
+.IF "$(APP3TARGET)" == "loader"
+ $(COMMAND_ECHO)+$(PERL) loader.pl $@
+ $(COMMAND_ECHO)+$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)+$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "OS2"
+
+.ENDIF # "$(APP3TARGETN)"!=""
+
+
+# Instruction for linking
+# unroll begin
+
+.IF "$(GUI)" == "OS2" && "$(TARGETTYPE)" == "GUI"
+APP4DEF = $(MISC)/$(APP4TARGET).def
+.ENDIF
+
+.IF "$(APP4LINKTYPE)" != ""
+#must be either STATIC or SHARED
+APP4LINKTYPEFLAG=$(APPLINK$(APP4LINKTYPE))
+.ENDIF
+
+# decide how to link
+.IF "$(APP4CODETYPE)"=="C"
+APP4LINKER=$(LINKC)
+APP4STDLIB=$(subst,CPPRUNTIME, $(STDLIB))
+APP4LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(APP4CODETYPE)"=="C"
+APP4LINKER=$(LINK)
+APP4STDLIB=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDLIB))
+APP4LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(APP4CODETYPE)"=="C"
+
+APP4RPATH*=OOO
+LINKFLAGSRUNPATH_$(APP4RPATH)*=/ERROR:/Bad_APP4RPATH_value
+.IF "$(OS)" != "MACOSX"
+APP4LINKFLAGS+=$(LINKFLAGSRUNPATH_$(APP4RPATH))
+.ENDIF
+
+.IF "$(APP4STACK)" != ""
+.IF "$(LINKFLAGSTACK)" != ""
+APP4STACKN=$(LINKFLAGSTACK)$(APP4STACK)
+.ENDIF
+.ELSE
+APP4STACKN=
+.ENDIF
+
+.IF "$(APP4NOSAL)"==""
+.IF "$(TARGETTYPE)" == "GUI"
+APP4OBJS+= $(STDOBJVCL)
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)$(COM)" == "WNTGCC"
+APP4RESO=
+.IF "$(APP4LINKRES)" != "" || "$(APP4RES)" != ""
+APP4RESO=$(MISC)/$(APP4TARGET:b)_res.o
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)" == "UNX"
+APP4DEPN+:=$(APP4DEPNU)
+USE_APP4DEF=
+.ENDIF
+
+.IF "$(APP4TARGETN)"!=""
+
+.IF "$(APP4PRODUCTNAME)"!=""
+APP4PRODUCTDEF+:=-DPRODUCT_NAME=\"$(APP4PRODUCTNAME)\"
+.ENDIF # "$(APP4PRODUCTNAME)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP4LIBS)"!=""
+$(MISC)/$(APP4TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ sed -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(APP4LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF #"$(APP4LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(APP4TARGETN:b)_linkinc.ls
+$(APP4TARGETN) : $(LINKINCTARGETS)
+.ENDIF # "$(linkinc)"!=""
+
+# Allow for target specific LIBSALCPPRT override
+APP4LIBSALCPPRT*=$(LIBSALCPPRT)
+
+.IF "$(GUI)" == "OS2"
+_APP4IMP_ORD = $(APP4STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(APP4STDLIBS:^"$(LB)/")
+APP4IMP_ORD = $(foreach,i,$(_APP4IMP_ORD) $(shell @-ls $i))
+.ELSE
+APP4IMP_ORD =
+.ENDIF
+
+$(APP4TARGETN): $(APP4OBJS) $(APP4LIBS) \
+ $(APP4RES) \
+ $(APP4IMP_ORD) \
+ $(APP4ICON) $(APP4DEPN) $(USE_APP4DEF)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_4.cmd
+ @-$(RM) $(MISC)/$(@:b).strip
+ @echo $(STDSLO) $(APP4OBJS:s/.obj/.o/) \
+ `cat /dev/null $(APP4LIBS) | sed s\#$(ROUT)\#$(OUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(APP4LINKER) $(APP4LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) -o $@ \
+ $(APP4LINKTYPEFLAG) $(APP4STDLIBS) $(APP4STDLIB) $(STDLIB4) -filelist $(MISC)/$(@:b).list > $(MISC)/$(TARGET).$(@:b)_4.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_4.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_4.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_4.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_4.cmd
+# Need to strip __objcInit symbol to avoid duplicate symbols when loading
+# libraries at runtime
+ @-nm $@ | grep -v ' U ' | $(AWK) '{ print $$NF }' | grep -F -x '__objcInit' > $(MISC)/$(@:b).strip
+ @strip -i -R $(MISC)/$(@:b).strip -X $@
+ @ls -l $@
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ app $(APP4RPATH) $@
+.IF "$(TARGETTYPE)"=="GUI"
+ @echo "Making: " $(@:f).app
+ @macosx-create-bundle $@
+.ENDIF # "$(TARGETTYPE)"=="GUI"
+.ELSE # "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_4.cmd
+ @echo $(APP4LINKER) $(APP4LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP4OBJS:s/.obj/.o/) '\' > $(MISC)/$(TARGET).$(@:b)_4.cmd
+ @cat $(mktmp /dev/null $(APP4LIBS)) | xargs -n 1 cat | sed s\#$(ROUT)\#$(OUT)\#g | sed 's#$$# \\#' >> $(MISC)/$(TARGET).$(@:b)_4.cmd
+ @echo $(APP4LINKTYPEFLAG) $(APP4LIBSALCPPRT) $(APP4STDLIBS) $(APP4STDLIB) $(STDLIB4) -o $@ >> $(MISC)/$(TARGET).$(@:b)_4.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_4.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_4.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+ .ENDIF
+.ENDIF # "$(OS)"=="MACOSX"
+.ENDIF
+.IF "$(GUI)" == "WNT"
+ @@-$(MKDIR) $(@:d:d)
+.IF "$(APP4LINKRES)" != ""
+ @@-$(RM) $(MISC)/$(APP4LINKRES:b).rc
+.IF "$(APP4ICON)" != ""
+ @-echo 1 ICON $(EMQ)"$(APP4ICON:s/\/\\/)$(EMQ)" >> $(MISC)/$(APP4LINKRES:b).rc
+.ENDIF # "$(APP4ICON)" != ""
+.IF "$(APP4VERINFO)" != ""
+ @-echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP4LINKRES:b).rc
+ @-echo $(EMQ)#include $(EMQ)"$(APP4VERINFO)$(EMQ)" >> $(MISC)/$(APP4LINKRES:b).rc
+.ENDIF # "$(APP4VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(APP4PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP4LINKRES:b).rc
+.ENDIF # "$(APP4LINKRES)" != ""
+.IF "$(COM)" == "GCC"
+ @echo mingw
+.IF "$(APP4LINKRES)" != "" || "$(APP4RES)" != ""
+ @cat $(APP4LINKRES) $(subst,/res/,/res{$(subst,$(BIN), $(@:d))} $(APP4RES)) > $(MISC)/$(@:b)_all.res
+ windres $(MISC)/$(@:b)_all.res $(APP4RESO)
+.ENDIF
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSAPP) $(MINGWSSTDOBJ) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP4BASEX) $(APP4STACKN) -o $@ $(APP4OBJS) \
+ -Wl,-Map,$(MISC)/$(@:b).map $(STDOBJ) $(APP4RESO) \
+ `$(TYPE) /dev/null $(APP4LIBS) | sed s#$(ROUT)#$(OUT)#g` \
+ $(APP_LINKTYPE) $(APP4LIBSALCPPRT) \
+ -Wl,--start-group $(APP4STDLIBS) -Wl,--end-group $(APP4STDLIB) \
+ $(STDLIB4) $(MINGWSSTDENDOBJ) > $(MISC)/$(TARGET).$(@:b)_4.cmd
+ # need this empty line, else dmake somehow gets confused by the .IFs and .ENDIFs
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_4.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_4.cmd
+ @ls -l $@
+.ELSE # "$(COM)" == "GCC"
+.IF "$(linkinc)" == ""
+ $(COMMAND_ECHO)$(APP4LINKER) @$(mktmp \
+ $(APP4LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP4BASEX) \
+ $(APP4STACKN) \
+ -out:$@ \
+ -map:$(MISC)/{$(subst,/,_ $(APP4TARGET)).map} \
+ $(STDOBJ) \
+ $(APP4LINKRES) \
+ $(APP4RES) \
+ $(APP4OBJS) \
+ $(APP4LIBS) \
+ $(APP4STDLIBS) \
+ $(APP4STDLIB) $(STDLIB4) \
+ )
+ @-echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);1 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);1 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP4TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP4TARGET).lst
+ $(COMMAND_ECHO)-$(RM) $(MISC)\linkobj.lst
+ for %_i in ($(MISC)\*.obj) do type %_i >> $(MISC)\linkobj.lst
+ type $(mktmp,$(MISC)\$(APP4TARGET).lst
+ $(APP4LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP4BASEX) \
+ $(APP4STACKN) \
+ -out:$@ \
+ $(STDOBJ) \
+ $(APP4LINKRES) \
+ $(APP4RES) \
+ $(APP4OBJS) \
+ $(APP4LIBS) \
+ $(APP4STDLIBS) \
+ $(APP4STDLIB) $(STDLIB4))
+ $(COMMAND_ECHO)$(SED)$(SED) -e 's/\(\.\.\\\)\{2,4\}/..\\/g' $(MISC)\$(APP4TARGETN:b)_linkobj.lst >> $(MISC)\$(APP4TARGET).lst
+ $(COMMAND_ECHO)$(SED)$(IFEXIST) $(MISC)/$(APP4TARGET).lst $(THEN) type $(MISC)/$(APP4TARGET).lst >> $(MISC)/$(APP4TARGET).lnk $(FI)
+ $(COMMAND_ECHO)$(SED)$(APP4LINKER) @$(MISC)\$(APP4TARGET).lnk
+.ENDIF # "$(linkinc)" == ""
+.ENDIF # "$(COM)" == "GCC"
+.IF "$(APP4TARGET)" == "loader"
+ $(COMMAND_ECHO)$(PERL) loader.pl $@
+ $(COMMAND_ECHO)$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "WNT"
+
+.IF "$(GUI)" == "OS2"
+ @+-$(MKDIR) $(@:d:d) >& $(NULLDEV)
+.IF "$(APP4LINKRES)" != ""
+ @+-$(RM) $(MISC)/$(APP4LINKRES:b).rc >& $(NULLDEV)
+.IF "$(APP4ICON)" != ""
+ @-+$(WRAPCMD) echo 1 ICON $(EMQ)"$(APP4ICON)$(EMQ)" | $(SED) 'sX\\X\\\\Xg' >> $(MISC)/$(APP4LINKRES:b).rc
+.ENDIF # "$(APP4ICON)" != ""
+.IF "$(APP4VERINFO)" != ""
+ @-+echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP4LINKRES:b).rc
+ @-+echo $(EMQ)#include $(EMQ)"$(APP4VERINFO)$(EMQ)" >> $(MISC)/$(APP4LINKRES:b).rc
+.ENDIF # "$(APP4VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(APP4PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP4LINKRES:b).rc
+.ENDIF # "$(APP4LINKRES)" != ""
+
+.IF "$(TARGETTYPE)" == "GUI"
+ @echo NAME $(APP4TARGET) WINDOWAPI > $(MISC)/$(APP4TARGET).def
+.ENDIF
+
+ .IF "$(VERBOSE)" == "TRUE"
+ @+echo $(APP4LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP4BASEX) \
+ $(APP4STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP4LINKRES) \
+ $(APP4RES) \
+ $(APP4DEF) \
+ $(APP4OBJS) \
+ $(APP4LIBS) \
+ $(APP4STDLIBS:^"-l") \
+ $(APP4STDLIB:^"-l") $(STDLIB4:^"-l")
+ .ENDIF
+ $(COMMAND_ECHO)$(APP4LINKER) -v \
+ $(APP4LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP4BASEX) \
+ $(APP4STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP4LINKRES) \
+ $(APP4RES) \
+ $(APP4DEF) \
+ $(APP4OBJS) \
+ $(APP4LIBS) \
+ $(APP4STDLIBS:^"-l") \
+ $(APP4STDLIB:^"-l") $(STDLIB4:^"-l")
+
+
+.IF "$(APP4TARGET)" == "loader"
+ $(COMMAND_ECHO)+$(PERL) loader.pl $@
+ $(COMMAND_ECHO)+$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)+$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "OS2"
+
+.ENDIF # "$(APP4TARGETN)"!=""
+
+
+# Instruction for linking
+# unroll begin
+
+.IF "$(GUI)" == "OS2" && "$(TARGETTYPE)" == "GUI"
+APP5DEF = $(MISC)/$(APP5TARGET).def
+.ENDIF
+
+.IF "$(APP5LINKTYPE)" != ""
+#must be either STATIC or SHARED
+APP5LINKTYPEFLAG=$(APPLINK$(APP5LINKTYPE))
+.ENDIF
+
+# decide how to link
+.IF "$(APP5CODETYPE)"=="C"
+APP5LINKER=$(LINKC)
+APP5STDLIB=$(subst,CPPRUNTIME, $(STDLIB))
+APP5LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(APP5CODETYPE)"=="C"
+APP5LINKER=$(LINK)
+APP5STDLIB=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDLIB))
+APP5LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(APP5CODETYPE)"=="C"
+
+APP5RPATH*=OOO
+LINKFLAGSRUNPATH_$(APP5RPATH)*=/ERROR:/Bad_APP5RPATH_value
+.IF "$(OS)" != "MACOSX"
+APP5LINKFLAGS+=$(LINKFLAGSRUNPATH_$(APP5RPATH))
+.ENDIF
+
+.IF "$(APP5STACK)" != ""
+.IF "$(LINKFLAGSTACK)" != ""
+APP5STACKN=$(LINKFLAGSTACK)$(APP5STACK)
+.ENDIF
+.ELSE
+APP5STACKN=
+.ENDIF
+
+.IF "$(APP5NOSAL)"==""
+.IF "$(TARGETTYPE)" == "GUI"
+APP5OBJS+= $(STDOBJVCL)
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)$(COM)" == "WNTGCC"
+APP5RESO=
+.IF "$(APP5LINKRES)" != "" || "$(APP5RES)" != ""
+APP5RESO=$(MISC)/$(APP5TARGET:b)_res.o
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)" == "UNX"
+APP5DEPN+:=$(APP5DEPNU)
+USE_APP5DEF=
+.ENDIF
+
+.IF "$(APP5TARGETN)"!=""
+
+.IF "$(APP5PRODUCTNAME)"!=""
+APP5PRODUCTDEF+:=-DPRODUCT_NAME=\"$(APP5PRODUCTNAME)\"
+.ENDIF # "$(APP5PRODUCTNAME)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP5LIBS)"!=""
+$(MISC)/$(APP5TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ sed -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(APP5LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF #"$(APP5LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(APP5TARGETN:b)_linkinc.ls
+$(APP5TARGETN) : $(LINKINCTARGETS)
+.ENDIF # "$(linkinc)"!=""
+
+# Allow for target specific LIBSALCPPRT override
+APP5LIBSALCPPRT*=$(LIBSALCPPRT)
+
+.IF "$(GUI)" == "OS2"
+_APP5IMP_ORD = $(APP5STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(APP5STDLIBS:^"$(LB)/")
+APP5IMP_ORD = $(foreach,i,$(_APP5IMP_ORD) $(shell @-ls $i))
+.ELSE
+APP5IMP_ORD =
+.ENDIF
+
+$(APP5TARGETN): $(APP5OBJS) $(APP5LIBS) \
+ $(APP5RES) \
+ $(APP5IMP_ORD) \
+ $(APP5ICON) $(APP5DEPN) $(USE_APP5DEF)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_5.cmd
+ @-$(RM) $(MISC)/$(@:b).strip
+ @echo $(STDSLO) $(APP5OBJS:s/.obj/.o/) \
+ `cat /dev/null $(APP5LIBS) | sed s\#$(ROUT)\#$(OUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(APP5LINKER) $(APP5LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) -o $@ \
+ $(APP5LINKTYPEFLAG) $(APP5STDLIBS) $(APP5STDLIB) $(STDLIB5) -filelist $(MISC)/$(@:b).list > $(MISC)/$(TARGET).$(@:b)_5.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_5.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_5.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_5.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_5.cmd
+# Need to strip __objcInit symbol to avoid duplicate symbols when loading
+# libraries at runtime
+ @-nm $@ | grep -v ' U ' | $(AWK) '{ print $$NF }' | grep -F -x '__objcInit' > $(MISC)/$(@:b).strip
+ @strip -i -R $(MISC)/$(@:b).strip -X $@
+ @ls -l $@
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ app $(APP5RPATH) $@
+.IF "$(TARGETTYPE)"=="GUI"
+ @echo "Making: " $(@:f).app
+ @macosx-create-bundle $@
+.ENDIF # "$(TARGETTYPE)"=="GUI"
+.ELSE # "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_5.cmd
+ @echo $(APP5LINKER) $(APP5LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP5OBJS:s/.obj/.o/) '\' > $(MISC)/$(TARGET).$(@:b)_5.cmd
+ @cat $(mktmp /dev/null $(APP5LIBS)) | xargs -n 1 cat | sed s\#$(ROUT)\#$(OUT)\#g | sed 's#$$# \\#' >> $(MISC)/$(TARGET).$(@:b)_5.cmd
+ @echo $(APP5LINKTYPEFLAG) $(APP5LIBSALCPPRT) $(APP5STDLIBS) $(APP5STDLIB) $(STDLIB5) -o $@ >> $(MISC)/$(TARGET).$(@:b)_5.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_5.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_5.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+ .ENDIF
+.ENDIF # "$(OS)"=="MACOSX"
+.ENDIF
+.IF "$(GUI)" == "WNT"
+ @@-$(MKDIR) $(@:d:d)
+.IF "$(APP5LINKRES)" != ""
+ @@-$(RM) $(MISC)/$(APP5LINKRES:b).rc
+.IF "$(APP5ICON)" != ""
+ @-echo 1 ICON $(EMQ)"$(APP5ICON:s/\/\\/)$(EMQ)" >> $(MISC)/$(APP5LINKRES:b).rc
+.ENDIF # "$(APP5ICON)" != ""
+.IF "$(APP5VERINFO)" != ""
+ @-echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP5LINKRES:b).rc
+ @-echo $(EMQ)#include $(EMQ)"$(APP5VERINFO)$(EMQ)" >> $(MISC)/$(APP5LINKRES:b).rc
+.ENDIF # "$(APP5VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(APP5PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP5LINKRES:b).rc
+.ENDIF # "$(APP5LINKRES)" != ""
+.IF "$(COM)" == "GCC"
+ @echo mingw
+.IF "$(APP5LINKRES)" != "" || "$(APP5RES)" != ""
+ @cat $(APP5LINKRES) $(subst,/res/,/res{$(subst,$(BIN), $(@:d))} $(APP5RES)) > $(MISC)/$(@:b)_all.res
+ windres $(MISC)/$(@:b)_all.res $(APP5RESO)
+.ENDIF
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSAPP) $(MINGWSSTDOBJ) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP5BASEX) $(APP5STACKN) -o $@ $(APP5OBJS) \
+ -Wl,-Map,$(MISC)/$(@:b).map $(STDOBJ) $(APP5RESO) \
+ `$(TYPE) /dev/null $(APP5LIBS) | sed s#$(ROUT)#$(OUT)#g` \
+ $(APP_LINKTYPE) $(APP5LIBSALCPPRT) \
+ -Wl,--start-group $(APP5STDLIBS) -Wl,--end-group $(APP5STDLIB) \
+ $(STDLIB5) $(MINGWSSTDENDOBJ) > $(MISC)/$(TARGET).$(@:b)_5.cmd
+ # need this empty line, else dmake somehow gets confused by the .IFs and .ENDIFs
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_5.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_5.cmd
+ @ls -l $@
+.ELSE # "$(COM)" == "GCC"
+.IF "$(linkinc)" == ""
+ $(COMMAND_ECHO)$(APP5LINKER) @$(mktmp \
+ $(APP5LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP5BASEX) \
+ $(APP5STACKN) \
+ -out:$@ \
+ -map:$(MISC)/{$(subst,/,_ $(APP5TARGET)).map} \
+ $(STDOBJ) \
+ $(APP5LINKRES) \
+ $(APP5RES) \
+ $(APP5OBJS) \
+ $(APP5LIBS) \
+ $(APP5STDLIBS) \
+ $(APP5STDLIB) $(STDLIB5) \
+ )
+ @-echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);1 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);1 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP5TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP5TARGET).lst
+ $(COMMAND_ECHO)-$(RM) $(MISC)\linkobj.lst
+ for %_i in ($(MISC)\*.obj) do type %_i >> $(MISC)\linkobj.lst
+ type $(mktmp,$(MISC)\$(APP5TARGET).lst
+ $(APP5LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP5BASEX) \
+ $(APP5STACKN) \
+ -out:$@ \
+ $(STDOBJ) \
+ $(APP5LINKRES) \
+ $(APP5RES) \
+ $(APP5OBJS) \
+ $(APP5LIBS) \
+ $(APP5STDLIBS) \
+ $(APP5STDLIB) $(STDLIB5))
+ $(COMMAND_ECHO)$(SED)$(SED) -e 's/\(\.\.\\\)\{2,4\}/..\\/g' $(MISC)\$(APP5TARGETN:b)_linkobj.lst >> $(MISC)\$(APP5TARGET).lst
+ $(COMMAND_ECHO)$(SED)$(IFEXIST) $(MISC)/$(APP5TARGET).lst $(THEN) type $(MISC)/$(APP5TARGET).lst >> $(MISC)/$(APP5TARGET).lnk $(FI)
+ $(COMMAND_ECHO)$(SED)$(APP5LINKER) @$(MISC)\$(APP5TARGET).lnk
+.ENDIF # "$(linkinc)" == ""
+.ENDIF # "$(COM)" == "GCC"
+.IF "$(APP5TARGET)" == "loader"
+ $(COMMAND_ECHO)$(PERL) loader.pl $@
+ $(COMMAND_ECHO)$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "WNT"
+
+.IF "$(GUI)" == "OS2"
+ @+-$(MKDIR) $(@:d:d) >& $(NULLDEV)
+.IF "$(APP5LINKRES)" != ""
+ @+-$(RM) $(MISC)/$(APP5LINKRES:b).rc >& $(NULLDEV)
+.IF "$(APP5ICON)" != ""
+ @-+$(WRAPCMD) echo 1 ICON $(EMQ)"$(APP5ICON)$(EMQ)" | $(SED) 'sX\\X\\\\Xg' >> $(MISC)/$(APP5LINKRES:b).rc
+.ENDIF # "$(APP5ICON)" != ""
+.IF "$(APP5VERINFO)" != ""
+ @-+echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP5LINKRES:b).rc
+ @-+echo $(EMQ)#include $(EMQ)"$(APP5VERINFO)$(EMQ)" >> $(MISC)/$(APP5LINKRES:b).rc
+.ENDIF # "$(APP5VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(APP5PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP5LINKRES:b).rc
+.ENDIF # "$(APP5LINKRES)" != ""
+
+.IF "$(TARGETTYPE)" == "GUI"
+ @echo NAME $(APP5TARGET) WINDOWAPI > $(MISC)/$(APP5TARGET).def
+.ENDIF
+
+ .IF "$(VERBOSE)" == "TRUE"
+ @+echo $(APP5LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP5BASEX) \
+ $(APP5STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP5LINKRES) \
+ $(APP5RES) \
+ $(APP5DEF) \
+ $(APP5OBJS) \
+ $(APP5LIBS) \
+ $(APP5STDLIBS:^"-l") \
+ $(APP5STDLIB:^"-l") $(STDLIB5:^"-l")
+ .ENDIF
+ $(COMMAND_ECHO)$(APP5LINKER) -v \
+ $(APP5LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP5BASEX) \
+ $(APP5STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP5LINKRES) \
+ $(APP5RES) \
+ $(APP5DEF) \
+ $(APP5OBJS) \
+ $(APP5LIBS) \
+ $(APP5STDLIBS:^"-l") \
+ $(APP5STDLIB:^"-l") $(STDLIB5:^"-l")
+
+
+.IF "$(APP5TARGET)" == "loader"
+ $(COMMAND_ECHO)+$(PERL) loader.pl $@
+ $(COMMAND_ECHO)+$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)+$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "OS2"
+
+.ENDIF # "$(APP5TARGETN)"!=""
+
+
+# Instruction for linking
+# unroll begin
+
+.IF "$(GUI)" == "OS2" && "$(TARGETTYPE)" == "GUI"
+APP6DEF = $(MISC)/$(APP6TARGET).def
+.ENDIF
+
+.IF "$(APP6LINKTYPE)" != ""
+#must be either STATIC or SHARED
+APP6LINKTYPEFLAG=$(APPLINK$(APP6LINKTYPE))
+.ENDIF
+
+# decide how to link
+.IF "$(APP6CODETYPE)"=="C"
+APP6LINKER=$(LINKC)
+APP6STDLIB=$(subst,CPPRUNTIME, $(STDLIB))
+APP6LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(APP6CODETYPE)"=="C"
+APP6LINKER=$(LINK)
+APP6STDLIB=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDLIB))
+APP6LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(APP6CODETYPE)"=="C"
+
+APP6RPATH*=OOO
+LINKFLAGSRUNPATH_$(APP6RPATH)*=/ERROR:/Bad_APP6RPATH_value
+.IF "$(OS)" != "MACOSX"
+APP6LINKFLAGS+=$(LINKFLAGSRUNPATH_$(APP6RPATH))
+.ENDIF
+
+.IF "$(APP6STACK)" != ""
+.IF "$(LINKFLAGSTACK)" != ""
+APP6STACKN=$(LINKFLAGSTACK)$(APP6STACK)
+.ENDIF
+.ELSE
+APP6STACKN=
+.ENDIF
+
+.IF "$(APP6NOSAL)"==""
+.IF "$(TARGETTYPE)" == "GUI"
+APP6OBJS+= $(STDOBJVCL)
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)$(COM)" == "WNTGCC"
+APP6RESO=
+.IF "$(APP6LINKRES)" != "" || "$(APP6RES)" != ""
+APP6RESO=$(MISC)/$(APP6TARGET:b)_res.o
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)" == "UNX"
+APP6DEPN+:=$(APP6DEPNU)
+USE_APP6DEF=
+.ENDIF
+
+.IF "$(APP6TARGETN)"!=""
+
+.IF "$(APP6PRODUCTNAME)"!=""
+APP6PRODUCTDEF+:=-DPRODUCT_NAME=\"$(APP6PRODUCTNAME)\"
+.ENDIF # "$(APP6PRODUCTNAME)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP6LIBS)"!=""
+$(MISC)/$(APP6TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ sed -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(APP6LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF #"$(APP6LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(APP6TARGETN:b)_linkinc.ls
+$(APP6TARGETN) : $(LINKINCTARGETS)
+.ENDIF # "$(linkinc)"!=""
+
+# Allow for target specific LIBSALCPPRT override
+APP6LIBSALCPPRT*=$(LIBSALCPPRT)
+
+.IF "$(GUI)" == "OS2"
+_APP6IMP_ORD = $(APP6STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(APP6STDLIBS:^"$(LB)/")
+APP6IMP_ORD = $(foreach,i,$(_APP6IMP_ORD) $(shell @-ls $i))
+.ELSE
+APP6IMP_ORD =
+.ENDIF
+
+$(APP6TARGETN): $(APP6OBJS) $(APP6LIBS) \
+ $(APP6RES) \
+ $(APP6IMP_ORD) \
+ $(APP6ICON) $(APP6DEPN) $(USE_APP6DEF)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_6.cmd
+ @-$(RM) $(MISC)/$(@:b).strip
+ @echo $(STDSLO) $(APP6OBJS:s/.obj/.o/) \
+ `cat /dev/null $(APP6LIBS) | sed s\#$(ROUT)\#$(OUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(APP6LINKER) $(APP6LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) -o $@ \
+ $(APP6LINKTYPEFLAG) $(APP6STDLIBS) $(APP6STDLIB) $(STDLIB6) -filelist $(MISC)/$(@:b).list > $(MISC)/$(TARGET).$(@:b)_6.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_6.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_6.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_6.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_6.cmd
+# Need to strip __objcInit symbol to avoid duplicate symbols when loading
+# libraries at runtime
+ @-nm $@ | grep -v ' U ' | $(AWK) '{ print $$NF }' | grep -F -x '__objcInit' > $(MISC)/$(@:b).strip
+ @strip -i -R $(MISC)/$(@:b).strip -X $@
+ @ls -l $@
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ app $(APP6RPATH) $@
+.IF "$(TARGETTYPE)"=="GUI"
+ @echo "Making: " $(@:f).app
+ @macosx-create-bundle $@
+.ENDIF # "$(TARGETTYPE)"=="GUI"
+.ELSE # "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_6.cmd
+ @echo $(APP6LINKER) $(APP6LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP6OBJS:s/.obj/.o/) '\' > $(MISC)/$(TARGET).$(@:b)_6.cmd
+ @cat $(mktmp /dev/null $(APP6LIBS)) | xargs -n 1 cat | sed s\#$(ROUT)\#$(OUT)\#g | sed 's#$$# \\#' >> $(MISC)/$(TARGET).$(@:b)_6.cmd
+ @echo $(APP6LINKTYPEFLAG) $(APP6LIBSALCPPRT) $(APP6STDLIBS) $(APP6STDLIB) $(STDLIB6) -o $@ >> $(MISC)/$(TARGET).$(@:b)_6.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_6.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_6.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+ .ENDIF
+.ENDIF # "$(OS)"=="MACOSX"
+.ENDIF
+.IF "$(GUI)" == "WNT"
+ @@-$(MKDIR) $(@:d:d)
+.IF "$(APP6LINKRES)" != ""
+ @@-$(RM) $(MISC)/$(APP6LINKRES:b).rc
+.IF "$(APP6ICON)" != ""
+ @-echo 1 ICON $(EMQ)"$(APP6ICON:s/\/\\/)$(EMQ)" >> $(MISC)/$(APP6LINKRES:b).rc
+.ENDIF # "$(APP6ICON)" != ""
+.IF "$(APP6VERINFO)" != ""
+ @-echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP6LINKRES:b).rc
+ @-echo $(EMQ)#include $(EMQ)"$(APP6VERINFO)$(EMQ)" >> $(MISC)/$(APP6LINKRES:b).rc
+.ENDIF # "$(APP6VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(APP6PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP6LINKRES:b).rc
+.ENDIF # "$(APP6LINKRES)" != ""
+.IF "$(COM)" == "GCC"
+ @echo mingw
+.IF "$(APP6LINKRES)" != "" || "$(APP6RES)" != ""
+ @cat $(APP6LINKRES) $(subst,/res/,/res{$(subst,$(BIN), $(@:d))} $(APP6RES)) > $(MISC)/$(@:b)_all.res
+ windres $(MISC)/$(@:b)_all.res $(APP6RESO)
+.ENDIF
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSAPP) $(MINGWSSTDOBJ) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP6BASEX) $(APP6STACKN) -o $@ $(APP6OBJS) \
+ -Wl,-Map,$(MISC)/$(@:b).map $(STDOBJ) $(APP6RESO) \
+ `$(TYPE) /dev/null $(APP6LIBS) | sed s#$(ROUT)#$(OUT)#g` \
+ $(APP_LINKTYPE) $(APP6LIBSALCPPRT) \
+ -Wl,--start-group $(APP6STDLIBS) -Wl,--end-group $(APP6STDLIB) \
+ $(STDLIB6) $(MINGWSSTDENDOBJ) > $(MISC)/$(TARGET).$(@:b)_6.cmd
+ # need this empty line, else dmake somehow gets confused by the .IFs and .ENDIFs
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_6.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_6.cmd
+ @ls -l $@
+.ELSE # "$(COM)" == "GCC"
+.IF "$(linkinc)" == ""
+ $(COMMAND_ECHO)$(APP6LINKER) @$(mktmp \
+ $(APP6LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP6BASEX) \
+ $(APP6STACKN) \
+ -out:$@ \
+ -map:$(MISC)/{$(subst,/,_ $(APP6TARGET)).map} \
+ $(STDOBJ) \
+ $(APP6LINKRES) \
+ $(APP6RES) \
+ $(APP6OBJS) \
+ $(APP6LIBS) \
+ $(APP6STDLIBS) \
+ $(APP6STDLIB) $(STDLIB6) \
+ )
+ @-echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);1 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);1 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP6TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP6TARGET).lst
+ $(COMMAND_ECHO)-$(RM) $(MISC)\linkobj.lst
+ for %_i in ($(MISC)\*.obj) do type %_i >> $(MISC)\linkobj.lst
+ type $(mktmp,$(MISC)\$(APP6TARGET).lst
+ $(APP6LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP6BASEX) \
+ $(APP6STACKN) \
+ -out:$@ \
+ $(STDOBJ) \
+ $(APP6LINKRES) \
+ $(APP6RES) \
+ $(APP6OBJS) \
+ $(APP6LIBS) \
+ $(APP6STDLIBS) \
+ $(APP6STDLIB) $(STDLIB6))
+ $(COMMAND_ECHO)$(SED)$(SED) -e 's/\(\.\.\\\)\{2,4\}/..\\/g' $(MISC)\$(APP6TARGETN:b)_linkobj.lst >> $(MISC)\$(APP6TARGET).lst
+ $(COMMAND_ECHO)$(SED)$(IFEXIST) $(MISC)/$(APP6TARGET).lst $(THEN) type $(MISC)/$(APP6TARGET).lst >> $(MISC)/$(APP6TARGET).lnk $(FI)
+ $(COMMAND_ECHO)$(SED)$(APP6LINKER) @$(MISC)\$(APP6TARGET).lnk
+.ENDIF # "$(linkinc)" == ""
+.ENDIF # "$(COM)" == "GCC"
+.IF "$(APP6TARGET)" == "loader"
+ $(COMMAND_ECHO)$(PERL) loader.pl $@
+ $(COMMAND_ECHO)$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "WNT"
+
+.IF "$(GUI)" == "OS2"
+ @+-$(MKDIR) $(@:d:d) >& $(NULLDEV)
+.IF "$(APP6LINKRES)" != ""
+ @+-$(RM) $(MISC)/$(APP6LINKRES:b).rc >& $(NULLDEV)
+.IF "$(APP6ICON)" != ""
+ @-+$(WRAPCMD) echo 1 ICON $(EMQ)"$(APP6ICON)$(EMQ)" | $(SED) 'sX\\X\\\\Xg' >> $(MISC)/$(APP6LINKRES:b).rc
+.ENDIF # "$(APP6ICON)" != ""
+.IF "$(APP6VERINFO)" != ""
+ @-+echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP6LINKRES:b).rc
+ @-+echo $(EMQ)#include $(EMQ)"$(APP6VERINFO)$(EMQ)" >> $(MISC)/$(APP6LINKRES:b).rc
+.ENDIF # "$(APP6VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(APP6PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP6LINKRES:b).rc
+.ENDIF # "$(APP6LINKRES)" != ""
+
+.IF "$(TARGETTYPE)" == "GUI"
+ @echo NAME $(APP6TARGET) WINDOWAPI > $(MISC)/$(APP6TARGET).def
+.ENDIF
+
+ .IF "$(VERBOSE)" == "TRUE"
+ @+echo $(APP6LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP6BASEX) \
+ $(APP6STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP6LINKRES) \
+ $(APP6RES) \
+ $(APP6DEF) \
+ $(APP6OBJS) \
+ $(APP6LIBS) \
+ $(APP6STDLIBS:^"-l") \
+ $(APP6STDLIB:^"-l") $(STDLIB6:^"-l")
+ .ENDIF
+ $(COMMAND_ECHO)$(APP6LINKER) -v \
+ $(APP6LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP6BASEX) \
+ $(APP6STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP6LINKRES) \
+ $(APP6RES) \
+ $(APP6DEF) \
+ $(APP6OBJS) \
+ $(APP6LIBS) \
+ $(APP6STDLIBS:^"-l") \
+ $(APP6STDLIB:^"-l") $(STDLIB6:^"-l")
+
+
+.IF "$(APP6TARGET)" == "loader"
+ $(COMMAND_ECHO)+$(PERL) loader.pl $@
+ $(COMMAND_ECHO)+$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)+$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "OS2"
+
+.ENDIF # "$(APP6TARGETN)"!=""
+
+
+# Instruction for linking
+# unroll begin
+
+.IF "$(GUI)" == "OS2" && "$(TARGETTYPE)" == "GUI"
+APP7DEF = $(MISC)/$(APP7TARGET).def
+.ENDIF
+
+.IF "$(APP7LINKTYPE)" != ""
+#must be either STATIC or SHARED
+APP7LINKTYPEFLAG=$(APPLINK$(APP7LINKTYPE))
+.ENDIF
+
+# decide how to link
+.IF "$(APP7CODETYPE)"=="C"
+APP7LINKER=$(LINKC)
+APP7STDLIB=$(subst,CPPRUNTIME, $(STDLIB))
+APP7LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(APP7CODETYPE)"=="C"
+APP7LINKER=$(LINK)
+APP7STDLIB=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDLIB))
+APP7LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(APP7CODETYPE)"=="C"
+
+APP7RPATH*=OOO
+LINKFLAGSRUNPATH_$(APP7RPATH)*=/ERROR:/Bad_APP7RPATH_value
+.IF "$(OS)" != "MACOSX"
+APP7LINKFLAGS+=$(LINKFLAGSRUNPATH_$(APP7RPATH))
+.ENDIF
+
+.IF "$(APP7STACK)" != ""
+.IF "$(LINKFLAGSTACK)" != ""
+APP7STACKN=$(LINKFLAGSTACK)$(APP7STACK)
+.ENDIF
+.ELSE
+APP7STACKN=
+.ENDIF
+
+.IF "$(APP7NOSAL)"==""
+.IF "$(TARGETTYPE)" == "GUI"
+APP7OBJS+= $(STDOBJVCL)
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)$(COM)" == "WNTGCC"
+APP7RESO=
+.IF "$(APP7LINKRES)" != "" || "$(APP7RES)" != ""
+APP7RESO=$(MISC)/$(APP7TARGET:b)_res.o
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)" == "UNX"
+APP7DEPN+:=$(APP7DEPNU)
+USE_APP7DEF=
+.ENDIF
+
+.IF "$(APP7TARGETN)"!=""
+
+.IF "$(APP7PRODUCTNAME)"!=""
+APP7PRODUCTDEF+:=-DPRODUCT_NAME=\"$(APP7PRODUCTNAME)\"
+.ENDIF # "$(APP7PRODUCTNAME)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP7LIBS)"!=""
+$(MISC)/$(APP7TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ sed -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(APP7LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF #"$(APP7LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(APP7TARGETN:b)_linkinc.ls
+$(APP7TARGETN) : $(LINKINCTARGETS)
+.ENDIF # "$(linkinc)"!=""
+
+# Allow for target specific LIBSALCPPRT override
+APP7LIBSALCPPRT*=$(LIBSALCPPRT)
+
+.IF "$(GUI)" == "OS2"
+_APP7IMP_ORD = $(APP7STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(APP7STDLIBS:^"$(LB)/")
+APP7IMP_ORD = $(foreach,i,$(_APP7IMP_ORD) $(shell @-ls $i))
+.ELSE
+APP7IMP_ORD =
+.ENDIF
+
+$(APP7TARGETN): $(APP7OBJS) $(APP7LIBS) \
+ $(APP7RES) \
+ $(APP7IMP_ORD) \
+ $(APP7ICON) $(APP7DEPN) $(USE_APP7DEF)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_7.cmd
+ @-$(RM) $(MISC)/$(@:b).strip
+ @echo $(STDSLO) $(APP7OBJS:s/.obj/.o/) \
+ `cat /dev/null $(APP7LIBS) | sed s\#$(ROUT)\#$(OUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(APP7LINKER) $(APP7LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) -o $@ \
+ $(APP7LINKTYPEFLAG) $(APP7STDLIBS) $(APP7STDLIB) $(STDLIB7) -filelist $(MISC)/$(@:b).list > $(MISC)/$(TARGET).$(@:b)_7.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_7.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_7.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_7.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_7.cmd
+# Need to strip __objcInit symbol to avoid duplicate symbols when loading
+# libraries at runtime
+ @-nm $@ | grep -v ' U ' | $(AWK) '{ print $$NF }' | grep -F -x '__objcInit' > $(MISC)/$(@:b).strip
+ @strip -i -R $(MISC)/$(@:b).strip -X $@
+ @ls -l $@
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ app $(APP7RPATH) $@
+.IF "$(TARGETTYPE)"=="GUI"
+ @echo "Making: " $(@:f).app
+ @macosx-create-bundle $@
+.ENDIF # "$(TARGETTYPE)"=="GUI"
+.ELSE # "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_7.cmd
+ @echo $(APP7LINKER) $(APP7LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP7OBJS:s/.obj/.o/) '\' > $(MISC)/$(TARGET).$(@:b)_7.cmd
+ @cat $(mktmp /dev/null $(APP7LIBS)) | xargs -n 1 cat | sed s\#$(ROUT)\#$(OUT)\#g | sed 's#$$# \\#' >> $(MISC)/$(TARGET).$(@:b)_7.cmd
+ @echo $(APP7LINKTYPEFLAG) $(APP7LIBSALCPPRT) $(APP7STDLIBS) $(APP7STDLIB) $(STDLIB7) -o $@ >> $(MISC)/$(TARGET).$(@:b)_7.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_7.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_7.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+ .ENDIF
+.ENDIF # "$(OS)"=="MACOSX"
+.ENDIF
+.IF "$(GUI)" == "WNT"
+ @@-$(MKDIR) $(@:d:d)
+.IF "$(APP7LINKRES)" != ""
+ @@-$(RM) $(MISC)/$(APP7LINKRES:b).rc
+.IF "$(APP7ICON)" != ""
+ @-echo 1 ICON $(EMQ)"$(APP7ICON:s/\/\\/)$(EMQ)" >> $(MISC)/$(APP7LINKRES:b).rc
+.ENDIF # "$(APP7ICON)" != ""
+.IF "$(APP7VERINFO)" != ""
+ @-echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP7LINKRES:b).rc
+ @-echo $(EMQ)#include $(EMQ)"$(APP7VERINFO)$(EMQ)" >> $(MISC)/$(APP7LINKRES:b).rc
+.ENDIF # "$(APP7VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(APP7PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP7LINKRES:b).rc
+.ENDIF # "$(APP7LINKRES)" != ""
+.IF "$(COM)" == "GCC"
+ @echo mingw
+.IF "$(APP7LINKRES)" != "" || "$(APP7RES)" != ""
+ @cat $(APP7LINKRES) $(subst,/res/,/res{$(subst,$(BIN), $(@:d))} $(APP7RES)) > $(MISC)/$(@:b)_all.res
+ windres $(MISC)/$(@:b)_all.res $(APP7RESO)
+.ENDIF
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSAPP) $(MINGWSSTDOBJ) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP7BASEX) $(APP7STACKN) -o $@ $(APP7OBJS) \
+ -Wl,-Map,$(MISC)/$(@:b).map $(STDOBJ) $(APP7RESO) \
+ `$(TYPE) /dev/null $(APP7LIBS) | sed s#$(ROUT)#$(OUT)#g` \
+ $(APP_LINKTYPE) $(APP7LIBSALCPPRT) \
+ -Wl,--start-group $(APP7STDLIBS) -Wl,--end-group $(APP7STDLIB) \
+ $(STDLIB7) $(MINGWSSTDENDOBJ) > $(MISC)/$(TARGET).$(@:b)_7.cmd
+ # need this empty line, else dmake somehow gets confused by the .IFs and .ENDIFs
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_7.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_7.cmd
+ @ls -l $@
+.ELSE # "$(COM)" == "GCC"
+.IF "$(linkinc)" == ""
+ $(COMMAND_ECHO)$(APP7LINKER) @$(mktmp \
+ $(APP7LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP7BASEX) \
+ $(APP7STACKN) \
+ -out:$@ \
+ -map:$(MISC)/{$(subst,/,_ $(APP7TARGET)).map} \
+ $(STDOBJ) \
+ $(APP7LINKRES) \
+ $(APP7RES) \
+ $(APP7OBJS) \
+ $(APP7LIBS) \
+ $(APP7STDLIBS) \
+ $(APP7STDLIB) $(STDLIB7) \
+ )
+ @-echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);1 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);1 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP7TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP7TARGET).lst
+ $(COMMAND_ECHO)-$(RM) $(MISC)\linkobj.lst
+ for %_i in ($(MISC)\*.obj) do type %_i >> $(MISC)\linkobj.lst
+ type $(mktmp,$(MISC)\$(APP7TARGET).lst
+ $(APP7LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP7BASEX) \
+ $(APP7STACKN) \
+ -out:$@ \
+ $(STDOBJ) \
+ $(APP7LINKRES) \
+ $(APP7RES) \
+ $(APP7OBJS) \
+ $(APP7LIBS) \
+ $(APP7STDLIBS) \
+ $(APP7STDLIB) $(STDLIB7))
+ $(COMMAND_ECHO)$(SED)$(SED) -e 's/\(\.\.\\\)\{2,4\}/..\\/g' $(MISC)\$(APP7TARGETN:b)_linkobj.lst >> $(MISC)\$(APP7TARGET).lst
+ $(COMMAND_ECHO)$(SED)$(IFEXIST) $(MISC)/$(APP7TARGET).lst $(THEN) type $(MISC)/$(APP7TARGET).lst >> $(MISC)/$(APP7TARGET).lnk $(FI)
+ $(COMMAND_ECHO)$(SED)$(APP7LINKER) @$(MISC)\$(APP7TARGET).lnk
+.ENDIF # "$(linkinc)" == ""
+.ENDIF # "$(COM)" == "GCC"
+.IF "$(APP7TARGET)" == "loader"
+ $(COMMAND_ECHO)$(PERL) loader.pl $@
+ $(COMMAND_ECHO)$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "WNT"
+
+.IF "$(GUI)" == "OS2"
+ @+-$(MKDIR) $(@:d:d) >& $(NULLDEV)
+.IF "$(APP7LINKRES)" != ""
+ @+-$(RM) $(MISC)/$(APP7LINKRES:b).rc >& $(NULLDEV)
+.IF "$(APP7ICON)" != ""
+ @-+$(WRAPCMD) echo 1 ICON $(EMQ)"$(APP7ICON)$(EMQ)" | $(SED) 'sX\\X\\\\Xg' >> $(MISC)/$(APP7LINKRES:b).rc
+.ENDIF # "$(APP7ICON)" != ""
+.IF "$(APP7VERINFO)" != ""
+ @-+echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP7LINKRES:b).rc
+ @-+echo $(EMQ)#include $(EMQ)"$(APP7VERINFO)$(EMQ)" >> $(MISC)/$(APP7LINKRES:b).rc
+.ENDIF # "$(APP7VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(APP7PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP7LINKRES:b).rc
+.ENDIF # "$(APP7LINKRES)" != ""
+
+.IF "$(TARGETTYPE)" == "GUI"
+ @echo NAME $(APP7TARGET) WINDOWAPI > $(MISC)/$(APP7TARGET).def
+.ENDIF
+
+ .IF "$(VERBOSE)" == "TRUE"
+ @+echo $(APP7LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP7BASEX) \
+ $(APP7STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP7LINKRES) \
+ $(APP7RES) \
+ $(APP7DEF) \
+ $(APP7OBJS) \
+ $(APP7LIBS) \
+ $(APP7STDLIBS:^"-l") \
+ $(APP7STDLIB:^"-l") $(STDLIB7:^"-l")
+ .ENDIF
+ $(COMMAND_ECHO)$(APP7LINKER) -v \
+ $(APP7LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP7BASEX) \
+ $(APP7STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP7LINKRES) \
+ $(APP7RES) \
+ $(APP7DEF) \
+ $(APP7OBJS) \
+ $(APP7LIBS) \
+ $(APP7STDLIBS:^"-l") \
+ $(APP7STDLIB:^"-l") $(STDLIB7:^"-l")
+
+
+.IF "$(APP7TARGET)" == "loader"
+ $(COMMAND_ECHO)+$(PERL) loader.pl $@
+ $(COMMAND_ECHO)+$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)+$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "OS2"
+
+.ENDIF # "$(APP7TARGETN)"!=""
+
+
+# Instruction for linking
+# unroll begin
+
+.IF "$(GUI)" == "OS2" && "$(TARGETTYPE)" == "GUI"
+APP8DEF = $(MISC)/$(APP8TARGET).def
+.ENDIF
+
+.IF "$(APP8LINKTYPE)" != ""
+#must be either STATIC or SHARED
+APP8LINKTYPEFLAG=$(APPLINK$(APP8LINKTYPE))
+.ENDIF
+
+# decide how to link
+.IF "$(APP8CODETYPE)"=="C"
+APP8LINKER=$(LINKC)
+APP8STDLIB=$(subst,CPPRUNTIME, $(STDLIB))
+APP8LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(APP8CODETYPE)"=="C"
+APP8LINKER=$(LINK)
+APP8STDLIB=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDLIB))
+APP8LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(APP8CODETYPE)"=="C"
+
+APP8RPATH*=OOO
+LINKFLAGSRUNPATH_$(APP8RPATH)*=/ERROR:/Bad_APP8RPATH_value
+.IF "$(OS)" != "MACOSX"
+APP8LINKFLAGS+=$(LINKFLAGSRUNPATH_$(APP8RPATH))
+.ENDIF
+
+.IF "$(APP8STACK)" != ""
+.IF "$(LINKFLAGSTACK)" != ""
+APP8STACKN=$(LINKFLAGSTACK)$(APP8STACK)
+.ENDIF
+.ELSE
+APP8STACKN=
+.ENDIF
+
+.IF "$(APP8NOSAL)"==""
+.IF "$(TARGETTYPE)" == "GUI"
+APP8OBJS+= $(STDOBJVCL)
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)$(COM)" == "WNTGCC"
+APP8RESO=
+.IF "$(APP8LINKRES)" != "" || "$(APP8RES)" != ""
+APP8RESO=$(MISC)/$(APP8TARGET:b)_res.o
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)" == "UNX"
+APP8DEPN+:=$(APP8DEPNU)
+USE_APP8DEF=
+.ENDIF
+
+.IF "$(APP8TARGETN)"!=""
+
+.IF "$(APP8PRODUCTNAME)"!=""
+APP8PRODUCTDEF+:=-DPRODUCT_NAME=\"$(APP8PRODUCTNAME)\"
+.ENDIF # "$(APP8PRODUCTNAME)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP8LIBS)"!=""
+$(MISC)/$(APP8TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ sed -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(APP8LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF #"$(APP8LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(APP8TARGETN:b)_linkinc.ls
+$(APP8TARGETN) : $(LINKINCTARGETS)
+.ENDIF # "$(linkinc)"!=""
+
+# Allow for target specific LIBSALCPPRT override
+APP8LIBSALCPPRT*=$(LIBSALCPPRT)
+
+.IF "$(GUI)" == "OS2"
+_APP8IMP_ORD = $(APP8STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(APP8STDLIBS:^"$(LB)/")
+APP8IMP_ORD = $(foreach,i,$(_APP8IMP_ORD) $(shell @-ls $i))
+.ELSE
+APP8IMP_ORD =
+.ENDIF
+
+$(APP8TARGETN): $(APP8OBJS) $(APP8LIBS) \
+ $(APP8RES) \
+ $(APP8IMP_ORD) \
+ $(APP8ICON) $(APP8DEPN) $(USE_APP8DEF)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_8.cmd
+ @-$(RM) $(MISC)/$(@:b).strip
+ @echo $(STDSLO) $(APP8OBJS:s/.obj/.o/) \
+ `cat /dev/null $(APP8LIBS) | sed s\#$(ROUT)\#$(OUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(APP8LINKER) $(APP8LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) -o $@ \
+ $(APP8LINKTYPEFLAG) $(APP8STDLIBS) $(APP8STDLIB) $(STDLIB8) -filelist $(MISC)/$(@:b).list > $(MISC)/$(TARGET).$(@:b)_8.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_8.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_8.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_8.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_8.cmd
+# Need to strip __objcInit symbol to avoid duplicate symbols when loading
+# libraries at runtime
+ @-nm $@ | grep -v ' U ' | $(AWK) '{ print $$NF }' | grep -F -x '__objcInit' > $(MISC)/$(@:b).strip
+ @strip -i -R $(MISC)/$(@:b).strip -X $@
+ @ls -l $@
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ app $(APP8RPATH) $@
+.IF "$(TARGETTYPE)"=="GUI"
+ @echo "Making: " $(@:f).app
+ @macosx-create-bundle $@
+.ENDIF # "$(TARGETTYPE)"=="GUI"
+.ELSE # "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_8.cmd
+ @echo $(APP8LINKER) $(APP8LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP8OBJS:s/.obj/.o/) '\' > $(MISC)/$(TARGET).$(@:b)_8.cmd
+ @cat $(mktmp /dev/null $(APP8LIBS)) | xargs -n 1 cat | sed s\#$(ROUT)\#$(OUT)\#g | sed 's#$$# \\#' >> $(MISC)/$(TARGET).$(@:b)_8.cmd
+ @echo $(APP8LINKTYPEFLAG) $(APP8LIBSALCPPRT) $(APP8STDLIBS) $(APP8STDLIB) $(STDLIB8) -o $@ >> $(MISC)/$(TARGET).$(@:b)_8.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_8.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_8.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+ .ENDIF
+.ENDIF # "$(OS)"=="MACOSX"
+.ENDIF
+.IF "$(GUI)" == "WNT"
+ @@-$(MKDIR) $(@:d:d)
+.IF "$(APP8LINKRES)" != ""
+ @@-$(RM) $(MISC)/$(APP8LINKRES:b).rc
+.IF "$(APP8ICON)" != ""
+ @-echo 1 ICON $(EMQ)"$(APP8ICON:s/\/\\/)$(EMQ)" >> $(MISC)/$(APP8LINKRES:b).rc
+.ENDIF # "$(APP8ICON)" != ""
+.IF "$(APP8VERINFO)" != ""
+ @-echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP8LINKRES:b).rc
+ @-echo $(EMQ)#include $(EMQ)"$(APP8VERINFO)$(EMQ)" >> $(MISC)/$(APP8LINKRES:b).rc
+.ENDIF # "$(APP8VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(APP8PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP8LINKRES:b).rc
+.ENDIF # "$(APP8LINKRES)" != ""
+.IF "$(COM)" == "GCC"
+ @echo mingw
+.IF "$(APP8LINKRES)" != "" || "$(APP8RES)" != ""
+ @cat $(APP8LINKRES) $(subst,/res/,/res{$(subst,$(BIN), $(@:d))} $(APP8RES)) > $(MISC)/$(@:b)_all.res
+ windres $(MISC)/$(@:b)_all.res $(APP8RESO)
+.ENDIF
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSAPP) $(MINGWSSTDOBJ) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP8BASEX) $(APP8STACKN) -o $@ $(APP8OBJS) \
+ -Wl,-Map,$(MISC)/$(@:b).map $(STDOBJ) $(APP8RESO) \
+ `$(TYPE) /dev/null $(APP8LIBS) | sed s#$(ROUT)#$(OUT)#g` \
+ $(APP_LINKTYPE) $(APP8LIBSALCPPRT) \
+ -Wl,--start-group $(APP8STDLIBS) -Wl,--end-group $(APP8STDLIB) \
+ $(STDLIB8) $(MINGWSSTDENDOBJ) > $(MISC)/$(TARGET).$(@:b)_8.cmd
+ # need this empty line, else dmake somehow gets confused by the .IFs and .ENDIFs
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_8.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_8.cmd
+ @ls -l $@
+.ELSE # "$(COM)" == "GCC"
+.IF "$(linkinc)" == ""
+ $(COMMAND_ECHO)$(APP8LINKER) @$(mktmp \
+ $(APP8LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP8BASEX) \
+ $(APP8STACKN) \
+ -out:$@ \
+ -map:$(MISC)/{$(subst,/,_ $(APP8TARGET)).map} \
+ $(STDOBJ) \
+ $(APP8LINKRES) \
+ $(APP8RES) \
+ $(APP8OBJS) \
+ $(APP8LIBS) \
+ $(APP8STDLIBS) \
+ $(APP8STDLIB) $(STDLIB8) \
+ )
+ @-echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);1 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);1 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP8TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP8TARGET).lst
+ $(COMMAND_ECHO)-$(RM) $(MISC)\linkobj.lst
+ for %_i in ($(MISC)\*.obj) do type %_i >> $(MISC)\linkobj.lst
+ type $(mktmp,$(MISC)\$(APP8TARGET).lst
+ $(APP8LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP8BASEX) \
+ $(APP8STACKN) \
+ -out:$@ \
+ $(STDOBJ) \
+ $(APP8LINKRES) \
+ $(APP8RES) \
+ $(APP8OBJS) \
+ $(APP8LIBS) \
+ $(APP8STDLIBS) \
+ $(APP8STDLIB) $(STDLIB8))
+ $(COMMAND_ECHO)$(SED)$(SED) -e 's/\(\.\.\\\)\{2,4\}/..\\/g' $(MISC)\$(APP8TARGETN:b)_linkobj.lst >> $(MISC)\$(APP8TARGET).lst
+ $(COMMAND_ECHO)$(SED)$(IFEXIST) $(MISC)/$(APP8TARGET).lst $(THEN) type $(MISC)/$(APP8TARGET).lst >> $(MISC)/$(APP8TARGET).lnk $(FI)
+ $(COMMAND_ECHO)$(SED)$(APP8LINKER) @$(MISC)\$(APP8TARGET).lnk
+.ENDIF # "$(linkinc)" == ""
+.ENDIF # "$(COM)" == "GCC"
+.IF "$(APP8TARGET)" == "loader"
+ $(COMMAND_ECHO)$(PERL) loader.pl $@
+ $(COMMAND_ECHO)$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "WNT"
+
+.IF "$(GUI)" == "OS2"
+ @+-$(MKDIR) $(@:d:d) >& $(NULLDEV)
+.IF "$(APP8LINKRES)" != ""
+ @+-$(RM) $(MISC)/$(APP8LINKRES:b).rc >& $(NULLDEV)
+.IF "$(APP8ICON)" != ""
+ @-+$(WRAPCMD) echo 1 ICON $(EMQ)"$(APP8ICON)$(EMQ)" | $(SED) 'sX\\X\\\\Xg' >> $(MISC)/$(APP8LINKRES:b).rc
+.ENDIF # "$(APP8ICON)" != ""
+.IF "$(APP8VERINFO)" != ""
+ @-+echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP8LINKRES:b).rc
+ @-+echo $(EMQ)#include $(EMQ)"$(APP8VERINFO)$(EMQ)" >> $(MISC)/$(APP8LINKRES:b).rc
+.ENDIF # "$(APP8VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(APP8PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP8LINKRES:b).rc
+.ENDIF # "$(APP8LINKRES)" != ""
+
+.IF "$(TARGETTYPE)" == "GUI"
+ @echo NAME $(APP8TARGET) WINDOWAPI > $(MISC)/$(APP8TARGET).def
+.ENDIF
+
+ .IF "$(VERBOSE)" == "TRUE"
+ @+echo $(APP8LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP8BASEX) \
+ $(APP8STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP8LINKRES) \
+ $(APP8RES) \
+ $(APP8DEF) \
+ $(APP8OBJS) \
+ $(APP8LIBS) \
+ $(APP8STDLIBS:^"-l") \
+ $(APP8STDLIB:^"-l") $(STDLIB8:^"-l")
+ .ENDIF
+ $(COMMAND_ECHO)$(APP8LINKER) -v \
+ $(APP8LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP8BASEX) \
+ $(APP8STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP8LINKRES) \
+ $(APP8RES) \
+ $(APP8DEF) \
+ $(APP8OBJS) \
+ $(APP8LIBS) \
+ $(APP8STDLIBS:^"-l") \
+ $(APP8STDLIB:^"-l") $(STDLIB8:^"-l")
+
+
+.IF "$(APP8TARGET)" == "loader"
+ $(COMMAND_ECHO)+$(PERL) loader.pl $@
+ $(COMMAND_ECHO)+$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)+$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "OS2"
+
+.ENDIF # "$(APP8TARGETN)"!=""
+
+
+# Instruction for linking
+# unroll begin
+
+.IF "$(GUI)" == "OS2" && "$(TARGETTYPE)" == "GUI"
+APP9DEF = $(MISC)/$(APP9TARGET).def
+.ENDIF
+
+.IF "$(APP9LINKTYPE)" != ""
+#must be either STATIC or SHARED
+APP9LINKTYPEFLAG=$(APPLINK$(APP9LINKTYPE))
+.ENDIF
+
+# decide how to link
+.IF "$(APP9CODETYPE)"=="C"
+APP9LINKER=$(LINKC)
+APP9STDLIB=$(subst,CPPRUNTIME, $(STDLIB))
+APP9LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(APP9CODETYPE)"=="C"
+APP9LINKER=$(LINK)
+APP9STDLIB=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDLIB))
+APP9LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(APP9CODETYPE)"=="C"
+
+APP9RPATH*=OOO
+LINKFLAGSRUNPATH_$(APP9RPATH)*=/ERROR:/Bad_APP9RPATH_value
+.IF "$(OS)" != "MACOSX"
+APP9LINKFLAGS+=$(LINKFLAGSRUNPATH_$(APP9RPATH))
+.ENDIF
+
+.IF "$(APP9STACK)" != ""
+.IF "$(LINKFLAGSTACK)" != ""
+APP9STACKN=$(LINKFLAGSTACK)$(APP9STACK)
+.ENDIF
+.ELSE
+APP9STACKN=
+.ENDIF
+
+.IF "$(APP9NOSAL)"==""
+.IF "$(TARGETTYPE)" == "GUI"
+APP9OBJS+= $(STDOBJVCL)
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)$(COM)" == "WNTGCC"
+APP9RESO=
+.IF "$(APP9LINKRES)" != "" || "$(APP9RES)" != ""
+APP9RESO=$(MISC)/$(APP9TARGET:b)_res.o
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)" == "UNX"
+APP9DEPN+:=$(APP9DEPNU)
+USE_APP9DEF=
+.ENDIF
+
+.IF "$(APP9TARGETN)"!=""
+
+.IF "$(APP9PRODUCTNAME)"!=""
+APP9PRODUCTDEF+:=-DPRODUCT_NAME=\"$(APP9PRODUCTNAME)\"
+.ENDIF # "$(APP9PRODUCTNAME)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP9LIBS)"!=""
+$(MISC)/$(APP9TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ sed -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(APP9LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF #"$(APP9LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(APP9TARGETN:b)_linkinc.ls
+$(APP9TARGETN) : $(LINKINCTARGETS)
+.ENDIF # "$(linkinc)"!=""
+
+# Allow for target specific LIBSALCPPRT override
+APP9LIBSALCPPRT*=$(LIBSALCPPRT)
+
+.IF "$(GUI)" == "OS2"
+_APP9IMP_ORD = $(APP9STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(APP9STDLIBS:^"$(LB)/")
+APP9IMP_ORD = $(foreach,i,$(_APP9IMP_ORD) $(shell @-ls $i))
+.ELSE
+APP9IMP_ORD =
+.ENDIF
+
+$(APP9TARGETN): $(APP9OBJS) $(APP9LIBS) \
+ $(APP9RES) \
+ $(APP9IMP_ORD) \
+ $(APP9ICON) $(APP9DEPN) $(USE_APP9DEF)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_9.cmd
+ @-$(RM) $(MISC)/$(@:b).strip
+ @echo $(STDSLO) $(APP9OBJS:s/.obj/.o/) \
+ `cat /dev/null $(APP9LIBS) | sed s\#$(ROUT)\#$(OUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(APP9LINKER) $(APP9LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) -o $@ \
+ $(APP9LINKTYPEFLAG) $(APP9STDLIBS) $(APP9STDLIB) $(STDLIB9) -filelist $(MISC)/$(@:b).list > $(MISC)/$(TARGET).$(@:b)_9.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_9.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_9.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_9.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_9.cmd
+# Need to strip __objcInit symbol to avoid duplicate symbols when loading
+# libraries at runtime
+ @-nm $@ | grep -v ' U ' | $(AWK) '{ print $$NF }' | grep -F -x '__objcInit' > $(MISC)/$(@:b).strip
+ @strip -i -R $(MISC)/$(@:b).strip -X $@
+ @ls -l $@
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ app $(APP9RPATH) $@
+.IF "$(TARGETTYPE)"=="GUI"
+ @echo "Making: " $(@:f).app
+ @macosx-create-bundle $@
+.ENDIF # "$(TARGETTYPE)"=="GUI"
+.ELSE # "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_9.cmd
+ @echo $(APP9LINKER) $(APP9LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP9OBJS:s/.obj/.o/) '\' > $(MISC)/$(TARGET).$(@:b)_9.cmd
+ @cat $(mktmp /dev/null $(APP9LIBS)) | xargs -n 1 cat | sed s\#$(ROUT)\#$(OUT)\#g | sed 's#$$# \\#' >> $(MISC)/$(TARGET).$(@:b)_9.cmd
+ @echo $(APP9LINKTYPEFLAG) $(APP9LIBSALCPPRT) $(APP9STDLIBS) $(APP9STDLIB) $(STDLIB9) -o $@ >> $(MISC)/$(TARGET).$(@:b)_9.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_9.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_9.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+ .ENDIF
+.ENDIF # "$(OS)"=="MACOSX"
+.ENDIF
+.IF "$(GUI)" == "WNT"
+ @@-$(MKDIR) $(@:d:d)
+.IF "$(APP9LINKRES)" != ""
+ @@-$(RM) $(MISC)/$(APP9LINKRES:b).rc
+.IF "$(APP9ICON)" != ""
+ @-echo 1 ICON $(EMQ)"$(APP9ICON:s/\/\\/)$(EMQ)" >> $(MISC)/$(APP9LINKRES:b).rc
+.ENDIF # "$(APP9ICON)" != ""
+.IF "$(APP9VERINFO)" != ""
+ @-echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP9LINKRES:b).rc
+ @-echo $(EMQ)#include $(EMQ)"$(APP9VERINFO)$(EMQ)" >> $(MISC)/$(APP9LINKRES:b).rc
+.ENDIF # "$(APP9VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(APP9PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP9LINKRES:b).rc
+.ENDIF # "$(APP9LINKRES)" != ""
+.IF "$(COM)" == "GCC"
+ @echo mingw
+.IF "$(APP9LINKRES)" != "" || "$(APP9RES)" != ""
+ @cat $(APP9LINKRES) $(subst,/res/,/res{$(subst,$(BIN), $(@:d))} $(APP9RES)) > $(MISC)/$(@:b)_all.res
+ windres $(MISC)/$(@:b)_all.res $(APP9RESO)
+.ENDIF
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSAPP) $(MINGWSSTDOBJ) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP9BASEX) $(APP9STACKN) -o $@ $(APP9OBJS) \
+ -Wl,-Map,$(MISC)/$(@:b).map $(STDOBJ) $(APP9RESO) \
+ `$(TYPE) /dev/null $(APP9LIBS) | sed s#$(ROUT)#$(OUT)#g` \
+ $(APP_LINKTYPE) $(APP9LIBSALCPPRT) \
+ -Wl,--start-group $(APP9STDLIBS) -Wl,--end-group $(APP9STDLIB) \
+ $(STDLIB9) $(MINGWSSTDENDOBJ) > $(MISC)/$(TARGET).$(@:b)_9.cmd
+ # need this empty line, else dmake somehow gets confused by the .IFs and .ENDIFs
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_9.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_9.cmd
+ @ls -l $@
+.ELSE # "$(COM)" == "GCC"
+.IF "$(linkinc)" == ""
+ $(COMMAND_ECHO)$(APP9LINKER) @$(mktmp \
+ $(APP9LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP9BASEX) \
+ $(APP9STACKN) \
+ -out:$@ \
+ -map:$(MISC)/{$(subst,/,_ $(APP9TARGET)).map} \
+ $(STDOBJ) \
+ $(APP9LINKRES) \
+ $(APP9RES) \
+ $(APP9OBJS) \
+ $(APP9LIBS) \
+ $(APP9STDLIBS) \
+ $(APP9STDLIB) $(STDLIB9) \
+ )
+ @-echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);1 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);1 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP9TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP9TARGET).lst
+ $(COMMAND_ECHO)-$(RM) $(MISC)\linkobj.lst
+ for %_i in ($(MISC)\*.obj) do type %_i >> $(MISC)\linkobj.lst
+ type $(mktmp,$(MISC)\$(APP9TARGET).lst
+ $(APP9LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP9BASEX) \
+ $(APP9STACKN) \
+ -out:$@ \
+ $(STDOBJ) \
+ $(APP9LINKRES) \
+ $(APP9RES) \
+ $(APP9OBJS) \
+ $(APP9LIBS) \
+ $(APP9STDLIBS) \
+ $(APP9STDLIB) $(STDLIB9))
+ $(COMMAND_ECHO)$(SED)$(SED) -e 's/\(\.\.\\\)\{2,4\}/..\\/g' $(MISC)\$(APP9TARGETN:b)_linkobj.lst >> $(MISC)\$(APP9TARGET).lst
+ $(COMMAND_ECHO)$(SED)$(IFEXIST) $(MISC)/$(APP9TARGET).lst $(THEN) type $(MISC)/$(APP9TARGET).lst >> $(MISC)/$(APP9TARGET).lnk $(FI)
+ $(COMMAND_ECHO)$(SED)$(APP9LINKER) @$(MISC)\$(APP9TARGET).lnk
+.ENDIF # "$(linkinc)" == ""
+.ENDIF # "$(COM)" == "GCC"
+.IF "$(APP9TARGET)" == "loader"
+ $(COMMAND_ECHO)$(PERL) loader.pl $@
+ $(COMMAND_ECHO)$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "WNT"
+
+.IF "$(GUI)" == "OS2"
+ @+-$(MKDIR) $(@:d:d) >& $(NULLDEV)
+.IF "$(APP9LINKRES)" != ""
+ @+-$(RM) $(MISC)/$(APP9LINKRES:b).rc >& $(NULLDEV)
+.IF "$(APP9ICON)" != ""
+ @-+$(WRAPCMD) echo 1 ICON $(EMQ)"$(APP9ICON)$(EMQ)" | $(SED) 'sX\\X\\\\Xg' >> $(MISC)/$(APP9LINKRES:b).rc
+.ENDIF # "$(APP9ICON)" != ""
+.IF "$(APP9VERINFO)" != ""
+ @-+echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP9LINKRES:b).rc
+ @-+echo $(EMQ)#include $(EMQ)"$(APP9VERINFO)$(EMQ)" >> $(MISC)/$(APP9LINKRES:b).rc
+.ENDIF # "$(APP9VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(APP9PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP9LINKRES:b).rc
+.ENDIF # "$(APP9LINKRES)" != ""
+
+.IF "$(TARGETTYPE)" == "GUI"
+ @echo NAME $(APP9TARGET) WINDOWAPI > $(MISC)/$(APP9TARGET).def
+.ENDIF
+
+ .IF "$(VERBOSE)" == "TRUE"
+ @+echo $(APP9LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP9BASEX) \
+ $(APP9STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP9LINKRES) \
+ $(APP9RES) \
+ $(APP9DEF) \
+ $(APP9OBJS) \
+ $(APP9LIBS) \
+ $(APP9STDLIBS:^"-l") \
+ $(APP9STDLIB:^"-l") $(STDLIB9:^"-l")
+ .ENDIF
+ $(COMMAND_ECHO)$(APP9LINKER) -v \
+ $(APP9LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP9BASEX) \
+ $(APP9STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP9LINKRES) \
+ $(APP9RES) \
+ $(APP9DEF) \
+ $(APP9OBJS) \
+ $(APP9LIBS) \
+ $(APP9STDLIBS:^"-l") \
+ $(APP9STDLIB:^"-l") $(STDLIB9:^"-l")
+
+
+.IF "$(APP9TARGET)" == "loader"
+ $(COMMAND_ECHO)+$(PERL) loader.pl $@
+ $(COMMAND_ECHO)+$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)+$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "OS2"
+
+.ENDIF # "$(APP9TARGETN)"!=""
+
+
+# Instruction for linking
+# unroll begin
+
+.IF "$(GUI)" == "OS2" && "$(TARGETTYPE)" == "GUI"
+APP10DEF = $(MISC)/$(APP10TARGET).def
+.ENDIF
+
+.IF "$(APP10LINKTYPE)" != ""
+#must be either STATIC or SHARED
+APP10LINKTYPEFLAG=$(APPLINK$(APP10LINKTYPE))
+.ENDIF
+
+# decide how to link
+.IF "$(APP10CODETYPE)"=="C"
+APP10LINKER=$(LINKC)
+APP10STDLIB=$(subst,CPPRUNTIME, $(STDLIB))
+APP10LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(APP10CODETYPE)"=="C"
+APP10LINKER=$(LINK)
+APP10STDLIB=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDLIB))
+APP10LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(APP10CODETYPE)"=="C"
+
+APP10RPATH*=OOO
+LINKFLAGSRUNPATH_$(APP10RPATH)*=/ERROR:/Bad_APP10RPATH_value
+.IF "$(OS)" != "MACOSX"
+APP10LINKFLAGS+=$(LINKFLAGSRUNPATH_$(APP10RPATH))
+.ENDIF
+
+.IF "$(APP10STACK)" != ""
+.IF "$(LINKFLAGSTACK)" != ""
+APP10STACKN=$(LINKFLAGSTACK)$(APP10STACK)
+.ENDIF
+.ELSE
+APP10STACKN=
+.ENDIF
+
+.IF "$(APP10NOSAL)"==""
+.IF "$(TARGETTYPE)" == "GUI"
+APP10OBJS+= $(STDOBJVCL)
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)$(COM)" == "WNTGCC"
+APP10RESO=
+.IF "$(APP10LINKRES)" != "" || "$(APP10RES)" != ""
+APP10RESO=$(MISC)/$(APP10TARGET:b)_res.o
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)" == "UNX"
+APP10DEPN+:=$(APP10DEPNU)
+USE_APP10DEF=
+.ENDIF
+
+.IF "$(APP10TARGETN)"!=""
+
+.IF "$(APP10PRODUCTNAME)"!=""
+APP10PRODUCTDEF+:=-DPRODUCT_NAME=\"$(APP10PRODUCTNAME)\"
+.ENDIF # "$(APP10PRODUCTNAME)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP10LIBS)"!=""
+$(MISC)/$(APP10TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ sed -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(APP10LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF #"$(APP10LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(APP10TARGETN:b)_linkinc.ls
+$(APP10TARGETN) : $(LINKINCTARGETS)
+.ENDIF # "$(linkinc)"!=""
+
+# Allow for target specific LIBSALCPPRT override
+APP10LIBSALCPPRT*=$(LIBSALCPPRT)
+
+.IF "$(GUI)" == "OS2"
+_APP10IMP_ORD = $(APP10STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(APP10STDLIBS:^"$(LB)/")
+APP10IMP_ORD = $(foreach,i,$(_APP10IMP_ORD) $(shell @-ls $i))
+.ELSE
+APP10IMP_ORD =
+.ENDIF
+
+$(APP10TARGETN): $(APP10OBJS) $(APP10LIBS) \
+ $(APP10RES) \
+ $(APP10IMP_ORD) \
+ $(APP10ICON) $(APP10DEPN) $(USE_APP10DEF)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_10.cmd
+ @-$(RM) $(MISC)/$(@:b).strip
+ @echo $(STDSLO) $(APP10OBJS:s/.obj/.o/) \
+ `cat /dev/null $(APP10LIBS) | sed s\#$(ROUT)\#$(OUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(APP10LINKER) $(APP10LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) -o $@ \
+ $(APP10LINKTYPEFLAG) $(APP10STDLIBS) $(APP10STDLIB) $(STDLIB10) -filelist $(MISC)/$(@:b).list > $(MISC)/$(TARGET).$(@:b)_10.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_10.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_10.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_10.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_10.cmd
+# Need to strip __objcInit symbol to avoid duplicate symbols when loading
+# libraries at runtime
+ @-nm $@ | grep -v ' U ' | $(AWK) '{ print $$NF }' | grep -F -x '__objcInit' > $(MISC)/$(@:b).strip
+ @strip -i -R $(MISC)/$(@:b).strip -X $@
+ @ls -l $@
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ app $(APP10RPATH) $@
+.IF "$(TARGETTYPE)"=="GUI"
+ @echo "Making: " $(@:f).app
+ @macosx-create-bundle $@
+.ENDIF # "$(TARGETTYPE)"=="GUI"
+.ELSE # "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_10.cmd
+ @echo $(APP10LINKER) $(APP10LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP10OBJS:s/.obj/.o/) '\' > $(MISC)/$(TARGET).$(@:b)_10.cmd
+ @cat $(mktmp /dev/null $(APP10LIBS)) | xargs -n 1 cat | sed s\#$(ROUT)\#$(OUT)\#g | sed 's#$$# \\#' >> $(MISC)/$(TARGET).$(@:b)_10.cmd
+ @echo $(APP10LINKTYPEFLAG) $(APP10LIBSALCPPRT) $(APP10STDLIBS) $(APP10STDLIB) $(STDLIB10) -o $@ >> $(MISC)/$(TARGET).$(@:b)_10.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_10.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_10.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+ .ENDIF
+.ENDIF # "$(OS)"=="MACOSX"
+.ENDIF
+.IF "$(GUI)" == "WNT"
+ @@-$(MKDIR) $(@:d:d)
+.IF "$(APP10LINKRES)" != ""
+ @@-$(RM) $(MISC)/$(APP10LINKRES:b).rc
+.IF "$(APP10ICON)" != ""
+ @-echo 1 ICON $(EMQ)"$(APP10ICON:s/\/\\/)$(EMQ)" >> $(MISC)/$(APP10LINKRES:b).rc
+.ENDIF # "$(APP10ICON)" != ""
+.IF "$(APP10VERINFO)" != ""
+ @-echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP10LINKRES:b).rc
+ @-echo $(EMQ)#include $(EMQ)"$(APP10VERINFO)$(EMQ)" >> $(MISC)/$(APP10LINKRES:b).rc
+.ENDIF # "$(APP10VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(APP10PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP10LINKRES:b).rc
+.ENDIF # "$(APP10LINKRES)" != ""
+.IF "$(COM)" == "GCC"
+ @echo mingw
+.IF "$(APP10LINKRES)" != "" || "$(APP10RES)" != ""
+ @cat $(APP10LINKRES) $(subst,/res/,/res{$(subst,$(BIN), $(@:d))} $(APP10RES)) > $(MISC)/$(@:b)_all.res
+ windres $(MISC)/$(@:b)_all.res $(APP10RESO)
+.ENDIF
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSAPP) $(MINGWSSTDOBJ) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP10BASEX) $(APP10STACKN) -o $@ $(APP10OBJS) \
+ -Wl,-Map,$(MISC)/$(@:b).map $(STDOBJ) $(APP10RESO) \
+ `$(TYPE) /dev/null $(APP10LIBS) | sed s#$(ROUT)#$(OUT)#g` \
+ $(APP_LINKTYPE) $(APP10LIBSALCPPRT) \
+ -Wl,--start-group $(APP10STDLIBS) -Wl,--end-group $(APP10STDLIB) \
+ $(STDLIB10) $(MINGWSSTDENDOBJ) > $(MISC)/$(TARGET).$(@:b)_10.cmd
+ # need this empty line, else dmake somehow gets confused by the .IFs and .ENDIFs
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_10.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_10.cmd
+ @ls -l $@
+.ELSE # "$(COM)" == "GCC"
+.IF "$(linkinc)" == ""
+ $(COMMAND_ECHO)$(APP10LINKER) @$(mktmp \
+ $(APP10LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP10BASEX) \
+ $(APP10STACKN) \
+ -out:$@ \
+ -map:$(MISC)/{$(subst,/,_ $(APP10TARGET)).map} \
+ $(STDOBJ) \
+ $(APP10LINKRES) \
+ $(APP10RES) \
+ $(APP10OBJS) \
+ $(APP10LIBS) \
+ $(APP10STDLIBS) \
+ $(APP10STDLIB) $(STDLIB10) \
+ )
+ @-echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);1 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);1 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP10TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP10TARGET).lst
+ $(COMMAND_ECHO)-$(RM) $(MISC)\linkobj.lst
+ for %_i in ($(MISC)\*.obj) do type %_i >> $(MISC)\linkobj.lst
+ type $(mktmp,$(MISC)\$(APP10TARGET).lst
+ $(APP10LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP10BASEX) \
+ $(APP10STACKN) \
+ -out:$@ \
+ $(STDOBJ) \
+ $(APP10LINKRES) \
+ $(APP10RES) \
+ $(APP10OBJS) \
+ $(APP10LIBS) \
+ $(APP10STDLIBS) \
+ $(APP10STDLIB) $(STDLIB10))
+ $(COMMAND_ECHO)$(SED)$(SED) -e 's/\(\.\.\\\)\{2,4\}/..\\/g' $(MISC)\$(APP10TARGETN:b)_linkobj.lst >> $(MISC)\$(APP10TARGET).lst
+ $(COMMAND_ECHO)$(SED)$(IFEXIST) $(MISC)/$(APP10TARGET).lst $(THEN) type $(MISC)/$(APP10TARGET).lst >> $(MISC)/$(APP10TARGET).lnk $(FI)
+ $(COMMAND_ECHO)$(SED)$(APP10LINKER) @$(MISC)\$(APP10TARGET).lnk
+.ENDIF # "$(linkinc)" == ""
+.ENDIF # "$(COM)" == "GCC"
+.IF "$(APP10TARGET)" == "loader"
+ $(COMMAND_ECHO)$(PERL) loader.pl $@
+ $(COMMAND_ECHO)$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "WNT"
+
+.IF "$(GUI)" == "OS2"
+ @+-$(MKDIR) $(@:d:d) >& $(NULLDEV)
+.IF "$(APP10LINKRES)" != ""
+ @+-$(RM) $(MISC)/$(APP10LINKRES:b).rc >& $(NULLDEV)
+.IF "$(APP10ICON)" != ""
+ @-+$(WRAPCMD) echo 1 ICON $(EMQ)"$(APP10ICON)$(EMQ)" | $(SED) 'sX\\X\\\\Xg' >> $(MISC)/$(APP10LINKRES:b).rc
+.ENDIF # "$(APP10ICON)" != ""
+.IF "$(APP10VERINFO)" != ""
+ @-+echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP10LINKRES:b).rc
+ @-+echo $(EMQ)#include $(EMQ)"$(APP10VERINFO)$(EMQ)" >> $(MISC)/$(APP10LINKRES:b).rc
+.ENDIF # "$(APP10VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(APP10PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP10LINKRES:b).rc
+.ENDIF # "$(APP10LINKRES)" != ""
+
+.IF "$(TARGETTYPE)" == "GUI"
+ @echo NAME $(APP10TARGET) WINDOWAPI > $(MISC)/$(APP10TARGET).def
+.ENDIF
+
+ .IF "$(VERBOSE)" == "TRUE"
+ @+echo $(APP10LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP10BASEX) \
+ $(APP10STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP10LINKRES) \
+ $(APP10RES) \
+ $(APP10DEF) \
+ $(APP10OBJS) \
+ $(APP10LIBS) \
+ $(APP10STDLIBS:^"-l") \
+ $(APP10STDLIB:^"-l") $(STDLIB10:^"-l")
+ .ENDIF
+ $(COMMAND_ECHO)$(APP10LINKER) -v \
+ $(APP10LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP10BASEX) \
+ $(APP10STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP10LINKRES) \
+ $(APP10RES) \
+ $(APP10DEF) \
+ $(APP10OBJS) \
+ $(APP10LIBS) \
+ $(APP10STDLIBS:^"-l") \
+ $(APP10STDLIB:^"-l") $(STDLIB10:^"-l")
+
+
+.IF "$(APP10TARGET)" == "loader"
+ $(COMMAND_ECHO)+$(PERL) loader.pl $@
+ $(COMMAND_ECHO)+$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)+$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "OS2"
+
+.ENDIF # "$(APP10TARGETN)"!=""
+
+
+# Instruction for linking
diff --git a/solenv/inc/_tg_def.mk b/solenv/inc/_tg_def.mk
new file mode 100644
index 000000000000..cf4414ae4e1f
--- /dev/null
+++ b/solenv/inc/_tg_def.mk
@@ -0,0 +1,2810 @@
+# unroll begin
+
+.IF "$(DEF1TARGETN)"!=""
+
+#to make intuitiv naming work
+.IF "$(DEF1LIBNAME)"!=""
+DEFLIB1NAME*=$(DEF1LIBNAME)
+.ENDIF # "$(DEF1LIBNAME)"!=""
+
+.IF "$(DEFLIB1NAME)"!=""
+DEF1DEPN+=$(foreach,i,$(DEFLIB1NAME) $(SLB)/$(i).lib)
+.ENDIF
+
+.IF "$(SHL1VERSIONMAP)"!=""
+.IF "$(DEF1EXPORTFILE)"==""
+.IF "$(GUI)"=="WNT"
+DEF1EXPORTFILE=$(MISC)/$(SHL1VERSIONMAP:b)_$(SHL1TARGET).dxp
+.IF "$(COM)"=="GCC"
+$(DEF1EXPORTFILE) : $(SHL1OBJS) $(SHL1LIBS)
+.ENDIF # .IF "$(COM)"=="GCC"
+
+$(DEF1EXPORTFILE) : $(SHL1VERSIONMAP)
+ $(COMMAND_ECHO)$(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)-$(GREP) -v "\*\|?" $@ | $(SED) -e 's@#.*@@' > $@.exported-symbols
+ $(COMMAND_ECHO)-$(GREP) "\*\|?" $@ > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+ $(COMMAND_ECHO)nm -gP $(SHL1OBJS) \
+ `$(TYPE) /dev/null $(foreach,j,$(SHL1LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` \
+ | $(SOLARENV)/bin/addsym-mingw.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ $(COMMAND_ECHO)$(RENAME) $@.exported-symbols $@
+.ENDIF # .IF "$(COM)"=="GCC"
+
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+DEF1EXPORTFILE=$(MISC)/$(SHL1VERSIONMAP:b)_$(SHL1TARGET).dxp
+$(DEF1EXPORTFILE) : $(SHL1VERSIONMAP)
+ $(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.ENDIF # "$(GUI)"=="OS2"
+
+.ENDIF # "$(DEF1EXPORTFILE)"==""
+.ENDIF # "$(SHL1VERSIONMAP)"!=""
+
+.IF "$(GUI)"=="WNT"
+
+DEF1FILTER=$(SOLARENV)/inc/dummy.flt
+
+RMHACK1:=$(RM)
+
+.IF "$(DEF1CEXP)"!=""
+EXPORT_ALL_SWITCH=-A $(DEF1CEXP)
+.ENDIF
+
+.IF "$(link_always)"==""
+$(DEF1TARGETN) : \
+ $(DEF1DEPN) \
+ $(DEF1EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF1TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(EMQ)"$(SHL1TARGETN:f)$(EMQ)" >$@.tmpfile
+.IF "$(COM)"!="GCC"
+ @echo HEAPSIZE 0 >>$@.tmpfile
+.ENDIF
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.ENDIF
+.IF "$(DEFLIB1NAME)"!=""
+.IF "$(COM)"=="GCC"
+ @-$(RM) $(MISC)/$(SHL1TARGET).exp
+ $(COMMAND_ECHO)dlltool --output-def $(MISC)/$(SHL1TARGET).exp --export-all-symbols \
+ `$(TYPE) $(foreach,i,$(DEFLIB1NAME) $(SLB)/$(i).lib) | sed s#$(ROUT)#$(PRJ)/$(ROUT)#g`
+ $(COMMAND_ECHO)tail --lines +3 $(MISC)/$(SHL1TARGET).exp | sed '/^;/d' >>$@.tmpfile
+ @-$(RM) $(MISC)/$(SHL1TARGET).exp
+.ELSE
+.IF "$(SHL1USE_EXPORTS)"==""
+ @-$(RMHACK1) $(MISC)/$(SHL1TARGET).exp
+ @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)/$(SHL1TARGET).exp $(SLB)/$(DEFLIB1NAME).lib
+ @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)/$(SHL1TARGET).flt $(MISC)/$(SHL1TARGET).exp >>$@.tmpfile
+ $(COMMAND_ECHO)$(RMHACK1) $(MISC)/$(SHL1TARGET).exp
+.ELSE # "$(SHL1USE_EXPORTS)"==""
+ @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB1NAME) $(SLB)/$(i).lib) | $(GREP) EXPORT: > $(MISC)/$(SHL1TARGET).direct
+ @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF1FILTER) $(MISC)/$(SHL1TARGET).direct >>$@.tmpfile
+.ENDIF # "$(SHL1USE_EXPORTS)"==""
+.ENDIF
+.ENDIF # "$(DEFLIB1NAME)"!=""
+.IF "$(DEF1EXPORT1)"!=""
+ @echo $(DEF1EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT2)"!=""
+ @echo $(DEF1EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT3)"!=""
+ @echo $(DEF1EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT4)"!=""
+ @echo $(DEF1EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT5)"!=""
+ @echo $(DEF1EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT6)"!=""
+ @echo $(DEF1EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT7)"!=""
+ @echo $(DEF1EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT8)"!=""
+ @echo $(DEF1EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT9)"!=""
+ @echo $(DEF1EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT10)"!=""
+ @echo $(DEF1EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT11)"!=""
+ @echo $(DEF1EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT12)"!=""
+ @echo $(DEF1EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT13)"!=""
+ @echo $(DEF1EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT14)"!=""
+ @echo $(DEF1EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT15)"!=""
+ @echo $(DEF1EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT16)"!=""
+ @echo $(DEF1EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT17)"!=""
+ @echo $(DEF1EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT18)"!=""
+ @echo $(DEF1EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT19)"!=""
+ @echo $(DEF1EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT20)"!=""
+ @echo $(DEF1EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORTFILE)"!=""
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(TYPE) $(DEF1EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
+.ELSE
+ $(COMMAND_ECHO)$(TYPE) $(DEF1EXPORTFILE) >> $@.tmpfile
+.ENDIF
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL1TARGET8=$(shell @fix_shl $(SHL1TARGETN:f))
+
+DEF1FILTER=$(SOLARENV)/inc/dummy.flt
+DEF1NAMELIST=$(foreach,i,$(DEFLIB1NAME) $(SLB)/$(i).lib)
+
+.IF "$(link_always)"==""
+$(DEF1TARGETN) : \
+ $(DEF1DEPN) \
+ $(DEF1EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF1TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @+-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(SHL1TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
+ @echo DATA MULTIPLE >>$@.tmpfile
+ @echo DESCRIPTION 'StarView 3.00 $(DEF1DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo _GetVersionInfo >$@.tmp_ord
+.ENDIF
+
+.IF "$(DEFLIB1NAME)"!=""
+ @+echo $(SLB)/$(DEFLIB1NAME).lib
+ @+emxexpr $(DEF1NAMELIST) | fix_exp_file >> $@.tmp_ord
+.ENDIF # "$(DEFLIB1NAME)"!=""
+
+.IF "$(DEF1EXPORT1)"!=""
+ @echo $(DEF1EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT2)"!=""
+ @echo $(DEF1EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT3)"!=""
+ @echo $(DEF1EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT4)"!=""
+ @echo $(DEF1EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT5)"!=""
+ @echo $(DEF1EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT6)"!=""
+ @echo $(DEF1EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT7)"!=""
+ @echo $(DEF1EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT8)"!=""
+ @echo $(DEF1EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT9)"!=""
+ @echo $(DEF1EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT10)"!=""
+ @echo $(DEF1EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT11)"!=""
+ @echo $(DEF1EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT12)"!=""
+ @echo $(DEF1EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT13)"!=""
+ @echo $(DEF1EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT14)"!=""
+ @echo $(DEF1EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT15)"!=""
+ @echo $(DEF1EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT16)"!=""
+ @echo $(DEF1EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT17)"!=""
+ @echo $(DEF1EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT18)"!=""
+ @echo $(DEF1EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT19)"!=""
+ @echo $(DEF1EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORT20)"!=""
+ @echo $(DEF1EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORTFILE)"!=""
+ @fix_def_file < $(DEF1EXPORTFILE) >> $@.tmp_ord
+.ENDIF
+ @sort < $@.tmp_ord | uniq > $@.exptmpfile
+ @fix_def_ord < $@.exptmpfile >> $@.tmpfile
+ @+-$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $@.tmpfile $@
+ @+-$(RM) $@.tmp_ord
+ @+-$(RM) $@.exptmpfile
+ $(COMMAND_ECHO)+$(IMPLIB) $(IMPLIBFLAGS) $(SHL1IMPLIBN:s/.lib/.a/) $@
+ $(COMMAND_ECHO)+emxomf -o $(SHL1IMPLIBN) $(SHL1IMPLIBN:s/.lib/.a/)
+
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="UNX"
+$(DEF1TARGETN): \
+ $(DEF1DEPN) \
+ $(DEF1EXPORTFILE)
+ @echo just a dummy for UNIX > $@
+.ENDIF
+.ENDIF # "$(DEF1TARGETN)"!=""
+
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(DEF2TARGETN)"!=""
+
+#to make intuitiv naming work
+.IF "$(DEF2LIBNAME)"!=""
+DEFLIB2NAME*=$(DEF2LIBNAME)
+.ENDIF # "$(DEF2LIBNAME)"!=""
+
+.IF "$(DEFLIB2NAME)"!=""
+DEF2DEPN+=$(foreach,i,$(DEFLIB2NAME) $(SLB)/$(i).lib)
+.ENDIF
+
+.IF "$(SHL2VERSIONMAP)"!=""
+.IF "$(DEF2EXPORTFILE)"==""
+.IF "$(GUI)"=="WNT"
+DEF2EXPORTFILE=$(MISC)/$(SHL2VERSIONMAP:b)_$(SHL2TARGET).dxp
+.IF "$(COM)"=="GCC"
+$(DEF2EXPORTFILE) : $(SHL2OBJS) $(SHL2LIBS)
+.ENDIF # .IF "$(COM)"=="GCC"
+
+$(DEF2EXPORTFILE) : $(SHL2VERSIONMAP)
+ $(COMMAND_ECHO)$(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)-$(GREP) -v "\*\|?" $@ | $(SED) -e 's@#.*@@' > $@.exported-symbols
+ $(COMMAND_ECHO)-$(GREP) "\*\|?" $@ > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+ $(COMMAND_ECHO)nm -gP $(SHL2OBJS) \
+ `$(TYPE) /dev/null $(foreach,j,$(SHL2LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` \
+ | $(SOLARENV)/bin/addsym-mingw.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ $(COMMAND_ECHO)$(RENAME) $@.exported-symbols $@
+.ENDIF # .IF "$(COM)"=="GCC"
+
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+DEF2EXPORTFILE=$(MISC)/$(SHL2VERSIONMAP:b)_$(SHL2TARGET).dxp
+$(DEF2EXPORTFILE) : $(SHL2VERSIONMAP)
+ $(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.ENDIF # "$(GUI)"=="OS2"
+
+.ENDIF # "$(DEF2EXPORTFILE)"==""
+.ENDIF # "$(SHL2VERSIONMAP)"!=""
+
+.IF "$(GUI)"=="WNT"
+
+DEF2FILTER=$(SOLARENV)/inc/dummy.flt
+
+RMHACK2:=$(RM)
+
+.IF "$(DEF2CEXP)"!=""
+EXPORT_ALL_SWITCH=-A $(DEF2CEXP)
+.ENDIF
+
+.IF "$(link_always)"==""
+$(DEF2TARGETN) : \
+ $(DEF2DEPN) \
+ $(DEF2EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF2TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(EMQ)"$(SHL2TARGETN:f)$(EMQ)" >$@.tmpfile
+.IF "$(COM)"!="GCC"
+ @echo HEAPSIZE 0 >>$@.tmpfile
+.ENDIF
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.ENDIF
+.IF "$(DEFLIB2NAME)"!=""
+.IF "$(COM)"=="GCC"
+ @-$(RM) $(MISC)/$(SHL2TARGET).exp
+ $(COMMAND_ECHO)dlltool --output-def $(MISC)/$(SHL2TARGET).exp --export-all-symbols \
+ `$(TYPE) $(foreach,i,$(DEFLIB2NAME) $(SLB)/$(i).lib) | sed s#$(ROUT)#$(PRJ)/$(ROUT)#g`
+ $(COMMAND_ECHO)tail --lines +3 $(MISC)/$(SHL2TARGET).exp | sed '/^;/d' >>$@.tmpfile
+ @-$(RM) $(MISC)/$(SHL2TARGET).exp
+.ELSE
+.IF "$(SHL2USE_EXPORTS)"==""
+ @-$(RMHACK2) $(MISC)/$(SHL2TARGET).exp
+ @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)/$(SHL2TARGET).exp $(SLB)/$(DEFLIB2NAME).lib
+ @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)/$(SHL2TARGET).flt $(MISC)/$(SHL2TARGET).exp >>$@.tmpfile
+ $(COMMAND_ECHO)$(RMHACK2) $(MISC)/$(SHL2TARGET).exp
+.ELSE # "$(SHL2USE_EXPORTS)"==""
+ @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB2NAME) $(SLB)/$(i).lib) | $(GREP) EXPORT: > $(MISC)/$(SHL2TARGET).direct
+ @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF2FILTER) $(MISC)/$(SHL2TARGET).direct >>$@.tmpfile
+.ENDIF # "$(SHL2USE_EXPORTS)"==""
+.ENDIF
+.ENDIF # "$(DEFLIB2NAME)"!=""
+.IF "$(DEF2EXPORT1)"!=""
+ @echo $(DEF2EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT2)"!=""
+ @echo $(DEF2EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT3)"!=""
+ @echo $(DEF2EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT4)"!=""
+ @echo $(DEF2EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT5)"!=""
+ @echo $(DEF2EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT6)"!=""
+ @echo $(DEF2EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT7)"!=""
+ @echo $(DEF2EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT8)"!=""
+ @echo $(DEF2EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT9)"!=""
+ @echo $(DEF2EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT10)"!=""
+ @echo $(DEF2EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT11)"!=""
+ @echo $(DEF2EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT12)"!=""
+ @echo $(DEF2EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT13)"!=""
+ @echo $(DEF2EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT14)"!=""
+ @echo $(DEF2EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT15)"!=""
+ @echo $(DEF2EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT16)"!=""
+ @echo $(DEF2EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT17)"!=""
+ @echo $(DEF2EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT18)"!=""
+ @echo $(DEF2EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT19)"!=""
+ @echo $(DEF2EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT20)"!=""
+ @echo $(DEF2EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORTFILE)"!=""
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(TYPE) $(DEF2EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
+.ELSE
+ $(COMMAND_ECHO)$(TYPE) $(DEF2EXPORTFILE) >> $@.tmpfile
+.ENDIF
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL2TARGET8=$(shell @fix_shl $(SHL2TARGETN:f))
+
+DEF2FILTER=$(SOLARENV)/inc/dummy.flt
+DEF2NAMELIST=$(foreach,i,$(DEFLIB2NAME) $(SLB)/$(i).lib)
+
+.IF "$(link_always)"==""
+$(DEF2TARGETN) : \
+ $(DEF2DEPN) \
+ $(DEF2EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF2TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @+-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(SHL2TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
+ @echo DATA MULTIPLE >>$@.tmpfile
+ @echo DESCRIPTION 'StarView 3.00 $(DEF2DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo _GetVersionInfo >$@.tmp_ord
+.ENDIF
+
+.IF "$(DEFLIB2NAME)"!=""
+ @+echo $(SLB)/$(DEFLIB2NAME).lib
+ @+emxexpr $(DEF2NAMELIST) | fix_exp_file >> $@.tmp_ord
+.ENDIF # "$(DEFLIB2NAME)"!=""
+
+.IF "$(DEF2EXPORT1)"!=""
+ @echo $(DEF2EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT2)"!=""
+ @echo $(DEF2EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT3)"!=""
+ @echo $(DEF2EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT4)"!=""
+ @echo $(DEF2EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT5)"!=""
+ @echo $(DEF2EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT6)"!=""
+ @echo $(DEF2EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT7)"!=""
+ @echo $(DEF2EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT8)"!=""
+ @echo $(DEF2EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT9)"!=""
+ @echo $(DEF2EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT10)"!=""
+ @echo $(DEF2EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT11)"!=""
+ @echo $(DEF2EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT12)"!=""
+ @echo $(DEF2EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT13)"!=""
+ @echo $(DEF2EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT14)"!=""
+ @echo $(DEF2EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT15)"!=""
+ @echo $(DEF2EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT16)"!=""
+ @echo $(DEF2EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT17)"!=""
+ @echo $(DEF2EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT18)"!=""
+ @echo $(DEF2EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT19)"!=""
+ @echo $(DEF2EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORT20)"!=""
+ @echo $(DEF2EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORTFILE)"!=""
+ @fix_def_file < $(DEF2EXPORTFILE) >> $@.tmp_ord
+.ENDIF
+ @sort < $@.tmp_ord | uniq > $@.exptmpfile
+ @fix_def_ord < $@.exptmpfile >> $@.tmpfile
+ @+-$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $@.tmpfile $@
+ @+-$(RM) $@.tmp_ord
+ @+-$(RM) $@.exptmpfile
+ $(COMMAND_ECHO)+$(IMPLIB) $(IMPLIBFLAGS) $(SHL2IMPLIBN:s/.lib/.a/) $@
+ $(COMMAND_ECHO)+emxomf -o $(SHL2IMPLIBN) $(SHL2IMPLIBN:s/.lib/.a/)
+
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="UNX"
+$(DEF2TARGETN): \
+ $(DEF2DEPN) \
+ $(DEF2EXPORTFILE)
+ @echo just a dummy for UNIX > $@
+.ENDIF
+.ENDIF # "$(DEF2TARGETN)"!=""
+
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(DEF3TARGETN)"!=""
+
+#to make intuitiv naming work
+.IF "$(DEF3LIBNAME)"!=""
+DEFLIB3NAME*=$(DEF3LIBNAME)
+.ENDIF # "$(DEF3LIBNAME)"!=""
+
+.IF "$(DEFLIB3NAME)"!=""
+DEF3DEPN+=$(foreach,i,$(DEFLIB3NAME) $(SLB)/$(i).lib)
+.ENDIF
+
+.IF "$(SHL3VERSIONMAP)"!=""
+.IF "$(DEF3EXPORTFILE)"==""
+.IF "$(GUI)"=="WNT"
+DEF3EXPORTFILE=$(MISC)/$(SHL3VERSIONMAP:b)_$(SHL3TARGET).dxp
+.IF "$(COM)"=="GCC"
+$(DEF3EXPORTFILE) : $(SHL3OBJS) $(SHL3LIBS)
+.ENDIF # .IF "$(COM)"=="GCC"
+
+$(DEF3EXPORTFILE) : $(SHL3VERSIONMAP)
+ $(COMMAND_ECHO)$(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)-$(GREP) -v "\*\|?" $@ | $(SED) -e 's@#.*@@' > $@.exported-symbols
+ $(COMMAND_ECHO)-$(GREP) "\*\|?" $@ > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+ $(COMMAND_ECHO)nm -gP $(SHL3OBJS) \
+ `$(TYPE) /dev/null $(foreach,j,$(SHL3LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` \
+ | $(SOLARENV)/bin/addsym-mingw.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ $(COMMAND_ECHO)$(RENAME) $@.exported-symbols $@
+.ENDIF # .IF "$(COM)"=="GCC"
+
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+DEF3EXPORTFILE=$(MISC)/$(SHL3VERSIONMAP:b)_$(SHL3TARGET).dxp
+$(DEF3EXPORTFILE) : $(SHL3VERSIONMAP)
+ $(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.ENDIF # "$(GUI)"=="OS2"
+
+.ENDIF # "$(DEF3EXPORTFILE)"==""
+.ENDIF # "$(SHL3VERSIONMAP)"!=""
+
+.IF "$(GUI)"=="WNT"
+
+DEF3FILTER=$(SOLARENV)/inc/dummy.flt
+
+RMHACK3:=$(RM)
+
+.IF "$(DEF3CEXP)"!=""
+EXPORT_ALL_SWITCH=-A $(DEF3CEXP)
+.ENDIF
+
+.IF "$(link_always)"==""
+$(DEF3TARGETN) : \
+ $(DEF3DEPN) \
+ $(DEF3EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF3TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(EMQ)"$(SHL3TARGETN:f)$(EMQ)" >$@.tmpfile
+.IF "$(COM)"!="GCC"
+ @echo HEAPSIZE 0 >>$@.tmpfile
+.ENDIF
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.ENDIF
+.IF "$(DEFLIB3NAME)"!=""
+.IF "$(COM)"=="GCC"
+ @-$(RM) $(MISC)/$(SHL3TARGET).exp
+ $(COMMAND_ECHO)dlltool --output-def $(MISC)/$(SHL3TARGET).exp --export-all-symbols \
+ `$(TYPE) $(foreach,i,$(DEFLIB3NAME) $(SLB)/$(i).lib) | sed s#$(ROUT)#$(PRJ)/$(ROUT)#g`
+ $(COMMAND_ECHO)tail --lines +3 $(MISC)/$(SHL3TARGET).exp | sed '/^;/d' >>$@.tmpfile
+ @-$(RM) $(MISC)/$(SHL3TARGET).exp
+.ELSE
+.IF "$(SHL3USE_EXPORTS)"==""
+ @-$(RMHACK3) $(MISC)/$(SHL3TARGET).exp
+ @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)/$(SHL3TARGET).exp $(SLB)/$(DEFLIB3NAME).lib
+ @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)/$(SHL3TARGET).flt $(MISC)/$(SHL3TARGET).exp >>$@.tmpfile
+ $(COMMAND_ECHO)$(RMHACK3) $(MISC)/$(SHL3TARGET).exp
+.ELSE # "$(SHL3USE_EXPORTS)"==""
+ @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB3NAME) $(SLB)/$(i).lib) | $(GREP) EXPORT: > $(MISC)/$(SHL3TARGET).direct
+ @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF3FILTER) $(MISC)/$(SHL3TARGET).direct >>$@.tmpfile
+.ENDIF # "$(SHL3USE_EXPORTS)"==""
+.ENDIF
+.ENDIF # "$(DEFLIB3NAME)"!=""
+.IF "$(DEF3EXPORT1)"!=""
+ @echo $(DEF3EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT2)"!=""
+ @echo $(DEF3EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT3)"!=""
+ @echo $(DEF3EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT4)"!=""
+ @echo $(DEF3EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT5)"!=""
+ @echo $(DEF3EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT6)"!=""
+ @echo $(DEF3EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT7)"!=""
+ @echo $(DEF3EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT8)"!=""
+ @echo $(DEF3EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT9)"!=""
+ @echo $(DEF3EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT10)"!=""
+ @echo $(DEF3EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT11)"!=""
+ @echo $(DEF3EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT12)"!=""
+ @echo $(DEF3EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT13)"!=""
+ @echo $(DEF3EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT14)"!=""
+ @echo $(DEF3EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT15)"!=""
+ @echo $(DEF3EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT16)"!=""
+ @echo $(DEF3EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT17)"!=""
+ @echo $(DEF3EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT18)"!=""
+ @echo $(DEF3EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT19)"!=""
+ @echo $(DEF3EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT20)"!=""
+ @echo $(DEF3EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORTFILE)"!=""
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(TYPE) $(DEF3EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
+.ELSE
+ $(COMMAND_ECHO)$(TYPE) $(DEF3EXPORTFILE) >> $@.tmpfile
+.ENDIF
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL3TARGET8=$(shell @fix_shl $(SHL3TARGETN:f))
+
+DEF3FILTER=$(SOLARENV)/inc/dummy.flt
+DEF3NAMELIST=$(foreach,i,$(DEFLIB3NAME) $(SLB)/$(i).lib)
+
+.IF "$(link_always)"==""
+$(DEF3TARGETN) : \
+ $(DEF3DEPN) \
+ $(DEF3EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF3TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @+-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(SHL3TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
+ @echo DATA MULTIPLE >>$@.tmpfile
+ @echo DESCRIPTION 'StarView 3.00 $(DEF3DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo _GetVersionInfo >$@.tmp_ord
+.ENDIF
+
+.IF "$(DEFLIB3NAME)"!=""
+ @+echo $(SLB)/$(DEFLIB3NAME).lib
+ @+emxexpr $(DEF3NAMELIST) | fix_exp_file >> $@.tmp_ord
+.ENDIF # "$(DEFLIB3NAME)"!=""
+
+.IF "$(DEF3EXPORT1)"!=""
+ @echo $(DEF3EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT2)"!=""
+ @echo $(DEF3EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT3)"!=""
+ @echo $(DEF3EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT4)"!=""
+ @echo $(DEF3EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT5)"!=""
+ @echo $(DEF3EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT6)"!=""
+ @echo $(DEF3EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT7)"!=""
+ @echo $(DEF3EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT8)"!=""
+ @echo $(DEF3EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT9)"!=""
+ @echo $(DEF3EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT10)"!=""
+ @echo $(DEF3EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT11)"!=""
+ @echo $(DEF3EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT12)"!=""
+ @echo $(DEF3EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT13)"!=""
+ @echo $(DEF3EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT14)"!=""
+ @echo $(DEF3EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT15)"!=""
+ @echo $(DEF3EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT16)"!=""
+ @echo $(DEF3EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT17)"!=""
+ @echo $(DEF3EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT18)"!=""
+ @echo $(DEF3EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT19)"!=""
+ @echo $(DEF3EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORT20)"!=""
+ @echo $(DEF3EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF3EXPORTFILE)"!=""
+ @fix_def_file < $(DEF3EXPORTFILE) >> $@.tmp_ord
+.ENDIF
+ @sort < $@.tmp_ord | uniq > $@.exptmpfile
+ @fix_def_ord < $@.exptmpfile >> $@.tmpfile
+ @+-$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $@.tmpfile $@
+ @+-$(RM) $@.tmp_ord
+ @+-$(RM) $@.exptmpfile
+ $(COMMAND_ECHO)+$(IMPLIB) $(IMPLIBFLAGS) $(SHL3IMPLIBN:s/.lib/.a/) $@
+ $(COMMAND_ECHO)+emxomf -o $(SHL3IMPLIBN) $(SHL3IMPLIBN:s/.lib/.a/)
+
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="UNX"
+$(DEF3TARGETN): \
+ $(DEF3DEPN) \
+ $(DEF3EXPORTFILE)
+ @echo just a dummy for UNIX > $@
+.ENDIF
+.ENDIF # "$(DEF3TARGETN)"!=""
+
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(DEF4TARGETN)"!=""
+
+#to make intuitiv naming work
+.IF "$(DEF4LIBNAME)"!=""
+DEFLIB4NAME*=$(DEF4LIBNAME)
+.ENDIF # "$(DEF4LIBNAME)"!=""
+
+.IF "$(DEFLIB4NAME)"!=""
+DEF4DEPN+=$(foreach,i,$(DEFLIB4NAME) $(SLB)/$(i).lib)
+.ENDIF
+
+.IF "$(SHL4VERSIONMAP)"!=""
+.IF "$(DEF4EXPORTFILE)"==""
+.IF "$(GUI)"=="WNT"
+DEF4EXPORTFILE=$(MISC)/$(SHL4VERSIONMAP:b)_$(SHL4TARGET).dxp
+.IF "$(COM)"=="GCC"
+$(DEF4EXPORTFILE) : $(SHL4OBJS) $(SHL4LIBS)
+.ENDIF # .IF "$(COM)"=="GCC"
+
+$(DEF4EXPORTFILE) : $(SHL4VERSIONMAP)
+ $(COMMAND_ECHO)$(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)-$(GREP) -v "\*\|?" $@ | $(SED) -e 's@#.*@@' > $@.exported-symbols
+ $(COMMAND_ECHO)-$(GREP) "\*\|?" $@ > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+ $(COMMAND_ECHO)nm -gP $(SHL4OBJS) \
+ `$(TYPE) /dev/null $(foreach,j,$(SHL4LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` \
+ | $(SOLARENV)/bin/addsym-mingw.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ $(COMMAND_ECHO)$(RENAME) $@.exported-symbols $@
+.ENDIF # .IF "$(COM)"=="GCC"
+
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+DEF4EXPORTFILE=$(MISC)/$(SHL4VERSIONMAP:b)_$(SHL4TARGET).dxp
+$(DEF4EXPORTFILE) : $(SHL4VERSIONMAP)
+ $(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.ENDIF # "$(GUI)"=="OS2"
+
+.ENDIF # "$(DEF4EXPORTFILE)"==""
+.ENDIF # "$(SHL4VERSIONMAP)"!=""
+
+.IF "$(GUI)"=="WNT"
+
+DEF4FILTER=$(SOLARENV)/inc/dummy.flt
+
+RMHACK4:=$(RM)
+
+.IF "$(DEF4CEXP)"!=""
+EXPORT_ALL_SWITCH=-A $(DEF4CEXP)
+.ENDIF
+
+.IF "$(link_always)"==""
+$(DEF4TARGETN) : \
+ $(DEF4DEPN) \
+ $(DEF4EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF4TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(EMQ)"$(SHL4TARGETN:f)$(EMQ)" >$@.tmpfile
+.IF "$(COM)"!="GCC"
+ @echo HEAPSIZE 0 >>$@.tmpfile
+.ENDIF
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.ENDIF
+.IF "$(DEFLIB4NAME)"!=""
+.IF "$(COM)"=="GCC"
+ @-$(RM) $(MISC)/$(SHL4TARGET).exp
+ $(COMMAND_ECHO)dlltool --output-def $(MISC)/$(SHL4TARGET).exp --export-all-symbols \
+ `$(TYPE) $(foreach,i,$(DEFLIB4NAME) $(SLB)/$(i).lib) | sed s#$(ROUT)#$(PRJ)/$(ROUT)#g`
+ $(COMMAND_ECHO)tail --lines +3 $(MISC)/$(SHL4TARGET).exp | sed '/^;/d' >>$@.tmpfile
+ @-$(RM) $(MISC)/$(SHL4TARGET).exp
+.ELSE
+.IF "$(SHL4USE_EXPORTS)"==""
+ @-$(RMHACK4) $(MISC)/$(SHL4TARGET).exp
+ @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)/$(SHL4TARGET).exp $(SLB)/$(DEFLIB4NAME).lib
+ @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)/$(SHL4TARGET).flt $(MISC)/$(SHL4TARGET).exp >>$@.tmpfile
+ $(COMMAND_ECHO)$(RMHACK4) $(MISC)/$(SHL4TARGET).exp
+.ELSE # "$(SHL4USE_EXPORTS)"==""
+ @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB4NAME) $(SLB)/$(i).lib) | $(GREP) EXPORT: > $(MISC)/$(SHL4TARGET).direct
+ @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF4FILTER) $(MISC)/$(SHL4TARGET).direct >>$@.tmpfile
+.ENDIF # "$(SHL4USE_EXPORTS)"==""
+.ENDIF
+.ENDIF # "$(DEFLIB4NAME)"!=""
+.IF "$(DEF4EXPORT1)"!=""
+ @echo $(DEF4EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT2)"!=""
+ @echo $(DEF4EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT3)"!=""
+ @echo $(DEF4EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT4)"!=""
+ @echo $(DEF4EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT5)"!=""
+ @echo $(DEF4EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT6)"!=""
+ @echo $(DEF4EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT7)"!=""
+ @echo $(DEF4EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT8)"!=""
+ @echo $(DEF4EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT9)"!=""
+ @echo $(DEF4EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT10)"!=""
+ @echo $(DEF4EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT11)"!=""
+ @echo $(DEF4EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT12)"!=""
+ @echo $(DEF4EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT13)"!=""
+ @echo $(DEF4EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT14)"!=""
+ @echo $(DEF4EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT15)"!=""
+ @echo $(DEF4EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT16)"!=""
+ @echo $(DEF4EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT17)"!=""
+ @echo $(DEF4EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT18)"!=""
+ @echo $(DEF4EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT19)"!=""
+ @echo $(DEF4EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT20)"!=""
+ @echo $(DEF4EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORTFILE)"!=""
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(TYPE) $(DEF4EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
+.ELSE
+ $(COMMAND_ECHO)$(TYPE) $(DEF4EXPORTFILE) >> $@.tmpfile
+.ENDIF
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL4TARGET8=$(shell @fix_shl $(SHL4TARGETN:f))
+
+DEF4FILTER=$(SOLARENV)/inc/dummy.flt
+DEF4NAMELIST=$(foreach,i,$(DEFLIB4NAME) $(SLB)/$(i).lib)
+
+.IF "$(link_always)"==""
+$(DEF4TARGETN) : \
+ $(DEF4DEPN) \
+ $(DEF4EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF4TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @+-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(SHL4TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
+ @echo DATA MULTIPLE >>$@.tmpfile
+ @echo DESCRIPTION 'StarView 3.00 $(DEF4DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo _GetVersionInfo >$@.tmp_ord
+.ENDIF
+
+.IF "$(DEFLIB4NAME)"!=""
+ @+echo $(SLB)/$(DEFLIB4NAME).lib
+ @+emxexpr $(DEF4NAMELIST) | fix_exp_file >> $@.tmp_ord
+.ENDIF # "$(DEFLIB4NAME)"!=""
+
+.IF "$(DEF4EXPORT1)"!=""
+ @echo $(DEF4EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT2)"!=""
+ @echo $(DEF4EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT3)"!=""
+ @echo $(DEF4EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT4)"!=""
+ @echo $(DEF4EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT5)"!=""
+ @echo $(DEF4EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT6)"!=""
+ @echo $(DEF4EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT7)"!=""
+ @echo $(DEF4EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT8)"!=""
+ @echo $(DEF4EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT9)"!=""
+ @echo $(DEF4EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT10)"!=""
+ @echo $(DEF4EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT11)"!=""
+ @echo $(DEF4EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT12)"!=""
+ @echo $(DEF4EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT13)"!=""
+ @echo $(DEF4EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT14)"!=""
+ @echo $(DEF4EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT15)"!=""
+ @echo $(DEF4EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT16)"!=""
+ @echo $(DEF4EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT17)"!=""
+ @echo $(DEF4EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT18)"!=""
+ @echo $(DEF4EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT19)"!=""
+ @echo $(DEF4EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORT20)"!=""
+ @echo $(DEF4EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF4EXPORTFILE)"!=""
+ @fix_def_file < $(DEF4EXPORTFILE) >> $@.tmp_ord
+.ENDIF
+ @sort < $@.tmp_ord | uniq > $@.exptmpfile
+ @fix_def_ord < $@.exptmpfile >> $@.tmpfile
+ @+-$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $@.tmpfile $@
+ @+-$(RM) $@.tmp_ord
+ @+-$(RM) $@.exptmpfile
+ $(COMMAND_ECHO)+$(IMPLIB) $(IMPLIBFLAGS) $(SHL4IMPLIBN:s/.lib/.a/) $@
+ $(COMMAND_ECHO)+emxomf -o $(SHL4IMPLIBN) $(SHL4IMPLIBN:s/.lib/.a/)
+
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="UNX"
+$(DEF4TARGETN): \
+ $(DEF4DEPN) \
+ $(DEF4EXPORTFILE)
+ @echo just a dummy for UNIX > $@
+.ENDIF
+.ENDIF # "$(DEF4TARGETN)"!=""
+
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(DEF5TARGETN)"!=""
+
+#to make intuitiv naming work
+.IF "$(DEF5LIBNAME)"!=""
+DEFLIB5NAME*=$(DEF5LIBNAME)
+.ENDIF # "$(DEF5LIBNAME)"!=""
+
+.IF "$(DEFLIB5NAME)"!=""
+DEF5DEPN+=$(foreach,i,$(DEFLIB5NAME) $(SLB)/$(i).lib)
+.ENDIF
+
+.IF "$(SHL5VERSIONMAP)"!=""
+.IF "$(DEF5EXPORTFILE)"==""
+.IF "$(GUI)"=="WNT"
+DEF5EXPORTFILE=$(MISC)/$(SHL5VERSIONMAP:b)_$(SHL5TARGET).dxp
+.IF "$(COM)"=="GCC"
+$(DEF5EXPORTFILE) : $(SHL5OBJS) $(SHL5LIBS)
+.ENDIF # .IF "$(COM)"=="GCC"
+
+$(DEF5EXPORTFILE) : $(SHL5VERSIONMAP)
+ $(COMMAND_ECHO)$(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)-$(GREP) -v "\*\|?" $@ | $(SED) -e 's@#.*@@' > $@.exported-symbols
+ $(COMMAND_ECHO)-$(GREP) "\*\|?" $@ > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+ $(COMMAND_ECHO)nm -gP $(SHL5OBJS) \
+ `$(TYPE) /dev/null $(foreach,j,$(SHL5LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` \
+ | $(SOLARENV)/bin/addsym-mingw.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ $(COMMAND_ECHO)$(RENAME) $@.exported-symbols $@
+.ENDIF # .IF "$(COM)"=="GCC"
+
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+DEF5EXPORTFILE=$(MISC)/$(SHL5VERSIONMAP:b)_$(SHL5TARGET).dxp
+$(DEF5EXPORTFILE) : $(SHL5VERSIONMAP)
+ $(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.ENDIF # "$(GUI)"=="OS2"
+
+.ENDIF # "$(DEF5EXPORTFILE)"==""
+.ENDIF # "$(SHL5VERSIONMAP)"!=""
+
+.IF "$(GUI)"=="WNT"
+
+DEF5FILTER=$(SOLARENV)/inc/dummy.flt
+
+RMHACK5:=$(RM)
+
+.IF "$(DEF5CEXP)"!=""
+EXPORT_ALL_SWITCH=-A $(DEF5CEXP)
+.ENDIF
+
+.IF "$(link_always)"==""
+$(DEF5TARGETN) : \
+ $(DEF5DEPN) \
+ $(DEF5EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF5TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(EMQ)"$(SHL5TARGETN:f)$(EMQ)" >$@.tmpfile
+.IF "$(COM)"!="GCC"
+ @echo HEAPSIZE 0 >>$@.tmpfile
+.ENDIF
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.ENDIF
+.IF "$(DEFLIB5NAME)"!=""
+.IF "$(COM)"=="GCC"
+ @-$(RM) $(MISC)/$(SHL5TARGET).exp
+ $(COMMAND_ECHO)dlltool --output-def $(MISC)/$(SHL5TARGET).exp --export-all-symbols \
+ `$(TYPE) $(foreach,i,$(DEFLIB5NAME) $(SLB)/$(i).lib) | sed s#$(ROUT)#$(PRJ)/$(ROUT)#g`
+ $(COMMAND_ECHO)tail --lines +3 $(MISC)/$(SHL5TARGET).exp | sed '/^;/d' >>$@.tmpfile
+ @-$(RM) $(MISC)/$(SHL5TARGET).exp
+.ELSE
+.IF "$(SHL5USE_EXPORTS)"==""
+ @-$(RMHACK5) $(MISC)/$(SHL5TARGET).exp
+ @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)/$(SHL5TARGET).exp $(SLB)/$(DEFLIB5NAME).lib
+ @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)/$(SHL5TARGET).flt $(MISC)/$(SHL5TARGET).exp >>$@.tmpfile
+ $(COMMAND_ECHO)$(RMHACK5) $(MISC)/$(SHL5TARGET).exp
+.ELSE # "$(SHL5USE_EXPORTS)"==""
+ @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB5NAME) $(SLB)/$(i).lib) | $(GREP) EXPORT: > $(MISC)/$(SHL5TARGET).direct
+ @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF5FILTER) $(MISC)/$(SHL5TARGET).direct >>$@.tmpfile
+.ENDIF # "$(SHL5USE_EXPORTS)"==""
+.ENDIF
+.ENDIF # "$(DEFLIB5NAME)"!=""
+.IF "$(DEF5EXPORT1)"!=""
+ @echo $(DEF5EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT2)"!=""
+ @echo $(DEF5EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT3)"!=""
+ @echo $(DEF5EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT4)"!=""
+ @echo $(DEF5EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT5)"!=""
+ @echo $(DEF5EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT6)"!=""
+ @echo $(DEF5EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT7)"!=""
+ @echo $(DEF5EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT8)"!=""
+ @echo $(DEF5EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT9)"!=""
+ @echo $(DEF5EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT10)"!=""
+ @echo $(DEF5EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT11)"!=""
+ @echo $(DEF5EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT12)"!=""
+ @echo $(DEF5EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT13)"!=""
+ @echo $(DEF5EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT14)"!=""
+ @echo $(DEF5EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT15)"!=""
+ @echo $(DEF5EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT16)"!=""
+ @echo $(DEF5EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT17)"!=""
+ @echo $(DEF5EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT18)"!=""
+ @echo $(DEF5EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT19)"!=""
+ @echo $(DEF5EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT20)"!=""
+ @echo $(DEF5EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORTFILE)"!=""
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(TYPE) $(DEF5EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
+.ELSE
+ $(COMMAND_ECHO)$(TYPE) $(DEF5EXPORTFILE) >> $@.tmpfile
+.ENDIF
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL5TARGET8=$(shell @fix_shl $(SHL5TARGETN:f))
+
+DEF5FILTER=$(SOLARENV)/inc/dummy.flt
+DEF5NAMELIST=$(foreach,i,$(DEFLIB5NAME) $(SLB)/$(i).lib)
+
+.IF "$(link_always)"==""
+$(DEF5TARGETN) : \
+ $(DEF5DEPN) \
+ $(DEF5EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF5TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @+-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(SHL5TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
+ @echo DATA MULTIPLE >>$@.tmpfile
+ @echo DESCRIPTION 'StarView 3.00 $(DEF5DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo _GetVersionInfo >$@.tmp_ord
+.ENDIF
+
+.IF "$(DEFLIB5NAME)"!=""
+ @+echo $(SLB)/$(DEFLIB5NAME).lib
+ @+emxexpr $(DEF5NAMELIST) | fix_exp_file >> $@.tmp_ord
+.ENDIF # "$(DEFLIB5NAME)"!=""
+
+.IF "$(DEF5EXPORT1)"!=""
+ @echo $(DEF5EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT2)"!=""
+ @echo $(DEF5EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT3)"!=""
+ @echo $(DEF5EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT4)"!=""
+ @echo $(DEF5EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT5)"!=""
+ @echo $(DEF5EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT6)"!=""
+ @echo $(DEF5EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT7)"!=""
+ @echo $(DEF5EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT8)"!=""
+ @echo $(DEF5EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT9)"!=""
+ @echo $(DEF5EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT10)"!=""
+ @echo $(DEF5EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT11)"!=""
+ @echo $(DEF5EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT12)"!=""
+ @echo $(DEF5EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT13)"!=""
+ @echo $(DEF5EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT14)"!=""
+ @echo $(DEF5EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT15)"!=""
+ @echo $(DEF5EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT16)"!=""
+ @echo $(DEF5EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT17)"!=""
+ @echo $(DEF5EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT18)"!=""
+ @echo $(DEF5EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT19)"!=""
+ @echo $(DEF5EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORT20)"!=""
+ @echo $(DEF5EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF5EXPORTFILE)"!=""
+ @fix_def_file < $(DEF5EXPORTFILE) >> $@.tmp_ord
+.ENDIF
+ @sort < $@.tmp_ord | uniq > $@.exptmpfile
+ @fix_def_ord < $@.exptmpfile >> $@.tmpfile
+ @+-$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $@.tmpfile $@
+ @+-$(RM) $@.tmp_ord
+ @+-$(RM) $@.exptmpfile
+ $(COMMAND_ECHO)+$(IMPLIB) $(IMPLIBFLAGS) $(SHL5IMPLIBN:s/.lib/.a/) $@
+ $(COMMAND_ECHO)+emxomf -o $(SHL5IMPLIBN) $(SHL5IMPLIBN:s/.lib/.a/)
+
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="UNX"
+$(DEF5TARGETN): \
+ $(DEF5DEPN) \
+ $(DEF5EXPORTFILE)
+ @echo just a dummy for UNIX > $@
+.ENDIF
+.ENDIF # "$(DEF5TARGETN)"!=""
+
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(DEF6TARGETN)"!=""
+
+#to make intuitiv naming work
+.IF "$(DEF6LIBNAME)"!=""
+DEFLIB6NAME*=$(DEF6LIBNAME)
+.ENDIF # "$(DEF6LIBNAME)"!=""
+
+.IF "$(DEFLIB6NAME)"!=""
+DEF6DEPN+=$(foreach,i,$(DEFLIB6NAME) $(SLB)/$(i).lib)
+.ENDIF
+
+.IF "$(SHL6VERSIONMAP)"!=""
+.IF "$(DEF6EXPORTFILE)"==""
+.IF "$(GUI)"=="WNT"
+DEF6EXPORTFILE=$(MISC)/$(SHL6VERSIONMAP:b)_$(SHL6TARGET).dxp
+.IF "$(COM)"=="GCC"
+$(DEF6EXPORTFILE) : $(SHL6OBJS) $(SHL6LIBS)
+.ENDIF # .IF "$(COM)"=="GCC"
+
+$(DEF6EXPORTFILE) : $(SHL6VERSIONMAP)
+ $(COMMAND_ECHO)$(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)-$(GREP) -v "\*\|?" $@ | $(SED) -e 's@#.*@@' > $@.exported-symbols
+ $(COMMAND_ECHO)-$(GREP) "\*\|?" $@ > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+ $(COMMAND_ECHO)nm -gP $(SHL6OBJS) \
+ `$(TYPE) /dev/null $(foreach,j,$(SHL6LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` \
+ | $(SOLARENV)/bin/addsym-mingw.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ $(COMMAND_ECHO)$(RENAME) $@.exported-symbols $@
+.ENDIF # .IF "$(COM)"=="GCC"
+
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+DEF6EXPORTFILE=$(MISC)/$(SHL6VERSIONMAP:b)_$(SHL6TARGET).dxp
+$(DEF6EXPORTFILE) : $(SHL6VERSIONMAP)
+ $(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.ENDIF # "$(GUI)"=="OS2"
+
+.ENDIF # "$(DEF6EXPORTFILE)"==""
+.ENDIF # "$(SHL6VERSIONMAP)"!=""
+
+.IF "$(GUI)"=="WNT"
+
+DEF6FILTER=$(SOLARENV)/inc/dummy.flt
+
+RMHACK6:=$(RM)
+
+.IF "$(DEF6CEXP)"!=""
+EXPORT_ALL_SWITCH=-A $(DEF6CEXP)
+.ENDIF
+
+.IF "$(link_always)"==""
+$(DEF6TARGETN) : \
+ $(DEF6DEPN) \
+ $(DEF6EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF6TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(EMQ)"$(SHL6TARGETN:f)$(EMQ)" >$@.tmpfile
+.IF "$(COM)"!="GCC"
+ @echo HEAPSIZE 0 >>$@.tmpfile
+.ENDIF
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.ENDIF
+.IF "$(DEFLIB6NAME)"!=""
+.IF "$(COM)"=="GCC"
+ @-$(RM) $(MISC)/$(SHL6TARGET).exp
+ $(COMMAND_ECHO)dlltool --output-def $(MISC)/$(SHL6TARGET).exp --export-all-symbols \
+ `$(TYPE) $(foreach,i,$(DEFLIB6NAME) $(SLB)/$(i).lib) | sed s#$(ROUT)#$(PRJ)/$(ROUT)#g`
+ $(COMMAND_ECHO)tail --lines +3 $(MISC)/$(SHL6TARGET).exp | sed '/^;/d' >>$@.tmpfile
+ @-$(RM) $(MISC)/$(SHL6TARGET).exp
+.ELSE
+.IF "$(SHL6USE_EXPORTS)"==""
+ @-$(RMHACK6) $(MISC)/$(SHL6TARGET).exp
+ @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)/$(SHL6TARGET).exp $(SLB)/$(DEFLIB6NAME).lib
+ @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)/$(SHL6TARGET).flt $(MISC)/$(SHL6TARGET).exp >>$@.tmpfile
+ $(COMMAND_ECHO)$(RMHACK6) $(MISC)/$(SHL6TARGET).exp
+.ELSE # "$(SHL6USE_EXPORTS)"==""
+ @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB6NAME) $(SLB)/$(i).lib) | $(GREP) EXPORT: > $(MISC)/$(SHL6TARGET).direct
+ @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF6FILTER) $(MISC)/$(SHL6TARGET).direct >>$@.tmpfile
+.ENDIF # "$(SHL6USE_EXPORTS)"==""
+.ENDIF
+.ENDIF # "$(DEFLIB6NAME)"!=""
+.IF "$(DEF6EXPORT1)"!=""
+ @echo $(DEF6EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT2)"!=""
+ @echo $(DEF6EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT3)"!=""
+ @echo $(DEF6EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT4)"!=""
+ @echo $(DEF6EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT5)"!=""
+ @echo $(DEF6EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT6)"!=""
+ @echo $(DEF6EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT7)"!=""
+ @echo $(DEF6EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT8)"!=""
+ @echo $(DEF6EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT9)"!=""
+ @echo $(DEF6EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT10)"!=""
+ @echo $(DEF6EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT11)"!=""
+ @echo $(DEF6EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT12)"!=""
+ @echo $(DEF6EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT13)"!=""
+ @echo $(DEF6EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT14)"!=""
+ @echo $(DEF6EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT15)"!=""
+ @echo $(DEF6EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT16)"!=""
+ @echo $(DEF6EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT17)"!=""
+ @echo $(DEF6EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT18)"!=""
+ @echo $(DEF6EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT19)"!=""
+ @echo $(DEF6EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT20)"!=""
+ @echo $(DEF6EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORTFILE)"!=""
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(TYPE) $(DEF6EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
+.ELSE
+ $(COMMAND_ECHO)$(TYPE) $(DEF6EXPORTFILE) >> $@.tmpfile
+.ENDIF
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL6TARGET8=$(shell @fix_shl $(SHL6TARGETN:f))
+
+DEF6FILTER=$(SOLARENV)/inc/dummy.flt
+DEF6NAMELIST=$(foreach,i,$(DEFLIB6NAME) $(SLB)/$(i).lib)
+
+.IF "$(link_always)"==""
+$(DEF6TARGETN) : \
+ $(DEF6DEPN) \
+ $(DEF6EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF6TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @+-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(SHL6TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
+ @echo DATA MULTIPLE >>$@.tmpfile
+ @echo DESCRIPTION 'StarView 3.00 $(DEF6DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo _GetVersionInfo >$@.tmp_ord
+.ENDIF
+
+.IF "$(DEFLIB6NAME)"!=""
+ @+echo $(SLB)/$(DEFLIB6NAME).lib
+ @+emxexpr $(DEF6NAMELIST) | fix_exp_file >> $@.tmp_ord
+.ENDIF # "$(DEFLIB6NAME)"!=""
+
+.IF "$(DEF6EXPORT1)"!=""
+ @echo $(DEF6EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT2)"!=""
+ @echo $(DEF6EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT3)"!=""
+ @echo $(DEF6EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT4)"!=""
+ @echo $(DEF6EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT5)"!=""
+ @echo $(DEF6EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT6)"!=""
+ @echo $(DEF6EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT7)"!=""
+ @echo $(DEF6EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT8)"!=""
+ @echo $(DEF6EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT9)"!=""
+ @echo $(DEF6EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT10)"!=""
+ @echo $(DEF6EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT11)"!=""
+ @echo $(DEF6EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT12)"!=""
+ @echo $(DEF6EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT13)"!=""
+ @echo $(DEF6EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT14)"!=""
+ @echo $(DEF6EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT15)"!=""
+ @echo $(DEF6EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT16)"!=""
+ @echo $(DEF6EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT17)"!=""
+ @echo $(DEF6EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT18)"!=""
+ @echo $(DEF6EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT19)"!=""
+ @echo $(DEF6EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORT20)"!=""
+ @echo $(DEF6EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF6EXPORTFILE)"!=""
+ @fix_def_file < $(DEF6EXPORTFILE) >> $@.tmp_ord
+.ENDIF
+ @sort < $@.tmp_ord | uniq > $@.exptmpfile
+ @fix_def_ord < $@.exptmpfile >> $@.tmpfile
+ @+-$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $@.tmpfile $@
+ @+-$(RM) $@.tmp_ord
+ @+-$(RM) $@.exptmpfile
+ $(COMMAND_ECHO)+$(IMPLIB) $(IMPLIBFLAGS) $(SHL6IMPLIBN:s/.lib/.a/) $@
+ $(COMMAND_ECHO)+emxomf -o $(SHL6IMPLIBN) $(SHL6IMPLIBN:s/.lib/.a/)
+
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="UNX"
+$(DEF6TARGETN): \
+ $(DEF6DEPN) \
+ $(DEF6EXPORTFILE)
+ @echo just a dummy for UNIX > $@
+.ENDIF
+.ENDIF # "$(DEF6TARGETN)"!=""
+
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(DEF7TARGETN)"!=""
+
+#to make intuitiv naming work
+.IF "$(DEF7LIBNAME)"!=""
+DEFLIB7NAME*=$(DEF7LIBNAME)
+.ENDIF # "$(DEF7LIBNAME)"!=""
+
+.IF "$(DEFLIB7NAME)"!=""
+DEF7DEPN+=$(foreach,i,$(DEFLIB7NAME) $(SLB)/$(i).lib)
+.ENDIF
+
+.IF "$(SHL7VERSIONMAP)"!=""
+.IF "$(DEF7EXPORTFILE)"==""
+.IF "$(GUI)"=="WNT"
+DEF7EXPORTFILE=$(MISC)/$(SHL7VERSIONMAP:b)_$(SHL7TARGET).dxp
+.IF "$(COM)"=="GCC"
+$(DEF7EXPORTFILE) : $(SHL7OBJS) $(SHL7LIBS)
+.ENDIF # .IF "$(COM)"=="GCC"
+
+$(DEF7EXPORTFILE) : $(SHL7VERSIONMAP)
+ $(COMMAND_ECHO)$(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)-$(GREP) -v "\*\|?" $@ | $(SED) -e 's@#.*@@' > $@.exported-symbols
+ $(COMMAND_ECHO)-$(GREP) "\*\|?" $@ > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+ $(COMMAND_ECHO)nm -gP $(SHL7OBJS) \
+ `$(TYPE) /dev/null $(foreach,j,$(SHL7LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` \
+ | $(SOLARENV)/bin/addsym-mingw.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ $(COMMAND_ECHO)$(RENAME) $@.exported-symbols $@
+.ENDIF # .IF "$(COM)"=="GCC"
+
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+DEF7EXPORTFILE=$(MISC)/$(SHL7VERSIONMAP:b)_$(SHL7TARGET).dxp
+$(DEF7EXPORTFILE) : $(SHL7VERSIONMAP)
+ $(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.ENDIF # "$(GUI)"=="OS2"
+
+.ENDIF # "$(DEF7EXPORTFILE)"==""
+.ENDIF # "$(SHL7VERSIONMAP)"!=""
+
+.IF "$(GUI)"=="WNT"
+
+DEF7FILTER=$(SOLARENV)/inc/dummy.flt
+
+RMHACK7:=$(RM)
+
+.IF "$(DEF7CEXP)"!=""
+EXPORT_ALL_SWITCH=-A $(DEF7CEXP)
+.ENDIF
+
+.IF "$(link_always)"==""
+$(DEF7TARGETN) : \
+ $(DEF7DEPN) \
+ $(DEF7EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF7TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(EMQ)"$(SHL7TARGETN:f)$(EMQ)" >$@.tmpfile
+.IF "$(COM)"!="GCC"
+ @echo HEAPSIZE 0 >>$@.tmpfile
+.ENDIF
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.ENDIF
+.IF "$(DEFLIB7NAME)"!=""
+.IF "$(COM)"=="GCC"
+ @-$(RM) $(MISC)/$(SHL7TARGET).exp
+ $(COMMAND_ECHO)dlltool --output-def $(MISC)/$(SHL7TARGET).exp --export-all-symbols \
+ `$(TYPE) $(foreach,i,$(DEFLIB7NAME) $(SLB)/$(i).lib) | sed s#$(ROUT)#$(PRJ)/$(ROUT)#g`
+ $(COMMAND_ECHO)tail --lines +3 $(MISC)/$(SHL7TARGET).exp | sed '/^;/d' >>$@.tmpfile
+ @-$(RM) $(MISC)/$(SHL7TARGET).exp
+.ELSE
+.IF "$(SHL7USE_EXPORTS)"==""
+ @-$(RMHACK7) $(MISC)/$(SHL7TARGET).exp
+ @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)/$(SHL7TARGET).exp $(SLB)/$(DEFLIB7NAME).lib
+ @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)/$(SHL7TARGET).flt $(MISC)/$(SHL7TARGET).exp >>$@.tmpfile
+ $(COMMAND_ECHO)$(RMHACK7) $(MISC)/$(SHL7TARGET).exp
+.ELSE # "$(SHL7USE_EXPORTS)"==""
+ @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB7NAME) $(SLB)/$(i).lib) | $(GREP) EXPORT: > $(MISC)/$(SHL7TARGET).direct
+ @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF7FILTER) $(MISC)/$(SHL7TARGET).direct >>$@.tmpfile
+.ENDIF # "$(SHL7USE_EXPORTS)"==""
+.ENDIF
+.ENDIF # "$(DEFLIB7NAME)"!=""
+.IF "$(DEF7EXPORT1)"!=""
+ @echo $(DEF7EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT2)"!=""
+ @echo $(DEF7EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT3)"!=""
+ @echo $(DEF7EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT4)"!=""
+ @echo $(DEF7EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT5)"!=""
+ @echo $(DEF7EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT6)"!=""
+ @echo $(DEF7EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT7)"!=""
+ @echo $(DEF7EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT8)"!=""
+ @echo $(DEF7EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT9)"!=""
+ @echo $(DEF7EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT10)"!=""
+ @echo $(DEF7EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT11)"!=""
+ @echo $(DEF7EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT12)"!=""
+ @echo $(DEF7EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT13)"!=""
+ @echo $(DEF7EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT14)"!=""
+ @echo $(DEF7EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT15)"!=""
+ @echo $(DEF7EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT16)"!=""
+ @echo $(DEF7EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT17)"!=""
+ @echo $(DEF7EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT18)"!=""
+ @echo $(DEF7EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT19)"!=""
+ @echo $(DEF7EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT20)"!=""
+ @echo $(DEF7EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORTFILE)"!=""
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(TYPE) $(DEF7EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
+.ELSE
+ $(COMMAND_ECHO)$(TYPE) $(DEF7EXPORTFILE) >> $@.tmpfile
+.ENDIF
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL7TARGET8=$(shell @fix_shl $(SHL7TARGETN:f))
+
+DEF7FILTER=$(SOLARENV)/inc/dummy.flt
+DEF7NAMELIST=$(foreach,i,$(DEFLIB7NAME) $(SLB)/$(i).lib)
+
+.IF "$(link_always)"==""
+$(DEF7TARGETN) : \
+ $(DEF7DEPN) \
+ $(DEF7EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF7TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @+-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(SHL7TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
+ @echo DATA MULTIPLE >>$@.tmpfile
+ @echo DESCRIPTION 'StarView 3.00 $(DEF7DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo _GetVersionInfo >$@.tmp_ord
+.ENDIF
+
+.IF "$(DEFLIB7NAME)"!=""
+ @+echo $(SLB)/$(DEFLIB7NAME).lib
+ @+emxexpr $(DEF7NAMELIST) | fix_exp_file >> $@.tmp_ord
+.ENDIF # "$(DEFLIB7NAME)"!=""
+
+.IF "$(DEF7EXPORT1)"!=""
+ @echo $(DEF7EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT2)"!=""
+ @echo $(DEF7EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT3)"!=""
+ @echo $(DEF7EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT4)"!=""
+ @echo $(DEF7EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT5)"!=""
+ @echo $(DEF7EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT6)"!=""
+ @echo $(DEF7EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT7)"!=""
+ @echo $(DEF7EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT8)"!=""
+ @echo $(DEF7EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT9)"!=""
+ @echo $(DEF7EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT10)"!=""
+ @echo $(DEF7EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT11)"!=""
+ @echo $(DEF7EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT12)"!=""
+ @echo $(DEF7EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT13)"!=""
+ @echo $(DEF7EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT14)"!=""
+ @echo $(DEF7EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT15)"!=""
+ @echo $(DEF7EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT16)"!=""
+ @echo $(DEF7EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT17)"!=""
+ @echo $(DEF7EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT18)"!=""
+ @echo $(DEF7EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT19)"!=""
+ @echo $(DEF7EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORT20)"!=""
+ @echo $(DEF7EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF7EXPORTFILE)"!=""
+ @fix_def_file < $(DEF7EXPORTFILE) >> $@.tmp_ord
+.ENDIF
+ @sort < $@.tmp_ord | uniq > $@.exptmpfile
+ @fix_def_ord < $@.exptmpfile >> $@.tmpfile
+ @+-$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $@.tmpfile $@
+ @+-$(RM) $@.tmp_ord
+ @+-$(RM) $@.exptmpfile
+ $(COMMAND_ECHO)+$(IMPLIB) $(IMPLIBFLAGS) $(SHL7IMPLIBN:s/.lib/.a/) $@
+ $(COMMAND_ECHO)+emxomf -o $(SHL7IMPLIBN) $(SHL7IMPLIBN:s/.lib/.a/)
+
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="UNX"
+$(DEF7TARGETN): \
+ $(DEF7DEPN) \
+ $(DEF7EXPORTFILE)
+ @echo just a dummy for UNIX > $@
+.ENDIF
+.ENDIF # "$(DEF7TARGETN)"!=""
+
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(DEF8TARGETN)"!=""
+
+#to make intuitiv naming work
+.IF "$(DEF8LIBNAME)"!=""
+DEFLIB8NAME*=$(DEF8LIBNAME)
+.ENDIF # "$(DEF8LIBNAME)"!=""
+
+.IF "$(DEFLIB8NAME)"!=""
+DEF8DEPN+=$(foreach,i,$(DEFLIB8NAME) $(SLB)/$(i).lib)
+.ENDIF
+
+.IF "$(SHL8VERSIONMAP)"!=""
+.IF "$(DEF8EXPORTFILE)"==""
+.IF "$(GUI)"=="WNT"
+DEF8EXPORTFILE=$(MISC)/$(SHL8VERSIONMAP:b)_$(SHL8TARGET).dxp
+.IF "$(COM)"=="GCC"
+$(DEF8EXPORTFILE) : $(SHL8OBJS) $(SHL8LIBS)
+.ENDIF # .IF "$(COM)"=="GCC"
+
+$(DEF8EXPORTFILE) : $(SHL8VERSIONMAP)
+ $(COMMAND_ECHO)$(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)-$(GREP) -v "\*\|?" $@ | $(SED) -e 's@#.*@@' > $@.exported-symbols
+ $(COMMAND_ECHO)-$(GREP) "\*\|?" $@ > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+ $(COMMAND_ECHO)nm -gP $(SHL8OBJS) \
+ `$(TYPE) /dev/null $(foreach,j,$(SHL8LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` \
+ | $(SOLARENV)/bin/addsym-mingw.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ $(COMMAND_ECHO)$(RENAME) $@.exported-symbols $@
+.ENDIF # .IF "$(COM)"=="GCC"
+
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+DEF8EXPORTFILE=$(MISC)/$(SHL8VERSIONMAP:b)_$(SHL8TARGET).dxp
+$(DEF8EXPORTFILE) : $(SHL8VERSIONMAP)
+ $(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.ENDIF # "$(GUI)"=="OS2"
+
+.ENDIF # "$(DEF8EXPORTFILE)"==""
+.ENDIF # "$(SHL8VERSIONMAP)"!=""
+
+.IF "$(GUI)"=="WNT"
+
+DEF8FILTER=$(SOLARENV)/inc/dummy.flt
+
+RMHACK8:=$(RM)
+
+.IF "$(DEF8CEXP)"!=""
+EXPORT_ALL_SWITCH=-A $(DEF8CEXP)
+.ENDIF
+
+.IF "$(link_always)"==""
+$(DEF8TARGETN) : \
+ $(DEF8DEPN) \
+ $(DEF8EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF8TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(EMQ)"$(SHL8TARGETN:f)$(EMQ)" >$@.tmpfile
+.IF "$(COM)"!="GCC"
+ @echo HEAPSIZE 0 >>$@.tmpfile
+.ENDIF
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.ENDIF
+.IF "$(DEFLIB8NAME)"!=""
+.IF "$(COM)"=="GCC"
+ @-$(RM) $(MISC)/$(SHL8TARGET).exp
+ $(COMMAND_ECHO)dlltool --output-def $(MISC)/$(SHL8TARGET).exp --export-all-symbols \
+ `$(TYPE) $(foreach,i,$(DEFLIB8NAME) $(SLB)/$(i).lib) | sed s#$(ROUT)#$(PRJ)/$(ROUT)#g`
+ $(COMMAND_ECHO)tail --lines +3 $(MISC)/$(SHL8TARGET).exp | sed '/^;/d' >>$@.tmpfile
+ @-$(RM) $(MISC)/$(SHL8TARGET).exp
+.ELSE
+.IF "$(SHL8USE_EXPORTS)"==""
+ @-$(RMHACK8) $(MISC)/$(SHL8TARGET).exp
+ @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)/$(SHL8TARGET).exp $(SLB)/$(DEFLIB8NAME).lib
+ @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)/$(SHL8TARGET).flt $(MISC)/$(SHL8TARGET).exp >>$@.tmpfile
+ $(COMMAND_ECHO)$(RMHACK8) $(MISC)/$(SHL8TARGET).exp
+.ELSE # "$(SHL8USE_EXPORTS)"==""
+ @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB8NAME) $(SLB)/$(i).lib) | $(GREP) EXPORT: > $(MISC)/$(SHL8TARGET).direct
+ @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF8FILTER) $(MISC)/$(SHL8TARGET).direct >>$@.tmpfile
+.ENDIF # "$(SHL8USE_EXPORTS)"==""
+.ENDIF
+.ENDIF # "$(DEFLIB8NAME)"!=""
+.IF "$(DEF8EXPORT1)"!=""
+ @echo $(DEF8EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT2)"!=""
+ @echo $(DEF8EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT3)"!=""
+ @echo $(DEF8EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT4)"!=""
+ @echo $(DEF8EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT5)"!=""
+ @echo $(DEF8EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT6)"!=""
+ @echo $(DEF8EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT7)"!=""
+ @echo $(DEF8EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT8)"!=""
+ @echo $(DEF8EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT9)"!=""
+ @echo $(DEF8EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT10)"!=""
+ @echo $(DEF8EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT11)"!=""
+ @echo $(DEF8EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT12)"!=""
+ @echo $(DEF8EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT13)"!=""
+ @echo $(DEF8EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT14)"!=""
+ @echo $(DEF8EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT15)"!=""
+ @echo $(DEF8EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT16)"!=""
+ @echo $(DEF8EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT17)"!=""
+ @echo $(DEF8EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT18)"!=""
+ @echo $(DEF8EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT19)"!=""
+ @echo $(DEF8EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT20)"!=""
+ @echo $(DEF8EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORTFILE)"!=""
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(TYPE) $(DEF8EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
+.ELSE
+ $(COMMAND_ECHO)$(TYPE) $(DEF8EXPORTFILE) >> $@.tmpfile
+.ENDIF
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL8TARGET8=$(shell @fix_shl $(SHL8TARGETN:f))
+
+DEF8FILTER=$(SOLARENV)/inc/dummy.flt
+DEF8NAMELIST=$(foreach,i,$(DEFLIB8NAME) $(SLB)/$(i).lib)
+
+.IF "$(link_always)"==""
+$(DEF8TARGETN) : \
+ $(DEF8DEPN) \
+ $(DEF8EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF8TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @+-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(SHL8TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
+ @echo DATA MULTIPLE >>$@.tmpfile
+ @echo DESCRIPTION 'StarView 3.00 $(DEF8DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo _GetVersionInfo >$@.tmp_ord
+.ENDIF
+
+.IF "$(DEFLIB8NAME)"!=""
+ @+echo $(SLB)/$(DEFLIB8NAME).lib
+ @+emxexpr $(DEF8NAMELIST) | fix_exp_file >> $@.tmp_ord
+.ENDIF # "$(DEFLIB8NAME)"!=""
+
+.IF "$(DEF8EXPORT1)"!=""
+ @echo $(DEF8EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT2)"!=""
+ @echo $(DEF8EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT3)"!=""
+ @echo $(DEF8EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT4)"!=""
+ @echo $(DEF8EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT5)"!=""
+ @echo $(DEF8EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT6)"!=""
+ @echo $(DEF8EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT7)"!=""
+ @echo $(DEF8EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT8)"!=""
+ @echo $(DEF8EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT9)"!=""
+ @echo $(DEF8EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT10)"!=""
+ @echo $(DEF8EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT11)"!=""
+ @echo $(DEF8EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT12)"!=""
+ @echo $(DEF8EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT13)"!=""
+ @echo $(DEF8EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT14)"!=""
+ @echo $(DEF8EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT15)"!=""
+ @echo $(DEF8EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT16)"!=""
+ @echo $(DEF8EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT17)"!=""
+ @echo $(DEF8EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT18)"!=""
+ @echo $(DEF8EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT19)"!=""
+ @echo $(DEF8EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORT20)"!=""
+ @echo $(DEF8EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF8EXPORTFILE)"!=""
+ @fix_def_file < $(DEF8EXPORTFILE) >> $@.tmp_ord
+.ENDIF
+ @sort < $@.tmp_ord | uniq > $@.exptmpfile
+ @fix_def_ord < $@.exptmpfile >> $@.tmpfile
+ @+-$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $@.tmpfile $@
+ @+-$(RM) $@.tmp_ord
+ @+-$(RM) $@.exptmpfile
+ $(COMMAND_ECHO)+$(IMPLIB) $(IMPLIBFLAGS) $(SHL8IMPLIBN:s/.lib/.a/) $@
+ $(COMMAND_ECHO)+emxomf -o $(SHL8IMPLIBN) $(SHL8IMPLIBN:s/.lib/.a/)
+
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="UNX"
+$(DEF8TARGETN): \
+ $(DEF8DEPN) \
+ $(DEF8EXPORTFILE)
+ @echo just a dummy for UNIX > $@
+.ENDIF
+.ENDIF # "$(DEF8TARGETN)"!=""
+
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(DEF9TARGETN)"!=""
+
+#to make intuitiv naming work
+.IF "$(DEF9LIBNAME)"!=""
+DEFLIB9NAME*=$(DEF9LIBNAME)
+.ENDIF # "$(DEF9LIBNAME)"!=""
+
+.IF "$(DEFLIB9NAME)"!=""
+DEF9DEPN+=$(foreach,i,$(DEFLIB9NAME) $(SLB)/$(i).lib)
+.ENDIF
+
+.IF "$(SHL9VERSIONMAP)"!=""
+.IF "$(DEF9EXPORTFILE)"==""
+.IF "$(GUI)"=="WNT"
+DEF9EXPORTFILE=$(MISC)/$(SHL9VERSIONMAP:b)_$(SHL9TARGET).dxp
+.IF "$(COM)"=="GCC"
+$(DEF9EXPORTFILE) : $(SHL9OBJS) $(SHL9LIBS)
+.ENDIF # .IF "$(COM)"=="GCC"
+
+$(DEF9EXPORTFILE) : $(SHL9VERSIONMAP)
+ $(COMMAND_ECHO)$(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)-$(GREP) -v "\*\|?" $@ | $(SED) -e 's@#.*@@' > $@.exported-symbols
+ $(COMMAND_ECHO)-$(GREP) "\*\|?" $@ > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+ $(COMMAND_ECHO)nm -gP $(SHL9OBJS) \
+ `$(TYPE) /dev/null $(foreach,j,$(SHL9LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` \
+ | $(SOLARENV)/bin/addsym-mingw.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ $(COMMAND_ECHO)$(RENAME) $@.exported-symbols $@
+.ENDIF # .IF "$(COM)"=="GCC"
+
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+DEF9EXPORTFILE=$(MISC)/$(SHL9VERSIONMAP:b)_$(SHL9TARGET).dxp
+$(DEF9EXPORTFILE) : $(SHL9VERSIONMAP)
+ $(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.ENDIF # "$(GUI)"=="OS2"
+
+.ENDIF # "$(DEF9EXPORTFILE)"==""
+.ENDIF # "$(SHL9VERSIONMAP)"!=""
+
+.IF "$(GUI)"=="WNT"
+
+DEF9FILTER=$(SOLARENV)/inc/dummy.flt
+
+RMHACK9:=$(RM)
+
+.IF "$(DEF9CEXP)"!=""
+EXPORT_ALL_SWITCH=-A $(DEF9CEXP)
+.ENDIF
+
+.IF "$(link_always)"==""
+$(DEF9TARGETN) : \
+ $(DEF9DEPN) \
+ $(DEF9EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF9TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(EMQ)"$(SHL9TARGETN:f)$(EMQ)" >$@.tmpfile
+.IF "$(COM)"!="GCC"
+ @echo HEAPSIZE 0 >>$@.tmpfile
+.ENDIF
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.ENDIF
+.IF "$(DEFLIB9NAME)"!=""
+.IF "$(COM)"=="GCC"
+ @-$(RM) $(MISC)/$(SHL9TARGET).exp
+ $(COMMAND_ECHO)dlltool --output-def $(MISC)/$(SHL9TARGET).exp --export-all-symbols \
+ `$(TYPE) $(foreach,i,$(DEFLIB9NAME) $(SLB)/$(i).lib) | sed s#$(ROUT)#$(PRJ)/$(ROUT)#g`
+ $(COMMAND_ECHO)tail --lines +3 $(MISC)/$(SHL9TARGET).exp | sed '/^;/d' >>$@.tmpfile
+ @-$(RM) $(MISC)/$(SHL9TARGET).exp
+.ELSE
+.IF "$(SHL9USE_EXPORTS)"==""
+ @-$(RMHACK9) $(MISC)/$(SHL9TARGET).exp
+ @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)/$(SHL9TARGET).exp $(SLB)/$(DEFLIB9NAME).lib
+ @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)/$(SHL9TARGET).flt $(MISC)/$(SHL9TARGET).exp >>$@.tmpfile
+ $(COMMAND_ECHO)$(RMHACK9) $(MISC)/$(SHL9TARGET).exp
+.ELSE # "$(SHL9USE_EXPORTS)"==""
+ @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB9NAME) $(SLB)/$(i).lib) | $(GREP) EXPORT: > $(MISC)/$(SHL9TARGET).direct
+ @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF9FILTER) $(MISC)/$(SHL9TARGET).direct >>$@.tmpfile
+.ENDIF # "$(SHL9USE_EXPORTS)"==""
+.ENDIF
+.ENDIF # "$(DEFLIB9NAME)"!=""
+.IF "$(DEF9EXPORT1)"!=""
+ @echo $(DEF9EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT2)"!=""
+ @echo $(DEF9EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT3)"!=""
+ @echo $(DEF9EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT4)"!=""
+ @echo $(DEF9EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT5)"!=""
+ @echo $(DEF9EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT6)"!=""
+ @echo $(DEF9EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT7)"!=""
+ @echo $(DEF9EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT8)"!=""
+ @echo $(DEF9EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT9)"!=""
+ @echo $(DEF9EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT10)"!=""
+ @echo $(DEF9EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT11)"!=""
+ @echo $(DEF9EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT12)"!=""
+ @echo $(DEF9EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT13)"!=""
+ @echo $(DEF9EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT14)"!=""
+ @echo $(DEF9EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT15)"!=""
+ @echo $(DEF9EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT16)"!=""
+ @echo $(DEF9EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT17)"!=""
+ @echo $(DEF9EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT18)"!=""
+ @echo $(DEF9EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT19)"!=""
+ @echo $(DEF9EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT20)"!=""
+ @echo $(DEF9EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORTFILE)"!=""
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(TYPE) $(DEF9EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
+.ELSE
+ $(COMMAND_ECHO)$(TYPE) $(DEF9EXPORTFILE) >> $@.tmpfile
+.ENDIF
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL9TARGET8=$(shell @fix_shl $(SHL9TARGETN:f))
+
+DEF9FILTER=$(SOLARENV)/inc/dummy.flt
+DEF9NAMELIST=$(foreach,i,$(DEFLIB9NAME) $(SLB)/$(i).lib)
+
+.IF "$(link_always)"==""
+$(DEF9TARGETN) : \
+ $(DEF9DEPN) \
+ $(DEF9EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF9TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @+-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(SHL9TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
+ @echo DATA MULTIPLE >>$@.tmpfile
+ @echo DESCRIPTION 'StarView 3.00 $(DEF9DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo _GetVersionInfo >$@.tmp_ord
+.ENDIF
+
+.IF "$(DEFLIB9NAME)"!=""
+ @+echo $(SLB)/$(DEFLIB9NAME).lib
+ @+emxexpr $(DEF9NAMELIST) | fix_exp_file >> $@.tmp_ord
+.ENDIF # "$(DEFLIB9NAME)"!=""
+
+.IF "$(DEF9EXPORT1)"!=""
+ @echo $(DEF9EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT2)"!=""
+ @echo $(DEF9EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT3)"!=""
+ @echo $(DEF9EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT4)"!=""
+ @echo $(DEF9EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT5)"!=""
+ @echo $(DEF9EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT6)"!=""
+ @echo $(DEF9EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT7)"!=""
+ @echo $(DEF9EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT8)"!=""
+ @echo $(DEF9EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT9)"!=""
+ @echo $(DEF9EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT10)"!=""
+ @echo $(DEF9EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT11)"!=""
+ @echo $(DEF9EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT12)"!=""
+ @echo $(DEF9EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT13)"!=""
+ @echo $(DEF9EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT14)"!=""
+ @echo $(DEF9EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT15)"!=""
+ @echo $(DEF9EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT16)"!=""
+ @echo $(DEF9EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT17)"!=""
+ @echo $(DEF9EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT18)"!=""
+ @echo $(DEF9EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT19)"!=""
+ @echo $(DEF9EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORT20)"!=""
+ @echo $(DEF9EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF9EXPORTFILE)"!=""
+ @fix_def_file < $(DEF9EXPORTFILE) >> $@.tmp_ord
+.ENDIF
+ @sort < $@.tmp_ord | uniq > $@.exptmpfile
+ @fix_def_ord < $@.exptmpfile >> $@.tmpfile
+ @+-$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $@.tmpfile $@
+ @+-$(RM) $@.tmp_ord
+ @+-$(RM) $@.exptmpfile
+ $(COMMAND_ECHO)+$(IMPLIB) $(IMPLIBFLAGS) $(SHL9IMPLIBN:s/.lib/.a/) $@
+ $(COMMAND_ECHO)+emxomf -o $(SHL9IMPLIBN) $(SHL9IMPLIBN:s/.lib/.a/)
+
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="UNX"
+$(DEF9TARGETN): \
+ $(DEF9DEPN) \
+ $(DEF9EXPORTFILE)
+ @echo just a dummy for UNIX > $@
+.ENDIF
+.ENDIF # "$(DEF9TARGETN)"!=""
+
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(DEF10TARGETN)"!=""
+
+#to make intuitiv naming work
+.IF "$(DEF10LIBNAME)"!=""
+DEFLIB10NAME*=$(DEF10LIBNAME)
+.ENDIF # "$(DEF10LIBNAME)"!=""
+
+.IF "$(DEFLIB10NAME)"!=""
+DEF10DEPN+=$(foreach,i,$(DEFLIB10NAME) $(SLB)/$(i).lib)
+.ENDIF
+
+.IF "$(SHL10VERSIONMAP)"!=""
+.IF "$(DEF10EXPORTFILE)"==""
+.IF "$(GUI)"=="WNT"
+DEF10EXPORTFILE=$(MISC)/$(SHL10VERSIONMAP:b)_$(SHL10TARGET).dxp
+.IF "$(COM)"=="GCC"
+$(DEF10EXPORTFILE) : $(SHL10OBJS) $(SHL10LIBS)
+.ENDIF # .IF "$(COM)"=="GCC"
+
+$(DEF10EXPORTFILE) : $(SHL10VERSIONMAP)
+ $(COMMAND_ECHO)$(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)-$(GREP) -v "\*\|?" $@ | $(SED) -e 's@#.*@@' > $@.exported-symbols
+ $(COMMAND_ECHO)-$(GREP) "\*\|?" $@ > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+ $(COMMAND_ECHO)nm -gP $(SHL10OBJS) \
+ `$(TYPE) /dev/null $(foreach,j,$(SHL10LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` \
+ | $(SOLARENV)/bin/addsym-mingw.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ $(COMMAND_ECHO)$(RENAME) $@.exported-symbols $@
+.ENDIF # .IF "$(COM)"=="GCC"
+
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+DEF10EXPORTFILE=$(MISC)/$(SHL10VERSIONMAP:b)_$(SHL10TARGET).dxp
+$(DEF10EXPORTFILE) : $(SHL10VERSIONMAP)
+ $(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.ENDIF # "$(GUI)"=="OS2"
+
+.ENDIF # "$(DEF10EXPORTFILE)"==""
+.ENDIF # "$(SHL10VERSIONMAP)"!=""
+
+.IF "$(GUI)"=="WNT"
+
+DEF10FILTER=$(SOLARENV)/inc/dummy.flt
+
+RMHACK10:=$(RM)
+
+.IF "$(DEF10CEXP)"!=""
+EXPORT_ALL_SWITCH=-A $(DEF10CEXP)
+.ENDIF
+
+.IF "$(link_always)"==""
+$(DEF10TARGETN) : \
+ $(DEF10DEPN) \
+ $(DEF10EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF10TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(EMQ)"$(SHL10TARGETN:f)$(EMQ)" >$@.tmpfile
+.IF "$(COM)"!="GCC"
+ @echo HEAPSIZE 0 >>$@.tmpfile
+.ENDIF
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.ENDIF
+.IF "$(DEFLIB10NAME)"!=""
+.IF "$(COM)"=="GCC"
+ @-$(RM) $(MISC)/$(SHL10TARGET).exp
+ $(COMMAND_ECHO)dlltool --output-def $(MISC)/$(SHL10TARGET).exp --export-all-symbols \
+ `$(TYPE) $(foreach,i,$(DEFLIB10NAME) $(SLB)/$(i).lib) | sed s#$(ROUT)#$(PRJ)/$(ROUT)#g`
+ $(COMMAND_ECHO)tail --lines +3 $(MISC)/$(SHL10TARGET).exp | sed '/^;/d' >>$@.tmpfile
+ @-$(RM) $(MISC)/$(SHL10TARGET).exp
+.ELSE
+.IF "$(SHL10USE_EXPORTS)"==""
+ @-$(RMHACK10) $(MISC)/$(SHL10TARGET).exp
+ @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)/$(SHL10TARGET).exp $(SLB)/$(DEFLIB10NAME).lib
+ @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)/$(SHL10TARGET).flt $(MISC)/$(SHL10TARGET).exp >>$@.tmpfile
+ $(COMMAND_ECHO)$(RMHACK10) $(MISC)/$(SHL10TARGET).exp
+.ELSE # "$(SHL10USE_EXPORTS)"==""
+ @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB10NAME) $(SLB)/$(i).lib) | $(GREP) EXPORT: > $(MISC)/$(SHL10TARGET).direct
+ @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF10FILTER) $(MISC)/$(SHL10TARGET).direct >>$@.tmpfile
+.ENDIF # "$(SHL10USE_EXPORTS)"==""
+.ENDIF
+.ENDIF # "$(DEFLIB10NAME)"!=""
+.IF "$(DEF10EXPORT1)"!=""
+ @echo $(DEF10EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT2)"!=""
+ @echo $(DEF10EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT3)"!=""
+ @echo $(DEF10EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT4)"!=""
+ @echo $(DEF10EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT5)"!=""
+ @echo $(DEF10EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT6)"!=""
+ @echo $(DEF10EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT7)"!=""
+ @echo $(DEF10EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT8)"!=""
+ @echo $(DEF10EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT9)"!=""
+ @echo $(DEF10EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT10)"!=""
+ @echo $(DEF10EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT11)"!=""
+ @echo $(DEF10EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT12)"!=""
+ @echo $(DEF10EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT13)"!=""
+ @echo $(DEF10EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT14)"!=""
+ @echo $(DEF10EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT15)"!=""
+ @echo $(DEF10EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT16)"!=""
+ @echo $(DEF10EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT17)"!=""
+ @echo $(DEF10EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT18)"!=""
+ @echo $(DEF10EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT19)"!=""
+ @echo $(DEF10EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT20)"!=""
+ @echo $(DEF10EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORTFILE)"!=""
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(TYPE) $(DEF10EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
+.ELSE
+ $(COMMAND_ECHO)$(TYPE) $(DEF10EXPORTFILE) >> $@.tmpfile
+.ENDIF
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL10TARGET8=$(shell @fix_shl $(SHL10TARGETN:f))
+
+DEF10FILTER=$(SOLARENV)/inc/dummy.flt
+DEF10NAMELIST=$(foreach,i,$(DEFLIB10NAME) $(SLB)/$(i).lib)
+
+.IF "$(link_always)"==""
+$(DEF10TARGETN) : \
+ $(DEF10DEPN) \
+ $(DEF10EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF10TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @+-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(SHL10TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
+ @echo DATA MULTIPLE >>$@.tmpfile
+ @echo DESCRIPTION 'StarView 3.00 $(DEF10DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo _GetVersionInfo >$@.tmp_ord
+.ENDIF
+
+.IF "$(DEFLIB10NAME)"!=""
+ @+echo $(SLB)/$(DEFLIB10NAME).lib
+ @+emxexpr $(DEF10NAMELIST) | fix_exp_file >> $@.tmp_ord
+.ENDIF # "$(DEFLIB10NAME)"!=""
+
+.IF "$(DEF10EXPORT1)"!=""
+ @echo $(DEF10EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT2)"!=""
+ @echo $(DEF10EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT3)"!=""
+ @echo $(DEF10EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT4)"!=""
+ @echo $(DEF10EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT5)"!=""
+ @echo $(DEF10EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT6)"!=""
+ @echo $(DEF10EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT7)"!=""
+ @echo $(DEF10EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT8)"!=""
+ @echo $(DEF10EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT9)"!=""
+ @echo $(DEF10EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT10)"!=""
+ @echo $(DEF10EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT11)"!=""
+ @echo $(DEF10EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT12)"!=""
+ @echo $(DEF10EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT13)"!=""
+ @echo $(DEF10EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT14)"!=""
+ @echo $(DEF10EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT15)"!=""
+ @echo $(DEF10EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT16)"!=""
+ @echo $(DEF10EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT17)"!=""
+ @echo $(DEF10EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT18)"!=""
+ @echo $(DEF10EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT19)"!=""
+ @echo $(DEF10EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORT20)"!=""
+ @echo $(DEF10EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF10EXPORTFILE)"!=""
+ @fix_def_file < $(DEF10EXPORTFILE) >> $@.tmp_ord
+.ENDIF
+ @sort < $@.tmp_ord | uniq > $@.exptmpfile
+ @fix_def_ord < $@.exptmpfile >> $@.tmpfile
+ @+-$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $@.tmpfile $@
+ @+-$(RM) $@.tmp_ord
+ @+-$(RM) $@.exptmpfile
+ $(COMMAND_ECHO)+$(IMPLIB) $(IMPLIBFLAGS) $(SHL10IMPLIBN:s/.lib/.a/) $@
+ $(COMMAND_ECHO)+emxomf -o $(SHL10IMPLIBN) $(SHL10IMPLIBN:s/.lib/.a/)
+
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="UNX"
+$(DEF10TARGETN): \
+ $(DEF10DEPN) \
+ $(DEF10EXPORTFILE)
+ @echo just a dummy for UNIX > $@
+.ENDIF
+.ENDIF # "$(DEF10TARGETN)"!=""
+
+
+# Anweisungen fuer das Linken
diff --git a/solenv/inc/_tg_lib.mk b/solenv/inc/_tg_lib.mk
new file mode 100644
index 000000000000..378c3230420b
--- /dev/null
+++ b/solenv/inc/_tg_lib.mk
@@ -0,0 +1,1020 @@
+# unroll begin
+
+.IF "$(LIB1TARGET)" != ""
+.IF "$(LIB1ARCHIV)" != ""
+
+$(LIB1ARCHIV) : $(LIB1TARGET)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @-$(RM) $(MISC)/$(LIB1ARCHIV:b).cmd
+.IF "$(OS)" =="HPUX_FRAG_HR"
+ @-$(RM) $(MISC)/$(LIB1ARCHIV:b)_closetempl.cmd
+ @echo $(LINK) +inst_close -c `cat $(LIB1TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB1ARCHIV:b)_closetempl.cmd
+ @cat $(MISC)/$(LIB1ARCHIV:b)_closetempl.cmd
+ @+source $(MISC)/$(LIB1ARCHIV:b)_closetempl.cmd
+.ENDIF
+ @echo $(LIBMGR) $(LIB1FLAGS) $(LIBFLAGS) $(LIB1ARCHIV) `cat $(LIB1TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB1ARCHIV:b).cmd
+.IF "$(OS)$(COM)"=="NETBSDGCC"
+ @echo ranlib $(LIB1ARCHIV) >> $(MISC)/$(LIB1ARCHIV:b).cmd
+.ENDIF
+.IF "$(OS)" == "MACOSX"
+ @echo ranlib $(LIB1ARCHIV) >> $(MISC)/$(LIB1ARCHIV:b).cmd
+.ENDIF
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB1ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB1ARCHIV:b).cmd
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)$(COM)"=="WNTGCC"
+ @+-$(RM) $(MISC)/$(LIB1ARCHIV:b).cmd
+ @+echo $(LIBMGR) $(LIB1FLAGS) $(LIBFLAGS) $(LIB1ARCHIV) `cat $(LIB1TARGET) | sed s#'^'$(ROUT)#$(PRJ)/$(ROUT)#g` > $(MISC)/$(LIB1ARCHIV:b).cmd
+ @+echo ranlib $(LIB1ARCHIV) >> $(MISC)/$(LIB1ARCHIV:b).cmd
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB1ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB1ARCHIV:b).cmd
+.ELSE
+ @echo just a dummy > $@
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.ENDIF # "$(GUI)"=="UNX"
+
+.ENDIF # "$(LIB1ARCHIV)" != ""
+
+$(LIB1TARGET) : $(LIB1FILES) \
+ $(LIB1OBJFILES) \
+ $(LIB1DEPN)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo ------------------------------
+ @echo using: $(LIB1FILES)
+ @echo using: $(LIB1TARGET)
+ @echo ------------------------------
+.ENDIF
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @echo $(LIB1OBJFILES:s/.obj/.o/) | sed "s#$(PRJ:s/./\./)/$(ROUT)#$(ROUT)#g" | xargs -n 1 > $@
+ @cat /dev/null $(LIB1FILES:s/.obj/.o/) | xargs -n 1 >> $@
+ @$(RM) $(@:d)$(@:b).dump
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(LIB1TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(LIB1TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+
+.ELIF "$(GUI)"=="OS2"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(LIB1FILES) $(LIB1OBJFILES)
+ @+-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB1OBJFILES)"!=""
+ @+$(TYPE) $(mktmp $(LIB1OBJFILES)) > $(null,$(LIB1OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB1OBJFILES)"!=""
+.IF "$(LIB1FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB1FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB1FILES)"!=""
+ @+$(ECHONL)
+
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(LIB1OBJFILES) | sed "s#$(PRJ:s/././)/$(ROUT)#$(ROUT)#g" | xargs -n1 > $@
+ @+cat /dev/null $(LIB1FILES) | xargs -n1 >> $@
+.ELSE
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(LIB1FILES) $(LIB1OBJFILES))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB1OBJFILES)"!=""
+ @$(TYPE) $(mktmp $(LIB1OBJFILES)) > $(null,$(LIB1OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB1OBJFILES)"!=""
+.IF "$(LIB1FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB1FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB1FILES)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB1FILES)"!=""
+.ELSE # "$(GUI)"=="WNT"
+ @-$(RM) $@
+ .IF "$(VERBOSE)" == "TRUE"
+ @echo $(LIBMGR) r $@ $(LIB1OBJFILES)
+ .ENDIF
+ $(COMMAND_ECHO)$(LIBMGR) r $@ $(LIB1OBJFILES) $(LIB1FILES) bla.lib
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(LIB1TARGET)" != ""
+
+# Anweisungen fuer das LIBTARGETs
+# unroll begin
+
+.IF "$(LIB2TARGET)" != ""
+.IF "$(LIB2ARCHIV)" != ""
+
+$(LIB2ARCHIV) : $(LIB2TARGET)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @-$(RM) $(MISC)/$(LIB2ARCHIV:b).cmd
+.IF "$(OS)" =="HPUX_FRAG_HR"
+ @-$(RM) $(MISC)/$(LIB2ARCHIV:b)_closetempl.cmd
+ @echo $(LINK) +inst_close -c `cat $(LIB2TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB2ARCHIV:b)_closetempl.cmd
+ @cat $(MISC)/$(LIB2ARCHIV:b)_closetempl.cmd
+ @+source $(MISC)/$(LIB2ARCHIV:b)_closetempl.cmd
+.ENDIF
+ @echo $(LIBMGR) $(LIB2FLAGS) $(LIBFLAGS) $(LIB2ARCHIV) `cat $(LIB2TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB2ARCHIV:b).cmd
+.IF "$(OS)$(COM)"=="NETBSDGCC"
+ @echo ranlib $(LIB2ARCHIV) >> $(MISC)/$(LIB2ARCHIV:b).cmd
+.ENDIF
+.IF "$(OS)" == "MACOSX"
+ @echo ranlib $(LIB2ARCHIV) >> $(MISC)/$(LIB2ARCHIV:b).cmd
+.ENDIF
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB2ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB2ARCHIV:b).cmd
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)$(COM)"=="WNTGCC"
+ @+-$(RM) $(MISC)/$(LIB2ARCHIV:b).cmd
+ @+echo $(LIBMGR) $(LIB2FLAGS) $(LIBFLAGS) $(LIB2ARCHIV) `cat $(LIB2TARGET) | sed s#'^'$(ROUT)#$(PRJ)/$(ROUT)#g` > $(MISC)/$(LIB2ARCHIV:b).cmd
+ @+echo ranlib $(LIB2ARCHIV) >> $(MISC)/$(LIB2ARCHIV:b).cmd
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB2ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB2ARCHIV:b).cmd
+.ELSE
+ @echo just a dummy > $@
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.ENDIF # "$(GUI)"=="UNX"
+
+.ENDIF # "$(LIB2ARCHIV)" != ""
+
+$(LIB2TARGET) : $(LIB2FILES) \
+ $(LIB2OBJFILES) \
+ $(LIB2DEPN)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo ------------------------------
+ @echo using: $(LIB2FILES)
+ @echo using: $(LIB2TARGET)
+ @echo ------------------------------
+.ENDIF
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @echo $(LIB2OBJFILES:s/.obj/.o/) | sed "s#$(PRJ:s/./\./)/$(ROUT)#$(ROUT)#g" | xargs -n 1 > $@
+ @cat /dev/null $(LIB2FILES:s/.obj/.o/) | xargs -n 1 >> $@
+ @$(RM) $(@:d)$(@:b).dump
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(LIB2TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(LIB2TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+
+.ELIF "$(GUI)"=="OS2"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(LIB2FILES) $(LIB2OBJFILES)
+ @+-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB2OBJFILES)"!=""
+ @+$(TYPE) $(mktmp $(LIB2OBJFILES)) > $(null,$(LIB2OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB2OBJFILES)"!=""
+.IF "$(LIB2FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB2FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB2FILES)"!=""
+ @+$(ECHONL)
+
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(LIB2OBJFILES) | sed "s#$(PRJ:s/././)/$(ROUT)#$(ROUT)#g" | xargs -n1 > $@
+ @+cat /dev/null $(LIB2FILES) | xargs -n1 >> $@
+.ELSE
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(LIB2FILES) $(LIB2OBJFILES))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB2OBJFILES)"!=""
+ @$(TYPE) $(mktmp $(LIB2OBJFILES)) > $(null,$(LIB2OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB2OBJFILES)"!=""
+.IF "$(LIB2FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB2FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB2FILES)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB2FILES)"!=""
+.ELSE # "$(GUI)"=="WNT"
+ @-$(RM) $@
+ .IF "$(VERBOSE)" == "TRUE"
+ @echo $(LIBMGR) r $@ $(LIB2OBJFILES)
+ .ENDIF
+ $(COMMAND_ECHO)$(LIBMGR) r $@ $(LIB2OBJFILES) $(LIB2FILES) bla.lib
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(LIB2TARGET)" != ""
+
+# Anweisungen fuer das LIBTARGETs
+# unroll begin
+
+.IF "$(LIB3TARGET)" != ""
+.IF "$(LIB3ARCHIV)" != ""
+
+$(LIB3ARCHIV) : $(LIB3TARGET)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @-$(RM) $(MISC)/$(LIB3ARCHIV:b).cmd
+.IF "$(OS)" =="HPUX_FRAG_HR"
+ @-$(RM) $(MISC)/$(LIB3ARCHIV:b)_closetempl.cmd
+ @echo $(LINK) +inst_close -c `cat $(LIB3TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB3ARCHIV:b)_closetempl.cmd
+ @cat $(MISC)/$(LIB3ARCHIV:b)_closetempl.cmd
+ @+source $(MISC)/$(LIB3ARCHIV:b)_closetempl.cmd
+.ENDIF
+ @echo $(LIBMGR) $(LIB3FLAGS) $(LIBFLAGS) $(LIB3ARCHIV) `cat $(LIB3TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB3ARCHIV:b).cmd
+.IF "$(OS)$(COM)"=="NETBSDGCC"
+ @echo ranlib $(LIB3ARCHIV) >> $(MISC)/$(LIB3ARCHIV:b).cmd
+.ENDIF
+.IF "$(OS)" == "MACOSX"
+ @echo ranlib $(LIB3ARCHIV) >> $(MISC)/$(LIB3ARCHIV:b).cmd
+.ENDIF
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB3ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB3ARCHIV:b).cmd
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)$(COM)"=="WNTGCC"
+ @+-$(RM) $(MISC)/$(LIB3ARCHIV:b).cmd
+ @+echo $(LIBMGR) $(LIB3FLAGS) $(LIBFLAGS) $(LIB3ARCHIV) `cat $(LIB3TARGET) | sed s#'^'$(ROUT)#$(PRJ)/$(ROUT)#g` > $(MISC)/$(LIB3ARCHIV:b).cmd
+ @+echo ranlib $(LIB3ARCHIV) >> $(MISC)/$(LIB3ARCHIV:b).cmd
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB3ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB3ARCHIV:b).cmd
+.ELSE
+ @echo just a dummy > $@
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.ENDIF # "$(GUI)"=="UNX"
+
+.ENDIF # "$(LIB3ARCHIV)" != ""
+
+$(LIB3TARGET) : $(LIB3FILES) \
+ $(LIB3OBJFILES) \
+ $(LIB3DEPN)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo ------------------------------
+ @echo using: $(LIB3FILES)
+ @echo using: $(LIB3TARGET)
+ @echo ------------------------------
+.ENDIF
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @echo $(LIB3OBJFILES:s/.obj/.o/) | sed "s#$(PRJ:s/./\./)/$(ROUT)#$(ROUT)#g" | xargs -n 1 > $@
+ @cat /dev/null $(LIB3FILES:s/.obj/.o/) | xargs -n 1 >> $@
+ @$(RM) $(@:d)$(@:b).dump
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(LIB3TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(LIB3TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+
+.ELIF "$(GUI)"=="OS2"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(LIB3FILES) $(LIB3OBJFILES)
+ @+-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB3OBJFILES)"!=""
+ @+$(TYPE) $(mktmp $(LIB3OBJFILES)) > $(null,$(LIB3OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB3OBJFILES)"!=""
+.IF "$(LIB3FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB3FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB3FILES)"!=""
+ @+$(ECHONL)
+
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(LIB3OBJFILES) | sed "s#$(PRJ:s/././)/$(ROUT)#$(ROUT)#g" | xargs -n1 > $@
+ @+cat /dev/null $(LIB3FILES) | xargs -n1 >> $@
+.ELSE
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(LIB3FILES) $(LIB3OBJFILES))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB3OBJFILES)"!=""
+ @$(TYPE) $(mktmp $(LIB3OBJFILES)) > $(null,$(LIB3OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB3OBJFILES)"!=""
+.IF "$(LIB3FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB3FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB3FILES)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB3FILES)"!=""
+.ELSE # "$(GUI)"=="WNT"
+ @-$(RM) $@
+ .IF "$(VERBOSE)" == "TRUE"
+ @echo $(LIBMGR) r $@ $(LIB3OBJFILES)
+ .ENDIF
+ $(COMMAND_ECHO)$(LIBMGR) r $@ $(LIB3OBJFILES) $(LIB3FILES) bla.lib
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(LIB3TARGET)" != ""
+
+# Anweisungen fuer das LIBTARGETs
+# unroll begin
+
+.IF "$(LIB4TARGET)" != ""
+.IF "$(LIB4ARCHIV)" != ""
+
+$(LIB4ARCHIV) : $(LIB4TARGET)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @-$(RM) $(MISC)/$(LIB4ARCHIV:b).cmd
+.IF "$(OS)" =="HPUX_FRAG_HR"
+ @-$(RM) $(MISC)/$(LIB4ARCHIV:b)_closetempl.cmd
+ @echo $(LINK) +inst_close -c `cat $(LIB4TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB4ARCHIV:b)_closetempl.cmd
+ @cat $(MISC)/$(LIB4ARCHIV:b)_closetempl.cmd
+ @+source $(MISC)/$(LIB4ARCHIV:b)_closetempl.cmd
+.ENDIF
+ @echo $(LIBMGR) $(LIB4FLAGS) $(LIBFLAGS) $(LIB4ARCHIV) `cat $(LIB4TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB4ARCHIV:b).cmd
+.IF "$(OS)$(COM)"=="NETBSDGCC"
+ @echo ranlib $(LIB4ARCHIV) >> $(MISC)/$(LIB4ARCHIV:b).cmd
+.ENDIF
+.IF "$(OS)" == "MACOSX"
+ @echo ranlib $(LIB4ARCHIV) >> $(MISC)/$(LIB4ARCHIV:b).cmd
+.ENDIF
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB4ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB4ARCHIV:b).cmd
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)$(COM)"=="WNTGCC"
+ @+-$(RM) $(MISC)/$(LIB4ARCHIV:b).cmd
+ @+echo $(LIBMGR) $(LIB4FLAGS) $(LIBFLAGS) $(LIB4ARCHIV) `cat $(LIB4TARGET) | sed s#'^'$(ROUT)#$(PRJ)/$(ROUT)#g` > $(MISC)/$(LIB4ARCHIV:b).cmd
+ @+echo ranlib $(LIB4ARCHIV) >> $(MISC)/$(LIB4ARCHIV:b).cmd
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB4ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB4ARCHIV:b).cmd
+.ELSE
+ @echo just a dummy > $@
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.ENDIF # "$(GUI)"=="UNX"
+
+.ENDIF # "$(LIB4ARCHIV)" != ""
+
+$(LIB4TARGET) : $(LIB4FILES) \
+ $(LIB4OBJFILES) \
+ $(LIB4DEPN)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo ------------------------------
+ @echo using: $(LIB4FILES)
+ @echo using: $(LIB4TARGET)
+ @echo ------------------------------
+.ENDIF
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @echo $(LIB4OBJFILES:s/.obj/.o/) | sed "s#$(PRJ:s/./\./)/$(ROUT)#$(ROUT)#g" | xargs -n 1 > $@
+ @cat /dev/null $(LIB4FILES:s/.obj/.o/) | xargs -n 1 >> $@
+ @$(RM) $(@:d)$(@:b).dump
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(LIB4TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(LIB4TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+
+.ELIF "$(GUI)"=="OS2"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(LIB4FILES) $(LIB4OBJFILES)
+ @+-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB4OBJFILES)"!=""
+ @+$(TYPE) $(mktmp $(LIB4OBJFILES)) > $(null,$(LIB4OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB4OBJFILES)"!=""
+.IF "$(LIB4FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB4FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB4FILES)"!=""
+ @+$(ECHONL)
+
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(LIB4OBJFILES) | sed "s#$(PRJ:s/././)/$(ROUT)#$(ROUT)#g" | xargs -n1 > $@
+ @+cat /dev/null $(LIB4FILES) | xargs -n1 >> $@
+.ELSE
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(LIB4FILES) $(LIB4OBJFILES))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB4OBJFILES)"!=""
+ @$(TYPE) $(mktmp $(LIB4OBJFILES)) > $(null,$(LIB4OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB4OBJFILES)"!=""
+.IF "$(LIB4FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB4FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB4FILES)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB4FILES)"!=""
+.ELSE # "$(GUI)"=="WNT"
+ @-$(RM) $@
+ .IF "$(VERBOSE)" == "TRUE"
+ @echo $(LIBMGR) r $@ $(LIB4OBJFILES)
+ .ENDIF
+ $(COMMAND_ECHO)$(LIBMGR) r $@ $(LIB4OBJFILES) $(LIB4FILES) bla.lib
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(LIB4TARGET)" != ""
+
+# Anweisungen fuer das LIBTARGETs
+# unroll begin
+
+.IF "$(LIB5TARGET)" != ""
+.IF "$(LIB5ARCHIV)" != ""
+
+$(LIB5ARCHIV) : $(LIB5TARGET)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @-$(RM) $(MISC)/$(LIB5ARCHIV:b).cmd
+.IF "$(OS)" =="HPUX_FRAG_HR"
+ @-$(RM) $(MISC)/$(LIB5ARCHIV:b)_closetempl.cmd
+ @echo $(LINK) +inst_close -c `cat $(LIB5TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB5ARCHIV:b)_closetempl.cmd
+ @cat $(MISC)/$(LIB5ARCHIV:b)_closetempl.cmd
+ @+source $(MISC)/$(LIB5ARCHIV:b)_closetempl.cmd
+.ENDIF
+ @echo $(LIBMGR) $(LIB5FLAGS) $(LIBFLAGS) $(LIB5ARCHIV) `cat $(LIB5TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB5ARCHIV:b).cmd
+.IF "$(OS)$(COM)"=="NETBSDGCC"
+ @echo ranlib $(LIB5ARCHIV) >> $(MISC)/$(LIB5ARCHIV:b).cmd
+.ENDIF
+.IF "$(OS)" == "MACOSX"
+ @echo ranlib $(LIB5ARCHIV) >> $(MISC)/$(LIB5ARCHIV:b).cmd
+.ENDIF
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB5ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB5ARCHIV:b).cmd
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)$(COM)"=="WNTGCC"
+ @+-$(RM) $(MISC)/$(LIB5ARCHIV:b).cmd
+ @+echo $(LIBMGR) $(LIB5FLAGS) $(LIBFLAGS) $(LIB5ARCHIV) `cat $(LIB5TARGET) | sed s#'^'$(ROUT)#$(PRJ)/$(ROUT)#g` > $(MISC)/$(LIB5ARCHIV:b).cmd
+ @+echo ranlib $(LIB5ARCHIV) >> $(MISC)/$(LIB5ARCHIV:b).cmd
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB5ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB5ARCHIV:b).cmd
+.ELSE
+ @echo just a dummy > $@
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.ENDIF # "$(GUI)"=="UNX"
+
+.ENDIF # "$(LIB5ARCHIV)" != ""
+
+$(LIB5TARGET) : $(LIB5FILES) \
+ $(LIB5OBJFILES) \
+ $(LIB5DEPN)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo ------------------------------
+ @echo using: $(LIB5FILES)
+ @echo using: $(LIB5TARGET)
+ @echo ------------------------------
+.ENDIF
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @echo $(LIB5OBJFILES:s/.obj/.o/) | sed "s#$(PRJ:s/./\./)/$(ROUT)#$(ROUT)#g" | xargs -n 1 > $@
+ @cat /dev/null $(LIB5FILES:s/.obj/.o/) | xargs -n 1 >> $@
+ @$(RM) $(@:d)$(@:b).dump
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(LIB5TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(LIB5TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+
+.ELIF "$(GUI)"=="OS2"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(LIB5FILES) $(LIB5OBJFILES)
+ @+-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB5OBJFILES)"!=""
+ @+$(TYPE) $(mktmp $(LIB5OBJFILES)) > $(null,$(LIB5OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB5OBJFILES)"!=""
+.IF "$(LIB5FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB5FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB5FILES)"!=""
+ @+$(ECHONL)
+
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(LIB5OBJFILES) | sed "s#$(PRJ:s/././)/$(ROUT)#$(ROUT)#g" | xargs -n1 > $@
+ @+cat /dev/null $(LIB5FILES) | xargs -n1 >> $@
+.ELSE
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(LIB5FILES) $(LIB5OBJFILES))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB5OBJFILES)"!=""
+ @$(TYPE) $(mktmp $(LIB5OBJFILES)) > $(null,$(LIB5OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB5OBJFILES)"!=""
+.IF "$(LIB5FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB5FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB5FILES)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB5FILES)"!=""
+.ELSE # "$(GUI)"=="WNT"
+ @-$(RM) $@
+ .IF "$(VERBOSE)" == "TRUE"
+ @echo $(LIBMGR) r $@ $(LIB5OBJFILES)
+ .ENDIF
+ $(COMMAND_ECHO)$(LIBMGR) r $@ $(LIB5OBJFILES) $(LIB5FILES) bla.lib
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(LIB5TARGET)" != ""
+
+# Anweisungen fuer das LIBTARGETs
+# unroll begin
+
+.IF "$(LIB6TARGET)" != ""
+.IF "$(LIB6ARCHIV)" != ""
+
+$(LIB6ARCHIV) : $(LIB6TARGET)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @-$(RM) $(MISC)/$(LIB6ARCHIV:b).cmd
+.IF "$(OS)" =="HPUX_FRAG_HR"
+ @-$(RM) $(MISC)/$(LIB6ARCHIV:b)_closetempl.cmd
+ @echo $(LINK) +inst_close -c `cat $(LIB6TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB6ARCHIV:b)_closetempl.cmd
+ @cat $(MISC)/$(LIB6ARCHIV:b)_closetempl.cmd
+ @+source $(MISC)/$(LIB6ARCHIV:b)_closetempl.cmd
+.ENDIF
+ @echo $(LIBMGR) $(LIB6FLAGS) $(LIBFLAGS) $(LIB6ARCHIV) `cat $(LIB6TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB6ARCHIV:b).cmd
+.IF "$(OS)$(COM)"=="NETBSDGCC"
+ @echo ranlib $(LIB6ARCHIV) >> $(MISC)/$(LIB6ARCHIV:b).cmd
+.ENDIF
+.IF "$(OS)" == "MACOSX"
+ @echo ranlib $(LIB6ARCHIV) >> $(MISC)/$(LIB6ARCHIV:b).cmd
+.ENDIF
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB6ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB6ARCHIV:b).cmd
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)$(COM)"=="WNTGCC"
+ @+-$(RM) $(MISC)/$(LIB6ARCHIV:b).cmd
+ @+echo $(LIBMGR) $(LIB6FLAGS) $(LIBFLAGS) $(LIB6ARCHIV) `cat $(LIB6TARGET) | sed s#'^'$(ROUT)#$(PRJ)/$(ROUT)#g` > $(MISC)/$(LIB6ARCHIV:b).cmd
+ @+echo ranlib $(LIB6ARCHIV) >> $(MISC)/$(LIB6ARCHIV:b).cmd
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB6ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB6ARCHIV:b).cmd
+.ELSE
+ @echo just a dummy > $@
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.ENDIF # "$(GUI)"=="UNX"
+
+.ENDIF # "$(LIB6ARCHIV)" != ""
+
+$(LIB6TARGET) : $(LIB6FILES) \
+ $(LIB6OBJFILES) \
+ $(LIB6DEPN)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo ------------------------------
+ @echo using: $(LIB6FILES)
+ @echo using: $(LIB6TARGET)
+ @echo ------------------------------
+.ENDIF
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @echo $(LIB6OBJFILES:s/.obj/.o/) | sed "s#$(PRJ:s/./\./)/$(ROUT)#$(ROUT)#g" | xargs -n 1 > $@
+ @cat /dev/null $(LIB6FILES:s/.obj/.o/) | xargs -n 1 >> $@
+ @$(RM) $(@:d)$(@:b).dump
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(LIB6TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(LIB6TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+
+.ELIF "$(GUI)"=="OS2"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(LIB6FILES) $(LIB6OBJFILES)
+ @+-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB6OBJFILES)"!=""
+ @+$(TYPE) $(mktmp $(LIB6OBJFILES)) > $(null,$(LIB6OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB6OBJFILES)"!=""
+.IF "$(LIB6FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB6FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB6FILES)"!=""
+ @+$(ECHONL)
+
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(LIB6OBJFILES) | sed "s#$(PRJ:s/././)/$(ROUT)#$(ROUT)#g" | xargs -n1 > $@
+ @+cat /dev/null $(LIB6FILES) | xargs -n1 >> $@
+.ELSE
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(LIB6FILES) $(LIB6OBJFILES))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB6OBJFILES)"!=""
+ @$(TYPE) $(mktmp $(LIB6OBJFILES)) > $(null,$(LIB6OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB6OBJFILES)"!=""
+.IF "$(LIB6FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB6FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB6FILES)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB6FILES)"!=""
+.ELSE # "$(GUI)"=="WNT"
+ @-$(RM) $@
+ .IF "$(VERBOSE)" == "TRUE"
+ @echo $(LIBMGR) r $@ $(LIB6OBJFILES)
+ .ENDIF
+ $(COMMAND_ECHO)$(LIBMGR) r $@ $(LIB6OBJFILES) $(LIB6FILES) bla.lib
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(LIB6TARGET)" != ""
+
+# Anweisungen fuer das LIBTARGETs
+# unroll begin
+
+.IF "$(LIB7TARGET)" != ""
+.IF "$(LIB7ARCHIV)" != ""
+
+$(LIB7ARCHIV) : $(LIB7TARGET)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @-$(RM) $(MISC)/$(LIB7ARCHIV:b).cmd
+.IF "$(OS)" =="HPUX_FRAG_HR"
+ @-$(RM) $(MISC)/$(LIB7ARCHIV:b)_closetempl.cmd
+ @echo $(LINK) +inst_close -c `cat $(LIB7TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB7ARCHIV:b)_closetempl.cmd
+ @cat $(MISC)/$(LIB7ARCHIV:b)_closetempl.cmd
+ @+source $(MISC)/$(LIB7ARCHIV:b)_closetempl.cmd
+.ENDIF
+ @echo $(LIBMGR) $(LIB7FLAGS) $(LIBFLAGS) $(LIB7ARCHIV) `cat $(LIB7TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB7ARCHIV:b).cmd
+.IF "$(OS)$(COM)"=="NETBSDGCC"
+ @echo ranlib $(LIB7ARCHIV) >> $(MISC)/$(LIB7ARCHIV:b).cmd
+.ENDIF
+.IF "$(OS)" == "MACOSX"
+ @echo ranlib $(LIB7ARCHIV) >> $(MISC)/$(LIB7ARCHIV:b).cmd
+.ENDIF
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB7ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB7ARCHIV:b).cmd
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)$(COM)"=="WNTGCC"
+ @+-$(RM) $(MISC)/$(LIB7ARCHIV:b).cmd
+ @+echo $(LIBMGR) $(LIB7FLAGS) $(LIBFLAGS) $(LIB7ARCHIV) `cat $(LIB7TARGET) | sed s#'^'$(ROUT)#$(PRJ)/$(ROUT)#g` > $(MISC)/$(LIB7ARCHIV:b).cmd
+ @+echo ranlib $(LIB7ARCHIV) >> $(MISC)/$(LIB7ARCHIV:b).cmd
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB7ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB7ARCHIV:b).cmd
+.ELSE
+ @echo just a dummy > $@
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.ENDIF # "$(GUI)"=="UNX"
+
+.ENDIF # "$(LIB7ARCHIV)" != ""
+
+$(LIB7TARGET) : $(LIB7FILES) \
+ $(LIB7OBJFILES) \
+ $(LIB7DEPN)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo ------------------------------
+ @echo using: $(LIB7FILES)
+ @echo using: $(LIB7TARGET)
+ @echo ------------------------------
+.ENDIF
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @echo $(LIB7OBJFILES:s/.obj/.o/) | sed "s#$(PRJ:s/./\./)/$(ROUT)#$(ROUT)#g" | xargs -n 1 > $@
+ @cat /dev/null $(LIB7FILES:s/.obj/.o/) | xargs -n 1 >> $@
+ @$(RM) $(@:d)$(@:b).dump
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(LIB7TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(LIB7TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+
+.ELIF "$(GUI)"=="OS2"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(LIB7FILES) $(LIB7OBJFILES)
+ @+-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB7OBJFILES)"!=""
+ @+$(TYPE) $(mktmp $(LIB7OBJFILES)) > $(null,$(LIB7OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB7OBJFILES)"!=""
+.IF "$(LIB7FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB7FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB7FILES)"!=""
+ @+$(ECHONL)
+
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(LIB7OBJFILES) | sed "s#$(PRJ:s/././)/$(ROUT)#$(ROUT)#g" | xargs -n1 > $@
+ @+cat /dev/null $(LIB7FILES) | xargs -n1 >> $@
+.ELSE
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(LIB7FILES) $(LIB7OBJFILES))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB7OBJFILES)"!=""
+ @$(TYPE) $(mktmp $(LIB7OBJFILES)) > $(null,$(LIB7OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB7OBJFILES)"!=""
+.IF "$(LIB7FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB7FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB7FILES)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB7FILES)"!=""
+.ELSE # "$(GUI)"=="WNT"
+ @-$(RM) $@
+ .IF "$(VERBOSE)" == "TRUE"
+ @echo $(LIBMGR) r $@ $(LIB7OBJFILES)
+ .ENDIF
+ $(COMMAND_ECHO)$(LIBMGR) r $@ $(LIB7OBJFILES) $(LIB7FILES) bla.lib
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(LIB7TARGET)" != ""
+
+# Anweisungen fuer das LIBTARGETs
+# unroll begin
+
+.IF "$(LIB8TARGET)" != ""
+.IF "$(LIB8ARCHIV)" != ""
+
+$(LIB8ARCHIV) : $(LIB8TARGET)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @-$(RM) $(MISC)/$(LIB8ARCHIV:b).cmd
+.IF "$(OS)" =="HPUX_FRAG_HR"
+ @-$(RM) $(MISC)/$(LIB8ARCHIV:b)_closetempl.cmd
+ @echo $(LINK) +inst_close -c `cat $(LIB8TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB8ARCHIV:b)_closetempl.cmd
+ @cat $(MISC)/$(LIB8ARCHIV:b)_closetempl.cmd
+ @+source $(MISC)/$(LIB8ARCHIV:b)_closetempl.cmd
+.ENDIF
+ @echo $(LIBMGR) $(LIB8FLAGS) $(LIBFLAGS) $(LIB8ARCHIV) `cat $(LIB8TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB8ARCHIV:b).cmd
+.IF "$(OS)$(COM)"=="NETBSDGCC"
+ @echo ranlib $(LIB8ARCHIV) >> $(MISC)/$(LIB8ARCHIV:b).cmd
+.ENDIF
+.IF "$(OS)" == "MACOSX"
+ @echo ranlib $(LIB8ARCHIV) >> $(MISC)/$(LIB8ARCHIV:b).cmd
+.ENDIF
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB8ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB8ARCHIV:b).cmd
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)$(COM)"=="WNTGCC"
+ @+-$(RM) $(MISC)/$(LIB8ARCHIV:b).cmd
+ @+echo $(LIBMGR) $(LIB8FLAGS) $(LIBFLAGS) $(LIB8ARCHIV) `cat $(LIB8TARGET) | sed s#'^'$(ROUT)#$(PRJ)/$(ROUT)#g` > $(MISC)/$(LIB8ARCHIV:b).cmd
+ @+echo ranlib $(LIB8ARCHIV) >> $(MISC)/$(LIB8ARCHIV:b).cmd
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB8ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB8ARCHIV:b).cmd
+.ELSE
+ @echo just a dummy > $@
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.ENDIF # "$(GUI)"=="UNX"
+
+.ENDIF # "$(LIB8ARCHIV)" != ""
+
+$(LIB8TARGET) : $(LIB8FILES) \
+ $(LIB8OBJFILES) \
+ $(LIB8DEPN)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo ------------------------------
+ @echo using: $(LIB8FILES)
+ @echo using: $(LIB8TARGET)
+ @echo ------------------------------
+.ENDIF
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @echo $(LIB8OBJFILES:s/.obj/.o/) | sed "s#$(PRJ:s/./\./)/$(ROUT)#$(ROUT)#g" | xargs -n 1 > $@
+ @cat /dev/null $(LIB8FILES:s/.obj/.o/) | xargs -n 1 >> $@
+ @$(RM) $(@:d)$(@:b).dump
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(LIB8TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(LIB8TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+
+.ELIF "$(GUI)"=="OS2"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(LIB8FILES) $(LIB8OBJFILES)
+ @+-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB8OBJFILES)"!=""
+ @+$(TYPE) $(mktmp $(LIB8OBJFILES)) > $(null,$(LIB8OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB8OBJFILES)"!=""
+.IF "$(LIB8FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB8FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB8FILES)"!=""
+ @+$(ECHONL)
+
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(LIB8OBJFILES) | sed "s#$(PRJ:s/././)/$(ROUT)#$(ROUT)#g" | xargs -n1 > $@
+ @+cat /dev/null $(LIB8FILES) | xargs -n1 >> $@
+.ELSE
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(LIB8FILES) $(LIB8OBJFILES))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB8OBJFILES)"!=""
+ @$(TYPE) $(mktmp $(LIB8OBJFILES)) > $(null,$(LIB8OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB8OBJFILES)"!=""
+.IF "$(LIB8FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB8FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB8FILES)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB8FILES)"!=""
+.ELSE # "$(GUI)"=="WNT"
+ @-$(RM) $@
+ .IF "$(VERBOSE)" == "TRUE"
+ @echo $(LIBMGR) r $@ $(LIB8OBJFILES)
+ .ENDIF
+ $(COMMAND_ECHO)$(LIBMGR) r $@ $(LIB8OBJFILES) $(LIB8FILES) bla.lib
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(LIB8TARGET)" != ""
+
+# Anweisungen fuer das LIBTARGETs
+# unroll begin
+
+.IF "$(LIB9TARGET)" != ""
+.IF "$(LIB9ARCHIV)" != ""
+
+$(LIB9ARCHIV) : $(LIB9TARGET)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @-$(RM) $(MISC)/$(LIB9ARCHIV:b).cmd
+.IF "$(OS)" =="HPUX_FRAG_HR"
+ @-$(RM) $(MISC)/$(LIB9ARCHIV:b)_closetempl.cmd
+ @echo $(LINK) +inst_close -c `cat $(LIB9TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB9ARCHIV:b)_closetempl.cmd
+ @cat $(MISC)/$(LIB9ARCHIV:b)_closetempl.cmd
+ @+source $(MISC)/$(LIB9ARCHIV:b)_closetempl.cmd
+.ENDIF
+ @echo $(LIBMGR) $(LIB9FLAGS) $(LIBFLAGS) $(LIB9ARCHIV) `cat $(LIB9TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB9ARCHIV:b).cmd
+.IF "$(OS)$(COM)"=="NETBSDGCC"
+ @echo ranlib $(LIB9ARCHIV) >> $(MISC)/$(LIB9ARCHIV:b).cmd
+.ENDIF
+.IF "$(OS)" == "MACOSX"
+ @echo ranlib $(LIB9ARCHIV) >> $(MISC)/$(LIB9ARCHIV:b).cmd
+.ENDIF
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB9ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB9ARCHIV:b).cmd
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)$(COM)"=="WNTGCC"
+ @+-$(RM) $(MISC)/$(LIB9ARCHIV:b).cmd
+ @+echo $(LIBMGR) $(LIB9FLAGS) $(LIBFLAGS) $(LIB9ARCHIV) `cat $(LIB9TARGET) | sed s#'^'$(ROUT)#$(PRJ)/$(ROUT)#g` > $(MISC)/$(LIB9ARCHIV:b).cmd
+ @+echo ranlib $(LIB9ARCHIV) >> $(MISC)/$(LIB9ARCHIV:b).cmd
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB9ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB9ARCHIV:b).cmd
+.ELSE
+ @echo just a dummy > $@
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.ENDIF # "$(GUI)"=="UNX"
+
+.ENDIF # "$(LIB9ARCHIV)" != ""
+
+$(LIB9TARGET) : $(LIB9FILES) \
+ $(LIB9OBJFILES) \
+ $(LIB9DEPN)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo ------------------------------
+ @echo using: $(LIB9FILES)
+ @echo using: $(LIB9TARGET)
+ @echo ------------------------------
+.ENDIF
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @echo $(LIB9OBJFILES:s/.obj/.o/) | sed "s#$(PRJ:s/./\./)/$(ROUT)#$(ROUT)#g" | xargs -n 1 > $@
+ @cat /dev/null $(LIB9FILES:s/.obj/.o/) | xargs -n 1 >> $@
+ @$(RM) $(@:d)$(@:b).dump
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(LIB9TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(LIB9TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+
+.ELIF "$(GUI)"=="OS2"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(LIB9FILES) $(LIB9OBJFILES)
+ @+-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB9OBJFILES)"!=""
+ @+$(TYPE) $(mktmp $(LIB9OBJFILES)) > $(null,$(LIB9OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB9OBJFILES)"!=""
+.IF "$(LIB9FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB9FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB9FILES)"!=""
+ @+$(ECHONL)
+
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(LIB9OBJFILES) | sed "s#$(PRJ:s/././)/$(ROUT)#$(ROUT)#g" | xargs -n1 > $@
+ @+cat /dev/null $(LIB9FILES) | xargs -n1 >> $@
+.ELSE
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(LIB9FILES) $(LIB9OBJFILES))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB9OBJFILES)"!=""
+ @$(TYPE) $(mktmp $(LIB9OBJFILES)) > $(null,$(LIB9OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB9OBJFILES)"!=""
+.IF "$(LIB9FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB9FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB9FILES)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB9FILES)"!=""
+.ELSE # "$(GUI)"=="WNT"
+ @-$(RM) $@
+ .IF "$(VERBOSE)" == "TRUE"
+ @echo $(LIBMGR) r $@ $(LIB9OBJFILES)
+ .ENDIF
+ $(COMMAND_ECHO)$(LIBMGR) r $@ $(LIB9OBJFILES) $(LIB9FILES) bla.lib
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(LIB9TARGET)" != ""
+
+# Anweisungen fuer das LIBTARGETs
+# unroll begin
+
+.IF "$(LIB10TARGET)" != ""
+.IF "$(LIB10ARCHIV)" != ""
+
+$(LIB10ARCHIV) : $(LIB10TARGET)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @-$(RM) $(MISC)/$(LIB10ARCHIV:b).cmd
+.IF "$(OS)" =="HPUX_FRAG_HR"
+ @-$(RM) $(MISC)/$(LIB10ARCHIV:b)_closetempl.cmd
+ @echo $(LINK) +inst_close -c `cat $(LIB10TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB10ARCHIV:b)_closetempl.cmd
+ @cat $(MISC)/$(LIB10ARCHIV:b)_closetempl.cmd
+ @+source $(MISC)/$(LIB10ARCHIV:b)_closetempl.cmd
+.ENDIF
+ @echo $(LIBMGR) $(LIB10FLAGS) $(LIBFLAGS) $(LIB10ARCHIV) `cat $(LIB10TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB10ARCHIV:b).cmd
+.IF "$(OS)$(COM)"=="NETBSDGCC"
+ @echo ranlib $(LIB10ARCHIV) >> $(MISC)/$(LIB10ARCHIV:b).cmd
+.ENDIF
+.IF "$(OS)" == "MACOSX"
+ @echo ranlib $(LIB10ARCHIV) >> $(MISC)/$(LIB10ARCHIV:b).cmd
+.ENDIF
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB10ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB10ARCHIV:b).cmd
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)$(COM)"=="WNTGCC"
+ @+-$(RM) $(MISC)/$(LIB10ARCHIV:b).cmd
+ @+echo $(LIBMGR) $(LIB10FLAGS) $(LIBFLAGS) $(LIB10ARCHIV) `cat $(LIB10TARGET) | sed s#'^'$(ROUT)#$(PRJ)/$(ROUT)#g` > $(MISC)/$(LIB10ARCHIV:b).cmd
+ @+echo ranlib $(LIB10ARCHIV) >> $(MISC)/$(LIB10ARCHIV:b).cmd
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB10ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB10ARCHIV:b).cmd
+.ELSE
+ @echo just a dummy > $@
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.ENDIF # "$(GUI)"=="UNX"
+
+.ENDIF # "$(LIB10ARCHIV)" != ""
+
+$(LIB10TARGET) : $(LIB10FILES) \
+ $(LIB10OBJFILES) \
+ $(LIB10DEPN)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo ------------------------------
+ @echo using: $(LIB10FILES)
+ @echo using: $(LIB10TARGET)
+ @echo ------------------------------
+.ENDIF
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @echo $(LIB10OBJFILES:s/.obj/.o/) | sed "s#$(PRJ:s/./\./)/$(ROUT)#$(ROUT)#g" | xargs -n 1 > $@
+ @cat /dev/null $(LIB10FILES:s/.obj/.o/) | xargs -n 1 >> $@
+ @$(RM) $(@:d)$(@:b).dump
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(LIB10TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(LIB10TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+
+.ELIF "$(GUI)"=="OS2"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(LIB10FILES) $(LIB10OBJFILES)
+ @+-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB10OBJFILES)"!=""
+ @+$(TYPE) $(mktmp $(LIB10OBJFILES)) > $(null,$(LIB10OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB10OBJFILES)"!=""
+.IF "$(LIB10FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB10FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB10FILES)"!=""
+ @+$(ECHONL)
+
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(LIB10OBJFILES) | sed "s#$(PRJ:s/././)/$(ROUT)#$(ROUT)#g" | xargs -n1 > $@
+ @+cat /dev/null $(LIB10FILES) | xargs -n1 >> $@
+.ELSE
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(LIB10FILES) $(LIB10OBJFILES))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB10OBJFILES)"!=""
+ @$(TYPE) $(mktmp $(LIB10OBJFILES)) > $(null,$(LIB10OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB10OBJFILES)"!=""
+.IF "$(LIB10FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB10FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB10FILES)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB10FILES)"!=""
+.ELSE # "$(GUI)"=="WNT"
+ @-$(RM) $@
+ .IF "$(VERBOSE)" == "TRUE"
+ @echo $(LIBMGR) r $@ $(LIB10OBJFILES)
+ .ENDIF
+ $(COMMAND_ECHO)$(LIBMGR) r $@ $(LIB10OBJFILES) $(LIB10FILES) bla.lib
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(LIB10TARGET)" != ""
+
+# Anweisungen fuer das LIBTARGETs
diff --git a/solenv/inc/_tg_rslb.mk b/solenv/inc/_tg_rslb.mk
new file mode 100644
index 000000000000..273ac8dabe1b
--- /dev/null
+++ b/solenv/inc/_tg_rslb.mk
@@ -0,0 +1,770 @@
+# unroll begin
+
+.IF "$(RESLIB1TARGETN)"!=""
+
+.IF "$(BUILDHIDS)"!=""
+HIDRES1PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(RESLIB1NAME)_res.hid
+
+#HACK cut off the dirty srs files which are included from solver
+RESLIB1HIDFILES:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,.srs,_srs.hid $(RESLIB1SRSFILES)))
+$(HIDRES1PARTICLE): $(RESLIB1HIDFILES)
+ @echo "Making: " $(@:f)
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+# need to strip since solaris cannot handle tab-only whitespace here
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(strip, $(subst,/,/ $(RESLIB1HIDFILES))) )| xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDRES1PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(RSC_MULTI1) : \
+ $(RESLIB1SRSFILES) \
+ $(RESLIB1TARGETN) \
+ $(RESLIB1BMPS)
+ @echo Compiling: $(@:f)
+.IF "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB1NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB1IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))} \
+ -ft=$@ \
+ $(RSC1HEADER) $(RESLIB1SRSFILES) \
+ ) > $(NULLDEV)
+.ELSE # "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(BIN)/$(RESLIB1NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB1IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil=$(BIN) \
+ -ft=$@ \
+ $(RSC1HEADER) $(RESLIB1SRSFILES) \
+ ) > $(NULLDEV)
+.ENDIF # "$(common_build_reslib)"!=""
+
+$(RESLIB1TARGETN): \
+ $(RESLIB1SRSFILES) \
+ $(RESLIB1BMPS)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI1)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI1)
+.ENDIF # "$(common_build_reslib)"!=""
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI1)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI1)
+.ENDIF # "$(common_build_reslib)"!=""
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(RESLIB1TARGETN)"!=""
+
+
+# unroll begin
+
+.IF "$(RESLIB2TARGETN)"!=""
+
+.IF "$(BUILDHIDS)"!=""
+HIDRES2PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(RESLIB2NAME)_res.hid
+
+#HACK cut off the dirty srs files which are included from solver
+RESLIB2HIDFILES:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,.srs,_srs.hid $(RESLIB2SRSFILES)))
+$(HIDRES2PARTICLE): $(RESLIB2HIDFILES)
+ @echo "Making: " $(@:f)
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+# need to strip since solaris cannot handle tab-only whitespace here
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(strip, $(subst,/,/ $(RESLIB2HIDFILES))) )| xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDRES2PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(RSC_MULTI2) : \
+ $(RESLIB2SRSFILES) \
+ $(RESLIB2TARGETN) \
+ $(RESLIB2BMPS)
+ @echo Compiling: $(@:f)
+.IF "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB2NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB2IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))} \
+ -ft=$@ \
+ $(RSC2HEADER) $(RESLIB2SRSFILES) \
+ ) > $(NULLDEV)
+.ELSE # "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(BIN)/$(RESLIB2NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB2IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil=$(BIN) \
+ -ft=$@ \
+ $(RSC2HEADER) $(RESLIB2SRSFILES) \
+ ) > $(NULLDEV)
+.ENDIF # "$(common_build_reslib)"!=""
+
+$(RESLIB2TARGETN): \
+ $(RESLIB2SRSFILES) \
+ $(RESLIB2BMPS)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI2)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI2)
+.ENDIF # "$(common_build_reslib)"!=""
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI2)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI2)
+.ENDIF # "$(common_build_reslib)"!=""
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(RESLIB2TARGETN)"!=""
+
+
+# unroll begin
+
+.IF "$(RESLIB3TARGETN)"!=""
+
+.IF "$(BUILDHIDS)"!=""
+HIDRES3PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(RESLIB3NAME)_res.hid
+
+#HACK cut off the dirty srs files which are included from solver
+RESLIB3HIDFILES:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,.srs,_srs.hid $(RESLIB3SRSFILES)))
+$(HIDRES3PARTICLE): $(RESLIB3HIDFILES)
+ @echo "Making: " $(@:f)
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+# need to strip since solaris cannot handle tab-only whitespace here
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(strip, $(subst,/,/ $(RESLIB3HIDFILES))) )| xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDRES3PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(RSC_MULTI3) : \
+ $(RESLIB3SRSFILES) \
+ $(RESLIB3TARGETN) \
+ $(RESLIB3BMPS)
+ @echo Compiling: $(@:f)
+.IF "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB3NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB3IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))} \
+ -ft=$@ \
+ $(RSC3HEADER) $(RESLIB3SRSFILES) \
+ ) > $(NULLDEV)
+.ELSE # "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(BIN)/$(RESLIB3NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB3IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil=$(BIN) \
+ -ft=$@ \
+ $(RSC3HEADER) $(RESLIB3SRSFILES) \
+ ) > $(NULLDEV)
+.ENDIF # "$(common_build_reslib)"!=""
+
+$(RESLIB3TARGETN): \
+ $(RESLIB3SRSFILES) \
+ $(RESLIB3BMPS)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI3)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI3)
+.ENDIF # "$(common_build_reslib)"!=""
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI3)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI3)
+.ENDIF # "$(common_build_reslib)"!=""
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(RESLIB3TARGETN)"!=""
+
+
+# unroll begin
+
+.IF "$(RESLIB4TARGETN)"!=""
+
+.IF "$(BUILDHIDS)"!=""
+HIDRES4PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(RESLIB4NAME)_res.hid
+
+#HACK cut off the dirty srs files which are included from solver
+RESLIB4HIDFILES:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,.srs,_srs.hid $(RESLIB4SRSFILES)))
+$(HIDRES4PARTICLE): $(RESLIB4HIDFILES)
+ @echo "Making: " $(@:f)
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+# need to strip since solaris cannot handle tab-only whitespace here
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(strip, $(subst,/,/ $(RESLIB4HIDFILES))) )| xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDRES4PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(RSC_MULTI4) : \
+ $(RESLIB4SRSFILES) \
+ $(RESLIB4TARGETN) \
+ $(RESLIB4BMPS)
+ @echo Compiling: $(@:f)
+.IF "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB4NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB4IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))} \
+ -ft=$@ \
+ $(RSC4HEADER) $(RESLIB4SRSFILES) \
+ ) > $(NULLDEV)
+.ELSE # "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(BIN)/$(RESLIB4NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB4IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil=$(BIN) \
+ -ft=$@ \
+ $(RSC4HEADER) $(RESLIB4SRSFILES) \
+ ) > $(NULLDEV)
+.ENDIF # "$(common_build_reslib)"!=""
+
+$(RESLIB4TARGETN): \
+ $(RESLIB4SRSFILES) \
+ $(RESLIB4BMPS)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI4)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI4)
+.ENDIF # "$(common_build_reslib)"!=""
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI4)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI4)
+.ENDIF # "$(common_build_reslib)"!=""
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(RESLIB4TARGETN)"!=""
+
+
+# unroll begin
+
+.IF "$(RESLIB5TARGETN)"!=""
+
+.IF "$(BUILDHIDS)"!=""
+HIDRES5PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(RESLIB5NAME)_res.hid
+
+#HACK cut off the dirty srs files which are included from solver
+RESLIB5HIDFILES:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,.srs,_srs.hid $(RESLIB5SRSFILES)))
+$(HIDRES5PARTICLE): $(RESLIB5HIDFILES)
+ @echo "Making: " $(@:f)
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+# need to strip since solaris cannot handle tab-only whitespace here
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(strip, $(subst,/,/ $(RESLIB5HIDFILES))) )| xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDRES5PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(RSC_MULTI5) : \
+ $(RESLIB5SRSFILES) \
+ $(RESLIB5TARGETN) \
+ $(RESLIB5BMPS)
+ @echo Compiling: $(@:f)
+.IF "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB5NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB5IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))} \
+ -ft=$@ \
+ $(RSC5HEADER) $(RESLIB5SRSFILES) \
+ ) > $(NULLDEV)
+.ELSE # "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(BIN)/$(RESLIB5NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB5IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil=$(BIN) \
+ -ft=$@ \
+ $(RSC5HEADER) $(RESLIB5SRSFILES) \
+ ) > $(NULLDEV)
+.ENDIF # "$(common_build_reslib)"!=""
+
+$(RESLIB5TARGETN): \
+ $(RESLIB5SRSFILES) \
+ $(RESLIB5BMPS)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI5)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI5)
+.ENDIF # "$(common_build_reslib)"!=""
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI5)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI5)
+.ENDIF # "$(common_build_reslib)"!=""
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(RESLIB5TARGETN)"!=""
+
+
+# unroll begin
+
+.IF "$(RESLIB6TARGETN)"!=""
+
+.IF "$(BUILDHIDS)"!=""
+HIDRES6PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(RESLIB6NAME)_res.hid
+
+#HACK cut off the dirty srs files which are included from solver
+RESLIB6HIDFILES:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,.srs,_srs.hid $(RESLIB6SRSFILES)))
+$(HIDRES6PARTICLE): $(RESLIB6HIDFILES)
+ @echo "Making: " $(@:f)
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+# need to strip since solaris cannot handle tab-only whitespace here
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(strip, $(subst,/,/ $(RESLIB6HIDFILES))) )| xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDRES6PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(RSC_MULTI6) : \
+ $(RESLIB6SRSFILES) \
+ $(RESLIB6TARGETN) \
+ $(RESLIB6BMPS)
+ @echo Compiling: $(@:f)
+.IF "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB6NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB6IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))} \
+ -ft=$@ \
+ $(RSC6HEADER) $(RESLIB6SRSFILES) \
+ ) > $(NULLDEV)
+.ELSE # "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(BIN)/$(RESLIB6NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB6IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil=$(BIN) \
+ -ft=$@ \
+ $(RSC6HEADER) $(RESLIB6SRSFILES) \
+ ) > $(NULLDEV)
+.ENDIF # "$(common_build_reslib)"!=""
+
+$(RESLIB6TARGETN): \
+ $(RESLIB6SRSFILES) \
+ $(RESLIB6BMPS)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI6)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI6)
+.ENDIF # "$(common_build_reslib)"!=""
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI6)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI6)
+.ENDIF # "$(common_build_reslib)"!=""
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(RESLIB6TARGETN)"!=""
+
+
+# unroll begin
+
+.IF "$(RESLIB7TARGETN)"!=""
+
+.IF "$(BUILDHIDS)"!=""
+HIDRES7PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(RESLIB7NAME)_res.hid
+
+#HACK cut off the dirty srs files which are included from solver
+RESLIB7HIDFILES:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,.srs,_srs.hid $(RESLIB7SRSFILES)))
+$(HIDRES7PARTICLE): $(RESLIB7HIDFILES)
+ @echo "Making: " $(@:f)
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+# need to strip since solaris cannot handle tab-only whitespace here
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(strip, $(subst,/,/ $(RESLIB7HIDFILES))) )| xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDRES7PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(RSC_MULTI7) : \
+ $(RESLIB7SRSFILES) \
+ $(RESLIB7TARGETN) \
+ $(RESLIB7BMPS)
+ @echo Compiling: $(@:f)
+.IF "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB7NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB7IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))} \
+ -ft=$@ \
+ $(RSC7HEADER) $(RESLIB7SRSFILES) \
+ ) > $(NULLDEV)
+.ELSE # "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(BIN)/$(RESLIB7NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB7IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil=$(BIN) \
+ -ft=$@ \
+ $(RSC7HEADER) $(RESLIB7SRSFILES) \
+ ) > $(NULLDEV)
+.ENDIF # "$(common_build_reslib)"!=""
+
+$(RESLIB7TARGETN): \
+ $(RESLIB7SRSFILES) \
+ $(RESLIB7BMPS)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI7)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI7)
+.ENDIF # "$(common_build_reslib)"!=""
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI7)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI7)
+.ENDIF # "$(common_build_reslib)"!=""
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(RESLIB7TARGETN)"!=""
+
+
+# unroll begin
+
+.IF "$(RESLIB8TARGETN)"!=""
+
+.IF "$(BUILDHIDS)"!=""
+HIDRES8PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(RESLIB8NAME)_res.hid
+
+#HACK cut off the dirty srs files which are included from solver
+RESLIB8HIDFILES:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,.srs,_srs.hid $(RESLIB8SRSFILES)))
+$(HIDRES8PARTICLE): $(RESLIB8HIDFILES)
+ @echo "Making: " $(@:f)
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+# need to strip since solaris cannot handle tab-only whitespace here
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(strip, $(subst,/,/ $(RESLIB8HIDFILES))) )| xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDRES8PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(RSC_MULTI8) : \
+ $(RESLIB8SRSFILES) \
+ $(RESLIB8TARGETN) \
+ $(RESLIB8BMPS)
+ @echo Compiling: $(@:f)
+.IF "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB8NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB8IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))} \
+ -ft=$@ \
+ $(RSC8HEADER) $(RESLIB8SRSFILES) \
+ ) > $(NULLDEV)
+.ELSE # "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(BIN)/$(RESLIB8NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB8IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil=$(BIN) \
+ -ft=$@ \
+ $(RSC8HEADER) $(RESLIB8SRSFILES) \
+ ) > $(NULLDEV)
+.ENDIF # "$(common_build_reslib)"!=""
+
+$(RESLIB8TARGETN): \
+ $(RESLIB8SRSFILES) \
+ $(RESLIB8BMPS)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI8)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI8)
+.ENDIF # "$(common_build_reslib)"!=""
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI8)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI8)
+.ENDIF # "$(common_build_reslib)"!=""
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(RESLIB8TARGETN)"!=""
+
+
+# unroll begin
+
+.IF "$(RESLIB9TARGETN)"!=""
+
+.IF "$(BUILDHIDS)"!=""
+HIDRES9PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(RESLIB9NAME)_res.hid
+
+#HACK cut off the dirty srs files which are included from solver
+RESLIB9HIDFILES:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,.srs,_srs.hid $(RESLIB9SRSFILES)))
+$(HIDRES9PARTICLE): $(RESLIB9HIDFILES)
+ @echo "Making: " $(@:f)
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+# need to strip since solaris cannot handle tab-only whitespace here
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(strip, $(subst,/,/ $(RESLIB9HIDFILES))) )| xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDRES9PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(RSC_MULTI9) : \
+ $(RESLIB9SRSFILES) \
+ $(RESLIB9TARGETN) \
+ $(RESLIB9BMPS)
+ @echo Compiling: $(@:f)
+.IF "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB9NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB9IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))} \
+ -ft=$@ \
+ $(RSC9HEADER) $(RESLIB9SRSFILES) \
+ ) > $(NULLDEV)
+.ELSE # "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(BIN)/$(RESLIB9NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB9IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil=$(BIN) \
+ -ft=$@ \
+ $(RSC9HEADER) $(RESLIB9SRSFILES) \
+ ) > $(NULLDEV)
+.ENDIF # "$(common_build_reslib)"!=""
+
+$(RESLIB9TARGETN): \
+ $(RESLIB9SRSFILES) \
+ $(RESLIB9BMPS)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI9)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI9)
+.ENDIF # "$(common_build_reslib)"!=""
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI9)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI9)
+.ENDIF # "$(common_build_reslib)"!=""
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(RESLIB9TARGETN)"!=""
+
+
+# unroll begin
+
+.IF "$(RESLIB10TARGETN)"!=""
+
+.IF "$(BUILDHIDS)"!=""
+HIDRES10PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(RESLIB10NAME)_res.hid
+
+#HACK cut off the dirty srs files which are included from solver
+RESLIB10HIDFILES:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,.srs,_srs.hid $(RESLIB10SRSFILES)))
+$(HIDRES10PARTICLE): $(RESLIB10HIDFILES)
+ @echo "Making: " $(@:f)
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+# need to strip since solaris cannot handle tab-only whitespace here
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(strip, $(subst,/,/ $(RESLIB10HIDFILES))) )| xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDRES10PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(RSC_MULTI10) : \
+ $(RESLIB10SRSFILES) \
+ $(RESLIB10TARGETN) \
+ $(RESLIB10BMPS)
+ @echo Compiling: $(@:f)
+.IF "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB10NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB10IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))} \
+ -ft=$@ \
+ $(RSC10HEADER) $(RESLIB10SRSFILES) \
+ ) > $(NULLDEV)
+.ELSE # "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(BIN)/$(RESLIB10NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB10IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil=$(BIN) \
+ -ft=$@ \
+ $(RSC10HEADER) $(RESLIB10SRSFILES) \
+ ) > $(NULLDEV)
+.ENDIF # "$(common_build_reslib)"!=""
+
+$(RESLIB10TARGETN): \
+ $(RESLIB10SRSFILES) \
+ $(RESLIB10BMPS)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI10)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI10)
+.ENDIF # "$(common_build_reslib)"!=""
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI10)
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI10)
+.ENDIF # "$(common_build_reslib)"!=""
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(RESLIB10TARGETN)"!=""
+
+
diff --git a/solenv/inc/_tg_scp.mk b/solenv/inc/_tg_scp.mk
new file mode 100644
index 000000000000..33ff97e21986
--- /dev/null
+++ b/solenv/inc/_tg_scp.mk
@@ -0,0 +1,180 @@
+# unroll begin
+
+.IF "$(SCP1TARGETN)"!=""
+
+# try to get missing parfiles
+$(PAR)/%.par : $(SOLARPARDIR)/%.par
+ @@-$(MKDIRHIER) $(@:d:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+LOCALSCP1FILES=$(foreach,i,$(SCP1FILES) $(foreach,j,$(SCP1LINK_PRODUCT_TYPE) $(PAR)/$j/$i ))
+
+$(SCP1TARGETN): $(LOCALSCP1FILES)
+ @echo "Making: " $(@:f)
+ @@-$(MKDIRHIER) $(BIN)/$(SCP1LINK_PRODUCT_TYPE)
+ $(COMMAND_ECHO)$(SCPLINK) $(SCPLINKFLAGS) @@$(mktmp $(foreach,i,$(SCP1FILES) $(subst,$(@:d:d:d), $(@:d:d))/$(i:+","))) -o $@
+.ENDIF
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(SCP2TARGETN)"!=""
+
+# try to get missing parfiles
+$(PAR)/%.par : $(SOLARPARDIR)/%.par
+ @@-$(MKDIRHIER) $(@:d:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+LOCALSCP2FILES=$(foreach,i,$(SCP2FILES) $(foreach,j,$(SCP2LINK_PRODUCT_TYPE) $(PAR)/$j/$i ))
+
+$(SCP2TARGETN): $(LOCALSCP2FILES)
+ @echo "Making: " $(@:f)
+ @@-$(MKDIRHIER) $(BIN)/$(SCP2LINK_PRODUCT_TYPE)
+ $(COMMAND_ECHO)$(SCPLINK) $(SCPLINKFLAGS) @@$(mktmp $(foreach,i,$(SCP2FILES) $(subst,$(@:d:d:d), $(@:d:d))/$(i:+","))) -o $@
+.ENDIF
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(SCP3TARGETN)"!=""
+
+# try to get missing parfiles
+$(PAR)/%.par : $(SOLARPARDIR)/%.par
+ @@-$(MKDIRHIER) $(@:d:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+LOCALSCP3FILES=$(foreach,i,$(SCP3FILES) $(foreach,j,$(SCP3LINK_PRODUCT_TYPE) $(PAR)/$j/$i ))
+
+$(SCP3TARGETN): $(LOCALSCP3FILES)
+ @echo "Making: " $(@:f)
+ @@-$(MKDIRHIER) $(BIN)/$(SCP3LINK_PRODUCT_TYPE)
+ $(COMMAND_ECHO)$(SCPLINK) $(SCPLINKFLAGS) @@$(mktmp $(foreach,i,$(SCP3FILES) $(subst,$(@:d:d:d), $(@:d:d))/$(i:+","))) -o $@
+.ENDIF
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(SCP4TARGETN)"!=""
+
+# try to get missing parfiles
+$(PAR)/%.par : $(SOLARPARDIR)/%.par
+ @@-$(MKDIRHIER) $(@:d:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+LOCALSCP4FILES=$(foreach,i,$(SCP4FILES) $(foreach,j,$(SCP4LINK_PRODUCT_TYPE) $(PAR)/$j/$i ))
+
+$(SCP4TARGETN): $(LOCALSCP4FILES)
+ @echo "Making: " $(@:f)
+ @@-$(MKDIRHIER) $(BIN)/$(SCP4LINK_PRODUCT_TYPE)
+ $(COMMAND_ECHO)$(SCPLINK) $(SCPLINKFLAGS) @@$(mktmp $(foreach,i,$(SCP4FILES) $(subst,$(@:d:d:d), $(@:d:d))/$(i:+","))) -o $@
+.ENDIF
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(SCP5TARGETN)"!=""
+
+# try to get missing parfiles
+$(PAR)/%.par : $(SOLARPARDIR)/%.par
+ @@-$(MKDIRHIER) $(@:d:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+LOCALSCP5FILES=$(foreach,i,$(SCP5FILES) $(foreach,j,$(SCP5LINK_PRODUCT_TYPE) $(PAR)/$j/$i ))
+
+$(SCP5TARGETN): $(LOCALSCP5FILES)
+ @echo "Making: " $(@:f)
+ @@-$(MKDIRHIER) $(BIN)/$(SCP5LINK_PRODUCT_TYPE)
+ $(COMMAND_ECHO)$(SCPLINK) $(SCPLINKFLAGS) @@$(mktmp $(foreach,i,$(SCP5FILES) $(subst,$(@:d:d:d), $(@:d:d))/$(i:+","))) -o $@
+.ENDIF
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(SCP6TARGETN)"!=""
+
+# try to get missing parfiles
+$(PAR)/%.par : $(SOLARPARDIR)/%.par
+ @@-$(MKDIRHIER) $(@:d:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+LOCALSCP6FILES=$(foreach,i,$(SCP6FILES) $(foreach,j,$(SCP6LINK_PRODUCT_TYPE) $(PAR)/$j/$i ))
+
+$(SCP6TARGETN): $(LOCALSCP6FILES)
+ @echo "Making: " $(@:f)
+ @@-$(MKDIRHIER) $(BIN)/$(SCP6LINK_PRODUCT_TYPE)
+ $(COMMAND_ECHO)$(SCPLINK) $(SCPLINKFLAGS) @@$(mktmp $(foreach,i,$(SCP6FILES) $(subst,$(@:d:d:d), $(@:d:d))/$(i:+","))) -o $@
+.ENDIF
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(SCP7TARGETN)"!=""
+
+# try to get missing parfiles
+$(PAR)/%.par : $(SOLARPARDIR)/%.par
+ @@-$(MKDIRHIER) $(@:d:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+LOCALSCP7FILES=$(foreach,i,$(SCP7FILES) $(foreach,j,$(SCP7LINK_PRODUCT_TYPE) $(PAR)/$j/$i ))
+
+$(SCP7TARGETN): $(LOCALSCP7FILES)
+ @echo "Making: " $(@:f)
+ @@-$(MKDIRHIER) $(BIN)/$(SCP7LINK_PRODUCT_TYPE)
+ $(COMMAND_ECHO)$(SCPLINK) $(SCPLINKFLAGS) @@$(mktmp $(foreach,i,$(SCP7FILES) $(subst,$(@:d:d:d), $(@:d:d))/$(i:+","))) -o $@
+.ENDIF
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(SCP8TARGETN)"!=""
+
+# try to get missing parfiles
+$(PAR)/%.par : $(SOLARPARDIR)/%.par
+ @@-$(MKDIRHIER) $(@:d:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+LOCALSCP8FILES=$(foreach,i,$(SCP8FILES) $(foreach,j,$(SCP8LINK_PRODUCT_TYPE) $(PAR)/$j/$i ))
+
+$(SCP8TARGETN): $(LOCALSCP8FILES)
+ @echo "Making: " $(@:f)
+ @@-$(MKDIRHIER) $(BIN)/$(SCP8LINK_PRODUCT_TYPE)
+ $(COMMAND_ECHO)$(SCPLINK) $(SCPLINKFLAGS) @@$(mktmp $(foreach,i,$(SCP8FILES) $(subst,$(@:d:d:d), $(@:d:d))/$(i:+","))) -o $@
+.ENDIF
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(SCP9TARGETN)"!=""
+
+# try to get missing parfiles
+$(PAR)/%.par : $(SOLARPARDIR)/%.par
+ @@-$(MKDIRHIER) $(@:d:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+LOCALSCP9FILES=$(foreach,i,$(SCP9FILES) $(foreach,j,$(SCP9LINK_PRODUCT_TYPE) $(PAR)/$j/$i ))
+
+$(SCP9TARGETN): $(LOCALSCP9FILES)
+ @echo "Making: " $(@:f)
+ @@-$(MKDIRHIER) $(BIN)/$(SCP9LINK_PRODUCT_TYPE)
+ $(COMMAND_ECHO)$(SCPLINK) $(SCPLINKFLAGS) @@$(mktmp $(foreach,i,$(SCP9FILES) $(subst,$(@:d:d:d), $(@:d:d))/$(i:+","))) -o $@
+.ENDIF
+
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(SCP10TARGETN)"!=""
+
+# try to get missing parfiles
+$(PAR)/%.par : $(SOLARPARDIR)/%.par
+ @@-$(MKDIRHIER) $(@:d:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+LOCALSCP10FILES=$(foreach,i,$(SCP10FILES) $(foreach,j,$(SCP10LINK_PRODUCT_TYPE) $(PAR)/$j/$i ))
+
+$(SCP10TARGETN): $(LOCALSCP10FILES)
+ @echo "Making: " $(@:f)
+ @@-$(MKDIRHIER) $(BIN)/$(SCP10LINK_PRODUCT_TYPE)
+ $(COMMAND_ECHO)$(SCPLINK) $(SCPLINKFLAGS) @@$(mktmp $(foreach,i,$(SCP10FILES) $(subst,$(@:d:d:d), $(@:d:d))/$(i:+","))) -o $@
+.ENDIF
+
+# Anweisungen fuer das Linken
diff --git a/solenv/inc/_tg_sdi.mk b/solenv/inc/_tg_sdi.mk
new file mode 100644
index 000000000000..5b3db9c696b7
--- /dev/null
+++ b/solenv/inc/_tg_sdi.mk
@@ -0,0 +1,270 @@
+# unroll begin
+
+.IF "$(HIDSID1PARTICLE)"!=""
+$(HIDSID1PARTICLE): $(SDI1TARGET)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@.$(ROUT).tmp $@
+ @$(TYPE) $(MISC)/$(SDI1NAME).sid | $(AWK) '$$1=="#define" { print $$2, $$3 }' > $@.$(ROUT).tmp
+ @-$(RM) $@
+ @$(RENAME) $@.$(ROUT).tmp $@
+.ENDIF # "$(HIDSID1PARTICLE)"!=""
+
+.IF "$(SDI1TARGET)"!=""
+$(SDI1TARGET): $(SVSDI1DEPEND) $(SDI1NAME).sdi
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(SVIDL) @$(mktmp \
+ $(VERBOSITY) \
+ -fs$(INCCOMX)/$(SDI1NAME).hxx \
+ -fd$(INCCOMX)/$(SDI1NAME).ilb \
+ -fm$(MISC)/$(SDI1NAME).don \
+ -fl$(MISC)/$(SDI1NAME).lst \
+ -fx$(SDI1EXPORT).sdi \
+ -fz$(MISC)/$(SDI1NAME).sid \
+ $(SDI1NAME).sdi -I$(MISC) -I$(SVSDIINC) -I$(INC) $(INCLUDE))
+.ENDIF # "$(SDI1TARGET)"!=""
+
+# Instruction for ???
+# unroll begin
+
+.IF "$(HIDSID2PARTICLE)"!=""
+$(HIDSID2PARTICLE): $(SDI2TARGET)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@.$(ROUT).tmp $@
+ @$(TYPE) $(MISC)/$(SDI2NAME).sid | $(AWK) '$$1=="#define" { print $$2, $$3 }' > $@.$(ROUT).tmp
+ @-$(RM) $@
+ @$(RENAME) $@.$(ROUT).tmp $@
+.ENDIF # "$(HIDSID2PARTICLE)"!=""
+
+.IF "$(SDI2TARGET)"!=""
+$(SDI2TARGET): $(SVSDI2DEPEND) $(SDI2NAME).sdi
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(SVIDL) @$(mktmp \
+ $(VERBOSITY) \
+ -fs$(INCCOMX)/$(SDI2NAME).hxx \
+ -fd$(INCCOMX)/$(SDI2NAME).ilb \
+ -fm$(MISC)/$(SDI2NAME).don \
+ -fl$(MISC)/$(SDI2NAME).lst \
+ -fx$(SDI2EXPORT).sdi \
+ -fz$(MISC)/$(SDI2NAME).sid \
+ $(SDI2NAME).sdi -I$(MISC) -I$(SVSDIINC) -I$(INC) $(INCLUDE))
+.ENDIF # "$(SDI2TARGET)"!=""
+
+# Instruction for ???
+# unroll begin
+
+.IF "$(HIDSID3PARTICLE)"!=""
+$(HIDSID3PARTICLE): $(SDI3TARGET)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@.$(ROUT).tmp $@
+ @$(TYPE) $(MISC)/$(SDI3NAME).sid | $(AWK) '$$1=="#define" { print $$2, $$3 }' > $@.$(ROUT).tmp
+ @-$(RM) $@
+ @$(RENAME) $@.$(ROUT).tmp $@
+.ENDIF # "$(HIDSID3PARTICLE)"!=""
+
+.IF "$(SDI3TARGET)"!=""
+$(SDI3TARGET): $(SVSDI3DEPEND) $(SDI3NAME).sdi
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(SVIDL) @$(mktmp \
+ $(VERBOSITY) \
+ -fs$(INCCOMX)/$(SDI3NAME).hxx \
+ -fd$(INCCOMX)/$(SDI3NAME).ilb \
+ -fm$(MISC)/$(SDI3NAME).don \
+ -fl$(MISC)/$(SDI3NAME).lst \
+ -fx$(SDI3EXPORT).sdi \
+ -fz$(MISC)/$(SDI3NAME).sid \
+ $(SDI3NAME).sdi -I$(MISC) -I$(SVSDIINC) -I$(INC) $(INCLUDE))
+.ENDIF # "$(SDI3TARGET)"!=""
+
+# Instruction for ???
+# unroll begin
+
+.IF "$(HIDSID4PARTICLE)"!=""
+$(HIDSID4PARTICLE): $(SDI4TARGET)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@.$(ROUT).tmp $@
+ @$(TYPE) $(MISC)/$(SDI4NAME).sid | $(AWK) '$$1=="#define" { print $$2, $$3 }' > $@.$(ROUT).tmp
+ @-$(RM) $@
+ @$(RENAME) $@.$(ROUT).tmp $@
+.ENDIF # "$(HIDSID4PARTICLE)"!=""
+
+.IF "$(SDI4TARGET)"!=""
+$(SDI4TARGET): $(SVSDI4DEPEND) $(SDI4NAME).sdi
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(SVIDL) @$(mktmp \
+ $(VERBOSITY) \
+ -fs$(INCCOMX)/$(SDI4NAME).hxx \
+ -fd$(INCCOMX)/$(SDI4NAME).ilb \
+ -fm$(MISC)/$(SDI4NAME).don \
+ -fl$(MISC)/$(SDI4NAME).lst \
+ -fx$(SDI4EXPORT).sdi \
+ -fz$(MISC)/$(SDI4NAME).sid \
+ $(SDI4NAME).sdi -I$(MISC) -I$(SVSDIINC) -I$(INC) $(INCLUDE))
+.ENDIF # "$(SDI4TARGET)"!=""
+
+# Instruction for ???
+# unroll begin
+
+.IF "$(HIDSID5PARTICLE)"!=""
+$(HIDSID5PARTICLE): $(SDI5TARGET)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@.$(ROUT).tmp $@
+ @$(TYPE) $(MISC)/$(SDI5NAME).sid | $(AWK) '$$1=="#define" { print $$2, $$3 }' > $@.$(ROUT).tmp
+ @-$(RM) $@
+ @$(RENAME) $@.$(ROUT).tmp $@
+.ENDIF # "$(HIDSID5PARTICLE)"!=""
+
+.IF "$(SDI5TARGET)"!=""
+$(SDI5TARGET): $(SVSDI5DEPEND) $(SDI5NAME).sdi
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(SVIDL) @$(mktmp \
+ $(VERBOSITY) \
+ -fs$(INCCOMX)/$(SDI5NAME).hxx \
+ -fd$(INCCOMX)/$(SDI5NAME).ilb \
+ -fm$(MISC)/$(SDI5NAME).don \
+ -fl$(MISC)/$(SDI5NAME).lst \
+ -fx$(SDI5EXPORT).sdi \
+ -fz$(MISC)/$(SDI5NAME).sid \
+ $(SDI5NAME).sdi -I$(MISC) -I$(SVSDIINC) -I$(INC) $(INCLUDE))
+.ENDIF # "$(SDI5TARGET)"!=""
+
+# Instruction for ???
+# unroll begin
+
+.IF "$(HIDSID6PARTICLE)"!=""
+$(HIDSID6PARTICLE): $(SDI6TARGET)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@.$(ROUT).tmp $@
+ @$(TYPE) $(MISC)/$(SDI6NAME).sid | $(AWK) '$$1=="#define" { print $$2, $$3 }' > $@.$(ROUT).tmp
+ @-$(RM) $@
+ @$(RENAME) $@.$(ROUT).tmp $@
+.ENDIF # "$(HIDSID6PARTICLE)"!=""
+
+.IF "$(SDI6TARGET)"!=""
+$(SDI6TARGET): $(SVSDI6DEPEND) $(SDI6NAME).sdi
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(SVIDL) @$(mktmp \
+ $(VERBOSITY) \
+ -fs$(INCCOMX)/$(SDI6NAME).hxx \
+ -fd$(INCCOMX)/$(SDI6NAME).ilb \
+ -fm$(MISC)/$(SDI6NAME).don \
+ -fl$(MISC)/$(SDI6NAME).lst \
+ -fx$(SDI6EXPORT).sdi \
+ -fz$(MISC)/$(SDI6NAME).sid \
+ $(SDI6NAME).sdi -I$(MISC) -I$(SVSDIINC) -I$(INC) $(INCLUDE))
+.ENDIF # "$(SDI6TARGET)"!=""
+
+# Instruction for ???
+# unroll begin
+
+.IF "$(HIDSID7PARTICLE)"!=""
+$(HIDSID7PARTICLE): $(SDI7TARGET)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@.$(ROUT).tmp $@
+ @$(TYPE) $(MISC)/$(SDI7NAME).sid | $(AWK) '$$1=="#define" { print $$2, $$3 }' > $@.$(ROUT).tmp
+ @-$(RM) $@
+ @$(RENAME) $@.$(ROUT).tmp $@
+.ENDIF # "$(HIDSID7PARTICLE)"!=""
+
+.IF "$(SDI7TARGET)"!=""
+$(SDI7TARGET): $(SVSDI7DEPEND) $(SDI7NAME).sdi
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(SVIDL) @$(mktmp \
+ $(VERBOSITY) \
+ -fs$(INCCOMX)/$(SDI7NAME).hxx \
+ -fd$(INCCOMX)/$(SDI7NAME).ilb \
+ -fm$(MISC)/$(SDI7NAME).don \
+ -fl$(MISC)/$(SDI7NAME).lst \
+ -fx$(SDI7EXPORT).sdi \
+ -fz$(MISC)/$(SDI7NAME).sid \
+ $(SDI7NAME).sdi -I$(MISC) -I$(SVSDIINC) -I$(INC) $(INCLUDE))
+.ENDIF # "$(SDI7TARGET)"!=""
+
+# Instruction for ???
+# unroll begin
+
+.IF "$(HIDSID8PARTICLE)"!=""
+$(HIDSID8PARTICLE): $(SDI8TARGET)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@.$(ROUT).tmp $@
+ @$(TYPE) $(MISC)/$(SDI8NAME).sid | $(AWK) '$$1=="#define" { print $$2, $$3 }' > $@.$(ROUT).tmp
+ @-$(RM) $@
+ @$(RENAME) $@.$(ROUT).tmp $@
+.ENDIF # "$(HIDSID8PARTICLE)"!=""
+
+.IF "$(SDI8TARGET)"!=""
+$(SDI8TARGET): $(SVSDI8DEPEND) $(SDI8NAME).sdi
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(SVIDL) @$(mktmp \
+ $(VERBOSITY) \
+ -fs$(INCCOMX)/$(SDI8NAME).hxx \
+ -fd$(INCCOMX)/$(SDI8NAME).ilb \
+ -fm$(MISC)/$(SDI8NAME).don \
+ -fl$(MISC)/$(SDI8NAME).lst \
+ -fx$(SDI8EXPORT).sdi \
+ -fz$(MISC)/$(SDI8NAME).sid \
+ $(SDI8NAME).sdi -I$(MISC) -I$(SVSDIINC) -I$(INC) $(INCLUDE))
+.ENDIF # "$(SDI8TARGET)"!=""
+
+# Instruction for ???
+# unroll begin
+
+.IF "$(HIDSID9PARTICLE)"!=""
+$(HIDSID9PARTICLE): $(SDI9TARGET)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@.$(ROUT).tmp $@
+ @$(TYPE) $(MISC)/$(SDI9NAME).sid | $(AWK) '$$1=="#define" { print $$2, $$3 }' > $@.$(ROUT).tmp
+ @-$(RM) $@
+ @$(RENAME) $@.$(ROUT).tmp $@
+.ENDIF # "$(HIDSID9PARTICLE)"!=""
+
+.IF "$(SDI9TARGET)"!=""
+$(SDI9TARGET): $(SVSDI9DEPEND) $(SDI9NAME).sdi
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(SVIDL) @$(mktmp \
+ $(VERBOSITY) \
+ -fs$(INCCOMX)/$(SDI9NAME).hxx \
+ -fd$(INCCOMX)/$(SDI9NAME).ilb \
+ -fm$(MISC)/$(SDI9NAME).don \
+ -fl$(MISC)/$(SDI9NAME).lst \
+ -fx$(SDI9EXPORT).sdi \
+ -fz$(MISC)/$(SDI9NAME).sid \
+ $(SDI9NAME).sdi -I$(MISC) -I$(SVSDIINC) -I$(INC) $(INCLUDE))
+.ENDIF # "$(SDI9TARGET)"!=""
+
+# Instruction for ???
+# unroll begin
+
+.IF "$(HIDSID10PARTICLE)"!=""
+$(HIDSID10PARTICLE): $(SDI10TARGET)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@.$(ROUT).tmp $@
+ @$(TYPE) $(MISC)/$(SDI10NAME).sid | $(AWK) '$$1=="#define" { print $$2, $$3 }' > $@.$(ROUT).tmp
+ @-$(RM) $@
+ @$(RENAME) $@.$(ROUT).tmp $@
+.ENDIF # "$(HIDSID10PARTICLE)"!=""
+
+.IF "$(SDI10TARGET)"!=""
+$(SDI10TARGET): $(SVSDI10DEPEND) $(SDI10NAME).sdi
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(SVIDL) @$(mktmp \
+ $(VERBOSITY) \
+ -fs$(INCCOMX)/$(SDI10NAME).hxx \
+ -fd$(INCCOMX)/$(SDI10NAME).ilb \
+ -fm$(MISC)/$(SDI10NAME).don \
+ -fl$(MISC)/$(SDI10NAME).lst \
+ -fx$(SDI10EXPORT).sdi \
+ -fz$(MISC)/$(SDI10NAME).sid \
+ $(SDI10NAME).sdi -I$(MISC) -I$(SVSDIINC) -I$(INC) $(INCLUDE))
+.ENDIF # "$(SDI10TARGET)"!=""
+
+# Instruction for ???
diff --git a/solenv/inc/_tg_shl.mk b/solenv/inc/_tg_shl.mk
new file mode 100644
index 000000000000..3d91783988b9
--- /dev/null
+++ b/solenv/inc/_tg_shl.mk
@@ -0,0 +1,6060 @@
+# unroll begin
+
+.IF "$(SHL1TARGETN)"!=""
+
+.IF "$(OS)"=="AIX"
+SHL1STDLIBS=
+.ENDIF
+
+.IF "$(SHLLINKARCONLY)" != ""
+SHL1STDLIBS=
+STDSHL=
+.ELSE
+SHL1ARCHIVES=
+.ENDIF
+
+# decide how to link
+.IF "$(SHL1CODETYPE)"=="C"
+SHL1LINKER=$(LINKC)
+SHL1STDSHL=$(subst,CPPRUNTIME, $(STDSHL))
+SHL1LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(SHL1CODETYPE)"=="C"
+SHL1LINKER=$(LINK)
+SHL1STDSHL=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDSHL))
+SHL1LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(SHL1CODETYPE)"=="C"
+
+SHL1RPATH*=OOO
+LINKFLAGSRUNPATH_$(SHL1RPATH)*=/ERROR:/Bad_SHL1RPATH_value
+SHL1LINKFLAGS+=$(LINKFLAGSRUNPATH_$(SHL1RPATH))
+
+.IF "$(SHL1USE_EXPORTS)"==""
+SHL1DEF*=$(MISC)/$(SHL1TARGET).def
+.ENDIF # "$(SHL1USE_EXPORTS)"==""
+
+EXTRALIBPATHS1=$(EXTRALIBPATHS)
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL1NOCHECK)"==""
+.IF "$(SOLAR_STLLIBPATH)"!=""
+EXTRALIBPATHS1+=-L$(SOLAR_STLLIBPATH)
+.ENDIF
+.ENDIF # "$(SHL1NOCHECK)"!=""
+.ENDIF
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ version object ++++++++++++++++++++++++++++++++++++++++
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(L10N_framework)"==""
+.IF "$(VERSIONOBJ)"!=""
+SHL1VERSIONOBJ:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL1TARGET))}$(VERSIONOBJ:f)
+USE_VERSIONH:=$(INCCOM)/$(SHL1VERSIONOBJ:b).h
+.IF "$(GUI)" == "UNX"
+SHL1VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL1TARGET))}$(VERSIONOBJ:f:s/.o/.obj/)
+.ELSE # "$(GUI)" == "UNX"
+SHL1VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL1TARGET))}$(VERSIONOBJ:f)
+.ENDIF # "$(GUI)" == "UNX"
+$(MISC)/$(SHL1VERSIONOBJ:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL1VERSIONOBJ:b).h
+# $(COPY) $(SOLARENV)/src/version.c $@
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL1VERSIONOBJ:b).h/ > $@
+
+.INIT : $(SHL1VERSIONOBJDEP)
+.ENDIF # "$(VERSIONOBJ)"!=""
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+.IF "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL1IMPLIB)" == ""
+SHL1IMPLIB=i$(TARGET)_t1
+.ENDIF # "$(SHL1IMPLIB)" == ""
+.IF "$(COM)" != "GCC"
+USE_1IMPLIB=-implib:$(LB)/$(SHL1IMPLIB).lib
+.ENDIF # "$(COM)" != "GCC"
+SHL1IMPLIBN=$(LB)/$(SHL1IMPLIB).lib
+ALLTAR : $(SHL1IMPLIBN)
+
+.IF "$(USE_DEFFILE)"==""
+USE_1IMPLIB_DEPS=$(LB)/$(SHL1IMPLIB).lib
+.ENDIF # "$(USE_DEFFILE)"==""
+.ENDIF # "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+USE_SHL1DEF=$(SHL1DEF)
+.ELSE # "$(GUI)" != "UNX"
+USE_SHL1DEF=
+SHL1DEPN+:=$(SHL1DEPNU)
+
+.IF "$(SHL1VERSIONMAP)"==""
+# to activate vmaps remove "#"
+USE_SHL1VERSIONMAP=$(MISC)/$(SHL1TARGET).vmap
+.ENDIF # "$(SHL1VERSIONMAP)"==""
+
+.IF "$(USE_SHL1VERSIONMAP)"!=""
+
+.IF "$(SHL1FILTERFILE)"!=""
+.IF "$(SHL1VERSIONMAP)"!=""
+#eine von beiden ist zuviel
+USE_SHL1VERSIONMAP=$(MISC)/$(SHL1TARGET).vmap
+$(USE_SHL1VERSIONMAP) .PHONY:
+ @echo -----------------------------
+ @echo you should only use versionmap OR exportfile
+ @echo -----------------------------
+# force_dmake_to_error
+
+.ENDIF # "$(SHL1VERSIONMAP)"!=""
+
+SHL1VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL1VERSIONMAP)
+
+$(USE_SHL1VERSIONMAP): \
+ $(SHL1OBJS)\
+ $(SHL1LIBS)\
+ $(SHL1FILTERFILE)
+ @$(RM) $@.dump
+.IF "$(SHL1OBJS)"!=""
+# dump remaining objects on the fly
+.IF "$(OS)"=="MACOSX"
+ @-nm $(SHL1OBJS:s/.obj/.o/) > $@.dump
+.ELSE
+ @nm $(SHL1OBJS:s/.obj/.o/) > $@.dump
+.ENDIF
+.ENDIF # "$(SHL1OBJS)!"=""
+ @$(TYPE) /dev/null $(SHL1LIBS:s/.lib/.dump/) >> $@.dump
+ $(COMMAND_ECHO) $(PERL) $(SOLARENV)/bin/mapgen.pl -d $@.dump -s $(SHL1INTERFACE) -f $(SHL1FILTERFILE) -m $@
+
+.ELSE # "$(SHL1FILTERFILE)"!=""
+USE_SHL1VERSIONMAP=$(MISC)/$(SHL1TARGET).vmap
+$(USE_SHL1VERSIONMAP) :
+.IF "$(VERBOSE)" == "TRUE"
+ @echo -----------------------------
+ @echo SHL1FILTERFILE not set!
+ @echo -----------------------------
+ @$(TOUCH) $@
+ @echo dummy file to keep the dependencies for later use.
+.ELSE
+ @$(TOUCH) $@
+.ENDIF
+# force_dmake_to_error
+.ENDIF # "$(SHL1FILTERFILE)"!=""
+.ELSE # "$(USE_SHL1VERSIONMAP)"!=""
+
+#and now for the plain non-generic way...
+.IF "$(SHL1VERSIONMAP)"!=""
+USE_SHL1VERSIONMAP=$(MISC)/$(SHL1VERSIONMAP:b)_$(SHL1TARGET)$(SHL1VERSIONMAP:e)
+SHL1VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL1VERSIONMAP)
+
+.IF "$(OS)"=="MACOSX"
+$(USE_SHL1VERSIONMAP): $(SHL1OBJS) $(SHL1LIBS)
+.ENDIF
+
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL1VERSIONMAP) .ERRREMOVE: $(SHL1VERSIONMAP)
+ @@-$(RM) -f $@
+# The following files will only be generated and needed on Mac OS X as temporary files
+# in order to generate exported symbols list out of Linux/Solaris map files
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) -f $@.symregexp >& $(NULLDEV)
+ @-$(RM) -f $@.expsymlist >& $(NULLDEV)
+.ENDIF
+# Its questionable if the following condition '.IF "$(COMID)"=="gcc3"' makes sense and what
+# happens if somebody will change it in the future
+.IF "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL1VERSIONMAP) | $(AWK) -f $(SOLARENV)/bin/addsym.awk > $@
+.ELIF "$(COMNAME)"=="sunpro5"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL1VERSIONMAP) | $(GREP) -v $(IGNORE_SYMBOLS) > $@
+.ELSE # "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL1VERSIONMAP) > $@
+.ENDIF # "$(COMID)"=="gcc3"
+ @chmod a+w $@
+# Mac OS X post-processing generate an exported symbols list from the generated map file
+# for details on exported symbols list see man ld on Mac OS X
+.IF "$(OS)"=="MACOSX"
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep -v "\*\|?" > $@.exported-symbols
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep "\*\|?" > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+.IF "$(SHL1OBJS)"!=""
+ -echo $(foreach,i,$(SHL1OBJS:s/.obj/.o/) $i) | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+.IF "$(SHL1LIBS)"!=""
+ $(COMMAND_ECHO)-$(TYPE) $(foreach,j,$(SHL1LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ cp $@.exported-symbols $@
+.ENDIF # .IF "$(OS)"=="MACOSX"
+.ENDIF # "$(SHL1VERSIONMAP)"!=""
+.ENDIF # "$(USE_SHL1VERSIONMAP)"!=""
+.ENDIF # "$(GUI)" != "UNX"
+
+.IF "$(UNIXVERSIONNAMES)"!=""
+.IF "$(OS)"!="MACOSX"
+.IF "$(GUI)"=="UNX"
+SHL1SONAME=\"$(SONAME_SWITCH)$(SHL1TARGETN:f)\"
+.ENDIF # "$(GUI)"!="UNX"
+.ENDIF # "$(OS)"!="MACOSX"
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+
+.IF "$(SHL1RES)"!=""
+SHL1ALLRES+=$(SHL1RES)
+SHL1LINKRES*=$(MISC)/$(SHL1TARGET).res
+SHL1LINKRESO*=$(MISC)/$(SHL1TARGET)_res.o
+.ENDIF # "$(SHL1RES)"!=""
+
+.IF "$(SHL1DEFAULTRES)$(use_shl_versions)"!=""
+SHL1DEFAULTRES*=$(MISC)/$(SHL1TARGET)_def.res
+SHL1ALLRES+=$(SHL1DEFAULTRES)
+SHL1LINKRES*=$(MISC)/$(SHL1TARGET).res
+SHL1LINKRESO*=$(MISC)/$(SHL1TARGET)_res.o
+.ENDIF # "$(SHL1DEFAULTRES)$(use_shl_versions)"!=""
+
+#.IF "$(SHL1TARGETN)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL1LIBS)"!=""
+$(MISC)/$(SHL1TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL1LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL1LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(SHL1TARGETN:b)_linkinc.ls
+$(SHL1TARGETN) : $(LINKINCTARGETS)
+
+.ELSE
+.IF "$(SHL1USE_EXPORTS)"=="name"
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(COM)"!="GCC"
+.IF "$(SHL1LIBS)"!=""
+SHL1LINKLIST=$(MISC)/$(SHL1TARGET)_link.lst
+SHL1LINKLISTPARAM=@$(SHL1LINKLIST)
+$(SHL1LINKLIST) : $(SHL1LIBS)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL1LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL1LIBS)"!=""
+.ENDIF # "$(COM)"!="GCC"
+.ENDIF
+.ENDIF # "$(SHL1USE_EXPORTS)"=="name"
+
+$(MISC)/%linkinc.ls:
+ @echo . > $@
+.ENDIF # "$(linkinc)"!=""
+
+.IF "$(GUI)" == "OS2"
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL1TARGET8=$(shell @fix_shl $(SHL1TARGET))
+.ENDIF
+
+.IF "$(GUI)" == "OS2"
+_SHL1IMP_ORD = $(SHL1STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(SHL1STDLIBS:^"$(LB)/")
+SHL1IMP_ORD = $(foreach,i,$(_SHL1IMP_ORD) $(shell @-ls $i))
+.ELSE
+SHL1IMP_ORD =
+.ENDIF
+
+
+$(SHL1TARGETN) : \
+ $(SHL1OBJS)\
+ $(SHL1LIBS)\
+ $(USE_1IMPLIB_DEPS)\
+ $(USE_SHL1DEF)\
+ $(USE_SHL1VERSIONMAP)\
+ $(SHL1RES)\
+ $(SHL1DEPN) \
+ $(SHL1IMP_ORD) \
+ $(SHL1LINKLIST)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(SHL1DEFAULTRES)"!=""
+ @@-$(RM) $(MISC)/$(SHL1DEFAULTRES:b).rc
+.IF "$(SHL1ICON)" != ""
+ @echo 1 ICON $(SHL1ICON) >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL1ADD_VERINFO)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL1ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+.ELSE # "$(SHL1ADD_VERINFO)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+.ENDIF # "$(SHL1ADD_VERINFO)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL1TARGET)$(DLLPOST) >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL1TARGET:b) >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL1DEFAULTRES:b).rc
+.ENDIF # "$(SHL1DEFAULTRES)"!=""
+.IF "$(SHL1ALLRES)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL1ALLRES) > $(SHL1LINKRES)
+.IF "$(COM)"=="GCC"
+ windres $(SHL1LINKRES) $(SHL1LINKRESO)
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(SHL1ALLRES)"!=""
+.IF "$(COM)"=="GCC" # always have to call dlltool explicitly as ld cannot handle # comment in .def
+ @echo dlltool --dllname $(SHL1TARGET)$(DLLPOST) \
+ --kill-at \\ > $(MISC)/$(TARGET).$(@:b)_1.cmd
+ @noop $(assign ALL1OBJLIST:=$(STDOBJ) $(SHL1OBJS) $(SHL1LINKRESO) $(shell $(TYPE) /dev/null $(SHL1LIBS) | $(SED) s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+.IF "$(DEFLIB1NAME)"!="" # do not have to include objs
+ @noop $(assign DEF1OBJLIST:=$(shell $(TYPE) $(foreach,i,$(DEFLIB1NAME) $(SLB)/$(i).lib) | sed s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+ @noop $(foreach,i,$(DEF1OBJLIST) $(assign ALL1OBJLIST:=$(ALL1OBJLIST:s?$i??)))
+.ENDIF # "$(DEFLIB1NAME)"!=""
+ @echo --output-exp $(MISC)/$(@:b)_exp.o \\ >> $(MISC)/$(TARGET).$(@:b)_1.cmd
+.IF "$(SHL1DEF)"!=""
+ @echo --input-def $(SHL1DEF) \\ >> $(MISC)/$(TARGET).$(@:b)_1.cmd
+.ELSE
+ @echo $(SHL1VERSIONOBJ) $(SHL1DESCRIPTIONOBJ) \\ >> $(MISC)/$(TARGET).$(@:b)_1.cmd
+.ENDIF
+ @echo $(ALL1OBJLIST) >> $(MISC)/$(TARGET).$(@:b)_1.cmd
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(MINGWSSTDOBJ) -o $@ \
+ $(STDOBJ) $(SHL1VERSIONOBJ) $(SHL1DESCRIPTIONOBJ) $(SHL1OBJS) $(SHL1LINKRESO) \
+ `$(TYPE) /dev/null $(SHL1LIBS) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ -Wl,--exclude-libs,ALL,--start-group $(SHL1STDLIBS) -Wl,--end-group \
+ $(SHL1STDSHL) $(STDSHL1) $(MISC)/$(@:b)_exp.o $(MINGWSSTDENDOBJ) \
+ -Wl,-Map,$(MISC)/$(@:b).map >> $(MISC)/$(TARGET).$(@:b)_1.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_1.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_1.cmd
+.ELSE
+.IF "$(linkinc)"==""
+.IF "$(SHL1USE_EXPORTS)"!="name"
+.IF "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL1LINKER) @$(mktmp \
+ $(SHL1LINKFLAGS) \
+ $(LINKFLAGSSHL) \
+ $(SHL1STACK) $(SHL1BASEX) \
+ -out:$@ \
+ -map:$(MISC)/$(@:b).map \
+ -def:$(SHL1DEF) \
+ $(USE_1IMPLIB) \
+ $(STDOBJ) \
+ $(SHL1VERSIONOBJ) $(SHL1OBJS) \
+ $(SHL1LIBS) \
+ $(SHL1STDLIBS) \
+ $(SHL1STDSHL) $(STDSHL1) \
+ $(SHL1LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL1LINKER) @$(mktmp $(SHL1LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL1BASEX) \
+ $(SHL1STACK) -out:$(SHL1TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(LB)/$(SHL1IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL1OBJS) $(SHL1VERSIONOBJ) \
+ $(SHL1LIBS) \
+ $(SHL1STDLIBS) \
+ $(SHL1STDSHL) $(STDSHL1) \
+ $(SHL1LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+.ELSE # "$(SHL1USE_EXPORTS)"!="name"
+ $(COMMAND_ECHO)$(SHL1LINKER) @$(mktmp $(SHL1LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL1BASEX) \
+ $(SHL1STACK) -out:$(SHL1TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(USE_1IMPLIB) \
+ $(STDOBJ) \
+ $(SHL1OBJS) $(SHL1VERSIONOBJ)) \
+ $(SHL1LINKLISTPARAM) \
+ @$(mktmp $(SHL1STDLIBS) \
+ $(SHL1STDSHL) $(STDSHL1) \
+ $(SHL1LINKRES) \
+ )
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(SHL1USE_EXPORTS)"!="name"
+.ELSE # "$(linkinc)"==""
+ $(COMMAND_ECHO)-$(RM) del $(MISC)/$(SHL1TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)/$(SHL1TARGET).lst
+ $(COMMAND_ECHO)$(TYPE) $(mktmp \
+ $(SHL1LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL1BASEX) \
+ $(SHL1STACK) $(MAPFILE) \
+ -out:$@ \
+ $(LB)/$(SHL1IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL1OBJS) \
+ $(SHL1STDLIBS) \
+ $(SHL1STDSHL) $(STDSHL1) \
+ $(SHL1LINKRES) \
+ ) >> $(MISC)/$(SHL1TARGET).lnk
+ $(COMMAND_ECHO)$(TYPE) $(MISC)/$(SHL1TARGETN:b)_linkinc.ls >> $(MISC)/$(SHL1TARGET).lnk
+ $(COMMAND_ECHO)$(SHL1LINKER) @$(MISC)/$(SHL1TARGET).lnk
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(linkinc)"==""
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)" == "WNT"
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_1.cmd
+ @echo $(STDSLO) $(SHL1OBJS:s/.obj/.o/) \
+ $(SHL1VERSIONOBJ) \
+ `cat /dev/null $(SHL1LIBS) | sed s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(SHL1LINKER) $(SHL1LINKFLAGS) $(SHL1VERSIONMAPPARA) $(LINKFLAGSSHL) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) -o $@ \
+ $(SHL1STDLIBS) $(SHL1ARCHIVES) $(SHL1STDSHL) $(STDSHL1) -filelist $(MISC)/$(@:b).list $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_1.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_1.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_1.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_1.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_1.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ shl $(SHL1RPATH) $@
+ @echo "Making: " $(@:f).jnilib
+ @macosx-create-bundle $@
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL1NOCHECK)"==""
+ $(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS1) $(SHL1TARGETN)
+.ENDIF # "$(SHL1NOCHECK)"!=""
+.ENDIF
+.ELSE # "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_1.cmd
+ @echo $(SHL1LINKER) $(SHL1LINKFLAGS) $(SHL1SONAME) $(LINKFLAGSSHL) $(SHL1VERSIONMAPPARA) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) $(STDSLO) $(SHL1OBJS:s/.obj/.o/) \
+ $(SHL1VERSIONOBJ) -o $@ \
+ `cat /dev/null $(SHL1LIBS) | tr -s " " "\n" | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ $(SHL1STDLIBS) $(SHL1ARCHIVES) $(SHL1STDSHL) $(STDSHL1) $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_1.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_1.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_1.cmd
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL1NOCHECK)"==""
+ $(COMMAND_ECHO)-$(RM) $(SHL1TARGETN:d)check_$(SHL1TARGETN:f)
+ $(COMMAND_ECHO)$(RENAME) $(SHL1TARGETN) $(SHL1TARGETN:d)check_$(SHL1TARGETN:f)
+.IF "$(VERBOSE)"=="TRUE"
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS1) $(SHL1TARGETN:d)check_$(SHL1TARGETN:f)
+.ELSE
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS1) -- -s $(SHL1TARGETN:d)check_$(SHL1TARGETN:f)
+.ENDIF
+.ENDIF # "$(SHL1NOCHECK)"!=""
+.ENDIF # "$(UPDATER)"=="YES"
+.ENDIF # "$(OS)"=="MACOSX"
+.IF "$(UNIXVERSIONNAMES)"!=""
+ $(COMMAND_ECHO)$(RM) $(LB)/$(SHL1TARGETN:b)
+ $(COMMAND_ECHO)cd $(LB) && ln -s $(SHL1TARGETN:f) $(SHL1TARGETN:b)
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+.IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+.ENDIF
+.ENDIF # "$(GUI)" == "UNX"
+
+.IF "$(GUI)" == "OS2"
+
+.IF "$(SHL1DEFAULTRES)"!=""
+ @+-$(RM) $(MISC)/$(SHL1DEFAULTRES:b).rc >& $(NULLDEV)
+.IF "$(SHL1ICON)" != ""
+ @-+echo 1 ICON $(SHL1ICON) >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL1ADD_VERINFO)"!=""
+ @-+echo $(EMQ)#include $(EMQ)"$(SHL1ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+.ENDIF # "$(SHL1ADD_VERINFO)"!=""
+ @-+echo MENU 1 BEGIN END >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+# @-+echo $(EMQ)RCDATA 1 { "Build string here" }$(EMQ) >> $(MISC)/$(SHL1DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+# YD 04/07/06 seems null, confuses rc cli: -i $(SOLARTESDIR)
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL1DEFAULTRES:b).rc
+.ENDIF # "$(SHL1DEFAULTRES)"!=""
+
+.IF "$(SHL1ALLRES)"!=""
+ $(COMMAND_ECHO)+$(TYPE) $(SHL1ALLRES) > $(SHL1LINKRES)
+.ENDIF # "$(SHL1ALLRES)"!=""
+
+.IF "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL1LINKER) $(SHL1LINKFLAGS) $(LINKFLAGSSHL) -o $@ \
+ $(SHL1DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL1OBJS) $(SHL1VERSIONOBJ) \
+ $(SHL1LIBS) \
+ $(SHL1STDLIBS:^"-l") \
+ $(SHL1LINKRES) \
+ $(SHL1STDSHL:^"-l") $(STDSHL1:^"-l")
+
+.ELSE # "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL1LINKER) -v $(SHL1LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL1BASEX) \
+ $(SHL1STACK) -o $(SHL1TARGETN) \
+ $(SHL1DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL1OBJS) $(SHL1VERSIONOBJ) \
+ $(SHL1LIBS) \
+ $(SHL1STDLIBS:^"-l") \
+ $(SHL1LINKRES) \
+ $(SHL1STDSHL:^"-l") $(STDSHL1:^"-l") \
+ $(LINKOUTPUTFILTER)
+ @$(LS) $@ >& $(NULLDEV)
+
+.ENDIF # "$(USE_DEFFILE)"!=""
+
+.IF "$(SHL1TARGET8)" != "$(SHL1TARGET)"
+ $(COMMAND_ECHO)+$(COPY) $@ $(@:d)$(SHL1TARGET8).dll
+.ENDIF
+
+.ENDIF # "$(GUI)" == "OS2"
+
+
+.IF "$(TESTDIR)"!=""
+.IF "$(NO_TESTS)"==""
+
+ALLTAR : runtest_$(SHL1TARGET)
+
+runtest_$(SHL1TARGET) : $(SHL1TARGETN)
+ testshl $(SHL1TARGETN) sce/$(SHL1TARGET).sce -msg -skip
+.ENDIF # "$(NO_TESTS)"==""
+.ENDIF # "$(TESTDIR)"!=""
+.ENDIF # "$(SHL1TARGETN)"!=""
+
+# unroll begin
+
+.IF "$(SHL2TARGETN)"!=""
+
+.IF "$(OS)"=="AIX"
+SHL2STDLIBS=
+.ENDIF
+
+.IF "$(SHLLINKARCONLY)" != ""
+SHL2STDLIBS=
+STDSHL=
+.ELSE
+SHL2ARCHIVES=
+.ENDIF
+
+# decide how to link
+.IF "$(SHL2CODETYPE)"=="C"
+SHL2LINKER=$(LINKC)
+SHL2STDSHL=$(subst,CPPRUNTIME, $(STDSHL))
+SHL2LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(SHL2CODETYPE)"=="C"
+SHL2LINKER=$(LINK)
+SHL2STDSHL=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDSHL))
+SHL2LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(SHL2CODETYPE)"=="C"
+
+SHL2RPATH*=OOO
+LINKFLAGSRUNPATH_$(SHL2RPATH)*=/ERROR:/Bad_SHL2RPATH_value
+SHL2LINKFLAGS+=$(LINKFLAGSRUNPATH_$(SHL2RPATH))
+
+.IF "$(SHL2USE_EXPORTS)"==""
+SHL2DEF*=$(MISC)/$(SHL2TARGET).def
+.ENDIF # "$(SHL2USE_EXPORTS)"==""
+
+EXTRALIBPATHS2=$(EXTRALIBPATHS)
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL2NOCHECK)"==""
+.IF "$(SOLAR_STLLIBPATH)"!=""
+EXTRALIBPATHS2+=-L$(SOLAR_STLLIBPATH)
+.ENDIF
+.ENDIF # "$(SHL2NOCHECK)"!=""
+.ENDIF
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ version object ++++++++++++++++++++++++++++++++++++++++
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(L10N_framework)"==""
+.IF "$(VERSIONOBJ)"!=""
+SHL2VERSIONOBJ:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL2TARGET))}$(VERSIONOBJ:f)
+USE_VERSIONH:=$(INCCOM)/$(SHL2VERSIONOBJ:b).h
+.IF "$(GUI)" == "UNX"
+SHL2VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL2TARGET))}$(VERSIONOBJ:f:s/.o/.obj/)
+.ELSE # "$(GUI)" == "UNX"
+SHL2VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL2TARGET))}$(VERSIONOBJ:f)
+.ENDIF # "$(GUI)" == "UNX"
+$(MISC)/$(SHL2VERSIONOBJ:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL2VERSIONOBJ:b).h
+# $(COPY) $(SOLARENV)/src/version.c $@
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL2VERSIONOBJ:b).h/ > $@
+
+.INIT : $(SHL2VERSIONOBJDEP)
+.ENDIF # "$(VERSIONOBJ)"!=""
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+.IF "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL2IMPLIB)" == ""
+SHL2IMPLIB=i$(TARGET)_t2
+.ENDIF # "$(SHL2IMPLIB)" == ""
+.IF "$(COM)" != "GCC"
+USE_2IMPLIB=-implib:$(LB)/$(SHL2IMPLIB).lib
+.ENDIF # "$(COM)" != "GCC"
+SHL2IMPLIBN=$(LB)/$(SHL2IMPLIB).lib
+ALLTAR : $(SHL2IMPLIBN)
+
+.IF "$(USE_DEFFILE)"==""
+USE_2IMPLIB_DEPS=$(LB)/$(SHL2IMPLIB).lib
+.ENDIF # "$(USE_DEFFILE)"==""
+.ENDIF # "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+USE_SHL2DEF=$(SHL2DEF)
+.ELSE # "$(GUI)" != "UNX"
+USE_SHL2DEF=
+SHL2DEPN+:=$(SHL2DEPNU)
+
+.IF "$(SHL2VERSIONMAP)"==""
+# to activate vmaps remove "#"
+USE_SHL2VERSIONMAP=$(MISC)/$(SHL2TARGET).vmap
+.ENDIF # "$(SHL2VERSIONMAP)"==""
+
+.IF "$(USE_SHL2VERSIONMAP)"!=""
+
+.IF "$(SHL2FILTERFILE)"!=""
+.IF "$(SHL2VERSIONMAP)"!=""
+#eine von beiden ist zuviel
+USE_SHL2VERSIONMAP=$(MISC)/$(SHL2TARGET).vmap
+$(USE_SHL2VERSIONMAP) .PHONY:
+ @echo -----------------------------
+ @echo you should only use versionmap OR exportfile
+ @echo -----------------------------
+# force_dmake_to_error
+
+.ENDIF # "$(SHL2VERSIONMAP)"!=""
+
+SHL2VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL2VERSIONMAP)
+
+$(USE_SHL2VERSIONMAP): \
+ $(SHL2OBJS)\
+ $(SHL2LIBS)\
+ $(SHL2FILTERFILE)
+ @$(RM) $@.dump
+.IF "$(SHL2OBJS)"!=""
+# dump remaining objects on the fly
+.IF "$(OS)"=="MACOSX"
+ @-nm $(SHL2OBJS:s/.obj/.o/) > $@.dump
+.ELSE
+ @nm $(SHL2OBJS:s/.obj/.o/) > $@.dump
+.ENDIF
+.ENDIF # "$(SHL2OBJS)!"=""
+ @$(TYPE) /dev/null $(SHL2LIBS:s/.lib/.dump/) >> $@.dump
+ $(COMMAND_ECHO) $(PERL) $(SOLARENV)/bin/mapgen.pl -d $@.dump -s $(SHL2INTERFACE) -f $(SHL2FILTERFILE) -m $@
+
+.ELSE # "$(SHL2FILTERFILE)"!=""
+USE_SHL2VERSIONMAP=$(MISC)/$(SHL2TARGET).vmap
+$(USE_SHL2VERSIONMAP) :
+.IF "$(VERBOSE)" == "TRUE"
+ @echo -----------------------------
+ @echo SHL2FILTERFILE not set!
+ @echo -----------------------------
+ @$(TOUCH) $@
+ @echo dummy file to keep the dependencies for later use.
+.ELSE
+ @$(TOUCH) $@
+.ENDIF
+# force_dmake_to_error
+.ENDIF # "$(SHL2FILTERFILE)"!=""
+.ELSE # "$(USE_SHL2VERSIONMAP)"!=""
+
+#and now for the plain non-generic way...
+.IF "$(SHL2VERSIONMAP)"!=""
+USE_SHL2VERSIONMAP=$(MISC)/$(SHL2VERSIONMAP:b)_$(SHL2TARGET)$(SHL2VERSIONMAP:e)
+SHL2VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL2VERSIONMAP)
+
+.IF "$(OS)"=="MACOSX"
+$(USE_SHL2VERSIONMAP): $(SHL2OBJS) $(SHL2LIBS)
+.ENDIF
+
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL2VERSIONMAP) .ERRREMOVE: $(SHL2VERSIONMAP)
+ @@-$(RM) -f $@
+# The following files will only be generated and needed on Mac OS X as temporary files
+# in order to generate exported symbols list out of Linux/Solaris map files
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) -f $@.symregexp >& $(NULLDEV)
+ @-$(RM) -f $@.expsymlist >& $(NULLDEV)
+.ENDIF
+# Its questionable if the following condition '.IF "$(COMID)"=="gcc3"' makes sense and what
+# happens if somebody will change it in the future
+.IF "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL2VERSIONMAP) | $(AWK) -f $(SOLARENV)/bin/addsym.awk > $@
+.ELIF "$(COMNAME)"=="sunpro5"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL2VERSIONMAP) | $(GREP) -v $(IGNORE_SYMBOLS) > $@
+.ELSE # "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL2VERSIONMAP) > $@
+.ENDIF # "$(COMID)"=="gcc3"
+ @chmod a+w $@
+# Mac OS X post-processing generate an exported symbols list from the generated map file
+# for details on exported symbols list see man ld on Mac OS X
+.IF "$(OS)"=="MACOSX"
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep -v "\*\|?" > $@.exported-symbols
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep "\*\|?" > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+.IF "$(SHL2OBJS)"!=""
+ -echo $(foreach,i,$(SHL2OBJS:s/.obj/.o/) $i) | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+.IF "$(SHL2LIBS)"!=""
+ $(COMMAND_ECHO)-$(TYPE) $(foreach,j,$(SHL2LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ cp $@.exported-symbols $@
+.ENDIF # .IF "$(OS)"=="MACOSX"
+.ENDIF # "$(SHL2VERSIONMAP)"!=""
+.ENDIF # "$(USE_SHL2VERSIONMAP)"!=""
+.ENDIF # "$(GUI)" != "UNX"
+
+.IF "$(UNIXVERSIONNAMES)"!=""
+.IF "$(OS)"!="MACOSX"
+.IF "$(GUI)"=="UNX"
+SHL2SONAME=\"$(SONAME_SWITCH)$(SHL2TARGETN:f)\"
+.ENDIF # "$(GUI)"!="UNX"
+.ENDIF # "$(OS)"!="MACOSX"
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+
+.IF "$(SHL2RES)"!=""
+SHL2ALLRES+=$(SHL2RES)
+SHL2LINKRES*=$(MISC)/$(SHL2TARGET).res
+SHL2LINKRESO*=$(MISC)/$(SHL2TARGET)_res.o
+.ENDIF # "$(SHL2RES)"!=""
+
+.IF "$(SHL2DEFAULTRES)$(use_shl_versions)"!=""
+SHL2DEFAULTRES*=$(MISC)/$(SHL2TARGET)_def.res
+SHL2ALLRES+=$(SHL2DEFAULTRES)
+SHL2LINKRES*=$(MISC)/$(SHL2TARGET).res
+SHL2LINKRESO*=$(MISC)/$(SHL2TARGET)_res.o
+.ENDIF # "$(SHL2DEFAULTRES)$(use_shl_versions)"!=""
+
+#.IF "$(SHL2TARGETN)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL2LIBS)"!=""
+$(MISC)/$(SHL2TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL2LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL2LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(SHL2TARGETN:b)_linkinc.ls
+$(SHL2TARGETN) : $(LINKINCTARGETS)
+
+.ELSE
+.IF "$(SHL2USE_EXPORTS)"=="name"
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(COM)"!="GCC"
+.IF "$(SHL2LIBS)"!=""
+SHL2LINKLIST=$(MISC)/$(SHL2TARGET)_link.lst
+SHL2LINKLISTPARAM=@$(SHL2LINKLIST)
+$(SHL2LINKLIST) : $(SHL2LIBS)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL2LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL2LIBS)"!=""
+.ENDIF # "$(COM)"!="GCC"
+.ENDIF
+.ENDIF # "$(SHL2USE_EXPORTS)"=="name"
+
+$(MISC)/%linkinc.ls:
+ @echo . > $@
+.ENDIF # "$(linkinc)"!=""
+
+.IF "$(GUI)" == "OS2"
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL2TARGET8=$(shell @fix_shl $(SHL2TARGET))
+.ENDIF
+
+.IF "$(GUI)" == "OS2"
+_SHL2IMP_ORD = $(SHL2STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(SHL2STDLIBS:^"$(LB)/")
+SHL2IMP_ORD = $(foreach,i,$(_SHL2IMP_ORD) $(shell @-ls $i))
+.ELSE
+SHL2IMP_ORD =
+.ENDIF
+
+
+$(SHL2TARGETN) : \
+ $(SHL2OBJS)\
+ $(SHL2LIBS)\
+ $(USE_2IMPLIB_DEPS)\
+ $(USE_SHL2DEF)\
+ $(USE_SHL2VERSIONMAP)\
+ $(SHL2RES)\
+ $(SHL2DEPN) \
+ $(SHL2IMP_ORD) \
+ $(SHL2LINKLIST)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(SHL2DEFAULTRES)"!=""
+ @@-$(RM) $(MISC)/$(SHL2DEFAULTRES:b).rc
+.IF "$(SHL2ICON)" != ""
+ @echo 1 ICON $(SHL2ICON) >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL2ADD_VERINFO)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL2ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+.ELSE # "$(SHL2ADD_VERINFO)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+.ENDIF # "$(SHL2ADD_VERINFO)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL2TARGET)$(DLLPOST) >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL2TARGET:b) >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL2DEFAULTRES:b).rc
+.ENDIF # "$(SHL2DEFAULTRES)"!=""
+.IF "$(SHL2ALLRES)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL2ALLRES) > $(SHL2LINKRES)
+.IF "$(COM)"=="GCC"
+ windres $(SHL2LINKRES) $(SHL2LINKRESO)
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(SHL2ALLRES)"!=""
+.IF "$(COM)"=="GCC" # always have to call dlltool explicitly as ld cannot handle # comment in .def
+ @echo dlltool --dllname $(SHL2TARGET)$(DLLPOST) \
+ --kill-at \\ > $(MISC)/$(TARGET).$(@:b)_2.cmd
+ @noop $(assign ALL2OBJLIST:=$(STDOBJ) $(SHL2OBJS) $(SHL2LINKRESO) $(shell $(TYPE) /dev/null $(SHL2LIBS) | $(SED) s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+.IF "$(DEFLIB2NAME)"!="" # do not have to include objs
+ @noop $(assign DEF2OBJLIST:=$(shell $(TYPE) $(foreach,i,$(DEFLIB2NAME) $(SLB)/$(i).lib) | sed s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+ @noop $(foreach,i,$(DEF2OBJLIST) $(assign ALL2OBJLIST:=$(ALL2OBJLIST:s?$i??)))
+.ENDIF # "$(DEFLIB2NAME)"!=""
+ @echo --output-exp $(MISC)/$(@:b)_exp.o \\ >> $(MISC)/$(TARGET).$(@:b)_2.cmd
+.IF "$(SHL2DEF)"!=""
+ @echo --input-def $(SHL2DEF) \\ >> $(MISC)/$(TARGET).$(@:b)_2.cmd
+.ELSE
+ @echo $(SHL2VERSIONOBJ) $(SHL2DESCRIPTIONOBJ) \\ >> $(MISC)/$(TARGET).$(@:b)_2.cmd
+.ENDIF
+ @echo $(ALL2OBJLIST) >> $(MISC)/$(TARGET).$(@:b)_2.cmd
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(MINGWSSTDOBJ) -o $@ \
+ $(STDOBJ) $(SHL2VERSIONOBJ) $(SHL2DESCRIPTIONOBJ) $(SHL2OBJS) $(SHL2LINKRESO) \
+ `$(TYPE) /dev/null $(SHL2LIBS) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ -Wl,--exclude-libs,ALL,--start-group $(SHL2STDLIBS) -Wl,--end-group \
+ $(SHL2STDSHL) $(STDSHL2) $(MISC)/$(@:b)_exp.o $(MINGWSSTDENDOBJ) \
+ -Wl,-Map,$(MISC)/$(@:b).map >> $(MISC)/$(TARGET).$(@:b)_2.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_2.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_2.cmd
+.ELSE
+.IF "$(linkinc)"==""
+.IF "$(SHL2USE_EXPORTS)"!="name"
+.IF "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL2LINKER) @$(mktmp \
+ $(SHL2LINKFLAGS) \
+ $(LINKFLAGSSHL) \
+ $(SHL2STACK) $(SHL2BASEX) \
+ -out:$@ \
+ -map:$(MISC)/$(@:b).map \
+ -def:$(SHL2DEF) \
+ $(USE_2IMPLIB) \
+ $(STDOBJ) \
+ $(SHL2VERSIONOBJ) $(SHL2OBJS) \
+ $(SHL2LIBS) \
+ $(SHL2STDLIBS) \
+ $(SHL2STDSHL) $(STDSHL2) \
+ $(SHL2LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL2LINKER) @$(mktmp $(SHL2LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL2BASEX) \
+ $(SHL2STACK) -out:$(SHL2TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(LB)/$(SHL2IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL2OBJS) $(SHL2VERSIONOBJ) \
+ $(SHL2LIBS) \
+ $(SHL2STDLIBS) \
+ $(SHL2STDSHL) $(STDSHL2) \
+ $(SHL2LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+.ELSE # "$(SHL2USE_EXPORTS)"!="name"
+ $(COMMAND_ECHO)$(SHL2LINKER) @$(mktmp $(SHL2LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL2BASEX) \
+ $(SHL2STACK) -out:$(SHL2TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(USE_2IMPLIB) \
+ $(STDOBJ) \
+ $(SHL2OBJS) $(SHL2VERSIONOBJ)) \
+ $(SHL2LINKLISTPARAM) \
+ @$(mktmp $(SHL2STDLIBS) \
+ $(SHL2STDSHL) $(STDSHL2) \
+ $(SHL2LINKRES) \
+ )
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(SHL2USE_EXPORTS)"!="name"
+.ELSE # "$(linkinc)"==""
+ $(COMMAND_ECHO)-$(RM) del $(MISC)/$(SHL2TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)/$(SHL2TARGET).lst
+ $(COMMAND_ECHO)$(TYPE) $(mktmp \
+ $(SHL2LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL2BASEX) \
+ $(SHL2STACK) $(MAPFILE) \
+ -out:$@ \
+ $(LB)/$(SHL2IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL2OBJS) \
+ $(SHL2STDLIBS) \
+ $(SHL2STDSHL) $(STDSHL2) \
+ $(SHL2LINKRES) \
+ ) >> $(MISC)/$(SHL2TARGET).lnk
+ $(COMMAND_ECHO)$(TYPE) $(MISC)/$(SHL2TARGETN:b)_linkinc.ls >> $(MISC)/$(SHL2TARGET).lnk
+ $(COMMAND_ECHO)$(SHL2LINKER) @$(MISC)/$(SHL2TARGET).lnk
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(linkinc)"==""
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)" == "WNT"
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_2.cmd
+ @echo $(STDSLO) $(SHL2OBJS:s/.obj/.o/) \
+ $(SHL2VERSIONOBJ) \
+ `cat /dev/null $(SHL2LIBS) | sed s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(SHL2LINKER) $(SHL2LINKFLAGS) $(SHL2VERSIONMAPPARA) $(LINKFLAGSSHL) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) -o $@ \
+ $(SHL2STDLIBS) $(SHL2ARCHIVES) $(SHL2STDSHL) $(STDSHL2) -filelist $(MISC)/$(@:b).list $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_2.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_2.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_2.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_2.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_2.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ shl $(SHL2RPATH) $@
+ @echo "Making: " $(@:f).jnilib
+ @macosx-create-bundle $@
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL2NOCHECK)"==""
+ $(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS2) $(SHL2TARGETN)
+.ENDIF # "$(SHL2NOCHECK)"!=""
+.ENDIF
+.ELSE # "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_2.cmd
+ @echo $(SHL2LINKER) $(SHL2LINKFLAGS) $(SHL2SONAME) $(LINKFLAGSSHL) $(SHL2VERSIONMAPPARA) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) $(STDSLO) $(SHL2OBJS:s/.obj/.o/) \
+ $(SHL2VERSIONOBJ) -o $@ \
+ `cat /dev/null $(SHL2LIBS) | tr -s " " "\n" | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ $(SHL2STDLIBS) $(SHL2ARCHIVES) $(SHL2STDSHL) $(STDSHL2) $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_2.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_2.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_2.cmd
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL2NOCHECK)"==""
+ $(COMMAND_ECHO)-$(RM) $(SHL2TARGETN:d)check_$(SHL2TARGETN:f)
+ $(COMMAND_ECHO)$(RENAME) $(SHL2TARGETN) $(SHL2TARGETN:d)check_$(SHL2TARGETN:f)
+.IF "$(VERBOSE)"=="TRUE"
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS2) $(SHL2TARGETN:d)check_$(SHL2TARGETN:f)
+.ELSE
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS2) -- -s $(SHL2TARGETN:d)check_$(SHL2TARGETN:f)
+.ENDIF
+.ENDIF # "$(SHL2NOCHECK)"!=""
+.ENDIF # "$(UPDATER)"=="YES"
+.ENDIF # "$(OS)"=="MACOSX"
+.IF "$(UNIXVERSIONNAMES)"!=""
+ $(COMMAND_ECHO)$(RM) $(LB)/$(SHL2TARGETN:b)
+ $(COMMAND_ECHO)cd $(LB) && ln -s $(SHL2TARGETN:f) $(SHL2TARGETN:b)
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+.IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+.ENDIF
+.ENDIF # "$(GUI)" == "UNX"
+
+.IF "$(GUI)" == "OS2"
+
+.IF "$(SHL2DEFAULTRES)"!=""
+ @+-$(RM) $(MISC)/$(SHL2DEFAULTRES:b).rc >& $(NULLDEV)
+.IF "$(SHL2ICON)" != ""
+ @-+echo 1 ICON $(SHL2ICON) >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL2ADD_VERINFO)"!=""
+ @-+echo $(EMQ)#include $(EMQ)"$(SHL2ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+.ENDIF # "$(SHL2ADD_VERINFO)"!=""
+ @-+echo MENU 1 BEGIN END >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+# @-+echo $(EMQ)RCDATA 1 { "Build string here" }$(EMQ) >> $(MISC)/$(SHL2DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+# YD 04/07/06 seems null, confuses rc cli: -i $(SOLARTESDIR)
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL2DEFAULTRES:b).rc
+.ENDIF # "$(SHL2DEFAULTRES)"!=""
+
+.IF "$(SHL2ALLRES)"!=""
+ $(COMMAND_ECHO)+$(TYPE) $(SHL2ALLRES) > $(SHL2LINKRES)
+.ENDIF # "$(SHL2ALLRES)"!=""
+
+.IF "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL2LINKER) $(SHL2LINKFLAGS) $(LINKFLAGSSHL) -o $@ \
+ $(SHL2DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL2OBJS) $(SHL2VERSIONOBJ) \
+ $(SHL2LIBS) \
+ $(SHL2STDLIBS:^"-l") \
+ $(SHL2LINKRES) \
+ $(SHL2STDSHL:^"-l") $(STDSHL2:^"-l")
+
+.ELSE # "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL2LINKER) -v $(SHL2LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL2BASEX) \
+ $(SHL2STACK) -o $(SHL2TARGETN) \
+ $(SHL2DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL2OBJS) $(SHL2VERSIONOBJ) \
+ $(SHL2LIBS) \
+ $(SHL2STDLIBS:^"-l") \
+ $(SHL2LINKRES) \
+ $(SHL2STDSHL:^"-l") $(STDSHL2:^"-l") \
+ $(LINKOUTPUTFILTER)
+ @$(LS) $@ >& $(NULLDEV)
+
+.ENDIF # "$(USE_DEFFILE)"!=""
+
+.IF "$(SHL2TARGET8)" != "$(SHL2TARGET)"
+ $(COMMAND_ECHO)+$(COPY) $@ $(@:d)$(SHL2TARGET8).dll
+.ENDIF
+
+.ENDIF # "$(GUI)" == "OS2"
+
+
+.IF "$(TESTDIR)"!=""
+.IF "$(NO_TESTS)"==""
+
+ALLTAR : runtest_$(SHL2TARGET)
+
+runtest_$(SHL2TARGET) : $(SHL2TARGETN)
+ testshl $(SHL2TARGETN) sce/$(SHL2TARGET).sce -msg -skip
+.ENDIF # "$(NO_TESTS)"==""
+.ENDIF # "$(TESTDIR)"!=""
+.ENDIF # "$(SHL2TARGETN)"!=""
+
+# unroll begin
+
+.IF "$(SHL3TARGETN)"!=""
+
+.IF "$(OS)"=="AIX"
+SHL3STDLIBS=
+.ENDIF
+
+.IF "$(SHLLINKARCONLY)" != ""
+SHL3STDLIBS=
+STDSHL=
+.ELSE
+SHL3ARCHIVES=
+.ENDIF
+
+# decide how to link
+.IF "$(SHL3CODETYPE)"=="C"
+SHL3LINKER=$(LINKC)
+SHL3STDSHL=$(subst,CPPRUNTIME, $(STDSHL))
+SHL3LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(SHL3CODETYPE)"=="C"
+SHL3LINKER=$(LINK)
+SHL3STDSHL=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDSHL))
+SHL3LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(SHL3CODETYPE)"=="C"
+
+SHL3RPATH*=OOO
+LINKFLAGSRUNPATH_$(SHL3RPATH)*=/ERROR:/Bad_SHL3RPATH_value
+SHL3LINKFLAGS+=$(LINKFLAGSRUNPATH_$(SHL3RPATH))
+
+.IF "$(SHL3USE_EXPORTS)"==""
+SHL3DEF*=$(MISC)/$(SHL3TARGET).def
+.ENDIF # "$(SHL3USE_EXPORTS)"==""
+
+EXTRALIBPATHS3=$(EXTRALIBPATHS)
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL3NOCHECK)"==""
+.IF "$(SOLAR_STLLIBPATH)"!=""
+EXTRALIBPATHS3+=-L$(SOLAR_STLLIBPATH)
+.ENDIF
+.ENDIF # "$(SHL3NOCHECK)"!=""
+.ENDIF
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ version object ++++++++++++++++++++++++++++++++++++++++
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(L10N_framework)"==""
+.IF "$(VERSIONOBJ)"!=""
+SHL3VERSIONOBJ:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL3TARGET))}$(VERSIONOBJ:f)
+USE_VERSIONH:=$(INCCOM)/$(SHL3VERSIONOBJ:b).h
+.IF "$(GUI)" == "UNX"
+SHL3VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL3TARGET))}$(VERSIONOBJ:f:s/.o/.obj/)
+.ELSE # "$(GUI)" == "UNX"
+SHL3VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL3TARGET))}$(VERSIONOBJ:f)
+.ENDIF # "$(GUI)" == "UNX"
+$(MISC)/$(SHL3VERSIONOBJ:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL3VERSIONOBJ:b).h
+# $(COPY) $(SOLARENV)/src/version.c $@
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL3VERSIONOBJ:b).h/ > $@
+
+.INIT : $(SHL3VERSIONOBJDEP)
+.ENDIF # "$(VERSIONOBJ)"!=""
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+.IF "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL3IMPLIB)" == ""
+SHL3IMPLIB=i$(TARGET)_t3
+.ENDIF # "$(SHL3IMPLIB)" == ""
+.IF "$(COM)" != "GCC"
+USE_3IMPLIB=-implib:$(LB)/$(SHL3IMPLIB).lib
+.ENDIF # "$(COM)" != "GCC"
+SHL3IMPLIBN=$(LB)/$(SHL3IMPLIB).lib
+ALLTAR : $(SHL3IMPLIBN)
+
+.IF "$(USE_DEFFILE)"==""
+USE_3IMPLIB_DEPS=$(LB)/$(SHL3IMPLIB).lib
+.ENDIF # "$(USE_DEFFILE)"==""
+.ENDIF # "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+USE_SHL3DEF=$(SHL3DEF)
+.ELSE # "$(GUI)" != "UNX"
+USE_SHL3DEF=
+SHL3DEPN+:=$(SHL3DEPNU)
+
+.IF "$(SHL3VERSIONMAP)"==""
+# to activate vmaps remove "#"
+USE_SHL3VERSIONMAP=$(MISC)/$(SHL3TARGET).vmap
+.ENDIF # "$(SHL3VERSIONMAP)"==""
+
+.IF "$(USE_SHL3VERSIONMAP)"!=""
+
+.IF "$(SHL3FILTERFILE)"!=""
+.IF "$(SHL3VERSIONMAP)"!=""
+#eine von beiden ist zuviel
+USE_SHL3VERSIONMAP=$(MISC)/$(SHL3TARGET).vmap
+$(USE_SHL3VERSIONMAP) .PHONY:
+ @echo -----------------------------
+ @echo you should only use versionmap OR exportfile
+ @echo -----------------------------
+# force_dmake_to_error
+
+.ENDIF # "$(SHL3VERSIONMAP)"!=""
+
+SHL3VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL3VERSIONMAP)
+
+$(USE_SHL3VERSIONMAP): \
+ $(SHL3OBJS)\
+ $(SHL3LIBS)\
+ $(SHL3FILTERFILE)
+ @$(RM) $@.dump
+.IF "$(SHL3OBJS)"!=""
+# dump remaining objects on the fly
+.IF "$(OS)"=="MACOSX"
+ @-nm $(SHL3OBJS:s/.obj/.o/) > $@.dump
+.ELSE
+ @nm $(SHL3OBJS:s/.obj/.o/) > $@.dump
+.ENDIF
+.ENDIF # "$(SHL3OBJS)!"=""
+ @$(TYPE) /dev/null $(SHL3LIBS:s/.lib/.dump/) >> $@.dump
+ $(COMMAND_ECHO) $(PERL) $(SOLARENV)/bin/mapgen.pl -d $@.dump -s $(SHL3INTERFACE) -f $(SHL3FILTERFILE) -m $@
+
+.ELSE # "$(SHL3FILTERFILE)"!=""
+USE_SHL3VERSIONMAP=$(MISC)/$(SHL3TARGET).vmap
+$(USE_SHL3VERSIONMAP) :
+.IF "$(VERBOSE)" == "TRUE"
+ @echo -----------------------------
+ @echo SHL3FILTERFILE not set!
+ @echo -----------------------------
+ @$(TOUCH) $@
+ @echo dummy file to keep the dependencies for later use.
+.ELSE
+ @$(TOUCH) $@
+.ENDIF
+# force_dmake_to_error
+.ENDIF # "$(SHL3FILTERFILE)"!=""
+.ELSE # "$(USE_SHL3VERSIONMAP)"!=""
+
+#and now for the plain non-generic way...
+.IF "$(SHL3VERSIONMAP)"!=""
+USE_SHL3VERSIONMAP=$(MISC)/$(SHL3VERSIONMAP:b)_$(SHL3TARGET)$(SHL3VERSIONMAP:e)
+SHL3VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL3VERSIONMAP)
+
+.IF "$(OS)"=="MACOSX"
+$(USE_SHL3VERSIONMAP): $(SHL3OBJS) $(SHL3LIBS)
+.ENDIF
+
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL3VERSIONMAP) .ERRREMOVE: $(SHL3VERSIONMAP)
+ @@-$(RM) -f $@
+# The following files will only be generated and needed on Mac OS X as temporary files
+# in order to generate exported symbols list out of Linux/Solaris map files
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) -f $@.symregexp >& $(NULLDEV)
+ @-$(RM) -f $@.expsymlist >& $(NULLDEV)
+.ENDIF
+# Its questionable if the following condition '.IF "$(COMID)"=="gcc3"' makes sense and what
+# happens if somebody will change it in the future
+.IF "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL3VERSIONMAP) | $(AWK) -f $(SOLARENV)/bin/addsym.awk > $@
+.ELIF "$(COMNAME)"=="sunpro5"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL3VERSIONMAP) | $(GREP) -v $(IGNORE_SYMBOLS) > $@
+.ELSE # "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL3VERSIONMAP) > $@
+.ENDIF # "$(COMID)"=="gcc3"
+ @chmod a+w $@
+# Mac OS X post-processing generate an exported symbols list from the generated map file
+# for details on exported symbols list see man ld on Mac OS X
+.IF "$(OS)"=="MACOSX"
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep -v "\*\|?" > $@.exported-symbols
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep "\*\|?" > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+.IF "$(SHL3OBJS)"!=""
+ -echo $(foreach,i,$(SHL3OBJS:s/.obj/.o/) $i) | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+.IF "$(SHL3LIBS)"!=""
+ $(COMMAND_ECHO)-$(TYPE) $(foreach,j,$(SHL3LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ cp $@.exported-symbols $@
+.ENDIF # .IF "$(OS)"=="MACOSX"
+.ENDIF # "$(SHL3VERSIONMAP)"!=""
+.ENDIF # "$(USE_SHL3VERSIONMAP)"!=""
+.ENDIF # "$(GUI)" != "UNX"
+
+.IF "$(UNIXVERSIONNAMES)"!=""
+.IF "$(OS)"!="MACOSX"
+.IF "$(GUI)"=="UNX"
+SHL3SONAME=\"$(SONAME_SWITCH)$(SHL3TARGETN:f)\"
+.ENDIF # "$(GUI)"!="UNX"
+.ENDIF # "$(OS)"!="MACOSX"
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+
+.IF "$(SHL3RES)"!=""
+SHL3ALLRES+=$(SHL3RES)
+SHL3LINKRES*=$(MISC)/$(SHL3TARGET).res
+SHL3LINKRESO*=$(MISC)/$(SHL3TARGET)_res.o
+.ENDIF # "$(SHL3RES)"!=""
+
+.IF "$(SHL3DEFAULTRES)$(use_shl_versions)"!=""
+SHL3DEFAULTRES*=$(MISC)/$(SHL3TARGET)_def.res
+SHL3ALLRES+=$(SHL3DEFAULTRES)
+SHL3LINKRES*=$(MISC)/$(SHL3TARGET).res
+SHL3LINKRESO*=$(MISC)/$(SHL3TARGET)_res.o
+.ENDIF # "$(SHL3DEFAULTRES)$(use_shl_versions)"!=""
+
+#.IF "$(SHL3TARGETN)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL3LIBS)"!=""
+$(MISC)/$(SHL3TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL3LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL3LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(SHL3TARGETN:b)_linkinc.ls
+$(SHL3TARGETN) : $(LINKINCTARGETS)
+
+.ELSE
+.IF "$(SHL3USE_EXPORTS)"=="name"
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(COM)"!="GCC"
+.IF "$(SHL3LIBS)"!=""
+SHL3LINKLIST=$(MISC)/$(SHL3TARGET)_link.lst
+SHL3LINKLISTPARAM=@$(SHL3LINKLIST)
+$(SHL3LINKLIST) : $(SHL3LIBS)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL3LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL3LIBS)"!=""
+.ENDIF # "$(COM)"!="GCC"
+.ENDIF
+.ENDIF # "$(SHL3USE_EXPORTS)"=="name"
+
+$(MISC)/%linkinc.ls:
+ @echo . > $@
+.ENDIF # "$(linkinc)"!=""
+
+.IF "$(GUI)" == "OS2"
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL3TARGET8=$(shell @fix_shl $(SHL3TARGET))
+.ENDIF
+
+.IF "$(GUI)" == "OS2"
+_SHL3IMP_ORD = $(SHL3STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(SHL3STDLIBS:^"$(LB)/")
+SHL3IMP_ORD = $(foreach,i,$(_SHL3IMP_ORD) $(shell @-ls $i))
+.ELSE
+SHL3IMP_ORD =
+.ENDIF
+
+
+$(SHL3TARGETN) : \
+ $(SHL3OBJS)\
+ $(SHL3LIBS)\
+ $(USE_3IMPLIB_DEPS)\
+ $(USE_SHL3DEF)\
+ $(USE_SHL3VERSIONMAP)\
+ $(SHL3RES)\
+ $(SHL3DEPN) \
+ $(SHL3IMP_ORD) \
+ $(SHL3LINKLIST)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(SHL3DEFAULTRES)"!=""
+ @@-$(RM) $(MISC)/$(SHL3DEFAULTRES:b).rc
+.IF "$(SHL3ICON)" != ""
+ @echo 1 ICON $(SHL3ICON) >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL3ADD_VERINFO)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL3ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+.ELSE # "$(SHL3ADD_VERINFO)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+.ENDIF # "$(SHL3ADD_VERINFO)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL3TARGET)$(DLLPOST) >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL3TARGET:b) >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL3DEFAULTRES:b).rc
+.ENDIF # "$(SHL3DEFAULTRES)"!=""
+.IF "$(SHL3ALLRES)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL3ALLRES) > $(SHL3LINKRES)
+.IF "$(COM)"=="GCC"
+ windres $(SHL3LINKRES) $(SHL3LINKRESO)
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(SHL3ALLRES)"!=""
+.IF "$(COM)"=="GCC" # always have to call dlltool explicitly as ld cannot handle # comment in .def
+ @echo dlltool --dllname $(SHL3TARGET)$(DLLPOST) \
+ --kill-at \\ > $(MISC)/$(TARGET).$(@:b)_3.cmd
+ @noop $(assign ALL3OBJLIST:=$(STDOBJ) $(SHL3OBJS) $(SHL3LINKRESO) $(shell $(TYPE) /dev/null $(SHL3LIBS) | $(SED) s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+.IF "$(DEFLIB3NAME)"!="" # do not have to include objs
+ @noop $(assign DEF3OBJLIST:=$(shell $(TYPE) $(foreach,i,$(DEFLIB3NAME) $(SLB)/$(i).lib) | sed s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+ @noop $(foreach,i,$(DEF3OBJLIST) $(assign ALL3OBJLIST:=$(ALL3OBJLIST:s?$i??)))
+.ENDIF # "$(DEFLIB3NAME)"!=""
+ @echo --output-exp $(MISC)/$(@:b)_exp.o \\ >> $(MISC)/$(TARGET).$(@:b)_3.cmd
+.IF "$(SHL3DEF)"!=""
+ @echo --input-def $(SHL3DEF) \\ >> $(MISC)/$(TARGET).$(@:b)_3.cmd
+.ELSE
+ @echo $(SHL3VERSIONOBJ) $(SHL3DESCRIPTIONOBJ) \\ >> $(MISC)/$(TARGET).$(@:b)_3.cmd
+.ENDIF
+ @echo $(ALL3OBJLIST) >> $(MISC)/$(TARGET).$(@:b)_3.cmd
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(MINGWSSTDOBJ) -o $@ \
+ $(STDOBJ) $(SHL3VERSIONOBJ) $(SHL3DESCRIPTIONOBJ) $(SHL3OBJS) $(SHL3LINKRESO) \
+ `$(TYPE) /dev/null $(SHL3LIBS) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ -Wl,--exclude-libs,ALL,--start-group $(SHL3STDLIBS) -Wl,--end-group \
+ $(SHL3STDSHL) $(STDSHL3) $(MISC)/$(@:b)_exp.o $(MINGWSSTDENDOBJ) \
+ -Wl,-Map,$(MISC)/$(@:b).map >> $(MISC)/$(TARGET).$(@:b)_3.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_3.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_3.cmd
+.ELSE
+.IF "$(linkinc)"==""
+.IF "$(SHL3USE_EXPORTS)"!="name"
+.IF "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL3LINKER) @$(mktmp \
+ $(SHL3LINKFLAGS) \
+ $(LINKFLAGSSHL) \
+ $(SHL3STACK) $(SHL3BASEX) \
+ -out:$@ \
+ -map:$(MISC)/$(@:b).map \
+ -def:$(SHL3DEF) \
+ $(USE_3IMPLIB) \
+ $(STDOBJ) \
+ $(SHL3VERSIONOBJ) $(SHL3OBJS) \
+ $(SHL3LIBS) \
+ $(SHL3STDLIBS) \
+ $(SHL3STDSHL) $(STDSHL3) \
+ $(SHL3LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL3LINKER) @$(mktmp $(SHL3LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL3BASEX) \
+ $(SHL3STACK) -out:$(SHL3TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(LB)/$(SHL3IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL3OBJS) $(SHL3VERSIONOBJ) \
+ $(SHL3LIBS) \
+ $(SHL3STDLIBS) \
+ $(SHL3STDSHL) $(STDSHL3) \
+ $(SHL3LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+.ELSE # "$(SHL3USE_EXPORTS)"!="name"
+ $(COMMAND_ECHO)$(SHL3LINKER) @$(mktmp $(SHL3LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL3BASEX) \
+ $(SHL3STACK) -out:$(SHL3TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(USE_3IMPLIB) \
+ $(STDOBJ) \
+ $(SHL3OBJS) $(SHL3VERSIONOBJ)) \
+ $(SHL3LINKLISTPARAM) \
+ @$(mktmp $(SHL3STDLIBS) \
+ $(SHL3STDSHL) $(STDSHL3) \
+ $(SHL3LINKRES) \
+ )
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(SHL3USE_EXPORTS)"!="name"
+.ELSE # "$(linkinc)"==""
+ $(COMMAND_ECHO)-$(RM) del $(MISC)/$(SHL3TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)/$(SHL3TARGET).lst
+ $(COMMAND_ECHO)$(TYPE) $(mktmp \
+ $(SHL3LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL3BASEX) \
+ $(SHL3STACK) $(MAPFILE) \
+ -out:$@ \
+ $(LB)/$(SHL3IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL3OBJS) \
+ $(SHL3STDLIBS) \
+ $(SHL3STDSHL) $(STDSHL3) \
+ $(SHL3LINKRES) \
+ ) >> $(MISC)/$(SHL3TARGET).lnk
+ $(COMMAND_ECHO)$(TYPE) $(MISC)/$(SHL3TARGETN:b)_linkinc.ls >> $(MISC)/$(SHL3TARGET).lnk
+ $(COMMAND_ECHO)$(SHL3LINKER) @$(MISC)/$(SHL3TARGET).lnk
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(linkinc)"==""
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)" == "WNT"
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_3.cmd
+ @echo $(STDSLO) $(SHL3OBJS:s/.obj/.o/) \
+ $(SHL3VERSIONOBJ) \
+ `cat /dev/null $(SHL3LIBS) | sed s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(SHL3LINKER) $(SHL3LINKFLAGS) $(SHL3VERSIONMAPPARA) $(LINKFLAGSSHL) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) -o $@ \
+ $(SHL3STDLIBS) $(SHL3ARCHIVES) $(SHL3STDSHL) $(STDSHL3) -filelist $(MISC)/$(@:b).list $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_3.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_3.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_3.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_3.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_3.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ shl $(SHL3RPATH) $@
+ @echo "Making: " $(@:f).jnilib
+ @macosx-create-bundle $@
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL3NOCHECK)"==""
+ $(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS3) $(SHL3TARGETN)
+.ENDIF # "$(SHL3NOCHECK)"!=""
+.ENDIF
+.ELSE # "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_3.cmd
+ @echo $(SHL3LINKER) $(SHL3LINKFLAGS) $(SHL3SONAME) $(LINKFLAGSSHL) $(SHL3VERSIONMAPPARA) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) $(STDSLO) $(SHL3OBJS:s/.obj/.o/) \
+ $(SHL3VERSIONOBJ) -o $@ \
+ `cat /dev/null $(SHL3LIBS) | tr -s " " "\n" | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ $(SHL3STDLIBS) $(SHL3ARCHIVES) $(SHL3STDSHL) $(STDSHL3) $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_3.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_3.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_3.cmd
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL3NOCHECK)"==""
+ $(COMMAND_ECHO)-$(RM) $(SHL3TARGETN:d)check_$(SHL3TARGETN:f)
+ $(COMMAND_ECHO)$(RENAME) $(SHL3TARGETN) $(SHL3TARGETN:d)check_$(SHL3TARGETN:f)
+.IF "$(VERBOSE)"=="TRUE"
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS3) $(SHL3TARGETN:d)check_$(SHL3TARGETN:f)
+.ELSE
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS3) -- -s $(SHL3TARGETN:d)check_$(SHL3TARGETN:f)
+.ENDIF
+.ENDIF # "$(SHL3NOCHECK)"!=""
+.ENDIF # "$(UPDATER)"=="YES"
+.ENDIF # "$(OS)"=="MACOSX"
+.IF "$(UNIXVERSIONNAMES)"!=""
+ $(COMMAND_ECHO)$(RM) $(LB)/$(SHL3TARGETN:b)
+ $(COMMAND_ECHO)cd $(LB) && ln -s $(SHL3TARGETN:f) $(SHL3TARGETN:b)
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+.IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+.ENDIF
+.ENDIF # "$(GUI)" == "UNX"
+
+.IF "$(GUI)" == "OS2"
+
+.IF "$(SHL3DEFAULTRES)"!=""
+ @+-$(RM) $(MISC)/$(SHL3DEFAULTRES:b).rc >& $(NULLDEV)
+.IF "$(SHL3ICON)" != ""
+ @-+echo 1 ICON $(SHL3ICON) >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL3ADD_VERINFO)"!=""
+ @-+echo $(EMQ)#include $(EMQ)"$(SHL3ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+.ENDIF # "$(SHL3ADD_VERINFO)"!=""
+ @-+echo MENU 1 BEGIN END >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+# @-+echo $(EMQ)RCDATA 1 { "Build string here" }$(EMQ) >> $(MISC)/$(SHL3DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+# YD 04/07/06 seems null, confuses rc cli: -i $(SOLARTESDIR)
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL3DEFAULTRES:b).rc
+.ENDIF # "$(SHL3DEFAULTRES)"!=""
+
+.IF "$(SHL3ALLRES)"!=""
+ $(COMMAND_ECHO)+$(TYPE) $(SHL3ALLRES) > $(SHL3LINKRES)
+.ENDIF # "$(SHL3ALLRES)"!=""
+
+.IF "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL3LINKER) $(SHL3LINKFLAGS) $(LINKFLAGSSHL) -o $@ \
+ $(SHL3DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL3OBJS) $(SHL3VERSIONOBJ) \
+ $(SHL3LIBS) \
+ $(SHL3STDLIBS:^"-l") \
+ $(SHL3LINKRES) \
+ $(SHL3STDSHL:^"-l") $(STDSHL3:^"-l")
+
+.ELSE # "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL3LINKER) -v $(SHL3LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL3BASEX) \
+ $(SHL3STACK) -o $(SHL3TARGETN) \
+ $(SHL3DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL3OBJS) $(SHL3VERSIONOBJ) \
+ $(SHL3LIBS) \
+ $(SHL3STDLIBS:^"-l") \
+ $(SHL3LINKRES) \
+ $(SHL3STDSHL:^"-l") $(STDSHL3:^"-l") \
+ $(LINKOUTPUTFILTER)
+ @$(LS) $@ >& $(NULLDEV)
+
+.ENDIF # "$(USE_DEFFILE)"!=""
+
+.IF "$(SHL3TARGET8)" != "$(SHL3TARGET)"
+ $(COMMAND_ECHO)+$(COPY) $@ $(@:d)$(SHL3TARGET8).dll
+.ENDIF
+
+.ENDIF # "$(GUI)" == "OS2"
+
+
+.IF "$(TESTDIR)"!=""
+.IF "$(NO_TESTS)"==""
+
+ALLTAR : runtest_$(SHL3TARGET)
+
+runtest_$(SHL3TARGET) : $(SHL3TARGETN)
+ testshl $(SHL3TARGETN) sce/$(SHL3TARGET).sce -msg -skip
+.ENDIF # "$(NO_TESTS)"==""
+.ENDIF # "$(TESTDIR)"!=""
+.ENDIF # "$(SHL3TARGETN)"!=""
+
+# unroll begin
+
+.IF "$(SHL4TARGETN)"!=""
+
+.IF "$(OS)"=="AIX"
+SHL4STDLIBS=
+.ENDIF
+
+.IF "$(SHLLINKARCONLY)" != ""
+SHL4STDLIBS=
+STDSHL=
+.ELSE
+SHL4ARCHIVES=
+.ENDIF
+
+# decide how to link
+.IF "$(SHL4CODETYPE)"=="C"
+SHL4LINKER=$(LINKC)
+SHL4STDSHL=$(subst,CPPRUNTIME, $(STDSHL))
+SHL4LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(SHL4CODETYPE)"=="C"
+SHL4LINKER=$(LINK)
+SHL4STDSHL=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDSHL))
+SHL4LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(SHL4CODETYPE)"=="C"
+
+SHL4RPATH*=OOO
+LINKFLAGSRUNPATH_$(SHL4RPATH)*=/ERROR:/Bad_SHL4RPATH_value
+SHL4LINKFLAGS+=$(LINKFLAGSRUNPATH_$(SHL4RPATH))
+
+.IF "$(SHL4USE_EXPORTS)"==""
+SHL4DEF*=$(MISC)/$(SHL4TARGET).def
+.ENDIF # "$(SHL4USE_EXPORTS)"==""
+
+EXTRALIBPATHS4=$(EXTRALIBPATHS)
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL4NOCHECK)"==""
+.IF "$(SOLAR_STLLIBPATH)"!=""
+EXTRALIBPATHS4+=-L$(SOLAR_STLLIBPATH)
+.ENDIF
+.ENDIF # "$(SHL4NOCHECK)"!=""
+.ENDIF
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ version object ++++++++++++++++++++++++++++++++++++++++
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(L10N_framework)"==""
+.IF "$(VERSIONOBJ)"!=""
+SHL4VERSIONOBJ:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL4TARGET))}$(VERSIONOBJ:f)
+USE_VERSIONH:=$(INCCOM)/$(SHL4VERSIONOBJ:b).h
+.IF "$(GUI)" == "UNX"
+SHL4VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL4TARGET))}$(VERSIONOBJ:f:s/.o/.obj/)
+.ELSE # "$(GUI)" == "UNX"
+SHL4VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL4TARGET))}$(VERSIONOBJ:f)
+.ENDIF # "$(GUI)" == "UNX"
+$(MISC)/$(SHL4VERSIONOBJ:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL4VERSIONOBJ:b).h
+# $(COPY) $(SOLARENV)/src/version.c $@
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL4VERSIONOBJ:b).h/ > $@
+
+.INIT : $(SHL4VERSIONOBJDEP)
+.ENDIF # "$(VERSIONOBJ)"!=""
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+.IF "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL4IMPLIB)" == ""
+SHL4IMPLIB=i$(TARGET)_t4
+.ENDIF # "$(SHL4IMPLIB)" == ""
+.IF "$(COM)" != "GCC"
+USE_4IMPLIB=-implib:$(LB)/$(SHL4IMPLIB).lib
+.ENDIF # "$(COM)" != "GCC"
+SHL4IMPLIBN=$(LB)/$(SHL4IMPLIB).lib
+ALLTAR : $(SHL4IMPLIBN)
+
+.IF "$(USE_DEFFILE)"==""
+USE_4IMPLIB_DEPS=$(LB)/$(SHL4IMPLIB).lib
+.ENDIF # "$(USE_DEFFILE)"==""
+.ENDIF # "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+USE_SHL4DEF=$(SHL4DEF)
+.ELSE # "$(GUI)" != "UNX"
+USE_SHL4DEF=
+SHL4DEPN+:=$(SHL4DEPNU)
+
+.IF "$(SHL4VERSIONMAP)"==""
+# to activate vmaps remove "#"
+USE_SHL4VERSIONMAP=$(MISC)/$(SHL4TARGET).vmap
+.ENDIF # "$(SHL4VERSIONMAP)"==""
+
+.IF "$(USE_SHL4VERSIONMAP)"!=""
+
+.IF "$(SHL4FILTERFILE)"!=""
+.IF "$(SHL4VERSIONMAP)"!=""
+#eine von beiden ist zuviel
+USE_SHL4VERSIONMAP=$(MISC)/$(SHL4TARGET).vmap
+$(USE_SHL4VERSIONMAP) .PHONY:
+ @echo -----------------------------
+ @echo you should only use versionmap OR exportfile
+ @echo -----------------------------
+# force_dmake_to_error
+
+.ENDIF # "$(SHL4VERSIONMAP)"!=""
+
+SHL4VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL4VERSIONMAP)
+
+$(USE_SHL4VERSIONMAP): \
+ $(SHL4OBJS)\
+ $(SHL4LIBS)\
+ $(SHL4FILTERFILE)
+ @$(RM) $@.dump
+.IF "$(SHL4OBJS)"!=""
+# dump remaining objects on the fly
+.IF "$(OS)"=="MACOSX"
+ @-nm $(SHL4OBJS:s/.obj/.o/) > $@.dump
+.ELSE
+ @nm $(SHL4OBJS:s/.obj/.o/) > $@.dump
+.ENDIF
+.ENDIF # "$(SHL4OBJS)!"=""
+ @$(TYPE) /dev/null $(SHL4LIBS:s/.lib/.dump/) >> $@.dump
+ $(COMMAND_ECHO) $(PERL) $(SOLARENV)/bin/mapgen.pl -d $@.dump -s $(SHL4INTERFACE) -f $(SHL4FILTERFILE) -m $@
+
+.ELSE # "$(SHL4FILTERFILE)"!=""
+USE_SHL4VERSIONMAP=$(MISC)/$(SHL4TARGET).vmap
+$(USE_SHL4VERSIONMAP) :
+.IF "$(VERBOSE)" == "TRUE"
+ @echo -----------------------------
+ @echo SHL4FILTERFILE not set!
+ @echo -----------------------------
+ @$(TOUCH) $@
+ @echo dummy file to keep the dependencies for later use.
+.ELSE
+ @$(TOUCH) $@
+.ENDIF
+# force_dmake_to_error
+.ENDIF # "$(SHL4FILTERFILE)"!=""
+.ELSE # "$(USE_SHL4VERSIONMAP)"!=""
+
+#and now for the plain non-generic way...
+.IF "$(SHL4VERSIONMAP)"!=""
+USE_SHL4VERSIONMAP=$(MISC)/$(SHL4VERSIONMAP:b)_$(SHL4TARGET)$(SHL4VERSIONMAP:e)
+SHL4VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL4VERSIONMAP)
+
+.IF "$(OS)"=="MACOSX"
+$(USE_SHL4VERSIONMAP): $(SHL4OBJS) $(SHL4LIBS)
+.ENDIF
+
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL4VERSIONMAP) .ERRREMOVE: $(SHL4VERSIONMAP)
+ @@-$(RM) -f $@
+# The following files will only be generated and needed on Mac OS X as temporary files
+# in order to generate exported symbols list out of Linux/Solaris map files
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) -f $@.symregexp >& $(NULLDEV)
+ @-$(RM) -f $@.expsymlist >& $(NULLDEV)
+.ENDIF
+# Its questionable if the following condition '.IF "$(COMID)"=="gcc3"' makes sense and what
+# happens if somebody will change it in the future
+.IF "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL4VERSIONMAP) | $(AWK) -f $(SOLARENV)/bin/addsym.awk > $@
+.ELIF "$(COMNAME)"=="sunpro5"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL4VERSIONMAP) | $(GREP) -v $(IGNORE_SYMBOLS) > $@
+.ELSE # "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL4VERSIONMAP) > $@
+.ENDIF # "$(COMID)"=="gcc3"
+ @chmod a+w $@
+# Mac OS X post-processing generate an exported symbols list from the generated map file
+# for details on exported symbols list see man ld on Mac OS X
+.IF "$(OS)"=="MACOSX"
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep -v "\*\|?" > $@.exported-symbols
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep "\*\|?" > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+.IF "$(SHL4OBJS)"!=""
+ -echo $(foreach,i,$(SHL4OBJS:s/.obj/.o/) $i) | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+.IF "$(SHL4LIBS)"!=""
+ $(COMMAND_ECHO)-$(TYPE) $(foreach,j,$(SHL4LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ cp $@.exported-symbols $@
+.ENDIF # .IF "$(OS)"=="MACOSX"
+.ENDIF # "$(SHL4VERSIONMAP)"!=""
+.ENDIF # "$(USE_SHL4VERSIONMAP)"!=""
+.ENDIF # "$(GUI)" != "UNX"
+
+.IF "$(UNIXVERSIONNAMES)"!=""
+.IF "$(OS)"!="MACOSX"
+.IF "$(GUI)"=="UNX"
+SHL4SONAME=\"$(SONAME_SWITCH)$(SHL4TARGETN:f)\"
+.ENDIF # "$(GUI)"!="UNX"
+.ENDIF # "$(OS)"!="MACOSX"
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+
+.IF "$(SHL4RES)"!=""
+SHL4ALLRES+=$(SHL4RES)
+SHL4LINKRES*=$(MISC)/$(SHL4TARGET).res
+SHL4LINKRESO*=$(MISC)/$(SHL4TARGET)_res.o
+.ENDIF # "$(SHL4RES)"!=""
+
+.IF "$(SHL4DEFAULTRES)$(use_shl_versions)"!=""
+SHL4DEFAULTRES*=$(MISC)/$(SHL4TARGET)_def.res
+SHL4ALLRES+=$(SHL4DEFAULTRES)
+SHL4LINKRES*=$(MISC)/$(SHL4TARGET).res
+SHL4LINKRESO*=$(MISC)/$(SHL4TARGET)_res.o
+.ENDIF # "$(SHL4DEFAULTRES)$(use_shl_versions)"!=""
+
+#.IF "$(SHL4TARGETN)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL4LIBS)"!=""
+$(MISC)/$(SHL4TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL4LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL4LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(SHL4TARGETN:b)_linkinc.ls
+$(SHL4TARGETN) : $(LINKINCTARGETS)
+
+.ELSE
+.IF "$(SHL4USE_EXPORTS)"=="name"
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(COM)"!="GCC"
+.IF "$(SHL4LIBS)"!=""
+SHL4LINKLIST=$(MISC)/$(SHL4TARGET)_link.lst
+SHL4LINKLISTPARAM=@$(SHL4LINKLIST)
+$(SHL4LINKLIST) : $(SHL4LIBS)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL4LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL4LIBS)"!=""
+.ENDIF # "$(COM)"!="GCC"
+.ENDIF
+.ENDIF # "$(SHL4USE_EXPORTS)"=="name"
+
+$(MISC)/%linkinc.ls:
+ @echo . > $@
+.ENDIF # "$(linkinc)"!=""
+
+.IF "$(GUI)" == "OS2"
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL4TARGET8=$(shell @fix_shl $(SHL4TARGET))
+.ENDIF
+
+.IF "$(GUI)" == "OS2"
+_SHL4IMP_ORD = $(SHL4STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(SHL4STDLIBS:^"$(LB)/")
+SHL4IMP_ORD = $(foreach,i,$(_SHL4IMP_ORD) $(shell @-ls $i))
+.ELSE
+SHL4IMP_ORD =
+.ENDIF
+
+
+$(SHL4TARGETN) : \
+ $(SHL4OBJS)\
+ $(SHL4LIBS)\
+ $(USE_4IMPLIB_DEPS)\
+ $(USE_SHL4DEF)\
+ $(USE_SHL4VERSIONMAP)\
+ $(SHL4RES)\
+ $(SHL4DEPN) \
+ $(SHL4IMP_ORD) \
+ $(SHL4LINKLIST)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(SHL4DEFAULTRES)"!=""
+ @@-$(RM) $(MISC)/$(SHL4DEFAULTRES:b).rc
+.IF "$(SHL4ICON)" != ""
+ @echo 1 ICON $(SHL4ICON) >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL4ADD_VERINFO)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL4ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+.ELSE # "$(SHL4ADD_VERINFO)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+.ENDIF # "$(SHL4ADD_VERINFO)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL4TARGET)$(DLLPOST) >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL4TARGET:b) >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL4DEFAULTRES:b).rc
+.ENDIF # "$(SHL4DEFAULTRES)"!=""
+.IF "$(SHL4ALLRES)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL4ALLRES) > $(SHL4LINKRES)
+.IF "$(COM)"=="GCC"
+ windres $(SHL4LINKRES) $(SHL4LINKRESO)
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(SHL4ALLRES)"!=""
+.IF "$(COM)"=="GCC" # always have to call dlltool explicitly as ld cannot handle # comment in .def
+ @echo dlltool --dllname $(SHL4TARGET)$(DLLPOST) \
+ --kill-at \\ > $(MISC)/$(TARGET).$(@:b)_4.cmd
+ @noop $(assign ALL4OBJLIST:=$(STDOBJ) $(SHL4OBJS) $(SHL4LINKRESO) $(shell $(TYPE) /dev/null $(SHL4LIBS) | $(SED) s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+.IF "$(DEFLIB4NAME)"!="" # do not have to include objs
+ @noop $(assign DEF4OBJLIST:=$(shell $(TYPE) $(foreach,i,$(DEFLIB4NAME) $(SLB)/$(i).lib) | sed s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+ @noop $(foreach,i,$(DEF4OBJLIST) $(assign ALL4OBJLIST:=$(ALL4OBJLIST:s?$i??)))
+.ENDIF # "$(DEFLIB4NAME)"!=""
+ @echo --output-exp $(MISC)/$(@:b)_exp.o \\ >> $(MISC)/$(TARGET).$(@:b)_4.cmd
+.IF "$(SHL4DEF)"!=""
+ @echo --input-def $(SHL4DEF) \\ >> $(MISC)/$(TARGET).$(@:b)_4.cmd
+.ELSE
+ @echo $(SHL4VERSIONOBJ) $(SHL4DESCRIPTIONOBJ) \\ >> $(MISC)/$(TARGET).$(@:b)_4.cmd
+.ENDIF
+ @echo $(ALL4OBJLIST) >> $(MISC)/$(TARGET).$(@:b)_4.cmd
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(MINGWSSTDOBJ) -o $@ \
+ $(STDOBJ) $(SHL4VERSIONOBJ) $(SHL4DESCRIPTIONOBJ) $(SHL4OBJS) $(SHL4LINKRESO) \
+ `$(TYPE) /dev/null $(SHL4LIBS) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ -Wl,--exclude-libs,ALL,--start-group $(SHL4STDLIBS) -Wl,--end-group \
+ $(SHL4STDSHL) $(STDSHL4) $(MISC)/$(@:b)_exp.o $(MINGWSSTDENDOBJ) \
+ -Wl,-Map,$(MISC)/$(@:b).map >> $(MISC)/$(TARGET).$(@:b)_4.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_4.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_4.cmd
+.ELSE
+.IF "$(linkinc)"==""
+.IF "$(SHL4USE_EXPORTS)"!="name"
+.IF "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL4LINKER) @$(mktmp \
+ $(SHL4LINKFLAGS) \
+ $(LINKFLAGSSHL) \
+ $(SHL4STACK) $(SHL4BASEX) \
+ -out:$@ \
+ -map:$(MISC)/$(@:b).map \
+ -def:$(SHL4DEF) \
+ $(USE_4IMPLIB) \
+ $(STDOBJ) \
+ $(SHL4VERSIONOBJ) $(SHL4OBJS) \
+ $(SHL4LIBS) \
+ $(SHL4STDLIBS) \
+ $(SHL4STDSHL) $(STDSHL4) \
+ $(SHL4LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL4LINKER) @$(mktmp $(SHL4LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL4BASEX) \
+ $(SHL4STACK) -out:$(SHL4TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(LB)/$(SHL4IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL4OBJS) $(SHL4VERSIONOBJ) \
+ $(SHL4LIBS) \
+ $(SHL4STDLIBS) \
+ $(SHL4STDSHL) $(STDSHL4) \
+ $(SHL4LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+.ELSE # "$(SHL4USE_EXPORTS)"!="name"
+ $(COMMAND_ECHO)$(SHL4LINKER) @$(mktmp $(SHL4LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL4BASEX) \
+ $(SHL4STACK) -out:$(SHL4TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(USE_4IMPLIB) \
+ $(STDOBJ) \
+ $(SHL4OBJS) $(SHL4VERSIONOBJ)) \
+ $(SHL4LINKLISTPARAM) \
+ @$(mktmp $(SHL4STDLIBS) \
+ $(SHL4STDSHL) $(STDSHL4) \
+ $(SHL4LINKRES) \
+ )
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(SHL4USE_EXPORTS)"!="name"
+.ELSE # "$(linkinc)"==""
+ $(COMMAND_ECHO)-$(RM) del $(MISC)/$(SHL4TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)/$(SHL4TARGET).lst
+ $(COMMAND_ECHO)$(TYPE) $(mktmp \
+ $(SHL4LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL4BASEX) \
+ $(SHL4STACK) $(MAPFILE) \
+ -out:$@ \
+ $(LB)/$(SHL4IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL4OBJS) \
+ $(SHL4STDLIBS) \
+ $(SHL4STDSHL) $(STDSHL4) \
+ $(SHL4LINKRES) \
+ ) >> $(MISC)/$(SHL4TARGET).lnk
+ $(COMMAND_ECHO)$(TYPE) $(MISC)/$(SHL4TARGETN:b)_linkinc.ls >> $(MISC)/$(SHL4TARGET).lnk
+ $(COMMAND_ECHO)$(SHL4LINKER) @$(MISC)/$(SHL4TARGET).lnk
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(linkinc)"==""
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)" == "WNT"
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_4.cmd
+ @echo $(STDSLO) $(SHL4OBJS:s/.obj/.o/) \
+ $(SHL4VERSIONOBJ) \
+ `cat /dev/null $(SHL4LIBS) | sed s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(SHL4LINKER) $(SHL4LINKFLAGS) $(SHL4VERSIONMAPPARA) $(LINKFLAGSSHL) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) -o $@ \
+ $(SHL4STDLIBS) $(SHL4ARCHIVES) $(SHL4STDSHL) $(STDSHL4) -filelist $(MISC)/$(@:b).list $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_4.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_4.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_4.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_4.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_4.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ shl $(SHL4RPATH) $@
+ @echo "Making: " $(@:f).jnilib
+ @macosx-create-bundle $@
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL4NOCHECK)"==""
+ $(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS4) $(SHL4TARGETN)
+.ENDIF # "$(SHL4NOCHECK)"!=""
+.ENDIF
+.ELSE # "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_4.cmd
+ @echo $(SHL4LINKER) $(SHL4LINKFLAGS) $(SHL4SONAME) $(LINKFLAGSSHL) $(SHL4VERSIONMAPPARA) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) $(STDSLO) $(SHL4OBJS:s/.obj/.o/) \
+ $(SHL4VERSIONOBJ) -o $@ \
+ `cat /dev/null $(SHL4LIBS) | tr -s " " "\n" | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ $(SHL4STDLIBS) $(SHL4ARCHIVES) $(SHL4STDSHL) $(STDSHL4) $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_4.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_4.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_4.cmd
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL4NOCHECK)"==""
+ $(COMMAND_ECHO)-$(RM) $(SHL4TARGETN:d)check_$(SHL4TARGETN:f)
+ $(COMMAND_ECHO)$(RENAME) $(SHL4TARGETN) $(SHL4TARGETN:d)check_$(SHL4TARGETN:f)
+.IF "$(VERBOSE)"=="TRUE"
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS4) $(SHL4TARGETN:d)check_$(SHL4TARGETN:f)
+.ELSE
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS4) -- -s $(SHL4TARGETN:d)check_$(SHL4TARGETN:f)
+.ENDIF
+.ENDIF # "$(SHL4NOCHECK)"!=""
+.ENDIF # "$(UPDATER)"=="YES"
+.ENDIF # "$(OS)"=="MACOSX"
+.IF "$(UNIXVERSIONNAMES)"!=""
+ $(COMMAND_ECHO)$(RM) $(LB)/$(SHL4TARGETN:b)
+ $(COMMAND_ECHO)cd $(LB) && ln -s $(SHL4TARGETN:f) $(SHL4TARGETN:b)
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+.IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+.ENDIF
+.ENDIF # "$(GUI)" == "UNX"
+
+.IF "$(GUI)" == "OS2"
+
+.IF "$(SHL4DEFAULTRES)"!=""
+ @+-$(RM) $(MISC)/$(SHL4DEFAULTRES:b).rc >& $(NULLDEV)
+.IF "$(SHL4ICON)" != ""
+ @-+echo 1 ICON $(SHL4ICON) >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL4ADD_VERINFO)"!=""
+ @-+echo $(EMQ)#include $(EMQ)"$(SHL4ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+.ENDIF # "$(SHL4ADD_VERINFO)"!=""
+ @-+echo MENU 1 BEGIN END >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+# @-+echo $(EMQ)RCDATA 1 { "Build string here" }$(EMQ) >> $(MISC)/$(SHL4DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+# YD 04/07/06 seems null, confuses rc cli: -i $(SOLARTESDIR)
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL4DEFAULTRES:b).rc
+.ENDIF # "$(SHL4DEFAULTRES)"!=""
+
+.IF "$(SHL4ALLRES)"!=""
+ $(COMMAND_ECHO)+$(TYPE) $(SHL4ALLRES) > $(SHL4LINKRES)
+.ENDIF # "$(SHL4ALLRES)"!=""
+
+.IF "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL4LINKER) $(SHL4LINKFLAGS) $(LINKFLAGSSHL) -o $@ \
+ $(SHL4DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL4OBJS) $(SHL4VERSIONOBJ) \
+ $(SHL4LIBS) \
+ $(SHL4STDLIBS:^"-l") \
+ $(SHL4LINKRES) \
+ $(SHL4STDSHL:^"-l") $(STDSHL4:^"-l")
+
+.ELSE # "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL4LINKER) -v $(SHL4LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL4BASEX) \
+ $(SHL4STACK) -o $(SHL4TARGETN) \
+ $(SHL4DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL4OBJS) $(SHL4VERSIONOBJ) \
+ $(SHL4LIBS) \
+ $(SHL4STDLIBS:^"-l") \
+ $(SHL4LINKRES) \
+ $(SHL4STDSHL:^"-l") $(STDSHL4:^"-l") \
+ $(LINKOUTPUTFILTER)
+ @$(LS) $@ >& $(NULLDEV)
+
+.ENDIF # "$(USE_DEFFILE)"!=""
+
+.IF "$(SHL4TARGET8)" != "$(SHL4TARGET)"
+ $(COMMAND_ECHO)+$(COPY) $@ $(@:d)$(SHL4TARGET8).dll
+.ENDIF
+
+.ENDIF # "$(GUI)" == "OS2"
+
+
+.IF "$(TESTDIR)"!=""
+.IF "$(NO_TESTS)"==""
+
+ALLTAR : runtest_$(SHL4TARGET)
+
+runtest_$(SHL4TARGET) : $(SHL4TARGETN)
+ testshl $(SHL4TARGETN) sce/$(SHL4TARGET).sce -msg -skip
+.ENDIF # "$(NO_TESTS)"==""
+.ENDIF # "$(TESTDIR)"!=""
+.ENDIF # "$(SHL4TARGETN)"!=""
+
+# unroll begin
+
+.IF "$(SHL5TARGETN)"!=""
+
+.IF "$(OS)"=="AIX"
+SHL5STDLIBS=
+.ENDIF
+
+.IF "$(SHLLINKARCONLY)" != ""
+SHL5STDLIBS=
+STDSHL=
+.ELSE
+SHL5ARCHIVES=
+.ENDIF
+
+# decide how to link
+.IF "$(SHL5CODETYPE)"=="C"
+SHL5LINKER=$(LINKC)
+SHL5STDSHL=$(subst,CPPRUNTIME, $(STDSHL))
+SHL5LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(SHL5CODETYPE)"=="C"
+SHL5LINKER=$(LINK)
+SHL5STDSHL=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDSHL))
+SHL5LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(SHL5CODETYPE)"=="C"
+
+SHL5RPATH*=OOO
+LINKFLAGSRUNPATH_$(SHL5RPATH)*=/ERROR:/Bad_SHL5RPATH_value
+SHL5LINKFLAGS+=$(LINKFLAGSRUNPATH_$(SHL5RPATH))
+
+.IF "$(SHL5USE_EXPORTS)"==""
+SHL5DEF*=$(MISC)/$(SHL5TARGET).def
+.ENDIF # "$(SHL5USE_EXPORTS)"==""
+
+EXTRALIBPATHS5=$(EXTRALIBPATHS)
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL5NOCHECK)"==""
+.IF "$(SOLAR_STLLIBPATH)"!=""
+EXTRALIBPATHS5+=-L$(SOLAR_STLLIBPATH)
+.ENDIF
+.ENDIF # "$(SHL5NOCHECK)"!=""
+.ENDIF
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ version object ++++++++++++++++++++++++++++++++++++++++
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(L10N_framework)"==""
+.IF "$(VERSIONOBJ)"!=""
+SHL5VERSIONOBJ:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL5TARGET))}$(VERSIONOBJ:f)
+USE_VERSIONH:=$(INCCOM)/$(SHL5VERSIONOBJ:b).h
+.IF "$(GUI)" == "UNX"
+SHL5VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL5TARGET))}$(VERSIONOBJ:f:s/.o/.obj/)
+.ELSE # "$(GUI)" == "UNX"
+SHL5VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL5TARGET))}$(VERSIONOBJ:f)
+.ENDIF # "$(GUI)" == "UNX"
+$(MISC)/$(SHL5VERSIONOBJ:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL5VERSIONOBJ:b).h
+# $(COPY) $(SOLARENV)/src/version.c $@
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL5VERSIONOBJ:b).h/ > $@
+
+.INIT : $(SHL5VERSIONOBJDEP)
+.ENDIF # "$(VERSIONOBJ)"!=""
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+.IF "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL5IMPLIB)" == ""
+SHL5IMPLIB=i$(TARGET)_t5
+.ENDIF # "$(SHL5IMPLIB)" == ""
+.IF "$(COM)" != "GCC"
+USE_5IMPLIB=-implib:$(LB)/$(SHL5IMPLIB).lib
+.ENDIF # "$(COM)" != "GCC"
+SHL5IMPLIBN=$(LB)/$(SHL5IMPLIB).lib
+ALLTAR : $(SHL5IMPLIBN)
+
+.IF "$(USE_DEFFILE)"==""
+USE_5IMPLIB_DEPS=$(LB)/$(SHL5IMPLIB).lib
+.ENDIF # "$(USE_DEFFILE)"==""
+.ENDIF # "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+USE_SHL5DEF=$(SHL5DEF)
+.ELSE # "$(GUI)" != "UNX"
+USE_SHL5DEF=
+SHL5DEPN+:=$(SHL5DEPNU)
+
+.IF "$(SHL5VERSIONMAP)"==""
+# to activate vmaps remove "#"
+USE_SHL5VERSIONMAP=$(MISC)/$(SHL5TARGET).vmap
+.ENDIF # "$(SHL5VERSIONMAP)"==""
+
+.IF "$(USE_SHL5VERSIONMAP)"!=""
+
+.IF "$(SHL5FILTERFILE)"!=""
+.IF "$(SHL5VERSIONMAP)"!=""
+#eine von beiden ist zuviel
+USE_SHL5VERSIONMAP=$(MISC)/$(SHL5TARGET).vmap
+$(USE_SHL5VERSIONMAP) .PHONY:
+ @echo -----------------------------
+ @echo you should only use versionmap OR exportfile
+ @echo -----------------------------
+# force_dmake_to_error
+
+.ENDIF # "$(SHL5VERSIONMAP)"!=""
+
+SHL5VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL5VERSIONMAP)
+
+$(USE_SHL5VERSIONMAP): \
+ $(SHL5OBJS)\
+ $(SHL5LIBS)\
+ $(SHL5FILTERFILE)
+ @$(RM) $@.dump
+.IF "$(SHL5OBJS)"!=""
+# dump remaining objects on the fly
+.IF "$(OS)"=="MACOSX"
+ @-nm $(SHL5OBJS:s/.obj/.o/) > $@.dump
+.ELSE
+ @nm $(SHL5OBJS:s/.obj/.o/) > $@.dump
+.ENDIF
+.ENDIF # "$(SHL5OBJS)!"=""
+ @$(TYPE) /dev/null $(SHL5LIBS:s/.lib/.dump/) >> $@.dump
+ $(COMMAND_ECHO) $(PERL) $(SOLARENV)/bin/mapgen.pl -d $@.dump -s $(SHL5INTERFACE) -f $(SHL5FILTERFILE) -m $@
+
+.ELSE # "$(SHL5FILTERFILE)"!=""
+USE_SHL5VERSIONMAP=$(MISC)/$(SHL5TARGET).vmap
+$(USE_SHL5VERSIONMAP) :
+.IF "$(VERBOSE)" == "TRUE"
+ @echo -----------------------------
+ @echo SHL5FILTERFILE not set!
+ @echo -----------------------------
+ @$(TOUCH) $@
+ @echo dummy file to keep the dependencies for later use.
+.ELSE
+ @$(TOUCH) $@
+.ENDIF
+# force_dmake_to_error
+.ENDIF # "$(SHL5FILTERFILE)"!=""
+.ELSE # "$(USE_SHL5VERSIONMAP)"!=""
+
+#and now for the plain non-generic way...
+.IF "$(SHL5VERSIONMAP)"!=""
+USE_SHL5VERSIONMAP=$(MISC)/$(SHL5VERSIONMAP:b)_$(SHL5TARGET)$(SHL5VERSIONMAP:e)
+SHL5VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL5VERSIONMAP)
+
+.IF "$(OS)"=="MACOSX"
+$(USE_SHL5VERSIONMAP): $(SHL5OBJS) $(SHL5LIBS)
+.ENDIF
+
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL5VERSIONMAP) .ERRREMOVE: $(SHL5VERSIONMAP)
+ @@-$(RM) -f $@
+# The following files will only be generated and needed on Mac OS X as temporary files
+# in order to generate exported symbols list out of Linux/Solaris map files
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) -f $@.symregexp >& $(NULLDEV)
+ @-$(RM) -f $@.expsymlist >& $(NULLDEV)
+.ENDIF
+# Its questionable if the following condition '.IF "$(COMID)"=="gcc3"' makes sense and what
+# happens if somebody will change it in the future
+.IF "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL5VERSIONMAP) | $(AWK) -f $(SOLARENV)/bin/addsym.awk > $@
+.ELIF "$(COMNAME)"=="sunpro5"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL5VERSIONMAP) | $(GREP) -v $(IGNORE_SYMBOLS) > $@
+.ELSE # "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL5VERSIONMAP) > $@
+.ENDIF # "$(COMID)"=="gcc3"
+ @chmod a+w $@
+# Mac OS X post-processing generate an exported symbols list from the generated map file
+# for details on exported symbols list see man ld on Mac OS X
+.IF "$(OS)"=="MACOSX"
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep -v "\*\|?" > $@.exported-symbols
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep "\*\|?" > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+.IF "$(SHL5OBJS)"!=""
+ -echo $(foreach,i,$(SHL5OBJS:s/.obj/.o/) $i) | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+.IF "$(SHL5LIBS)"!=""
+ $(COMMAND_ECHO)-$(TYPE) $(foreach,j,$(SHL5LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ cp $@.exported-symbols $@
+.ENDIF # .IF "$(OS)"=="MACOSX"
+.ENDIF # "$(SHL5VERSIONMAP)"!=""
+.ENDIF # "$(USE_SHL5VERSIONMAP)"!=""
+.ENDIF # "$(GUI)" != "UNX"
+
+.IF "$(UNIXVERSIONNAMES)"!=""
+.IF "$(OS)"!="MACOSX"
+.IF "$(GUI)"=="UNX"
+SHL5SONAME=\"$(SONAME_SWITCH)$(SHL5TARGETN:f)\"
+.ENDIF # "$(GUI)"!="UNX"
+.ENDIF # "$(OS)"!="MACOSX"
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+
+.IF "$(SHL5RES)"!=""
+SHL5ALLRES+=$(SHL5RES)
+SHL5LINKRES*=$(MISC)/$(SHL5TARGET).res
+SHL5LINKRESO*=$(MISC)/$(SHL5TARGET)_res.o
+.ENDIF # "$(SHL5RES)"!=""
+
+.IF "$(SHL5DEFAULTRES)$(use_shl_versions)"!=""
+SHL5DEFAULTRES*=$(MISC)/$(SHL5TARGET)_def.res
+SHL5ALLRES+=$(SHL5DEFAULTRES)
+SHL5LINKRES*=$(MISC)/$(SHL5TARGET).res
+SHL5LINKRESO*=$(MISC)/$(SHL5TARGET)_res.o
+.ENDIF # "$(SHL5DEFAULTRES)$(use_shl_versions)"!=""
+
+#.IF "$(SHL5TARGETN)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL5LIBS)"!=""
+$(MISC)/$(SHL5TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL5LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL5LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(SHL5TARGETN:b)_linkinc.ls
+$(SHL5TARGETN) : $(LINKINCTARGETS)
+
+.ELSE
+.IF "$(SHL5USE_EXPORTS)"=="name"
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(COM)"!="GCC"
+.IF "$(SHL5LIBS)"!=""
+SHL5LINKLIST=$(MISC)/$(SHL5TARGET)_link.lst
+SHL5LINKLISTPARAM=@$(SHL5LINKLIST)
+$(SHL5LINKLIST) : $(SHL5LIBS)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL5LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL5LIBS)"!=""
+.ENDIF # "$(COM)"!="GCC"
+.ENDIF
+.ENDIF # "$(SHL5USE_EXPORTS)"=="name"
+
+$(MISC)/%linkinc.ls:
+ @echo . > $@
+.ENDIF # "$(linkinc)"!=""
+
+.IF "$(GUI)" == "OS2"
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL5TARGET8=$(shell @fix_shl $(SHL5TARGET))
+.ENDIF
+
+.IF "$(GUI)" == "OS2"
+_SHL5IMP_ORD = $(SHL5STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(SHL5STDLIBS:^"$(LB)/")
+SHL5IMP_ORD = $(foreach,i,$(_SHL5IMP_ORD) $(shell @-ls $i))
+.ELSE
+SHL5IMP_ORD =
+.ENDIF
+
+
+$(SHL5TARGETN) : \
+ $(SHL5OBJS)\
+ $(SHL5LIBS)\
+ $(USE_5IMPLIB_DEPS)\
+ $(USE_SHL5DEF)\
+ $(USE_SHL5VERSIONMAP)\
+ $(SHL5RES)\
+ $(SHL5DEPN) \
+ $(SHL5IMP_ORD) \
+ $(SHL5LINKLIST)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(SHL5DEFAULTRES)"!=""
+ @@-$(RM) $(MISC)/$(SHL5DEFAULTRES:b).rc
+.IF "$(SHL5ICON)" != ""
+ @echo 1 ICON $(SHL5ICON) >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL5ADD_VERINFO)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL5ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+.ELSE # "$(SHL5ADD_VERINFO)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+.ENDIF # "$(SHL5ADD_VERINFO)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL5TARGET)$(DLLPOST) >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL5TARGET:b) >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL5DEFAULTRES:b).rc
+.ENDIF # "$(SHL5DEFAULTRES)"!=""
+.IF "$(SHL5ALLRES)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL5ALLRES) > $(SHL5LINKRES)
+.IF "$(COM)"=="GCC"
+ windres $(SHL5LINKRES) $(SHL5LINKRESO)
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(SHL5ALLRES)"!=""
+.IF "$(COM)"=="GCC" # always have to call dlltool explicitly as ld cannot handle # comment in .def
+ @echo dlltool --dllname $(SHL5TARGET)$(DLLPOST) \
+ --kill-at \\ > $(MISC)/$(TARGET).$(@:b)_5.cmd
+ @noop $(assign ALL5OBJLIST:=$(STDOBJ) $(SHL5OBJS) $(SHL5LINKRESO) $(shell $(TYPE) /dev/null $(SHL5LIBS) | $(SED) s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+.IF "$(DEFLIB5NAME)"!="" # do not have to include objs
+ @noop $(assign DEF5OBJLIST:=$(shell $(TYPE) $(foreach,i,$(DEFLIB5NAME) $(SLB)/$(i).lib) | sed s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+ @noop $(foreach,i,$(DEF5OBJLIST) $(assign ALL5OBJLIST:=$(ALL5OBJLIST:s?$i??)))
+.ENDIF # "$(DEFLIB5NAME)"!=""
+ @echo --output-exp $(MISC)/$(@:b)_exp.o \\ >> $(MISC)/$(TARGET).$(@:b)_5.cmd
+.IF "$(SHL5DEF)"!=""
+ @echo --input-def $(SHL5DEF) \\ >> $(MISC)/$(TARGET).$(@:b)_5.cmd
+.ELSE
+ @echo $(SHL5VERSIONOBJ) $(SHL5DESCRIPTIONOBJ) \\ >> $(MISC)/$(TARGET).$(@:b)_5.cmd
+.ENDIF
+ @echo $(ALL5OBJLIST) >> $(MISC)/$(TARGET).$(@:b)_5.cmd
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(MINGWSSTDOBJ) -o $@ \
+ $(STDOBJ) $(SHL5VERSIONOBJ) $(SHL5DESCRIPTIONOBJ) $(SHL5OBJS) $(SHL5LINKRESO) \
+ `$(TYPE) /dev/null $(SHL5LIBS) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ -Wl,--exclude-libs,ALL,--start-group $(SHL5STDLIBS) -Wl,--end-group \
+ $(SHL5STDSHL) $(STDSHL5) $(MISC)/$(@:b)_exp.o $(MINGWSSTDENDOBJ) \
+ -Wl,-Map,$(MISC)/$(@:b).map >> $(MISC)/$(TARGET).$(@:b)_5.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_5.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_5.cmd
+.ELSE
+.IF "$(linkinc)"==""
+.IF "$(SHL5USE_EXPORTS)"!="name"
+.IF "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL5LINKER) @$(mktmp \
+ $(SHL5LINKFLAGS) \
+ $(LINKFLAGSSHL) \
+ $(SHL5STACK) $(SHL5BASEX) \
+ -out:$@ \
+ -map:$(MISC)/$(@:b).map \
+ -def:$(SHL5DEF) \
+ $(USE_5IMPLIB) \
+ $(STDOBJ) \
+ $(SHL5VERSIONOBJ) $(SHL5OBJS) \
+ $(SHL5LIBS) \
+ $(SHL5STDLIBS) \
+ $(SHL5STDSHL) $(STDSHL5) \
+ $(SHL5LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL5LINKER) @$(mktmp $(SHL5LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL5BASEX) \
+ $(SHL5STACK) -out:$(SHL5TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(LB)/$(SHL5IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL5OBJS) $(SHL5VERSIONOBJ) \
+ $(SHL5LIBS) \
+ $(SHL5STDLIBS) \
+ $(SHL5STDSHL) $(STDSHL5) \
+ $(SHL5LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+.ELSE # "$(SHL5USE_EXPORTS)"!="name"
+ $(COMMAND_ECHO)$(SHL5LINKER) @$(mktmp $(SHL5LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL5BASEX) \
+ $(SHL5STACK) -out:$(SHL5TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(USE_5IMPLIB) \
+ $(STDOBJ) \
+ $(SHL5OBJS) $(SHL5VERSIONOBJ)) \
+ $(SHL5LINKLISTPARAM) \
+ @$(mktmp $(SHL5STDLIBS) \
+ $(SHL5STDSHL) $(STDSHL5) \
+ $(SHL5LINKRES) \
+ )
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(SHL5USE_EXPORTS)"!="name"
+.ELSE # "$(linkinc)"==""
+ $(COMMAND_ECHO)-$(RM) del $(MISC)/$(SHL5TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)/$(SHL5TARGET).lst
+ $(COMMAND_ECHO)$(TYPE) $(mktmp \
+ $(SHL5LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL5BASEX) \
+ $(SHL5STACK) $(MAPFILE) \
+ -out:$@ \
+ $(LB)/$(SHL5IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL5OBJS) \
+ $(SHL5STDLIBS) \
+ $(SHL5STDSHL) $(STDSHL5) \
+ $(SHL5LINKRES) \
+ ) >> $(MISC)/$(SHL5TARGET).lnk
+ $(COMMAND_ECHO)$(TYPE) $(MISC)/$(SHL5TARGETN:b)_linkinc.ls >> $(MISC)/$(SHL5TARGET).lnk
+ $(COMMAND_ECHO)$(SHL5LINKER) @$(MISC)/$(SHL5TARGET).lnk
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(linkinc)"==""
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)" == "WNT"
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_5.cmd
+ @echo $(STDSLO) $(SHL5OBJS:s/.obj/.o/) \
+ $(SHL5VERSIONOBJ) \
+ `cat /dev/null $(SHL5LIBS) | sed s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(SHL5LINKER) $(SHL5LINKFLAGS) $(SHL5VERSIONMAPPARA) $(LINKFLAGSSHL) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) -o $@ \
+ $(SHL5STDLIBS) $(SHL5ARCHIVES) $(SHL5STDSHL) $(STDSHL5) -filelist $(MISC)/$(@:b).list $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_5.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_5.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_5.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_5.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_5.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ shl $(SHL5RPATH) $@
+ @echo "Making: " $(@:f).jnilib
+ @macosx-create-bundle $@
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL5NOCHECK)"==""
+ $(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS5) $(SHL5TARGETN)
+.ENDIF # "$(SHL5NOCHECK)"!=""
+.ENDIF
+.ELSE # "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_5.cmd
+ @echo $(SHL5LINKER) $(SHL5LINKFLAGS) $(SHL5SONAME) $(LINKFLAGSSHL) $(SHL5VERSIONMAPPARA) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) $(STDSLO) $(SHL5OBJS:s/.obj/.o/) \
+ $(SHL5VERSIONOBJ) -o $@ \
+ `cat /dev/null $(SHL5LIBS) | tr -s " " "\n" | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ $(SHL5STDLIBS) $(SHL5ARCHIVES) $(SHL5STDSHL) $(STDSHL5) $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_5.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_5.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_5.cmd
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL5NOCHECK)"==""
+ $(COMMAND_ECHO)-$(RM) $(SHL5TARGETN:d)check_$(SHL5TARGETN:f)
+ $(COMMAND_ECHO)$(RENAME) $(SHL5TARGETN) $(SHL5TARGETN:d)check_$(SHL5TARGETN:f)
+.IF "$(VERBOSE)"=="TRUE"
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS5) $(SHL5TARGETN:d)check_$(SHL5TARGETN:f)
+.ELSE
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS5) -- -s $(SHL5TARGETN:d)check_$(SHL5TARGETN:f)
+.ENDIF
+.ENDIF # "$(SHL5NOCHECK)"!=""
+.ENDIF # "$(UPDATER)"=="YES"
+.ENDIF # "$(OS)"=="MACOSX"
+.IF "$(UNIXVERSIONNAMES)"!=""
+ $(COMMAND_ECHO)$(RM) $(LB)/$(SHL5TARGETN:b)
+ $(COMMAND_ECHO)cd $(LB) && ln -s $(SHL5TARGETN:f) $(SHL5TARGETN:b)
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+.IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+.ENDIF
+.ENDIF # "$(GUI)" == "UNX"
+
+.IF "$(GUI)" == "OS2"
+
+.IF "$(SHL5DEFAULTRES)"!=""
+ @+-$(RM) $(MISC)/$(SHL5DEFAULTRES:b).rc >& $(NULLDEV)
+.IF "$(SHL5ICON)" != ""
+ @-+echo 1 ICON $(SHL5ICON) >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL5ADD_VERINFO)"!=""
+ @-+echo $(EMQ)#include $(EMQ)"$(SHL5ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+.ENDIF # "$(SHL5ADD_VERINFO)"!=""
+ @-+echo MENU 1 BEGIN END >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+# @-+echo $(EMQ)RCDATA 1 { "Build string here" }$(EMQ) >> $(MISC)/$(SHL5DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+# YD 04/07/06 seems null, confuses rc cli: -i $(SOLARTESDIR)
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL5DEFAULTRES:b).rc
+.ENDIF # "$(SHL5DEFAULTRES)"!=""
+
+.IF "$(SHL5ALLRES)"!=""
+ $(COMMAND_ECHO)+$(TYPE) $(SHL5ALLRES) > $(SHL5LINKRES)
+.ENDIF # "$(SHL5ALLRES)"!=""
+
+.IF "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL5LINKER) $(SHL5LINKFLAGS) $(LINKFLAGSSHL) -o $@ \
+ $(SHL5DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL5OBJS) $(SHL5VERSIONOBJ) \
+ $(SHL5LIBS) \
+ $(SHL5STDLIBS:^"-l") \
+ $(SHL5LINKRES) \
+ $(SHL5STDSHL:^"-l") $(STDSHL5:^"-l")
+
+.ELSE # "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL5LINKER) -v $(SHL5LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL5BASEX) \
+ $(SHL5STACK) -o $(SHL5TARGETN) \
+ $(SHL5DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL5OBJS) $(SHL5VERSIONOBJ) \
+ $(SHL5LIBS) \
+ $(SHL5STDLIBS:^"-l") \
+ $(SHL5LINKRES) \
+ $(SHL5STDSHL:^"-l") $(STDSHL5:^"-l") \
+ $(LINKOUTPUTFILTER)
+ @$(LS) $@ >& $(NULLDEV)
+
+.ENDIF # "$(USE_DEFFILE)"!=""
+
+.IF "$(SHL5TARGET8)" != "$(SHL5TARGET)"
+ $(COMMAND_ECHO)+$(COPY) $@ $(@:d)$(SHL5TARGET8).dll
+.ENDIF
+
+.ENDIF # "$(GUI)" == "OS2"
+
+
+.IF "$(TESTDIR)"!=""
+.IF "$(NO_TESTS)"==""
+
+ALLTAR : runtest_$(SHL5TARGET)
+
+runtest_$(SHL5TARGET) : $(SHL5TARGETN)
+ testshl $(SHL5TARGETN) sce/$(SHL5TARGET).sce -msg -skip
+.ENDIF # "$(NO_TESTS)"==""
+.ENDIF # "$(TESTDIR)"!=""
+.ENDIF # "$(SHL5TARGETN)"!=""
+
+# unroll begin
+
+.IF "$(SHL6TARGETN)"!=""
+
+.IF "$(OS)"=="AIX"
+SHL6STDLIBS=
+.ENDIF
+
+.IF "$(SHLLINKARCONLY)" != ""
+SHL6STDLIBS=
+STDSHL=
+.ELSE
+SHL6ARCHIVES=
+.ENDIF
+
+# decide how to link
+.IF "$(SHL6CODETYPE)"=="C"
+SHL6LINKER=$(LINKC)
+SHL6STDSHL=$(subst,CPPRUNTIME, $(STDSHL))
+SHL6LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(SHL6CODETYPE)"=="C"
+SHL6LINKER=$(LINK)
+SHL6STDSHL=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDSHL))
+SHL6LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(SHL6CODETYPE)"=="C"
+
+SHL6RPATH*=OOO
+LINKFLAGSRUNPATH_$(SHL6RPATH)*=/ERROR:/Bad_SHL6RPATH_value
+SHL6LINKFLAGS+=$(LINKFLAGSRUNPATH_$(SHL6RPATH))
+
+.IF "$(SHL6USE_EXPORTS)"==""
+SHL6DEF*=$(MISC)/$(SHL6TARGET).def
+.ENDIF # "$(SHL6USE_EXPORTS)"==""
+
+EXTRALIBPATHS6=$(EXTRALIBPATHS)
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL6NOCHECK)"==""
+.IF "$(SOLAR_STLLIBPATH)"!=""
+EXTRALIBPATHS6+=-L$(SOLAR_STLLIBPATH)
+.ENDIF
+.ENDIF # "$(SHL6NOCHECK)"!=""
+.ENDIF
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ version object ++++++++++++++++++++++++++++++++++++++++
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(L10N_framework)"==""
+.IF "$(VERSIONOBJ)"!=""
+SHL6VERSIONOBJ:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL6TARGET))}$(VERSIONOBJ:f)
+USE_VERSIONH:=$(INCCOM)/$(SHL6VERSIONOBJ:b).h
+.IF "$(GUI)" == "UNX"
+SHL6VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL6TARGET))}$(VERSIONOBJ:f:s/.o/.obj/)
+.ELSE # "$(GUI)" == "UNX"
+SHL6VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL6TARGET))}$(VERSIONOBJ:f)
+.ENDIF # "$(GUI)" == "UNX"
+$(MISC)/$(SHL6VERSIONOBJ:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL6VERSIONOBJ:b).h
+# $(COPY) $(SOLARENV)/src/version.c $@
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL6VERSIONOBJ:b).h/ > $@
+
+.INIT : $(SHL6VERSIONOBJDEP)
+.ENDIF # "$(VERSIONOBJ)"!=""
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+.IF "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL6IMPLIB)" == ""
+SHL6IMPLIB=i$(TARGET)_t6
+.ENDIF # "$(SHL6IMPLIB)" == ""
+.IF "$(COM)" != "GCC"
+USE_6IMPLIB=-implib:$(LB)/$(SHL6IMPLIB).lib
+.ENDIF # "$(COM)" != "GCC"
+SHL6IMPLIBN=$(LB)/$(SHL6IMPLIB).lib
+ALLTAR : $(SHL6IMPLIBN)
+
+.IF "$(USE_DEFFILE)"==""
+USE_6IMPLIB_DEPS=$(LB)/$(SHL6IMPLIB).lib
+.ENDIF # "$(USE_DEFFILE)"==""
+.ENDIF # "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+USE_SHL6DEF=$(SHL6DEF)
+.ELSE # "$(GUI)" != "UNX"
+USE_SHL6DEF=
+SHL6DEPN+:=$(SHL6DEPNU)
+
+.IF "$(SHL6VERSIONMAP)"==""
+# to activate vmaps remove "#"
+USE_SHL6VERSIONMAP=$(MISC)/$(SHL6TARGET).vmap
+.ENDIF # "$(SHL6VERSIONMAP)"==""
+
+.IF "$(USE_SHL6VERSIONMAP)"!=""
+
+.IF "$(SHL6FILTERFILE)"!=""
+.IF "$(SHL6VERSIONMAP)"!=""
+#eine von beiden ist zuviel
+USE_SHL6VERSIONMAP=$(MISC)/$(SHL6TARGET).vmap
+$(USE_SHL6VERSIONMAP) .PHONY:
+ @echo -----------------------------
+ @echo you should only use versionmap OR exportfile
+ @echo -----------------------------
+# force_dmake_to_error
+
+.ENDIF # "$(SHL6VERSIONMAP)"!=""
+
+SHL6VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL6VERSIONMAP)
+
+$(USE_SHL6VERSIONMAP): \
+ $(SHL6OBJS)\
+ $(SHL6LIBS)\
+ $(SHL6FILTERFILE)
+ @$(RM) $@.dump
+.IF "$(SHL6OBJS)"!=""
+# dump remaining objects on the fly
+.IF "$(OS)"=="MACOSX"
+ @-nm $(SHL6OBJS:s/.obj/.o/) > $@.dump
+.ELSE
+ @nm $(SHL6OBJS:s/.obj/.o/) > $@.dump
+.ENDIF
+.ENDIF # "$(SHL6OBJS)!"=""
+ @$(TYPE) /dev/null $(SHL6LIBS:s/.lib/.dump/) >> $@.dump
+ $(COMMAND_ECHO) $(PERL) $(SOLARENV)/bin/mapgen.pl -d $@.dump -s $(SHL6INTERFACE) -f $(SHL6FILTERFILE) -m $@
+
+.ELSE # "$(SHL6FILTERFILE)"!=""
+USE_SHL6VERSIONMAP=$(MISC)/$(SHL6TARGET).vmap
+$(USE_SHL6VERSIONMAP) :
+.IF "$(VERBOSE)" == "TRUE"
+ @echo -----------------------------
+ @echo SHL6FILTERFILE not set!
+ @echo -----------------------------
+ @$(TOUCH) $@
+ @echo dummy file to keep the dependencies for later use.
+.ELSE
+ @$(TOUCH) $@
+.ENDIF
+# force_dmake_to_error
+.ENDIF # "$(SHL6FILTERFILE)"!=""
+.ELSE # "$(USE_SHL6VERSIONMAP)"!=""
+
+#and now for the plain non-generic way...
+.IF "$(SHL6VERSIONMAP)"!=""
+USE_SHL6VERSIONMAP=$(MISC)/$(SHL6VERSIONMAP:b)_$(SHL6TARGET)$(SHL6VERSIONMAP:e)
+SHL6VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL6VERSIONMAP)
+
+.IF "$(OS)"=="MACOSX"
+$(USE_SHL6VERSIONMAP): $(SHL6OBJS) $(SHL6LIBS)
+.ENDIF
+
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL6VERSIONMAP) .ERRREMOVE: $(SHL6VERSIONMAP)
+ @@-$(RM) -f $@
+# The following files will only be generated and needed on Mac OS X as temporary files
+# in order to generate exported symbols list out of Linux/Solaris map files
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) -f $@.symregexp >& $(NULLDEV)
+ @-$(RM) -f $@.expsymlist >& $(NULLDEV)
+.ENDIF
+# Its questionable if the following condition '.IF "$(COMID)"=="gcc3"' makes sense and what
+# happens if somebody will change it in the future
+.IF "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL6VERSIONMAP) | $(AWK) -f $(SOLARENV)/bin/addsym.awk > $@
+.ELIF "$(COMNAME)"=="sunpro5"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL6VERSIONMAP) | $(GREP) -v $(IGNORE_SYMBOLS) > $@
+.ELSE # "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL6VERSIONMAP) > $@
+.ENDIF # "$(COMID)"=="gcc3"
+ @chmod a+w $@
+# Mac OS X post-processing generate an exported symbols list from the generated map file
+# for details on exported symbols list see man ld on Mac OS X
+.IF "$(OS)"=="MACOSX"
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep -v "\*\|?" > $@.exported-symbols
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep "\*\|?" > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+.IF "$(SHL6OBJS)"!=""
+ -echo $(foreach,i,$(SHL6OBJS:s/.obj/.o/) $i) | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+.IF "$(SHL6LIBS)"!=""
+ $(COMMAND_ECHO)-$(TYPE) $(foreach,j,$(SHL6LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ cp $@.exported-symbols $@
+.ENDIF # .IF "$(OS)"=="MACOSX"
+.ENDIF # "$(SHL6VERSIONMAP)"!=""
+.ENDIF # "$(USE_SHL6VERSIONMAP)"!=""
+.ENDIF # "$(GUI)" != "UNX"
+
+.IF "$(UNIXVERSIONNAMES)"!=""
+.IF "$(OS)"!="MACOSX"
+.IF "$(GUI)"=="UNX"
+SHL6SONAME=\"$(SONAME_SWITCH)$(SHL6TARGETN:f)\"
+.ENDIF # "$(GUI)"!="UNX"
+.ENDIF # "$(OS)"!="MACOSX"
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+
+.IF "$(SHL6RES)"!=""
+SHL6ALLRES+=$(SHL6RES)
+SHL6LINKRES*=$(MISC)/$(SHL6TARGET).res
+SHL6LINKRESO*=$(MISC)/$(SHL6TARGET)_res.o
+.ENDIF # "$(SHL6RES)"!=""
+
+.IF "$(SHL6DEFAULTRES)$(use_shl_versions)"!=""
+SHL6DEFAULTRES*=$(MISC)/$(SHL6TARGET)_def.res
+SHL6ALLRES+=$(SHL6DEFAULTRES)
+SHL6LINKRES*=$(MISC)/$(SHL6TARGET).res
+SHL6LINKRESO*=$(MISC)/$(SHL6TARGET)_res.o
+.ENDIF # "$(SHL6DEFAULTRES)$(use_shl_versions)"!=""
+
+#.IF "$(SHL6TARGETN)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL6LIBS)"!=""
+$(MISC)/$(SHL6TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL6LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL6LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(SHL6TARGETN:b)_linkinc.ls
+$(SHL6TARGETN) : $(LINKINCTARGETS)
+
+.ELSE
+.IF "$(SHL6USE_EXPORTS)"=="name"
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(COM)"!="GCC"
+.IF "$(SHL6LIBS)"!=""
+SHL6LINKLIST=$(MISC)/$(SHL6TARGET)_link.lst
+SHL6LINKLISTPARAM=@$(SHL6LINKLIST)
+$(SHL6LINKLIST) : $(SHL6LIBS)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL6LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL6LIBS)"!=""
+.ENDIF # "$(COM)"!="GCC"
+.ENDIF
+.ENDIF # "$(SHL6USE_EXPORTS)"=="name"
+
+$(MISC)/%linkinc.ls:
+ @echo . > $@
+.ENDIF # "$(linkinc)"!=""
+
+.IF "$(GUI)" == "OS2"
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL6TARGET8=$(shell @fix_shl $(SHL6TARGET))
+.ENDIF
+
+.IF "$(GUI)" == "OS2"
+_SHL6IMP_ORD = $(SHL6STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(SHL6STDLIBS:^"$(LB)/")
+SHL6IMP_ORD = $(foreach,i,$(_SHL6IMP_ORD) $(shell @-ls $i))
+.ELSE
+SHL6IMP_ORD =
+.ENDIF
+
+
+$(SHL6TARGETN) : \
+ $(SHL6OBJS)\
+ $(SHL6LIBS)\
+ $(USE_6IMPLIB_DEPS)\
+ $(USE_SHL6DEF)\
+ $(USE_SHL6VERSIONMAP)\
+ $(SHL6RES)\
+ $(SHL6DEPN) \
+ $(SHL6IMP_ORD) \
+ $(SHL6LINKLIST)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(SHL6DEFAULTRES)"!=""
+ @@-$(RM) $(MISC)/$(SHL6DEFAULTRES:b).rc
+.IF "$(SHL6ICON)" != ""
+ @echo 1 ICON $(SHL6ICON) >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL6ADD_VERINFO)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL6ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+.ELSE # "$(SHL6ADD_VERINFO)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+.ENDIF # "$(SHL6ADD_VERINFO)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL6TARGET)$(DLLPOST) >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL6TARGET:b) >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL6DEFAULTRES:b).rc
+.ENDIF # "$(SHL6DEFAULTRES)"!=""
+.IF "$(SHL6ALLRES)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL6ALLRES) > $(SHL6LINKRES)
+.IF "$(COM)"=="GCC"
+ windres $(SHL6LINKRES) $(SHL6LINKRESO)
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(SHL6ALLRES)"!=""
+.IF "$(COM)"=="GCC" # always have to call dlltool explicitly as ld cannot handle # comment in .def
+ @echo dlltool --dllname $(SHL6TARGET)$(DLLPOST) \
+ --kill-at \\ > $(MISC)/$(TARGET).$(@:b)_6.cmd
+ @noop $(assign ALL6OBJLIST:=$(STDOBJ) $(SHL6OBJS) $(SHL6LINKRESO) $(shell $(TYPE) /dev/null $(SHL6LIBS) | $(SED) s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+.IF "$(DEFLIB6NAME)"!="" # do not have to include objs
+ @noop $(assign DEF6OBJLIST:=$(shell $(TYPE) $(foreach,i,$(DEFLIB6NAME) $(SLB)/$(i).lib) | sed s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+ @noop $(foreach,i,$(DEF6OBJLIST) $(assign ALL6OBJLIST:=$(ALL6OBJLIST:s?$i??)))
+.ENDIF # "$(DEFLIB6NAME)"!=""
+ @echo --output-exp $(MISC)/$(@:b)_exp.o \\ >> $(MISC)/$(TARGET).$(@:b)_6.cmd
+.IF "$(SHL6DEF)"!=""
+ @echo --input-def $(SHL6DEF) \\ >> $(MISC)/$(TARGET).$(@:b)_6.cmd
+.ELSE
+ @echo $(SHL6VERSIONOBJ) $(SHL6DESCRIPTIONOBJ) \\ >> $(MISC)/$(TARGET).$(@:b)_6.cmd
+.ENDIF
+ @echo $(ALL6OBJLIST) >> $(MISC)/$(TARGET).$(@:b)_6.cmd
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(MINGWSSTDOBJ) -o $@ \
+ $(STDOBJ) $(SHL6VERSIONOBJ) $(SHL6DESCRIPTIONOBJ) $(SHL6OBJS) $(SHL6LINKRESO) \
+ `$(TYPE) /dev/null $(SHL6LIBS) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ -Wl,--exclude-libs,ALL,--start-group $(SHL6STDLIBS) -Wl,--end-group \
+ $(SHL6STDSHL) $(STDSHL6) $(MISC)/$(@:b)_exp.o $(MINGWSSTDENDOBJ) \
+ -Wl,-Map,$(MISC)/$(@:b).map >> $(MISC)/$(TARGET).$(@:b)_6.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_6.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_6.cmd
+.ELSE
+.IF "$(linkinc)"==""
+.IF "$(SHL6USE_EXPORTS)"!="name"
+.IF "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL6LINKER) @$(mktmp \
+ $(SHL6LINKFLAGS) \
+ $(LINKFLAGSSHL) \
+ $(SHL6STACK) $(SHL6BASEX) \
+ -out:$@ \
+ -map:$(MISC)/$(@:b).map \
+ -def:$(SHL6DEF) \
+ $(USE_6IMPLIB) \
+ $(STDOBJ) \
+ $(SHL6VERSIONOBJ) $(SHL6OBJS) \
+ $(SHL6LIBS) \
+ $(SHL6STDLIBS) \
+ $(SHL6STDSHL) $(STDSHL6) \
+ $(SHL6LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL6LINKER) @$(mktmp $(SHL6LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL6BASEX) \
+ $(SHL6STACK) -out:$(SHL6TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(LB)/$(SHL6IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL6OBJS) $(SHL6VERSIONOBJ) \
+ $(SHL6LIBS) \
+ $(SHL6STDLIBS) \
+ $(SHL6STDSHL) $(STDSHL6) \
+ $(SHL6LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+.ELSE # "$(SHL6USE_EXPORTS)"!="name"
+ $(COMMAND_ECHO)$(SHL6LINKER) @$(mktmp $(SHL6LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL6BASEX) \
+ $(SHL6STACK) -out:$(SHL6TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(USE_6IMPLIB) \
+ $(STDOBJ) \
+ $(SHL6OBJS) $(SHL6VERSIONOBJ)) \
+ $(SHL6LINKLISTPARAM) \
+ @$(mktmp $(SHL6STDLIBS) \
+ $(SHL6STDSHL) $(STDSHL6) \
+ $(SHL6LINKRES) \
+ )
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(SHL6USE_EXPORTS)"!="name"
+.ELSE # "$(linkinc)"==""
+ $(COMMAND_ECHO)-$(RM) del $(MISC)/$(SHL6TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)/$(SHL6TARGET).lst
+ $(COMMAND_ECHO)$(TYPE) $(mktmp \
+ $(SHL6LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL6BASEX) \
+ $(SHL6STACK) $(MAPFILE) \
+ -out:$@ \
+ $(LB)/$(SHL6IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL6OBJS) \
+ $(SHL6STDLIBS) \
+ $(SHL6STDSHL) $(STDSHL6) \
+ $(SHL6LINKRES) \
+ ) >> $(MISC)/$(SHL6TARGET).lnk
+ $(COMMAND_ECHO)$(TYPE) $(MISC)/$(SHL6TARGETN:b)_linkinc.ls >> $(MISC)/$(SHL6TARGET).lnk
+ $(COMMAND_ECHO)$(SHL6LINKER) @$(MISC)/$(SHL6TARGET).lnk
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(linkinc)"==""
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)" == "WNT"
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_6.cmd
+ @echo $(STDSLO) $(SHL6OBJS:s/.obj/.o/) \
+ $(SHL6VERSIONOBJ) \
+ `cat /dev/null $(SHL6LIBS) | sed s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(SHL6LINKER) $(SHL6LINKFLAGS) $(SHL6VERSIONMAPPARA) $(LINKFLAGSSHL) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) -o $@ \
+ $(SHL6STDLIBS) $(SHL6ARCHIVES) $(SHL6STDSHL) $(STDSHL6) -filelist $(MISC)/$(@:b).list $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_6.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_6.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_6.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_6.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_6.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ shl $(SHL6RPATH) $@
+ @echo "Making: " $(@:f).jnilib
+ @macosx-create-bundle $@
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL6NOCHECK)"==""
+ $(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS6) $(SHL6TARGETN)
+.ENDIF # "$(SHL6NOCHECK)"!=""
+.ENDIF
+.ELSE # "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_6.cmd
+ @echo $(SHL6LINKER) $(SHL6LINKFLAGS) $(SHL6SONAME) $(LINKFLAGSSHL) $(SHL6VERSIONMAPPARA) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) $(STDSLO) $(SHL6OBJS:s/.obj/.o/) \
+ $(SHL6VERSIONOBJ) -o $@ \
+ `cat /dev/null $(SHL6LIBS) | tr -s " " "\n" | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ $(SHL6STDLIBS) $(SHL6ARCHIVES) $(SHL6STDSHL) $(STDSHL6) $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_6.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_6.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_6.cmd
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL6NOCHECK)"==""
+ $(COMMAND_ECHO)-$(RM) $(SHL6TARGETN:d)check_$(SHL6TARGETN:f)
+ $(COMMAND_ECHO)$(RENAME) $(SHL6TARGETN) $(SHL6TARGETN:d)check_$(SHL6TARGETN:f)
+.IF "$(VERBOSE)"=="TRUE"
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS6) $(SHL6TARGETN:d)check_$(SHL6TARGETN:f)
+.ELSE
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS6) -- -s $(SHL6TARGETN:d)check_$(SHL6TARGETN:f)
+.ENDIF
+.ENDIF # "$(SHL6NOCHECK)"!=""
+.ENDIF # "$(UPDATER)"=="YES"
+.ENDIF # "$(OS)"=="MACOSX"
+.IF "$(UNIXVERSIONNAMES)"!=""
+ $(COMMAND_ECHO)$(RM) $(LB)/$(SHL6TARGETN:b)
+ $(COMMAND_ECHO)cd $(LB) && ln -s $(SHL6TARGETN:f) $(SHL6TARGETN:b)
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+.IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+.ENDIF
+.ENDIF # "$(GUI)" == "UNX"
+
+.IF "$(GUI)" == "OS2"
+
+.IF "$(SHL6DEFAULTRES)"!=""
+ @+-$(RM) $(MISC)/$(SHL6DEFAULTRES:b).rc >& $(NULLDEV)
+.IF "$(SHL6ICON)" != ""
+ @-+echo 1 ICON $(SHL6ICON) >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL6ADD_VERINFO)"!=""
+ @-+echo $(EMQ)#include $(EMQ)"$(SHL6ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+.ENDIF # "$(SHL6ADD_VERINFO)"!=""
+ @-+echo MENU 1 BEGIN END >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+# @-+echo $(EMQ)RCDATA 1 { "Build string here" }$(EMQ) >> $(MISC)/$(SHL6DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+# YD 04/07/06 seems null, confuses rc cli: -i $(SOLARTESDIR)
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL6DEFAULTRES:b).rc
+.ENDIF # "$(SHL6DEFAULTRES)"!=""
+
+.IF "$(SHL6ALLRES)"!=""
+ $(COMMAND_ECHO)+$(TYPE) $(SHL6ALLRES) > $(SHL6LINKRES)
+.ENDIF # "$(SHL6ALLRES)"!=""
+
+.IF "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL6LINKER) $(SHL6LINKFLAGS) $(LINKFLAGSSHL) -o $@ \
+ $(SHL6DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL6OBJS) $(SHL6VERSIONOBJ) \
+ $(SHL6LIBS) \
+ $(SHL6STDLIBS:^"-l") \
+ $(SHL6LINKRES) \
+ $(SHL6STDSHL:^"-l") $(STDSHL6:^"-l")
+
+.ELSE # "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL6LINKER) -v $(SHL6LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL6BASEX) \
+ $(SHL6STACK) -o $(SHL6TARGETN) \
+ $(SHL6DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL6OBJS) $(SHL6VERSIONOBJ) \
+ $(SHL6LIBS) \
+ $(SHL6STDLIBS:^"-l") \
+ $(SHL6LINKRES) \
+ $(SHL6STDSHL:^"-l") $(STDSHL6:^"-l") \
+ $(LINKOUTPUTFILTER)
+ @$(LS) $@ >& $(NULLDEV)
+
+.ENDIF # "$(USE_DEFFILE)"!=""
+
+.IF "$(SHL6TARGET8)" != "$(SHL6TARGET)"
+ $(COMMAND_ECHO)+$(COPY) $@ $(@:d)$(SHL6TARGET8).dll
+.ENDIF
+
+.ENDIF # "$(GUI)" == "OS2"
+
+
+.IF "$(TESTDIR)"!=""
+.IF "$(NO_TESTS)"==""
+
+ALLTAR : runtest_$(SHL6TARGET)
+
+runtest_$(SHL6TARGET) : $(SHL6TARGETN)
+ testshl $(SHL6TARGETN) sce/$(SHL6TARGET).sce -msg -skip
+.ENDIF # "$(NO_TESTS)"==""
+.ENDIF # "$(TESTDIR)"!=""
+.ENDIF # "$(SHL6TARGETN)"!=""
+
+# unroll begin
+
+.IF "$(SHL7TARGETN)"!=""
+
+.IF "$(OS)"=="AIX"
+SHL7STDLIBS=
+.ENDIF
+
+.IF "$(SHLLINKARCONLY)" != ""
+SHL7STDLIBS=
+STDSHL=
+.ELSE
+SHL7ARCHIVES=
+.ENDIF
+
+# decide how to link
+.IF "$(SHL7CODETYPE)"=="C"
+SHL7LINKER=$(LINKC)
+SHL7STDSHL=$(subst,CPPRUNTIME, $(STDSHL))
+SHL7LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(SHL7CODETYPE)"=="C"
+SHL7LINKER=$(LINK)
+SHL7STDSHL=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDSHL))
+SHL7LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(SHL7CODETYPE)"=="C"
+
+SHL7RPATH*=OOO
+LINKFLAGSRUNPATH_$(SHL7RPATH)*=/ERROR:/Bad_SHL7RPATH_value
+SHL7LINKFLAGS+=$(LINKFLAGSRUNPATH_$(SHL7RPATH))
+
+.IF "$(SHL7USE_EXPORTS)"==""
+SHL7DEF*=$(MISC)/$(SHL7TARGET).def
+.ENDIF # "$(SHL7USE_EXPORTS)"==""
+
+EXTRALIBPATHS7=$(EXTRALIBPATHS)
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL7NOCHECK)"==""
+.IF "$(SOLAR_STLLIBPATH)"!=""
+EXTRALIBPATHS7+=-L$(SOLAR_STLLIBPATH)
+.ENDIF
+.ENDIF # "$(SHL7NOCHECK)"!=""
+.ENDIF
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ version object ++++++++++++++++++++++++++++++++++++++++
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(L10N_framework)"==""
+.IF "$(VERSIONOBJ)"!=""
+SHL7VERSIONOBJ:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL7TARGET))}$(VERSIONOBJ:f)
+USE_VERSIONH:=$(INCCOM)/$(SHL7VERSIONOBJ:b).h
+.IF "$(GUI)" == "UNX"
+SHL7VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL7TARGET))}$(VERSIONOBJ:f:s/.o/.obj/)
+.ELSE # "$(GUI)" == "UNX"
+SHL7VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL7TARGET))}$(VERSIONOBJ:f)
+.ENDIF # "$(GUI)" == "UNX"
+$(MISC)/$(SHL7VERSIONOBJ:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL7VERSIONOBJ:b).h
+# $(COPY) $(SOLARENV)/src/version.c $@
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL7VERSIONOBJ:b).h/ > $@
+
+.INIT : $(SHL7VERSIONOBJDEP)
+.ENDIF # "$(VERSIONOBJ)"!=""
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+.IF "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL7IMPLIB)" == ""
+SHL7IMPLIB=i$(TARGET)_t7
+.ENDIF # "$(SHL7IMPLIB)" == ""
+.IF "$(COM)" != "GCC"
+USE_7IMPLIB=-implib:$(LB)/$(SHL7IMPLIB).lib
+.ENDIF # "$(COM)" != "GCC"
+SHL7IMPLIBN=$(LB)/$(SHL7IMPLIB).lib
+ALLTAR : $(SHL7IMPLIBN)
+
+.IF "$(USE_DEFFILE)"==""
+USE_7IMPLIB_DEPS=$(LB)/$(SHL7IMPLIB).lib
+.ENDIF # "$(USE_DEFFILE)"==""
+.ENDIF # "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+USE_SHL7DEF=$(SHL7DEF)
+.ELSE # "$(GUI)" != "UNX"
+USE_SHL7DEF=
+SHL7DEPN+:=$(SHL7DEPNU)
+
+.IF "$(SHL7VERSIONMAP)"==""
+# to activate vmaps remove "#"
+USE_SHL7VERSIONMAP=$(MISC)/$(SHL7TARGET).vmap
+.ENDIF # "$(SHL7VERSIONMAP)"==""
+
+.IF "$(USE_SHL7VERSIONMAP)"!=""
+
+.IF "$(SHL7FILTERFILE)"!=""
+.IF "$(SHL7VERSIONMAP)"!=""
+#eine von beiden ist zuviel
+USE_SHL7VERSIONMAP=$(MISC)/$(SHL7TARGET).vmap
+$(USE_SHL7VERSIONMAP) .PHONY:
+ @echo -----------------------------
+ @echo you should only use versionmap OR exportfile
+ @echo -----------------------------
+# force_dmake_to_error
+
+.ENDIF # "$(SHL7VERSIONMAP)"!=""
+
+SHL7VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL7VERSIONMAP)
+
+$(USE_SHL7VERSIONMAP): \
+ $(SHL7OBJS)\
+ $(SHL7LIBS)\
+ $(SHL7FILTERFILE)
+ @$(RM) $@.dump
+.IF "$(SHL7OBJS)"!=""
+# dump remaining objects on the fly
+.IF "$(OS)"=="MACOSX"
+ @-nm $(SHL7OBJS:s/.obj/.o/) > $@.dump
+.ELSE
+ @nm $(SHL7OBJS:s/.obj/.o/) > $@.dump
+.ENDIF
+.ENDIF # "$(SHL7OBJS)!"=""
+ @$(TYPE) /dev/null $(SHL7LIBS:s/.lib/.dump/) >> $@.dump
+ $(COMMAND_ECHO) $(PERL) $(SOLARENV)/bin/mapgen.pl -d $@.dump -s $(SHL7INTERFACE) -f $(SHL7FILTERFILE) -m $@
+
+.ELSE # "$(SHL7FILTERFILE)"!=""
+USE_SHL7VERSIONMAP=$(MISC)/$(SHL7TARGET).vmap
+$(USE_SHL7VERSIONMAP) :
+.IF "$(VERBOSE)" == "TRUE"
+ @echo -----------------------------
+ @echo SHL7FILTERFILE not set!
+ @echo -----------------------------
+ @$(TOUCH) $@
+ @echo dummy file to keep the dependencies for later use.
+.ELSE
+ @$(TOUCH) $@
+.ENDIF
+# force_dmake_to_error
+.ENDIF # "$(SHL7FILTERFILE)"!=""
+.ELSE # "$(USE_SHL7VERSIONMAP)"!=""
+
+#and now for the plain non-generic way...
+.IF "$(SHL7VERSIONMAP)"!=""
+USE_SHL7VERSIONMAP=$(MISC)/$(SHL7VERSIONMAP:b)_$(SHL7TARGET)$(SHL7VERSIONMAP:e)
+SHL7VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL7VERSIONMAP)
+
+.IF "$(OS)"=="MACOSX"
+$(USE_SHL7VERSIONMAP): $(SHL7OBJS) $(SHL7LIBS)
+.ENDIF
+
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL7VERSIONMAP) .ERRREMOVE: $(SHL7VERSIONMAP)
+ @@-$(RM) -f $@
+# The following files will only be generated and needed on Mac OS X as temporary files
+# in order to generate exported symbols list out of Linux/Solaris map files
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) -f $@.symregexp >& $(NULLDEV)
+ @-$(RM) -f $@.expsymlist >& $(NULLDEV)
+.ENDIF
+# Its questionable if the following condition '.IF "$(COMID)"=="gcc3"' makes sense and what
+# happens if somebody will change it in the future
+.IF "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL7VERSIONMAP) | $(AWK) -f $(SOLARENV)/bin/addsym.awk > $@
+.ELIF "$(COMNAME)"=="sunpro5"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL7VERSIONMAP) | $(GREP) -v $(IGNORE_SYMBOLS) > $@
+.ELSE # "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL7VERSIONMAP) > $@
+.ENDIF # "$(COMID)"=="gcc3"
+ @chmod a+w $@
+# Mac OS X post-processing generate an exported symbols list from the generated map file
+# for details on exported symbols list see man ld on Mac OS X
+.IF "$(OS)"=="MACOSX"
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep -v "\*\|?" > $@.exported-symbols
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep "\*\|?" > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+.IF "$(SHL7OBJS)"!=""
+ -echo $(foreach,i,$(SHL7OBJS:s/.obj/.o/) $i) | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+.IF "$(SHL7LIBS)"!=""
+ $(COMMAND_ECHO)-$(TYPE) $(foreach,j,$(SHL7LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ cp $@.exported-symbols $@
+.ENDIF # .IF "$(OS)"=="MACOSX"
+.ENDIF # "$(SHL7VERSIONMAP)"!=""
+.ENDIF # "$(USE_SHL7VERSIONMAP)"!=""
+.ENDIF # "$(GUI)" != "UNX"
+
+.IF "$(UNIXVERSIONNAMES)"!=""
+.IF "$(OS)"!="MACOSX"
+.IF "$(GUI)"=="UNX"
+SHL7SONAME=\"$(SONAME_SWITCH)$(SHL7TARGETN:f)\"
+.ENDIF # "$(GUI)"!="UNX"
+.ENDIF # "$(OS)"!="MACOSX"
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+
+.IF "$(SHL7RES)"!=""
+SHL7ALLRES+=$(SHL7RES)
+SHL7LINKRES*=$(MISC)/$(SHL7TARGET).res
+SHL7LINKRESO*=$(MISC)/$(SHL7TARGET)_res.o
+.ENDIF # "$(SHL7RES)"!=""
+
+.IF "$(SHL7DEFAULTRES)$(use_shl_versions)"!=""
+SHL7DEFAULTRES*=$(MISC)/$(SHL7TARGET)_def.res
+SHL7ALLRES+=$(SHL7DEFAULTRES)
+SHL7LINKRES*=$(MISC)/$(SHL7TARGET).res
+SHL7LINKRESO*=$(MISC)/$(SHL7TARGET)_res.o
+.ENDIF # "$(SHL7DEFAULTRES)$(use_shl_versions)"!=""
+
+#.IF "$(SHL7TARGETN)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL7LIBS)"!=""
+$(MISC)/$(SHL7TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL7LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL7LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(SHL7TARGETN:b)_linkinc.ls
+$(SHL7TARGETN) : $(LINKINCTARGETS)
+
+.ELSE
+.IF "$(SHL7USE_EXPORTS)"=="name"
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(COM)"!="GCC"
+.IF "$(SHL7LIBS)"!=""
+SHL7LINKLIST=$(MISC)/$(SHL7TARGET)_link.lst
+SHL7LINKLISTPARAM=@$(SHL7LINKLIST)
+$(SHL7LINKLIST) : $(SHL7LIBS)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL7LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL7LIBS)"!=""
+.ENDIF # "$(COM)"!="GCC"
+.ENDIF
+.ENDIF # "$(SHL7USE_EXPORTS)"=="name"
+
+$(MISC)/%linkinc.ls:
+ @echo . > $@
+.ENDIF # "$(linkinc)"!=""
+
+.IF "$(GUI)" == "OS2"
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL7TARGET8=$(shell @fix_shl $(SHL7TARGET))
+.ENDIF
+
+.IF "$(GUI)" == "OS2"
+_SHL7IMP_ORD = $(SHL7STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(SHL7STDLIBS:^"$(LB)/")
+SHL7IMP_ORD = $(foreach,i,$(_SHL7IMP_ORD) $(shell @-ls $i))
+.ELSE
+SHL7IMP_ORD =
+.ENDIF
+
+
+$(SHL7TARGETN) : \
+ $(SHL7OBJS)\
+ $(SHL7LIBS)\
+ $(USE_7IMPLIB_DEPS)\
+ $(USE_SHL7DEF)\
+ $(USE_SHL7VERSIONMAP)\
+ $(SHL7RES)\
+ $(SHL7DEPN) \
+ $(SHL7IMP_ORD) \
+ $(SHL7LINKLIST)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(SHL7DEFAULTRES)"!=""
+ @@-$(RM) $(MISC)/$(SHL7DEFAULTRES:b).rc
+.IF "$(SHL7ICON)" != ""
+ @echo 1 ICON $(SHL7ICON) >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL7ADD_VERINFO)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL7ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+.ELSE # "$(SHL7ADD_VERINFO)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+.ENDIF # "$(SHL7ADD_VERINFO)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL7TARGET)$(DLLPOST) >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL7TARGET:b) >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL7DEFAULTRES:b).rc
+.ENDIF # "$(SHL7DEFAULTRES)"!=""
+.IF "$(SHL7ALLRES)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL7ALLRES) > $(SHL7LINKRES)
+.IF "$(COM)"=="GCC"
+ windres $(SHL7LINKRES) $(SHL7LINKRESO)
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(SHL7ALLRES)"!=""
+.IF "$(COM)"=="GCC" # always have to call dlltool explicitly as ld cannot handle # comment in .def
+ @echo dlltool --dllname $(SHL7TARGET)$(DLLPOST) \
+ --kill-at \\ > $(MISC)/$(TARGET).$(@:b)_7.cmd
+ @noop $(assign ALL7OBJLIST:=$(STDOBJ) $(SHL7OBJS) $(SHL7LINKRESO) $(shell $(TYPE) /dev/null $(SHL7LIBS) | $(SED) s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+.IF "$(DEFLIB7NAME)"!="" # do not have to include objs
+ @noop $(assign DEF7OBJLIST:=$(shell $(TYPE) $(foreach,i,$(DEFLIB7NAME) $(SLB)/$(i).lib) | sed s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+ @noop $(foreach,i,$(DEF7OBJLIST) $(assign ALL7OBJLIST:=$(ALL7OBJLIST:s?$i??)))
+.ENDIF # "$(DEFLIB7NAME)"!=""
+ @echo --output-exp $(MISC)/$(@:b)_exp.o \\ >> $(MISC)/$(TARGET).$(@:b)_7.cmd
+.IF "$(SHL7DEF)"!=""
+ @echo --input-def $(SHL7DEF) \\ >> $(MISC)/$(TARGET).$(@:b)_7.cmd
+.ELSE
+ @echo $(SHL7VERSIONOBJ) $(SHL7DESCRIPTIONOBJ) \\ >> $(MISC)/$(TARGET).$(@:b)_7.cmd
+.ENDIF
+ @echo $(ALL7OBJLIST) >> $(MISC)/$(TARGET).$(@:b)_7.cmd
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(MINGWSSTDOBJ) -o $@ \
+ $(STDOBJ) $(SHL7VERSIONOBJ) $(SHL7DESCRIPTIONOBJ) $(SHL7OBJS) $(SHL7LINKRESO) \
+ `$(TYPE) /dev/null $(SHL7LIBS) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ -Wl,--exclude-libs,ALL,--start-group $(SHL7STDLIBS) -Wl,--end-group \
+ $(SHL7STDSHL) $(STDSHL7) $(MISC)/$(@:b)_exp.o $(MINGWSSTDENDOBJ) \
+ -Wl,-Map,$(MISC)/$(@:b).map >> $(MISC)/$(TARGET).$(@:b)_7.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_7.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_7.cmd
+.ELSE
+.IF "$(linkinc)"==""
+.IF "$(SHL7USE_EXPORTS)"!="name"
+.IF "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL7LINKER) @$(mktmp \
+ $(SHL7LINKFLAGS) \
+ $(LINKFLAGSSHL) \
+ $(SHL7STACK) $(SHL7BASEX) \
+ -out:$@ \
+ -map:$(MISC)/$(@:b).map \
+ -def:$(SHL7DEF) \
+ $(USE_7IMPLIB) \
+ $(STDOBJ) \
+ $(SHL7VERSIONOBJ) $(SHL7OBJS) \
+ $(SHL7LIBS) \
+ $(SHL7STDLIBS) \
+ $(SHL7STDSHL) $(STDSHL7) \
+ $(SHL7LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL7LINKER) @$(mktmp $(SHL7LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL7BASEX) \
+ $(SHL7STACK) -out:$(SHL7TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(LB)/$(SHL7IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL7OBJS) $(SHL7VERSIONOBJ) \
+ $(SHL7LIBS) \
+ $(SHL7STDLIBS) \
+ $(SHL7STDSHL) $(STDSHL7) \
+ $(SHL7LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+.ELSE # "$(SHL7USE_EXPORTS)"!="name"
+ $(COMMAND_ECHO)$(SHL7LINKER) @$(mktmp $(SHL7LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL7BASEX) \
+ $(SHL7STACK) -out:$(SHL7TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(USE_7IMPLIB) \
+ $(STDOBJ) \
+ $(SHL7OBJS) $(SHL7VERSIONOBJ)) \
+ $(SHL7LINKLISTPARAM) \
+ @$(mktmp $(SHL7STDLIBS) \
+ $(SHL7STDSHL) $(STDSHL7) \
+ $(SHL7LINKRES) \
+ )
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(SHL7USE_EXPORTS)"!="name"
+.ELSE # "$(linkinc)"==""
+ $(COMMAND_ECHO)-$(RM) del $(MISC)/$(SHL7TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)/$(SHL7TARGET).lst
+ $(COMMAND_ECHO)$(TYPE) $(mktmp \
+ $(SHL7LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL7BASEX) \
+ $(SHL7STACK) $(MAPFILE) \
+ -out:$@ \
+ $(LB)/$(SHL7IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL7OBJS) \
+ $(SHL7STDLIBS) \
+ $(SHL7STDSHL) $(STDSHL7) \
+ $(SHL7LINKRES) \
+ ) >> $(MISC)/$(SHL7TARGET).lnk
+ $(COMMAND_ECHO)$(TYPE) $(MISC)/$(SHL7TARGETN:b)_linkinc.ls >> $(MISC)/$(SHL7TARGET).lnk
+ $(COMMAND_ECHO)$(SHL7LINKER) @$(MISC)/$(SHL7TARGET).lnk
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(linkinc)"==""
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)" == "WNT"
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_7.cmd
+ @echo $(STDSLO) $(SHL7OBJS:s/.obj/.o/) \
+ $(SHL7VERSIONOBJ) \
+ `cat /dev/null $(SHL7LIBS) | sed s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(SHL7LINKER) $(SHL7LINKFLAGS) $(SHL7VERSIONMAPPARA) $(LINKFLAGSSHL) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) -o $@ \
+ $(SHL7STDLIBS) $(SHL7ARCHIVES) $(SHL7STDSHL) $(STDSHL7) -filelist $(MISC)/$(@:b).list $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_7.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_7.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_7.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_7.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_7.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ shl $(SHL7RPATH) $@
+ @echo "Making: " $(@:f).jnilib
+ @macosx-create-bundle $@
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL7NOCHECK)"==""
+ $(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS7) $(SHL7TARGETN)
+.ENDIF # "$(SHL7NOCHECK)"!=""
+.ENDIF
+.ELSE # "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_7.cmd
+ @echo $(SHL7LINKER) $(SHL7LINKFLAGS) $(SHL7SONAME) $(LINKFLAGSSHL) $(SHL7VERSIONMAPPARA) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) $(STDSLO) $(SHL7OBJS:s/.obj/.o/) \
+ $(SHL7VERSIONOBJ) -o $@ \
+ `cat /dev/null $(SHL7LIBS) | tr -s " " "\n" | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ $(SHL7STDLIBS) $(SHL7ARCHIVES) $(SHL7STDSHL) $(STDSHL7) $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_7.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_7.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_7.cmd
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL7NOCHECK)"==""
+ $(COMMAND_ECHO)-$(RM) $(SHL7TARGETN:d)check_$(SHL7TARGETN:f)
+ $(COMMAND_ECHO)$(RENAME) $(SHL7TARGETN) $(SHL7TARGETN:d)check_$(SHL7TARGETN:f)
+.IF "$(VERBOSE)"=="TRUE"
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS7) $(SHL7TARGETN:d)check_$(SHL7TARGETN:f)
+.ELSE
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS7) -- -s $(SHL7TARGETN:d)check_$(SHL7TARGETN:f)
+.ENDIF
+.ENDIF # "$(SHL7NOCHECK)"!=""
+.ENDIF # "$(UPDATER)"=="YES"
+.ENDIF # "$(OS)"=="MACOSX"
+.IF "$(UNIXVERSIONNAMES)"!=""
+ $(COMMAND_ECHO)$(RM) $(LB)/$(SHL7TARGETN:b)
+ $(COMMAND_ECHO)cd $(LB) && ln -s $(SHL7TARGETN:f) $(SHL7TARGETN:b)
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+.IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+.ENDIF
+.ENDIF # "$(GUI)" == "UNX"
+
+.IF "$(GUI)" == "OS2"
+
+.IF "$(SHL7DEFAULTRES)"!=""
+ @+-$(RM) $(MISC)/$(SHL7DEFAULTRES:b).rc >& $(NULLDEV)
+.IF "$(SHL7ICON)" != ""
+ @-+echo 1 ICON $(SHL7ICON) >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL7ADD_VERINFO)"!=""
+ @-+echo $(EMQ)#include $(EMQ)"$(SHL7ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+.ENDIF # "$(SHL7ADD_VERINFO)"!=""
+ @-+echo MENU 1 BEGIN END >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+# @-+echo $(EMQ)RCDATA 1 { "Build string here" }$(EMQ) >> $(MISC)/$(SHL7DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+# YD 04/07/06 seems null, confuses rc cli: -i $(SOLARTESDIR)
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL7DEFAULTRES:b).rc
+.ENDIF # "$(SHL7DEFAULTRES)"!=""
+
+.IF "$(SHL7ALLRES)"!=""
+ $(COMMAND_ECHO)+$(TYPE) $(SHL7ALLRES) > $(SHL7LINKRES)
+.ENDIF # "$(SHL7ALLRES)"!=""
+
+.IF "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL7LINKER) $(SHL7LINKFLAGS) $(LINKFLAGSSHL) -o $@ \
+ $(SHL7DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL7OBJS) $(SHL7VERSIONOBJ) \
+ $(SHL7LIBS) \
+ $(SHL7STDLIBS:^"-l") \
+ $(SHL7LINKRES) \
+ $(SHL7STDSHL:^"-l") $(STDSHL7:^"-l")
+
+.ELSE # "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL7LINKER) -v $(SHL7LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL7BASEX) \
+ $(SHL7STACK) -o $(SHL7TARGETN) \
+ $(SHL7DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL7OBJS) $(SHL7VERSIONOBJ) \
+ $(SHL7LIBS) \
+ $(SHL7STDLIBS:^"-l") \
+ $(SHL7LINKRES) \
+ $(SHL7STDSHL:^"-l") $(STDSHL7:^"-l") \
+ $(LINKOUTPUTFILTER)
+ @$(LS) $@ >& $(NULLDEV)
+
+.ENDIF # "$(USE_DEFFILE)"!=""
+
+.IF "$(SHL7TARGET8)" != "$(SHL7TARGET)"
+ $(COMMAND_ECHO)+$(COPY) $@ $(@:d)$(SHL7TARGET8).dll
+.ENDIF
+
+.ENDIF # "$(GUI)" == "OS2"
+
+
+.IF "$(TESTDIR)"!=""
+.IF "$(NO_TESTS)"==""
+
+ALLTAR : runtest_$(SHL7TARGET)
+
+runtest_$(SHL7TARGET) : $(SHL7TARGETN)
+ testshl $(SHL7TARGETN) sce/$(SHL7TARGET).sce -msg -skip
+.ENDIF # "$(NO_TESTS)"==""
+.ENDIF # "$(TESTDIR)"!=""
+.ENDIF # "$(SHL7TARGETN)"!=""
+
+# unroll begin
+
+.IF "$(SHL8TARGETN)"!=""
+
+.IF "$(OS)"=="AIX"
+SHL8STDLIBS=
+.ENDIF
+
+.IF "$(SHLLINKARCONLY)" != ""
+SHL8STDLIBS=
+STDSHL=
+.ELSE
+SHL8ARCHIVES=
+.ENDIF
+
+# decide how to link
+.IF "$(SHL8CODETYPE)"=="C"
+SHL8LINKER=$(LINKC)
+SHL8STDSHL=$(subst,CPPRUNTIME, $(STDSHL))
+SHL8LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(SHL8CODETYPE)"=="C"
+SHL8LINKER=$(LINK)
+SHL8STDSHL=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDSHL))
+SHL8LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(SHL8CODETYPE)"=="C"
+
+SHL8RPATH*=OOO
+LINKFLAGSRUNPATH_$(SHL8RPATH)*=/ERROR:/Bad_SHL8RPATH_value
+SHL8LINKFLAGS+=$(LINKFLAGSRUNPATH_$(SHL8RPATH))
+
+.IF "$(SHL8USE_EXPORTS)"==""
+SHL8DEF*=$(MISC)/$(SHL8TARGET).def
+.ENDIF # "$(SHL8USE_EXPORTS)"==""
+
+EXTRALIBPATHS8=$(EXTRALIBPATHS)
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL8NOCHECK)"==""
+.IF "$(SOLAR_STLLIBPATH)"!=""
+EXTRALIBPATHS8+=-L$(SOLAR_STLLIBPATH)
+.ENDIF
+.ENDIF # "$(SHL8NOCHECK)"!=""
+.ENDIF
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ version object ++++++++++++++++++++++++++++++++++++++++
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(L10N_framework)"==""
+.IF "$(VERSIONOBJ)"!=""
+SHL8VERSIONOBJ:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL8TARGET))}$(VERSIONOBJ:f)
+USE_VERSIONH:=$(INCCOM)/$(SHL8VERSIONOBJ:b).h
+.IF "$(GUI)" == "UNX"
+SHL8VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL8TARGET))}$(VERSIONOBJ:f:s/.o/.obj/)
+.ELSE # "$(GUI)" == "UNX"
+SHL8VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL8TARGET))}$(VERSIONOBJ:f)
+.ENDIF # "$(GUI)" == "UNX"
+$(MISC)/$(SHL8VERSIONOBJ:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL8VERSIONOBJ:b).h
+# $(COPY) $(SOLARENV)/src/version.c $@
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL8VERSIONOBJ:b).h/ > $@
+
+.INIT : $(SHL8VERSIONOBJDEP)
+.ENDIF # "$(VERSIONOBJ)"!=""
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+.IF "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL8IMPLIB)" == ""
+SHL8IMPLIB=i$(TARGET)_t8
+.ENDIF # "$(SHL8IMPLIB)" == ""
+.IF "$(COM)" != "GCC"
+USE_8IMPLIB=-implib:$(LB)/$(SHL8IMPLIB).lib
+.ENDIF # "$(COM)" != "GCC"
+SHL8IMPLIBN=$(LB)/$(SHL8IMPLIB).lib
+ALLTAR : $(SHL8IMPLIBN)
+
+.IF "$(USE_DEFFILE)"==""
+USE_8IMPLIB_DEPS=$(LB)/$(SHL8IMPLIB).lib
+.ENDIF # "$(USE_DEFFILE)"==""
+.ENDIF # "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+USE_SHL8DEF=$(SHL8DEF)
+.ELSE # "$(GUI)" != "UNX"
+USE_SHL8DEF=
+SHL8DEPN+:=$(SHL8DEPNU)
+
+.IF "$(SHL8VERSIONMAP)"==""
+# to activate vmaps remove "#"
+USE_SHL8VERSIONMAP=$(MISC)/$(SHL8TARGET).vmap
+.ENDIF # "$(SHL8VERSIONMAP)"==""
+
+.IF "$(USE_SHL8VERSIONMAP)"!=""
+
+.IF "$(SHL8FILTERFILE)"!=""
+.IF "$(SHL8VERSIONMAP)"!=""
+#eine von beiden ist zuviel
+USE_SHL8VERSIONMAP=$(MISC)/$(SHL8TARGET).vmap
+$(USE_SHL8VERSIONMAP) .PHONY:
+ @echo -----------------------------
+ @echo you should only use versionmap OR exportfile
+ @echo -----------------------------
+# force_dmake_to_error
+
+.ENDIF # "$(SHL8VERSIONMAP)"!=""
+
+SHL8VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL8VERSIONMAP)
+
+$(USE_SHL8VERSIONMAP): \
+ $(SHL8OBJS)\
+ $(SHL8LIBS)\
+ $(SHL8FILTERFILE)
+ @$(RM) $@.dump
+.IF "$(SHL8OBJS)"!=""
+# dump remaining objects on the fly
+.IF "$(OS)"=="MACOSX"
+ @-nm $(SHL8OBJS:s/.obj/.o/) > $@.dump
+.ELSE
+ @nm $(SHL8OBJS:s/.obj/.o/) > $@.dump
+.ENDIF
+.ENDIF # "$(SHL8OBJS)!"=""
+ @$(TYPE) /dev/null $(SHL8LIBS:s/.lib/.dump/) >> $@.dump
+ $(COMMAND_ECHO) $(PERL) $(SOLARENV)/bin/mapgen.pl -d $@.dump -s $(SHL8INTERFACE) -f $(SHL8FILTERFILE) -m $@
+
+.ELSE # "$(SHL8FILTERFILE)"!=""
+USE_SHL8VERSIONMAP=$(MISC)/$(SHL8TARGET).vmap
+$(USE_SHL8VERSIONMAP) :
+.IF "$(VERBOSE)" == "TRUE"
+ @echo -----------------------------
+ @echo SHL8FILTERFILE not set!
+ @echo -----------------------------
+ @$(TOUCH) $@
+ @echo dummy file to keep the dependencies for later use.
+.ELSE
+ @$(TOUCH) $@
+.ENDIF
+# force_dmake_to_error
+.ENDIF # "$(SHL8FILTERFILE)"!=""
+.ELSE # "$(USE_SHL8VERSIONMAP)"!=""
+
+#and now for the plain non-generic way...
+.IF "$(SHL8VERSIONMAP)"!=""
+USE_SHL8VERSIONMAP=$(MISC)/$(SHL8VERSIONMAP:b)_$(SHL8TARGET)$(SHL8VERSIONMAP:e)
+SHL8VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL8VERSIONMAP)
+
+.IF "$(OS)"=="MACOSX"
+$(USE_SHL8VERSIONMAP): $(SHL8OBJS) $(SHL8LIBS)
+.ENDIF
+
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL8VERSIONMAP) .ERRREMOVE: $(SHL8VERSIONMAP)
+ @@-$(RM) -f $@
+# The following files will only be generated and needed on Mac OS X as temporary files
+# in order to generate exported symbols list out of Linux/Solaris map files
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) -f $@.symregexp >& $(NULLDEV)
+ @-$(RM) -f $@.expsymlist >& $(NULLDEV)
+.ENDIF
+# Its questionable if the following condition '.IF "$(COMID)"=="gcc3"' makes sense and what
+# happens if somebody will change it in the future
+.IF "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL8VERSIONMAP) | $(AWK) -f $(SOLARENV)/bin/addsym.awk > $@
+.ELIF "$(COMNAME)"=="sunpro5"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL8VERSIONMAP) | $(GREP) -v $(IGNORE_SYMBOLS) > $@
+.ELSE # "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL8VERSIONMAP) > $@
+.ENDIF # "$(COMID)"=="gcc3"
+ @chmod a+w $@
+# Mac OS X post-processing generate an exported symbols list from the generated map file
+# for details on exported symbols list see man ld on Mac OS X
+.IF "$(OS)"=="MACOSX"
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep -v "\*\|?" > $@.exported-symbols
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep "\*\|?" > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+.IF "$(SHL8OBJS)"!=""
+ -echo $(foreach,i,$(SHL8OBJS:s/.obj/.o/) $i) | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+.IF "$(SHL8LIBS)"!=""
+ $(COMMAND_ECHO)-$(TYPE) $(foreach,j,$(SHL8LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ cp $@.exported-symbols $@
+.ENDIF # .IF "$(OS)"=="MACOSX"
+.ENDIF # "$(SHL8VERSIONMAP)"!=""
+.ENDIF # "$(USE_SHL8VERSIONMAP)"!=""
+.ENDIF # "$(GUI)" != "UNX"
+
+.IF "$(UNIXVERSIONNAMES)"!=""
+.IF "$(OS)"!="MACOSX"
+.IF "$(GUI)"=="UNX"
+SHL8SONAME=\"$(SONAME_SWITCH)$(SHL8TARGETN:f)\"
+.ENDIF # "$(GUI)"!="UNX"
+.ENDIF # "$(OS)"!="MACOSX"
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+
+.IF "$(SHL8RES)"!=""
+SHL8ALLRES+=$(SHL8RES)
+SHL8LINKRES*=$(MISC)/$(SHL8TARGET).res
+SHL8LINKRESO*=$(MISC)/$(SHL8TARGET)_res.o
+.ENDIF # "$(SHL8RES)"!=""
+
+.IF "$(SHL8DEFAULTRES)$(use_shl_versions)"!=""
+SHL8DEFAULTRES*=$(MISC)/$(SHL8TARGET)_def.res
+SHL8ALLRES+=$(SHL8DEFAULTRES)
+SHL8LINKRES*=$(MISC)/$(SHL8TARGET).res
+SHL8LINKRESO*=$(MISC)/$(SHL8TARGET)_res.o
+.ENDIF # "$(SHL8DEFAULTRES)$(use_shl_versions)"!=""
+
+#.IF "$(SHL8TARGETN)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL8LIBS)"!=""
+$(MISC)/$(SHL8TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL8LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL8LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(SHL8TARGETN:b)_linkinc.ls
+$(SHL8TARGETN) : $(LINKINCTARGETS)
+
+.ELSE
+.IF "$(SHL8USE_EXPORTS)"=="name"
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(COM)"!="GCC"
+.IF "$(SHL8LIBS)"!=""
+SHL8LINKLIST=$(MISC)/$(SHL8TARGET)_link.lst
+SHL8LINKLISTPARAM=@$(SHL8LINKLIST)
+$(SHL8LINKLIST) : $(SHL8LIBS)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL8LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL8LIBS)"!=""
+.ENDIF # "$(COM)"!="GCC"
+.ENDIF
+.ENDIF # "$(SHL8USE_EXPORTS)"=="name"
+
+$(MISC)/%linkinc.ls:
+ @echo . > $@
+.ENDIF # "$(linkinc)"!=""
+
+.IF "$(GUI)" == "OS2"
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL8TARGET8=$(shell @fix_shl $(SHL8TARGET))
+.ENDIF
+
+.IF "$(GUI)" == "OS2"
+_SHL8IMP_ORD = $(SHL8STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(SHL8STDLIBS:^"$(LB)/")
+SHL8IMP_ORD = $(foreach,i,$(_SHL8IMP_ORD) $(shell @-ls $i))
+.ELSE
+SHL8IMP_ORD =
+.ENDIF
+
+
+$(SHL8TARGETN) : \
+ $(SHL8OBJS)\
+ $(SHL8LIBS)\
+ $(USE_8IMPLIB_DEPS)\
+ $(USE_SHL8DEF)\
+ $(USE_SHL8VERSIONMAP)\
+ $(SHL8RES)\
+ $(SHL8DEPN) \
+ $(SHL8IMP_ORD) \
+ $(SHL8LINKLIST)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(SHL8DEFAULTRES)"!=""
+ @@-$(RM) $(MISC)/$(SHL8DEFAULTRES:b).rc
+.IF "$(SHL8ICON)" != ""
+ @echo 1 ICON $(SHL8ICON) >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL8ADD_VERINFO)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL8ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+.ELSE # "$(SHL8ADD_VERINFO)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+.ENDIF # "$(SHL8ADD_VERINFO)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL8TARGET)$(DLLPOST) >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL8TARGET:b) >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL8DEFAULTRES:b).rc
+.ENDIF # "$(SHL8DEFAULTRES)"!=""
+.IF "$(SHL8ALLRES)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL8ALLRES) > $(SHL8LINKRES)
+.IF "$(COM)"=="GCC"
+ windres $(SHL8LINKRES) $(SHL8LINKRESO)
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(SHL8ALLRES)"!=""
+.IF "$(COM)"=="GCC" # always have to call dlltool explicitly as ld cannot handle # comment in .def
+ @echo dlltool --dllname $(SHL8TARGET)$(DLLPOST) \
+ --kill-at \\ > $(MISC)/$(TARGET).$(@:b)_8.cmd
+ @noop $(assign ALL8OBJLIST:=$(STDOBJ) $(SHL8OBJS) $(SHL8LINKRESO) $(shell $(TYPE) /dev/null $(SHL8LIBS) | $(SED) s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+.IF "$(DEFLIB8NAME)"!="" # do not have to include objs
+ @noop $(assign DEF8OBJLIST:=$(shell $(TYPE) $(foreach,i,$(DEFLIB8NAME) $(SLB)/$(i).lib) | sed s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+ @noop $(foreach,i,$(DEF8OBJLIST) $(assign ALL8OBJLIST:=$(ALL8OBJLIST:s?$i??)))
+.ENDIF # "$(DEFLIB8NAME)"!=""
+ @echo --output-exp $(MISC)/$(@:b)_exp.o \\ >> $(MISC)/$(TARGET).$(@:b)_8.cmd
+.IF "$(SHL8DEF)"!=""
+ @echo --input-def $(SHL8DEF) \\ >> $(MISC)/$(TARGET).$(@:b)_8.cmd
+.ELSE
+ @echo $(SHL8VERSIONOBJ) $(SHL8DESCRIPTIONOBJ) \\ >> $(MISC)/$(TARGET).$(@:b)_8.cmd
+.ENDIF
+ @echo $(ALL8OBJLIST) >> $(MISC)/$(TARGET).$(@:b)_8.cmd
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(MINGWSSTDOBJ) -o $@ \
+ $(STDOBJ) $(SHL8VERSIONOBJ) $(SHL8DESCRIPTIONOBJ) $(SHL8OBJS) $(SHL8LINKRESO) \
+ `$(TYPE) /dev/null $(SHL8LIBS) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ -Wl,--exclude-libs,ALL,--start-group $(SHL8STDLIBS) -Wl,--end-group \
+ $(SHL8STDSHL) $(STDSHL8) $(MISC)/$(@:b)_exp.o $(MINGWSSTDENDOBJ) \
+ -Wl,-Map,$(MISC)/$(@:b).map >> $(MISC)/$(TARGET).$(@:b)_8.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_8.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_8.cmd
+.ELSE
+.IF "$(linkinc)"==""
+.IF "$(SHL8USE_EXPORTS)"!="name"
+.IF "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL8LINKER) @$(mktmp \
+ $(SHL8LINKFLAGS) \
+ $(LINKFLAGSSHL) \
+ $(SHL8STACK) $(SHL8BASEX) \
+ -out:$@ \
+ -map:$(MISC)/$(@:b).map \
+ -def:$(SHL8DEF) \
+ $(USE_8IMPLIB) \
+ $(STDOBJ) \
+ $(SHL8VERSIONOBJ) $(SHL8OBJS) \
+ $(SHL8LIBS) \
+ $(SHL8STDLIBS) \
+ $(SHL8STDSHL) $(STDSHL8) \
+ $(SHL8LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL8LINKER) @$(mktmp $(SHL8LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL8BASEX) \
+ $(SHL8STACK) -out:$(SHL8TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(LB)/$(SHL8IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL8OBJS) $(SHL8VERSIONOBJ) \
+ $(SHL8LIBS) \
+ $(SHL8STDLIBS) \
+ $(SHL8STDSHL) $(STDSHL8) \
+ $(SHL8LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+.ELSE # "$(SHL8USE_EXPORTS)"!="name"
+ $(COMMAND_ECHO)$(SHL8LINKER) @$(mktmp $(SHL8LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL8BASEX) \
+ $(SHL8STACK) -out:$(SHL8TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(USE_8IMPLIB) \
+ $(STDOBJ) \
+ $(SHL8OBJS) $(SHL8VERSIONOBJ)) \
+ $(SHL8LINKLISTPARAM) \
+ @$(mktmp $(SHL8STDLIBS) \
+ $(SHL8STDSHL) $(STDSHL8) \
+ $(SHL8LINKRES) \
+ )
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(SHL8USE_EXPORTS)"!="name"
+.ELSE # "$(linkinc)"==""
+ $(COMMAND_ECHO)-$(RM) del $(MISC)/$(SHL8TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)/$(SHL8TARGET).lst
+ $(COMMAND_ECHO)$(TYPE) $(mktmp \
+ $(SHL8LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL8BASEX) \
+ $(SHL8STACK) $(MAPFILE) \
+ -out:$@ \
+ $(LB)/$(SHL8IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL8OBJS) \
+ $(SHL8STDLIBS) \
+ $(SHL8STDSHL) $(STDSHL8) \
+ $(SHL8LINKRES) \
+ ) >> $(MISC)/$(SHL8TARGET).lnk
+ $(COMMAND_ECHO)$(TYPE) $(MISC)/$(SHL8TARGETN:b)_linkinc.ls >> $(MISC)/$(SHL8TARGET).lnk
+ $(COMMAND_ECHO)$(SHL8LINKER) @$(MISC)/$(SHL8TARGET).lnk
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(linkinc)"==""
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)" == "WNT"
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_8.cmd
+ @echo $(STDSLO) $(SHL8OBJS:s/.obj/.o/) \
+ $(SHL8VERSIONOBJ) \
+ `cat /dev/null $(SHL8LIBS) | sed s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(SHL8LINKER) $(SHL8LINKFLAGS) $(SHL8VERSIONMAPPARA) $(LINKFLAGSSHL) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) -o $@ \
+ $(SHL8STDLIBS) $(SHL8ARCHIVES) $(SHL8STDSHL) $(STDSHL8) -filelist $(MISC)/$(@:b).list $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_8.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_8.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_8.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_8.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_8.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ shl $(SHL8RPATH) $@
+ @echo "Making: " $(@:f).jnilib
+ @macosx-create-bundle $@
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL8NOCHECK)"==""
+ $(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS8) $(SHL8TARGETN)
+.ENDIF # "$(SHL8NOCHECK)"!=""
+.ENDIF
+.ELSE # "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_8.cmd
+ @echo $(SHL8LINKER) $(SHL8LINKFLAGS) $(SHL8SONAME) $(LINKFLAGSSHL) $(SHL8VERSIONMAPPARA) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) $(STDSLO) $(SHL8OBJS:s/.obj/.o/) \
+ $(SHL8VERSIONOBJ) -o $@ \
+ `cat /dev/null $(SHL8LIBS) | tr -s " " "\n" | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ $(SHL8STDLIBS) $(SHL8ARCHIVES) $(SHL8STDSHL) $(STDSHL8) $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_8.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_8.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_8.cmd
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL8NOCHECK)"==""
+ $(COMMAND_ECHO)-$(RM) $(SHL8TARGETN:d)check_$(SHL8TARGETN:f)
+ $(COMMAND_ECHO)$(RENAME) $(SHL8TARGETN) $(SHL8TARGETN:d)check_$(SHL8TARGETN:f)
+.IF "$(VERBOSE)"=="TRUE"
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS8) $(SHL8TARGETN:d)check_$(SHL8TARGETN:f)
+.ELSE
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS8) -- -s $(SHL8TARGETN:d)check_$(SHL8TARGETN:f)
+.ENDIF
+.ENDIF # "$(SHL8NOCHECK)"!=""
+.ENDIF # "$(UPDATER)"=="YES"
+.ENDIF # "$(OS)"=="MACOSX"
+.IF "$(UNIXVERSIONNAMES)"!=""
+ $(COMMAND_ECHO)$(RM) $(LB)/$(SHL8TARGETN:b)
+ $(COMMAND_ECHO)cd $(LB) && ln -s $(SHL8TARGETN:f) $(SHL8TARGETN:b)
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+.IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+.ENDIF
+.ENDIF # "$(GUI)" == "UNX"
+
+.IF "$(GUI)" == "OS2"
+
+.IF "$(SHL8DEFAULTRES)"!=""
+ @+-$(RM) $(MISC)/$(SHL8DEFAULTRES:b).rc >& $(NULLDEV)
+.IF "$(SHL8ICON)" != ""
+ @-+echo 1 ICON $(SHL8ICON) >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL8ADD_VERINFO)"!=""
+ @-+echo $(EMQ)#include $(EMQ)"$(SHL8ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+.ENDIF # "$(SHL8ADD_VERINFO)"!=""
+ @-+echo MENU 1 BEGIN END >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+# @-+echo $(EMQ)RCDATA 1 { "Build string here" }$(EMQ) >> $(MISC)/$(SHL8DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+# YD 04/07/06 seems null, confuses rc cli: -i $(SOLARTESDIR)
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL8DEFAULTRES:b).rc
+.ENDIF # "$(SHL8DEFAULTRES)"!=""
+
+.IF "$(SHL8ALLRES)"!=""
+ $(COMMAND_ECHO)+$(TYPE) $(SHL8ALLRES) > $(SHL8LINKRES)
+.ENDIF # "$(SHL8ALLRES)"!=""
+
+.IF "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL8LINKER) $(SHL8LINKFLAGS) $(LINKFLAGSSHL) -o $@ \
+ $(SHL8DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL8OBJS) $(SHL8VERSIONOBJ) \
+ $(SHL8LIBS) \
+ $(SHL8STDLIBS:^"-l") \
+ $(SHL8LINKRES) \
+ $(SHL8STDSHL:^"-l") $(STDSHL8:^"-l")
+
+.ELSE # "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL8LINKER) -v $(SHL8LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL8BASEX) \
+ $(SHL8STACK) -o $(SHL8TARGETN) \
+ $(SHL8DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL8OBJS) $(SHL8VERSIONOBJ) \
+ $(SHL8LIBS) \
+ $(SHL8STDLIBS:^"-l") \
+ $(SHL8LINKRES) \
+ $(SHL8STDSHL:^"-l") $(STDSHL8:^"-l") \
+ $(LINKOUTPUTFILTER)
+ @$(LS) $@ >& $(NULLDEV)
+
+.ENDIF # "$(USE_DEFFILE)"!=""
+
+.IF "$(SHL8TARGET8)" != "$(SHL8TARGET)"
+ $(COMMAND_ECHO)+$(COPY) $@ $(@:d)$(SHL8TARGET8).dll
+.ENDIF
+
+.ENDIF # "$(GUI)" == "OS2"
+
+
+.IF "$(TESTDIR)"!=""
+.IF "$(NO_TESTS)"==""
+
+ALLTAR : runtest_$(SHL8TARGET)
+
+runtest_$(SHL8TARGET) : $(SHL8TARGETN)
+ testshl $(SHL8TARGETN) sce/$(SHL8TARGET).sce -msg -skip
+.ENDIF # "$(NO_TESTS)"==""
+.ENDIF # "$(TESTDIR)"!=""
+.ENDIF # "$(SHL8TARGETN)"!=""
+
+# unroll begin
+
+.IF "$(SHL9TARGETN)"!=""
+
+.IF "$(OS)"=="AIX"
+SHL9STDLIBS=
+.ENDIF
+
+.IF "$(SHLLINKARCONLY)" != ""
+SHL9STDLIBS=
+STDSHL=
+.ELSE
+SHL9ARCHIVES=
+.ENDIF
+
+# decide how to link
+.IF "$(SHL9CODETYPE)"=="C"
+SHL9LINKER=$(LINKC)
+SHL9STDSHL=$(subst,CPPRUNTIME, $(STDSHL))
+SHL9LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(SHL9CODETYPE)"=="C"
+SHL9LINKER=$(LINK)
+SHL9STDSHL=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDSHL))
+SHL9LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(SHL9CODETYPE)"=="C"
+
+SHL9RPATH*=OOO
+LINKFLAGSRUNPATH_$(SHL9RPATH)*=/ERROR:/Bad_SHL9RPATH_value
+SHL9LINKFLAGS+=$(LINKFLAGSRUNPATH_$(SHL9RPATH))
+
+.IF "$(SHL9USE_EXPORTS)"==""
+SHL9DEF*=$(MISC)/$(SHL9TARGET).def
+.ENDIF # "$(SHL9USE_EXPORTS)"==""
+
+EXTRALIBPATHS9=$(EXTRALIBPATHS)
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL9NOCHECK)"==""
+.IF "$(SOLAR_STLLIBPATH)"!=""
+EXTRALIBPATHS9+=-L$(SOLAR_STLLIBPATH)
+.ENDIF
+.ENDIF # "$(SHL9NOCHECK)"!=""
+.ENDIF
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ version object ++++++++++++++++++++++++++++++++++++++++
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(L10N_framework)"==""
+.IF "$(VERSIONOBJ)"!=""
+SHL9VERSIONOBJ:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL9TARGET))}$(VERSIONOBJ:f)
+USE_VERSIONH:=$(INCCOM)/$(SHL9VERSIONOBJ:b).h
+.IF "$(GUI)" == "UNX"
+SHL9VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL9TARGET))}$(VERSIONOBJ:f:s/.o/.obj/)
+.ELSE # "$(GUI)" == "UNX"
+SHL9VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL9TARGET))}$(VERSIONOBJ:f)
+.ENDIF # "$(GUI)" == "UNX"
+$(MISC)/$(SHL9VERSIONOBJ:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL9VERSIONOBJ:b).h
+# $(COPY) $(SOLARENV)/src/version.c $@
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL9VERSIONOBJ:b).h/ > $@
+
+.INIT : $(SHL9VERSIONOBJDEP)
+.ENDIF # "$(VERSIONOBJ)"!=""
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+.IF "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL9IMPLIB)" == ""
+SHL9IMPLIB=i$(TARGET)_t9
+.ENDIF # "$(SHL9IMPLIB)" == ""
+.IF "$(COM)" != "GCC"
+USE_9IMPLIB=-implib:$(LB)/$(SHL9IMPLIB).lib
+.ENDIF # "$(COM)" != "GCC"
+SHL9IMPLIBN=$(LB)/$(SHL9IMPLIB).lib
+ALLTAR : $(SHL9IMPLIBN)
+
+.IF "$(USE_DEFFILE)"==""
+USE_9IMPLIB_DEPS=$(LB)/$(SHL9IMPLIB).lib
+.ENDIF # "$(USE_DEFFILE)"==""
+.ENDIF # "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+USE_SHL9DEF=$(SHL9DEF)
+.ELSE # "$(GUI)" != "UNX"
+USE_SHL9DEF=
+SHL9DEPN+:=$(SHL9DEPNU)
+
+.IF "$(SHL9VERSIONMAP)"==""
+# to activate vmaps remove "#"
+USE_SHL9VERSIONMAP=$(MISC)/$(SHL9TARGET).vmap
+.ENDIF # "$(SHL9VERSIONMAP)"==""
+
+.IF "$(USE_SHL9VERSIONMAP)"!=""
+
+.IF "$(SHL9FILTERFILE)"!=""
+.IF "$(SHL9VERSIONMAP)"!=""
+#eine von beiden ist zuviel
+USE_SHL9VERSIONMAP=$(MISC)/$(SHL9TARGET).vmap
+$(USE_SHL9VERSIONMAP) .PHONY:
+ @echo -----------------------------
+ @echo you should only use versionmap OR exportfile
+ @echo -----------------------------
+# force_dmake_to_error
+
+.ENDIF # "$(SHL9VERSIONMAP)"!=""
+
+SHL9VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL9VERSIONMAP)
+
+$(USE_SHL9VERSIONMAP): \
+ $(SHL9OBJS)\
+ $(SHL9LIBS)\
+ $(SHL9FILTERFILE)
+ @$(RM) $@.dump
+.IF "$(SHL9OBJS)"!=""
+# dump remaining objects on the fly
+.IF "$(OS)"=="MACOSX"
+ @-nm $(SHL9OBJS:s/.obj/.o/) > $@.dump
+.ELSE
+ @nm $(SHL9OBJS:s/.obj/.o/) > $@.dump
+.ENDIF
+.ENDIF # "$(SHL9OBJS)!"=""
+ @$(TYPE) /dev/null $(SHL9LIBS:s/.lib/.dump/) >> $@.dump
+ $(COMMAND_ECHO) $(PERL) $(SOLARENV)/bin/mapgen.pl -d $@.dump -s $(SHL9INTERFACE) -f $(SHL9FILTERFILE) -m $@
+
+.ELSE # "$(SHL9FILTERFILE)"!=""
+USE_SHL9VERSIONMAP=$(MISC)/$(SHL9TARGET).vmap
+$(USE_SHL9VERSIONMAP) :
+.IF "$(VERBOSE)" == "TRUE"
+ @echo -----------------------------
+ @echo SHL9FILTERFILE not set!
+ @echo -----------------------------
+ @$(TOUCH) $@
+ @echo dummy file to keep the dependencies for later use.
+.ELSE
+ @$(TOUCH) $@
+.ENDIF
+# force_dmake_to_error
+.ENDIF # "$(SHL9FILTERFILE)"!=""
+.ELSE # "$(USE_SHL9VERSIONMAP)"!=""
+
+#and now for the plain non-generic way...
+.IF "$(SHL9VERSIONMAP)"!=""
+USE_SHL9VERSIONMAP=$(MISC)/$(SHL9VERSIONMAP:b)_$(SHL9TARGET)$(SHL9VERSIONMAP:e)
+SHL9VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL9VERSIONMAP)
+
+.IF "$(OS)"=="MACOSX"
+$(USE_SHL9VERSIONMAP): $(SHL9OBJS) $(SHL9LIBS)
+.ENDIF
+
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL9VERSIONMAP) .ERRREMOVE: $(SHL9VERSIONMAP)
+ @@-$(RM) -f $@
+# The following files will only be generated and needed on Mac OS X as temporary files
+# in order to generate exported symbols list out of Linux/Solaris map files
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) -f $@.symregexp >& $(NULLDEV)
+ @-$(RM) -f $@.expsymlist >& $(NULLDEV)
+.ENDIF
+# Its questionable if the following condition '.IF "$(COMID)"=="gcc3"' makes sense and what
+# happens if somebody will change it in the future
+.IF "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL9VERSIONMAP) | $(AWK) -f $(SOLARENV)/bin/addsym.awk > $@
+.ELIF "$(COMNAME)"=="sunpro5"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL9VERSIONMAP) | $(GREP) -v $(IGNORE_SYMBOLS) > $@
+.ELSE # "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL9VERSIONMAP) > $@
+.ENDIF # "$(COMID)"=="gcc3"
+ @chmod a+w $@
+# Mac OS X post-processing generate an exported symbols list from the generated map file
+# for details on exported symbols list see man ld on Mac OS X
+.IF "$(OS)"=="MACOSX"
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep -v "\*\|?" > $@.exported-symbols
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep "\*\|?" > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+.IF "$(SHL9OBJS)"!=""
+ -echo $(foreach,i,$(SHL9OBJS:s/.obj/.o/) $i) | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+.IF "$(SHL9LIBS)"!=""
+ $(COMMAND_ECHO)-$(TYPE) $(foreach,j,$(SHL9LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ cp $@.exported-symbols $@
+.ENDIF # .IF "$(OS)"=="MACOSX"
+.ENDIF # "$(SHL9VERSIONMAP)"!=""
+.ENDIF # "$(USE_SHL9VERSIONMAP)"!=""
+.ENDIF # "$(GUI)" != "UNX"
+
+.IF "$(UNIXVERSIONNAMES)"!=""
+.IF "$(OS)"!="MACOSX"
+.IF "$(GUI)"=="UNX"
+SHL9SONAME=\"$(SONAME_SWITCH)$(SHL9TARGETN:f)\"
+.ENDIF # "$(GUI)"!="UNX"
+.ENDIF # "$(OS)"!="MACOSX"
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+
+.IF "$(SHL9RES)"!=""
+SHL9ALLRES+=$(SHL9RES)
+SHL9LINKRES*=$(MISC)/$(SHL9TARGET).res
+SHL9LINKRESO*=$(MISC)/$(SHL9TARGET)_res.o
+.ENDIF # "$(SHL9RES)"!=""
+
+.IF "$(SHL9DEFAULTRES)$(use_shl_versions)"!=""
+SHL9DEFAULTRES*=$(MISC)/$(SHL9TARGET)_def.res
+SHL9ALLRES+=$(SHL9DEFAULTRES)
+SHL9LINKRES*=$(MISC)/$(SHL9TARGET).res
+SHL9LINKRESO*=$(MISC)/$(SHL9TARGET)_res.o
+.ENDIF # "$(SHL9DEFAULTRES)$(use_shl_versions)"!=""
+
+#.IF "$(SHL9TARGETN)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL9LIBS)"!=""
+$(MISC)/$(SHL9TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL9LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL9LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(SHL9TARGETN:b)_linkinc.ls
+$(SHL9TARGETN) : $(LINKINCTARGETS)
+
+.ELSE
+.IF "$(SHL9USE_EXPORTS)"=="name"
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(COM)"!="GCC"
+.IF "$(SHL9LIBS)"!=""
+SHL9LINKLIST=$(MISC)/$(SHL9TARGET)_link.lst
+SHL9LINKLISTPARAM=@$(SHL9LINKLIST)
+$(SHL9LINKLIST) : $(SHL9LIBS)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL9LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL9LIBS)"!=""
+.ENDIF # "$(COM)"!="GCC"
+.ENDIF
+.ENDIF # "$(SHL9USE_EXPORTS)"=="name"
+
+$(MISC)/%linkinc.ls:
+ @echo . > $@
+.ENDIF # "$(linkinc)"!=""
+
+.IF "$(GUI)" == "OS2"
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL9TARGET8=$(shell @fix_shl $(SHL9TARGET))
+.ENDIF
+
+.IF "$(GUI)" == "OS2"
+_SHL9IMP_ORD = $(SHL9STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(SHL9STDLIBS:^"$(LB)/")
+SHL9IMP_ORD = $(foreach,i,$(_SHL9IMP_ORD) $(shell @-ls $i))
+.ELSE
+SHL9IMP_ORD =
+.ENDIF
+
+
+$(SHL9TARGETN) : \
+ $(SHL9OBJS)\
+ $(SHL9LIBS)\
+ $(USE_9IMPLIB_DEPS)\
+ $(USE_SHL9DEF)\
+ $(USE_SHL9VERSIONMAP)\
+ $(SHL9RES)\
+ $(SHL9DEPN) \
+ $(SHL9IMP_ORD) \
+ $(SHL9LINKLIST)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(SHL9DEFAULTRES)"!=""
+ @@-$(RM) $(MISC)/$(SHL9DEFAULTRES:b).rc
+.IF "$(SHL9ICON)" != ""
+ @echo 1 ICON $(SHL9ICON) >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL9ADD_VERINFO)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL9ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+.ELSE # "$(SHL9ADD_VERINFO)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+.ENDIF # "$(SHL9ADD_VERINFO)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL9TARGET)$(DLLPOST) >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL9TARGET:b) >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL9DEFAULTRES:b).rc
+.ENDIF # "$(SHL9DEFAULTRES)"!=""
+.IF "$(SHL9ALLRES)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL9ALLRES) > $(SHL9LINKRES)
+.IF "$(COM)"=="GCC"
+ windres $(SHL9LINKRES) $(SHL9LINKRESO)
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(SHL9ALLRES)"!=""
+.IF "$(COM)"=="GCC" # always have to call dlltool explicitly as ld cannot handle # comment in .def
+ @echo dlltool --dllname $(SHL9TARGET)$(DLLPOST) \
+ --kill-at \\ > $(MISC)/$(TARGET).$(@:b)_9.cmd
+ @noop $(assign ALL9OBJLIST:=$(STDOBJ) $(SHL9OBJS) $(SHL9LINKRESO) $(shell $(TYPE) /dev/null $(SHL9LIBS) | $(SED) s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+.IF "$(DEFLIB9NAME)"!="" # do not have to include objs
+ @noop $(assign DEF9OBJLIST:=$(shell $(TYPE) $(foreach,i,$(DEFLIB9NAME) $(SLB)/$(i).lib) | sed s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+ @noop $(foreach,i,$(DEF9OBJLIST) $(assign ALL9OBJLIST:=$(ALL9OBJLIST:s?$i??)))
+.ENDIF # "$(DEFLIB9NAME)"!=""
+ @echo --output-exp $(MISC)/$(@:b)_exp.o \\ >> $(MISC)/$(TARGET).$(@:b)_9.cmd
+.IF "$(SHL9DEF)"!=""
+ @echo --input-def $(SHL9DEF) \\ >> $(MISC)/$(TARGET).$(@:b)_9.cmd
+.ELSE
+ @echo $(SHL9VERSIONOBJ) $(SHL9DESCRIPTIONOBJ) \\ >> $(MISC)/$(TARGET).$(@:b)_9.cmd
+.ENDIF
+ @echo $(ALL9OBJLIST) >> $(MISC)/$(TARGET).$(@:b)_9.cmd
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(MINGWSSTDOBJ) -o $@ \
+ $(STDOBJ) $(SHL9VERSIONOBJ) $(SHL9DESCRIPTIONOBJ) $(SHL9OBJS) $(SHL9LINKRESO) \
+ `$(TYPE) /dev/null $(SHL9LIBS) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ -Wl,--exclude-libs,ALL,--start-group $(SHL9STDLIBS) -Wl,--end-group \
+ $(SHL9STDSHL) $(STDSHL9) $(MISC)/$(@:b)_exp.o $(MINGWSSTDENDOBJ) \
+ -Wl,-Map,$(MISC)/$(@:b).map >> $(MISC)/$(TARGET).$(@:b)_9.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_9.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_9.cmd
+.ELSE
+.IF "$(linkinc)"==""
+.IF "$(SHL9USE_EXPORTS)"!="name"
+.IF "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL9LINKER) @$(mktmp \
+ $(SHL9LINKFLAGS) \
+ $(LINKFLAGSSHL) \
+ $(SHL9STACK) $(SHL9BASEX) \
+ -out:$@ \
+ -map:$(MISC)/$(@:b).map \
+ -def:$(SHL9DEF) \
+ $(USE_9IMPLIB) \
+ $(STDOBJ) \
+ $(SHL9VERSIONOBJ) $(SHL9OBJS) \
+ $(SHL9LIBS) \
+ $(SHL9STDLIBS) \
+ $(SHL9STDSHL) $(STDSHL9) \
+ $(SHL9LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL9LINKER) @$(mktmp $(SHL9LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL9BASEX) \
+ $(SHL9STACK) -out:$(SHL9TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(LB)/$(SHL9IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL9OBJS) $(SHL9VERSIONOBJ) \
+ $(SHL9LIBS) \
+ $(SHL9STDLIBS) \
+ $(SHL9STDSHL) $(STDSHL9) \
+ $(SHL9LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+.ELSE # "$(SHL9USE_EXPORTS)"!="name"
+ $(COMMAND_ECHO)$(SHL9LINKER) @$(mktmp $(SHL9LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL9BASEX) \
+ $(SHL9STACK) -out:$(SHL9TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(USE_9IMPLIB) \
+ $(STDOBJ) \
+ $(SHL9OBJS) $(SHL9VERSIONOBJ)) \
+ $(SHL9LINKLISTPARAM) \
+ @$(mktmp $(SHL9STDLIBS) \
+ $(SHL9STDSHL) $(STDSHL9) \
+ $(SHL9LINKRES) \
+ )
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(SHL9USE_EXPORTS)"!="name"
+.ELSE # "$(linkinc)"==""
+ $(COMMAND_ECHO)-$(RM) del $(MISC)/$(SHL9TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)/$(SHL9TARGET).lst
+ $(COMMAND_ECHO)$(TYPE) $(mktmp \
+ $(SHL9LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL9BASEX) \
+ $(SHL9STACK) $(MAPFILE) \
+ -out:$@ \
+ $(LB)/$(SHL9IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL9OBJS) \
+ $(SHL9STDLIBS) \
+ $(SHL9STDSHL) $(STDSHL9) \
+ $(SHL9LINKRES) \
+ ) >> $(MISC)/$(SHL9TARGET).lnk
+ $(COMMAND_ECHO)$(TYPE) $(MISC)/$(SHL9TARGETN:b)_linkinc.ls >> $(MISC)/$(SHL9TARGET).lnk
+ $(COMMAND_ECHO)$(SHL9LINKER) @$(MISC)/$(SHL9TARGET).lnk
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(linkinc)"==""
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)" == "WNT"
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_9.cmd
+ @echo $(STDSLO) $(SHL9OBJS:s/.obj/.o/) \
+ $(SHL9VERSIONOBJ) \
+ `cat /dev/null $(SHL9LIBS) | sed s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(SHL9LINKER) $(SHL9LINKFLAGS) $(SHL9VERSIONMAPPARA) $(LINKFLAGSSHL) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) -o $@ \
+ $(SHL9STDLIBS) $(SHL9ARCHIVES) $(SHL9STDSHL) $(STDSHL9) -filelist $(MISC)/$(@:b).list $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_9.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_9.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_9.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_9.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_9.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ shl $(SHL9RPATH) $@
+ @echo "Making: " $(@:f).jnilib
+ @macosx-create-bundle $@
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL9NOCHECK)"==""
+ $(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS9) $(SHL9TARGETN)
+.ENDIF # "$(SHL9NOCHECK)"!=""
+.ENDIF
+.ELSE # "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_9.cmd
+ @echo $(SHL9LINKER) $(SHL9LINKFLAGS) $(SHL9SONAME) $(LINKFLAGSSHL) $(SHL9VERSIONMAPPARA) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) $(STDSLO) $(SHL9OBJS:s/.obj/.o/) \
+ $(SHL9VERSIONOBJ) -o $@ \
+ `cat /dev/null $(SHL9LIBS) | tr -s " " "\n" | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ $(SHL9STDLIBS) $(SHL9ARCHIVES) $(SHL9STDSHL) $(STDSHL9) $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_9.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_9.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_9.cmd
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL9NOCHECK)"==""
+ $(COMMAND_ECHO)-$(RM) $(SHL9TARGETN:d)check_$(SHL9TARGETN:f)
+ $(COMMAND_ECHO)$(RENAME) $(SHL9TARGETN) $(SHL9TARGETN:d)check_$(SHL9TARGETN:f)
+.IF "$(VERBOSE)"=="TRUE"
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS9) $(SHL9TARGETN:d)check_$(SHL9TARGETN:f)
+.ELSE
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS9) -- -s $(SHL9TARGETN:d)check_$(SHL9TARGETN:f)
+.ENDIF
+.ENDIF # "$(SHL9NOCHECK)"!=""
+.ENDIF # "$(UPDATER)"=="YES"
+.ENDIF # "$(OS)"=="MACOSX"
+.IF "$(UNIXVERSIONNAMES)"!=""
+ $(COMMAND_ECHO)$(RM) $(LB)/$(SHL9TARGETN:b)
+ $(COMMAND_ECHO)cd $(LB) && ln -s $(SHL9TARGETN:f) $(SHL9TARGETN:b)
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+.IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+.ENDIF
+.ENDIF # "$(GUI)" == "UNX"
+
+.IF "$(GUI)" == "OS2"
+
+.IF "$(SHL9DEFAULTRES)"!=""
+ @+-$(RM) $(MISC)/$(SHL9DEFAULTRES:b).rc >& $(NULLDEV)
+.IF "$(SHL9ICON)" != ""
+ @-+echo 1 ICON $(SHL9ICON) >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL9ADD_VERINFO)"!=""
+ @-+echo $(EMQ)#include $(EMQ)"$(SHL9ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+.ENDIF # "$(SHL9ADD_VERINFO)"!=""
+ @-+echo MENU 1 BEGIN END >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+# @-+echo $(EMQ)RCDATA 1 { "Build string here" }$(EMQ) >> $(MISC)/$(SHL9DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+# YD 04/07/06 seems null, confuses rc cli: -i $(SOLARTESDIR)
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL9DEFAULTRES:b).rc
+.ENDIF # "$(SHL9DEFAULTRES)"!=""
+
+.IF "$(SHL9ALLRES)"!=""
+ $(COMMAND_ECHO)+$(TYPE) $(SHL9ALLRES) > $(SHL9LINKRES)
+.ENDIF # "$(SHL9ALLRES)"!=""
+
+.IF "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL9LINKER) $(SHL9LINKFLAGS) $(LINKFLAGSSHL) -o $@ \
+ $(SHL9DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL9OBJS) $(SHL9VERSIONOBJ) \
+ $(SHL9LIBS) \
+ $(SHL9STDLIBS:^"-l") \
+ $(SHL9LINKRES) \
+ $(SHL9STDSHL:^"-l") $(STDSHL9:^"-l")
+
+.ELSE # "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL9LINKER) -v $(SHL9LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL9BASEX) \
+ $(SHL9STACK) -o $(SHL9TARGETN) \
+ $(SHL9DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL9OBJS) $(SHL9VERSIONOBJ) \
+ $(SHL9LIBS) \
+ $(SHL9STDLIBS:^"-l") \
+ $(SHL9LINKRES) \
+ $(SHL9STDSHL:^"-l") $(STDSHL9:^"-l") \
+ $(LINKOUTPUTFILTER)
+ @$(LS) $@ >& $(NULLDEV)
+
+.ENDIF # "$(USE_DEFFILE)"!=""
+
+.IF "$(SHL9TARGET8)" != "$(SHL9TARGET)"
+ $(COMMAND_ECHO)+$(COPY) $@ $(@:d)$(SHL9TARGET8).dll
+.ENDIF
+
+.ENDIF # "$(GUI)" == "OS2"
+
+
+.IF "$(TESTDIR)"!=""
+.IF "$(NO_TESTS)"==""
+
+ALLTAR : runtest_$(SHL9TARGET)
+
+runtest_$(SHL9TARGET) : $(SHL9TARGETN)
+ testshl $(SHL9TARGETN) sce/$(SHL9TARGET).sce -msg -skip
+.ENDIF # "$(NO_TESTS)"==""
+.ENDIF # "$(TESTDIR)"!=""
+.ENDIF # "$(SHL9TARGETN)"!=""
+
+# unroll begin
+
+.IF "$(SHL10TARGETN)"!=""
+
+.IF "$(OS)"=="AIX"
+SHL10STDLIBS=
+.ENDIF
+
+.IF "$(SHLLINKARCONLY)" != ""
+SHL10STDLIBS=
+STDSHL=
+.ELSE
+SHL10ARCHIVES=
+.ENDIF
+
+# decide how to link
+.IF "$(SHL10CODETYPE)"=="C"
+SHL10LINKER=$(LINKC)
+SHL10STDSHL=$(subst,CPPRUNTIME, $(STDSHL))
+SHL10LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(SHL10CODETYPE)"=="C"
+SHL10LINKER=$(LINK)
+SHL10STDSHL=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDSHL))
+SHL10LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(SHL10CODETYPE)"=="C"
+
+SHL10RPATH*=OOO
+LINKFLAGSRUNPATH_$(SHL10RPATH)*=/ERROR:/Bad_SHL10RPATH_value
+SHL10LINKFLAGS+=$(LINKFLAGSRUNPATH_$(SHL10RPATH))
+
+.IF "$(SHL10USE_EXPORTS)"==""
+SHL10DEF*=$(MISC)/$(SHL10TARGET).def
+.ENDIF # "$(SHL10USE_EXPORTS)"==""
+
+EXTRALIBPATHS10=$(EXTRALIBPATHS)
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL10NOCHECK)"==""
+.IF "$(SOLAR_STLLIBPATH)"!=""
+EXTRALIBPATHS10+=-L$(SOLAR_STLLIBPATH)
+.ENDIF
+.ENDIF # "$(SHL10NOCHECK)"!=""
+.ENDIF
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ version object ++++++++++++++++++++++++++++++++++++++++
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(L10N_framework)"==""
+.IF "$(VERSIONOBJ)"!=""
+SHL10VERSIONOBJ:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL10TARGET))}$(VERSIONOBJ:f)
+USE_VERSIONH:=$(INCCOM)/$(SHL10VERSIONOBJ:b).h
+.IF "$(GUI)" == "UNX"
+SHL10VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL10TARGET))}$(VERSIONOBJ:f:s/.o/.obj/)
+.ELSE # "$(GUI)" == "UNX"
+SHL10VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL10TARGET))}$(VERSIONOBJ:f)
+.ENDIF # "$(GUI)" == "UNX"
+$(MISC)/$(SHL10VERSIONOBJ:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL10VERSIONOBJ:b).h
+# $(COPY) $(SOLARENV)/src/version.c $@
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL10VERSIONOBJ:b).h/ > $@
+
+.INIT : $(SHL10VERSIONOBJDEP)
+.ENDIF # "$(VERSIONOBJ)"!=""
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+.IF "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL10IMPLIB)" == ""
+SHL10IMPLIB=i$(TARGET)_t10
+.ENDIF # "$(SHL10IMPLIB)" == ""
+.IF "$(COM)" != "GCC"
+USE_10IMPLIB=-implib:$(LB)/$(SHL10IMPLIB).lib
+.ENDIF # "$(COM)" != "GCC"
+SHL10IMPLIBN=$(LB)/$(SHL10IMPLIB).lib
+ALLTAR : $(SHL10IMPLIBN)
+
+.IF "$(USE_DEFFILE)"==""
+USE_10IMPLIB_DEPS=$(LB)/$(SHL10IMPLIB).lib
+.ENDIF # "$(USE_DEFFILE)"==""
+.ENDIF # "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+USE_SHL10DEF=$(SHL10DEF)
+.ELSE # "$(GUI)" != "UNX"
+USE_SHL10DEF=
+SHL10DEPN+:=$(SHL10DEPNU)
+
+.IF "$(SHL10VERSIONMAP)"==""
+# to activate vmaps remove "#"
+USE_SHL10VERSIONMAP=$(MISC)/$(SHL10TARGET).vmap
+.ENDIF # "$(SHL10VERSIONMAP)"==""
+
+.IF "$(USE_SHL10VERSIONMAP)"!=""
+
+.IF "$(SHL10FILTERFILE)"!=""
+.IF "$(SHL10VERSIONMAP)"!=""
+#eine von beiden ist zuviel
+USE_SHL10VERSIONMAP=$(MISC)/$(SHL10TARGET).vmap
+$(USE_SHL10VERSIONMAP) .PHONY:
+ @echo -----------------------------
+ @echo you should only use versionmap OR exportfile
+ @echo -----------------------------
+# force_dmake_to_error
+
+.ENDIF # "$(SHL10VERSIONMAP)"!=""
+
+SHL10VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL10VERSIONMAP)
+
+$(USE_SHL10VERSIONMAP): \
+ $(SHL10OBJS)\
+ $(SHL10LIBS)\
+ $(SHL10FILTERFILE)
+ @$(RM) $@.dump
+.IF "$(SHL10OBJS)"!=""
+# dump remaining objects on the fly
+.IF "$(OS)"=="MACOSX"
+ @-nm $(SHL10OBJS:s/.obj/.o/) > $@.dump
+.ELSE
+ @nm $(SHL10OBJS:s/.obj/.o/) > $@.dump
+.ENDIF
+.ENDIF # "$(SHL10OBJS)!"=""
+ @$(TYPE) /dev/null $(SHL10LIBS:s/.lib/.dump/) >> $@.dump
+ $(COMMAND_ECHO) $(PERL) $(SOLARENV)/bin/mapgen.pl -d $@.dump -s $(SHL10INTERFACE) -f $(SHL10FILTERFILE) -m $@
+
+.ELSE # "$(SHL10FILTERFILE)"!=""
+USE_SHL10VERSIONMAP=$(MISC)/$(SHL10TARGET).vmap
+$(USE_SHL10VERSIONMAP) :
+.IF "$(VERBOSE)" == "TRUE"
+ @echo -----------------------------
+ @echo SHL10FILTERFILE not set!
+ @echo -----------------------------
+ @$(TOUCH) $@
+ @echo dummy file to keep the dependencies for later use.
+.ELSE
+ @$(TOUCH) $@
+.ENDIF
+# force_dmake_to_error
+.ENDIF # "$(SHL10FILTERFILE)"!=""
+.ELSE # "$(USE_SHL10VERSIONMAP)"!=""
+
+#and now for the plain non-generic way...
+.IF "$(SHL10VERSIONMAP)"!=""
+USE_SHL10VERSIONMAP=$(MISC)/$(SHL10VERSIONMAP:b)_$(SHL10TARGET)$(SHL10VERSIONMAP:e)
+SHL10VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL10VERSIONMAP)
+
+.IF "$(OS)"=="MACOSX"
+$(USE_SHL10VERSIONMAP): $(SHL10OBJS) $(SHL10LIBS)
+.ENDIF
+
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL10VERSIONMAP) .ERRREMOVE: $(SHL10VERSIONMAP)
+ @@-$(RM) -f $@
+# The following files will only be generated and needed on Mac OS X as temporary files
+# in order to generate exported symbols list out of Linux/Solaris map files
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) -f $@.symregexp >& $(NULLDEV)
+ @-$(RM) -f $@.expsymlist >& $(NULLDEV)
+.ENDIF
+# Its questionable if the following condition '.IF "$(COMID)"=="gcc3"' makes sense and what
+# happens if somebody will change it in the future
+.IF "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL10VERSIONMAP) | $(AWK) -f $(SOLARENV)/bin/addsym.awk > $@
+.ELIF "$(COMNAME)"=="sunpro5"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL10VERSIONMAP) | $(GREP) -v $(IGNORE_SYMBOLS) > $@
+.ELSE # "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL10VERSIONMAP) > $@
+.ENDIF # "$(COMID)"=="gcc3"
+ @chmod a+w $@
+# Mac OS X post-processing generate an exported symbols list from the generated map file
+# for details on exported symbols list see man ld on Mac OS X
+.IF "$(OS)"=="MACOSX"
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep -v "\*\|?" > $@.exported-symbols
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep "\*\|?" > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+.IF "$(SHL10OBJS)"!=""
+ -echo $(foreach,i,$(SHL10OBJS:s/.obj/.o/) $i) | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+.IF "$(SHL10LIBS)"!=""
+ $(COMMAND_ECHO)-$(TYPE) $(foreach,j,$(SHL10LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ cp $@.exported-symbols $@
+.ENDIF # .IF "$(OS)"=="MACOSX"
+.ENDIF # "$(SHL10VERSIONMAP)"!=""
+.ENDIF # "$(USE_SHL10VERSIONMAP)"!=""
+.ENDIF # "$(GUI)" != "UNX"
+
+.IF "$(UNIXVERSIONNAMES)"!=""
+.IF "$(OS)"!="MACOSX"
+.IF "$(GUI)"=="UNX"
+SHL10SONAME=\"$(SONAME_SWITCH)$(SHL10TARGETN:f)\"
+.ENDIF # "$(GUI)"!="UNX"
+.ENDIF # "$(OS)"!="MACOSX"
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+
+.IF "$(SHL10RES)"!=""
+SHL10ALLRES+=$(SHL10RES)
+SHL10LINKRES*=$(MISC)/$(SHL10TARGET).res
+SHL10LINKRESO*=$(MISC)/$(SHL10TARGET)_res.o
+.ENDIF # "$(SHL10RES)"!=""
+
+.IF "$(SHL10DEFAULTRES)$(use_shl_versions)"!=""
+SHL10DEFAULTRES*=$(MISC)/$(SHL10TARGET)_def.res
+SHL10ALLRES+=$(SHL10DEFAULTRES)
+SHL10LINKRES*=$(MISC)/$(SHL10TARGET).res
+SHL10LINKRESO*=$(MISC)/$(SHL10TARGET)_res.o
+.ENDIF # "$(SHL10DEFAULTRES)$(use_shl_versions)"!=""
+
+#.IF "$(SHL10TARGETN)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL10LIBS)"!=""
+$(MISC)/$(SHL10TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL10LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL10LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(SHL10TARGETN:b)_linkinc.ls
+$(SHL10TARGETN) : $(LINKINCTARGETS)
+
+.ELSE
+.IF "$(SHL10USE_EXPORTS)"=="name"
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(COM)"!="GCC"
+.IF "$(SHL10LIBS)"!=""
+SHL10LINKLIST=$(MISC)/$(SHL10TARGET)_link.lst
+SHL10LINKLISTPARAM=@$(SHL10LINKLIST)
+$(SHL10LINKLIST) : $(SHL10LIBS)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL10LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL10LIBS)"!=""
+.ENDIF # "$(COM)"!="GCC"
+.ENDIF
+.ENDIF # "$(SHL10USE_EXPORTS)"=="name"
+
+$(MISC)/%linkinc.ls:
+ @echo . > $@
+.ENDIF # "$(linkinc)"!=""
+
+.IF "$(GUI)" == "OS2"
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL10TARGET8=$(shell @fix_shl $(SHL10TARGET))
+.ENDIF
+
+.IF "$(GUI)" == "OS2"
+_SHL10IMP_ORD = $(SHL10STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(SHL10STDLIBS:^"$(LB)/")
+SHL10IMP_ORD = $(foreach,i,$(_SHL10IMP_ORD) $(shell @-ls $i))
+.ELSE
+SHL10IMP_ORD =
+.ENDIF
+
+
+$(SHL10TARGETN) : \
+ $(SHL10OBJS)\
+ $(SHL10LIBS)\
+ $(USE_10IMPLIB_DEPS)\
+ $(USE_SHL10DEF)\
+ $(USE_SHL10VERSIONMAP)\
+ $(SHL10RES)\
+ $(SHL10DEPN) \
+ $(SHL10IMP_ORD) \
+ $(SHL10LINKLIST)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(SHL10DEFAULTRES)"!=""
+ @@-$(RM) $(MISC)/$(SHL10DEFAULTRES:b).rc
+.IF "$(SHL10ICON)" != ""
+ @echo 1 ICON $(SHL10ICON) >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL10ADD_VERINFO)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL10ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+.ELSE # "$(SHL10ADD_VERINFO)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+.ENDIF # "$(SHL10ADD_VERINFO)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL10TARGET)$(DLLPOST) >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL10TARGET:b) >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL10DEFAULTRES:b).rc
+.ENDIF # "$(SHL10DEFAULTRES)"!=""
+.IF "$(SHL10ALLRES)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL10ALLRES) > $(SHL10LINKRES)
+.IF "$(COM)"=="GCC"
+ windres $(SHL10LINKRES) $(SHL10LINKRESO)
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(SHL10ALLRES)"!=""
+.IF "$(COM)"=="GCC" # always have to call dlltool explicitly as ld cannot handle # comment in .def
+ @echo dlltool --dllname $(SHL10TARGET)$(DLLPOST) \
+ --kill-at \\ > $(MISC)/$(TARGET).$(@:b)_10.cmd
+ @noop $(assign ALL10OBJLIST:=$(STDOBJ) $(SHL10OBJS) $(SHL10LINKRESO) $(shell $(TYPE) /dev/null $(SHL10LIBS) | $(SED) s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+.IF "$(DEFLIB10NAME)"!="" # do not have to include objs
+ @noop $(assign DEF10OBJLIST:=$(shell $(TYPE) $(foreach,i,$(DEFLIB10NAME) $(SLB)/$(i).lib) | sed s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+ @noop $(foreach,i,$(DEF10OBJLIST) $(assign ALL10OBJLIST:=$(ALL10OBJLIST:s?$i??)))
+.ENDIF # "$(DEFLIB10NAME)"!=""
+ @echo --output-exp $(MISC)/$(@:b)_exp.o \\ >> $(MISC)/$(TARGET).$(@:b)_10.cmd
+.IF "$(SHL10DEF)"!=""
+ @echo --input-def $(SHL10DEF) \\ >> $(MISC)/$(TARGET).$(@:b)_10.cmd
+.ELSE
+ @echo $(SHL10VERSIONOBJ) $(SHL10DESCRIPTIONOBJ) \\ >> $(MISC)/$(TARGET).$(@:b)_10.cmd
+.ENDIF
+ @echo $(ALL10OBJLIST) >> $(MISC)/$(TARGET).$(@:b)_10.cmd
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(MINGWSSTDOBJ) -o $@ \
+ $(STDOBJ) $(SHL10VERSIONOBJ) $(SHL10DESCRIPTIONOBJ) $(SHL10OBJS) $(SHL10LINKRESO) \
+ `$(TYPE) /dev/null $(SHL10LIBS) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ -Wl,--exclude-libs,ALL,--start-group $(SHL10STDLIBS) -Wl,--end-group \
+ $(SHL10STDSHL) $(STDSHL10) $(MISC)/$(@:b)_exp.o $(MINGWSSTDENDOBJ) \
+ -Wl,-Map,$(MISC)/$(@:b).map >> $(MISC)/$(TARGET).$(@:b)_10.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_10.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_10.cmd
+.ELSE
+.IF "$(linkinc)"==""
+.IF "$(SHL10USE_EXPORTS)"!="name"
+.IF "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL10LINKER) @$(mktmp \
+ $(SHL10LINKFLAGS) \
+ $(LINKFLAGSSHL) \
+ $(SHL10STACK) $(SHL10BASEX) \
+ -out:$@ \
+ -map:$(MISC)/$(@:b).map \
+ -def:$(SHL10DEF) \
+ $(USE_10IMPLIB) \
+ $(STDOBJ) \
+ $(SHL10VERSIONOBJ) $(SHL10OBJS) \
+ $(SHL10LIBS) \
+ $(SHL10STDLIBS) \
+ $(SHL10STDSHL) $(STDSHL10) \
+ $(SHL10LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL10LINKER) @$(mktmp $(SHL10LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL10BASEX) \
+ $(SHL10STACK) -out:$(SHL10TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(LB)/$(SHL10IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL10OBJS) $(SHL10VERSIONOBJ) \
+ $(SHL10LIBS) \
+ $(SHL10STDLIBS) \
+ $(SHL10STDSHL) $(STDSHL10) \
+ $(SHL10LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+.ELSE # "$(SHL10USE_EXPORTS)"!="name"
+ $(COMMAND_ECHO)$(SHL10LINKER) @$(mktmp $(SHL10LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL10BASEX) \
+ $(SHL10STACK) -out:$(SHL10TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(USE_10IMPLIB) \
+ $(STDOBJ) \
+ $(SHL10OBJS) $(SHL10VERSIONOBJ)) \
+ $(SHL10LINKLISTPARAM) \
+ @$(mktmp $(SHL10STDLIBS) \
+ $(SHL10STDSHL) $(STDSHL10) \
+ $(SHL10LINKRES) \
+ )
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(SHL10USE_EXPORTS)"!="name"
+.ELSE # "$(linkinc)"==""
+ $(COMMAND_ECHO)-$(RM) del $(MISC)/$(SHL10TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)/$(SHL10TARGET).lst
+ $(COMMAND_ECHO)$(TYPE) $(mktmp \
+ $(SHL10LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL10BASEX) \
+ $(SHL10STACK) $(MAPFILE) \
+ -out:$@ \
+ $(LB)/$(SHL10IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL10OBJS) \
+ $(SHL10STDLIBS) \
+ $(SHL10STDSHL) $(STDSHL10) \
+ $(SHL10LINKRES) \
+ ) >> $(MISC)/$(SHL10TARGET).lnk
+ $(COMMAND_ECHO)$(TYPE) $(MISC)/$(SHL10TARGETN:b)_linkinc.ls >> $(MISC)/$(SHL10TARGET).lnk
+ $(COMMAND_ECHO)$(SHL10LINKER) @$(MISC)/$(SHL10TARGET).lnk
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(linkinc)"==""
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)" == "WNT"
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_10.cmd
+ @echo $(STDSLO) $(SHL10OBJS:s/.obj/.o/) \
+ $(SHL10VERSIONOBJ) \
+ `cat /dev/null $(SHL10LIBS) | sed s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(SHL10LINKER) $(SHL10LINKFLAGS) $(SHL10VERSIONMAPPARA) $(LINKFLAGSSHL) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) -o $@ \
+ $(SHL10STDLIBS) $(SHL10ARCHIVES) $(SHL10STDSHL) $(STDSHL10) -filelist $(MISC)/$(@:b).list $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_10.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_10.cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_10.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_10.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_10.cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ shl $(SHL10RPATH) $@
+ @echo "Making: " $(@:f).jnilib
+ @macosx-create-bundle $@
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL10NOCHECK)"==""
+ $(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS10) $(SHL10TARGETN)
+.ENDIF # "$(SHL10NOCHECK)"!=""
+.ENDIF
+.ELSE # "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_10.cmd
+ @echo $(SHL10LINKER) $(SHL10LINKFLAGS) $(SHL10SONAME) $(LINKFLAGSSHL) $(SHL10VERSIONMAPPARA) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) $(STDSLO) $(SHL10OBJS:s/.obj/.o/) \
+ $(SHL10VERSIONOBJ) -o $@ \
+ `cat /dev/null $(SHL10LIBS) | tr -s " " "\n" | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ $(SHL10STDLIBS) $(SHL10ARCHIVES) $(SHL10STDSHL) $(STDSHL10) $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_10.cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_10.cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_10.cmd
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL10NOCHECK)"==""
+ $(COMMAND_ECHO)-$(RM) $(SHL10TARGETN:d)check_$(SHL10TARGETN:f)
+ $(COMMAND_ECHO)$(RENAME) $(SHL10TARGETN) $(SHL10TARGETN:d)check_$(SHL10TARGETN:f)
+.IF "$(VERBOSE)"=="TRUE"
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS10) $(SHL10TARGETN:d)check_$(SHL10TARGETN:f)
+.ELSE
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS10) -- -s $(SHL10TARGETN:d)check_$(SHL10TARGETN:f)
+.ENDIF
+.ENDIF # "$(SHL10NOCHECK)"!=""
+.ENDIF # "$(UPDATER)"=="YES"
+.ENDIF # "$(OS)"=="MACOSX"
+.IF "$(UNIXVERSIONNAMES)"!=""
+ $(COMMAND_ECHO)$(RM) $(LB)/$(SHL10TARGETN:b)
+ $(COMMAND_ECHO)cd $(LB) && ln -s $(SHL10TARGETN:f) $(SHL10TARGETN:b)
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+.IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+.ENDIF
+.ENDIF # "$(GUI)" == "UNX"
+
+.IF "$(GUI)" == "OS2"
+
+.IF "$(SHL10DEFAULTRES)"!=""
+ @+-$(RM) $(MISC)/$(SHL10DEFAULTRES:b).rc >& $(NULLDEV)
+.IF "$(SHL10ICON)" != ""
+ @-+echo 1 ICON $(SHL10ICON) >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL10ADD_VERINFO)"!=""
+ @-+echo $(EMQ)#include $(EMQ)"$(SHL10ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+.ENDIF # "$(SHL10ADD_VERINFO)"!=""
+ @-+echo MENU 1 BEGIN END >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+# @-+echo $(EMQ)RCDATA 1 { "Build string here" }$(EMQ) >> $(MISC)/$(SHL10DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+# YD 04/07/06 seems null, confuses rc cli: -i $(SOLARTESDIR)
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL10DEFAULTRES:b).rc
+.ENDIF # "$(SHL10DEFAULTRES)"!=""
+
+.IF "$(SHL10ALLRES)"!=""
+ $(COMMAND_ECHO)+$(TYPE) $(SHL10ALLRES) > $(SHL10LINKRES)
+.ENDIF # "$(SHL10ALLRES)"!=""
+
+.IF "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL10LINKER) $(SHL10LINKFLAGS) $(LINKFLAGSSHL) -o $@ \
+ $(SHL10DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL10OBJS) $(SHL10VERSIONOBJ) \
+ $(SHL10LIBS) \
+ $(SHL10STDLIBS:^"-l") \
+ $(SHL10LINKRES) \
+ $(SHL10STDSHL:^"-l") $(STDSHL10:^"-l")
+
+.ELSE # "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL10LINKER) -v $(SHL10LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL10BASEX) \
+ $(SHL10STACK) -o $(SHL10TARGETN) \
+ $(SHL10DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL10OBJS) $(SHL10VERSIONOBJ) \
+ $(SHL10LIBS) \
+ $(SHL10STDLIBS:^"-l") \
+ $(SHL10LINKRES) \
+ $(SHL10STDSHL:^"-l") $(STDSHL10:^"-l") \
+ $(LINKOUTPUTFILTER)
+ @$(LS) $@ >& $(NULLDEV)
+
+.ENDIF # "$(USE_DEFFILE)"!=""
+
+.IF "$(SHL10TARGET8)" != "$(SHL10TARGET)"
+ $(COMMAND_ECHO)+$(COPY) $@ $(@:d)$(SHL10TARGET8).dll
+.ENDIF
+
+.ENDIF # "$(GUI)" == "OS2"
+
+
+.IF "$(TESTDIR)"!=""
+.IF "$(NO_TESTS)"==""
+
+ALLTAR : runtest_$(SHL10TARGET)
+
+runtest_$(SHL10TARGET) : $(SHL10TARGETN)
+ testshl $(SHL10TARGETN) sce/$(SHL10TARGET).sce -msg -skip
+.ENDIF # "$(NO_TESTS)"==""
+.ENDIF # "$(TESTDIR)"!=""
+.ENDIF # "$(SHL10TARGETN)"!=""
+
+# unroll begin
+
+.IF "$(SHL1IMPLIBN)" != ""
+
+.IF "$(UPDATER)"=="YES"
+USELIB1DEPN+=$(SHL1LIBS)
+.ELSE
+.ENDIF
+
+.IF "$(USE_DEFFILE)"!=""
+USE_SHL1TARGET=$(SHL1TARGETN)
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+$(SHL1IMPLIBN): \
+ $(SHL1DEF) \
+ $(USE_SHL1TARGET) \
+ $(USELIB1DEPN) \
+ $(USELIBDEPN)
+.ELSE
+$(SHL1IMPLIBN): \
+ $(SHL1LIBS)
+.ENDIF
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(COM)"=="GCC"
+ @echo no ImportLibs on mingw
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ELSE # "$(COM)=="GCC"
+# bei use_deffile implib von linker erstellt
+.IF "$(USE_DEFFILE)"==""
+ $(IMPLIB) $(IMPLIBFLAGS) @$(mktmp -out:$(SHL1IMPLIBN) \
+ -def:$(SHL1DEF) )
+.ELSE # "$(USE_DEFFILE)==""
+ @echo build of $(SHL1TARGETN) creates $@
+ @$(TOUCH) $@
+.ENDIF # "$(USE_DEFFILE)==""
+.ENDIF # "$(COM)"=="GCC"
+
+.ELIF "$(GUI)" == "OS2"
+
+# touch creates an empty file, but this is not good for emxomfar, so
+# create a dummy lib here
+ $(COMMAND_ECHO)-$(LIBMGR) $(LIBFLAGS) $@ $(SHL1VERSIONOBJ)
+ +@echo build of $(SHL1TARGETN) creates $@
+
+.ELSE
+ @echo no ImportLibs on Mac and *ix
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ENDIF
+.ENDIF
+
+# unroll begin
+
+.IF "$(SHL2IMPLIBN)" != ""
+
+.IF "$(UPDATER)"=="YES"
+USELIB2DEPN+=$(SHL2LIBS)
+.ELSE
+.ENDIF
+
+.IF "$(USE_DEFFILE)"!=""
+USE_SHL2TARGET=$(SHL2TARGETN)
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+$(SHL2IMPLIBN): \
+ $(SHL2DEF) \
+ $(USE_SHL2TARGET) \
+ $(USELIB2DEPN) \
+ $(USELIBDEPN)
+.ELSE
+$(SHL2IMPLIBN): \
+ $(SHL2LIBS)
+.ENDIF
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(COM)"=="GCC"
+ @echo no ImportLibs on mingw
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ELSE # "$(COM)=="GCC"
+# bei use_deffile implib von linker erstellt
+.IF "$(USE_DEFFILE)"==""
+ $(IMPLIB) $(IMPLIBFLAGS) @$(mktmp -out:$(SHL2IMPLIBN) \
+ -def:$(SHL2DEF) )
+.ELSE # "$(USE_DEFFILE)==""
+ @echo build of $(SHL2TARGETN) creates $@
+ @$(TOUCH) $@
+.ENDIF # "$(USE_DEFFILE)==""
+.ENDIF # "$(COM)"=="GCC"
+
+.ELIF "$(GUI)" == "OS2"
+
+# touch creates an empty file, but this is not good for emxomfar, so
+# create a dummy lib here
+ $(COMMAND_ECHO)-$(LIBMGR) $(LIBFLAGS) $@ $(SHL2VERSIONOBJ)
+ +@echo build of $(SHL2TARGETN) creates $@
+
+.ELSE
+ @echo no ImportLibs on Mac and *ix
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ENDIF
+.ENDIF
+
+# unroll begin
+
+.IF "$(SHL3IMPLIBN)" != ""
+
+.IF "$(UPDATER)"=="YES"
+USELIB3DEPN+=$(SHL3LIBS)
+.ELSE
+.ENDIF
+
+.IF "$(USE_DEFFILE)"!=""
+USE_SHL3TARGET=$(SHL3TARGETN)
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+$(SHL3IMPLIBN): \
+ $(SHL3DEF) \
+ $(USE_SHL3TARGET) \
+ $(USELIB3DEPN) \
+ $(USELIBDEPN)
+.ELSE
+$(SHL3IMPLIBN): \
+ $(SHL3LIBS)
+.ENDIF
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(COM)"=="GCC"
+ @echo no ImportLibs on mingw
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ELSE # "$(COM)=="GCC"
+# bei use_deffile implib von linker erstellt
+.IF "$(USE_DEFFILE)"==""
+ $(IMPLIB) $(IMPLIBFLAGS) @$(mktmp -out:$(SHL3IMPLIBN) \
+ -def:$(SHL3DEF) )
+.ELSE # "$(USE_DEFFILE)==""
+ @echo build of $(SHL3TARGETN) creates $@
+ @$(TOUCH) $@
+.ENDIF # "$(USE_DEFFILE)==""
+.ENDIF # "$(COM)"=="GCC"
+
+.ELIF "$(GUI)" == "OS2"
+
+# touch creates an empty file, but this is not good for emxomfar, so
+# create a dummy lib here
+ $(COMMAND_ECHO)-$(LIBMGR) $(LIBFLAGS) $@ $(SHL3VERSIONOBJ)
+ +@echo build of $(SHL3TARGETN) creates $@
+
+.ELSE
+ @echo no ImportLibs on Mac and *ix
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ENDIF
+.ENDIF
+
+# unroll begin
+
+.IF "$(SHL4IMPLIBN)" != ""
+
+.IF "$(UPDATER)"=="YES"
+USELIB4DEPN+=$(SHL4LIBS)
+.ELSE
+.ENDIF
+
+.IF "$(USE_DEFFILE)"!=""
+USE_SHL4TARGET=$(SHL4TARGETN)
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+$(SHL4IMPLIBN): \
+ $(SHL4DEF) \
+ $(USE_SHL4TARGET) \
+ $(USELIB4DEPN) \
+ $(USELIBDEPN)
+.ELSE
+$(SHL4IMPLIBN): \
+ $(SHL4LIBS)
+.ENDIF
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(COM)"=="GCC"
+ @echo no ImportLibs on mingw
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ELSE # "$(COM)=="GCC"
+# bei use_deffile implib von linker erstellt
+.IF "$(USE_DEFFILE)"==""
+ $(IMPLIB) $(IMPLIBFLAGS) @$(mktmp -out:$(SHL4IMPLIBN) \
+ -def:$(SHL4DEF) )
+.ELSE # "$(USE_DEFFILE)==""
+ @echo build of $(SHL4TARGETN) creates $@
+ @$(TOUCH) $@
+.ENDIF # "$(USE_DEFFILE)==""
+.ENDIF # "$(COM)"=="GCC"
+
+.ELIF "$(GUI)" == "OS2"
+
+# touch creates an empty file, but this is not good for emxomfar, so
+# create a dummy lib here
+ $(COMMAND_ECHO)-$(LIBMGR) $(LIBFLAGS) $@ $(SHL4VERSIONOBJ)
+ +@echo build of $(SHL4TARGETN) creates $@
+
+.ELSE
+ @echo no ImportLibs on Mac and *ix
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ENDIF
+.ENDIF
+
+# unroll begin
+
+.IF "$(SHL5IMPLIBN)" != ""
+
+.IF "$(UPDATER)"=="YES"
+USELIB5DEPN+=$(SHL5LIBS)
+.ELSE
+.ENDIF
+
+.IF "$(USE_DEFFILE)"!=""
+USE_SHL5TARGET=$(SHL5TARGETN)
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+$(SHL5IMPLIBN): \
+ $(SHL5DEF) \
+ $(USE_SHL5TARGET) \
+ $(USELIB5DEPN) \
+ $(USELIBDEPN)
+.ELSE
+$(SHL5IMPLIBN): \
+ $(SHL5LIBS)
+.ENDIF
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(COM)"=="GCC"
+ @echo no ImportLibs on mingw
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ELSE # "$(COM)=="GCC"
+# bei use_deffile implib von linker erstellt
+.IF "$(USE_DEFFILE)"==""
+ $(IMPLIB) $(IMPLIBFLAGS) @$(mktmp -out:$(SHL5IMPLIBN) \
+ -def:$(SHL5DEF) )
+.ELSE # "$(USE_DEFFILE)==""
+ @echo build of $(SHL5TARGETN) creates $@
+ @$(TOUCH) $@
+.ENDIF # "$(USE_DEFFILE)==""
+.ENDIF # "$(COM)"=="GCC"
+
+.ELIF "$(GUI)" == "OS2"
+
+# touch creates an empty file, but this is not good for emxomfar, so
+# create a dummy lib here
+ $(COMMAND_ECHO)-$(LIBMGR) $(LIBFLAGS) $@ $(SHL5VERSIONOBJ)
+ +@echo build of $(SHL5TARGETN) creates $@
+
+.ELSE
+ @echo no ImportLibs on Mac and *ix
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ENDIF
+.ENDIF
+
+# unroll begin
+
+.IF "$(SHL6IMPLIBN)" != ""
+
+.IF "$(UPDATER)"=="YES"
+USELIB6DEPN+=$(SHL6LIBS)
+.ELSE
+.ENDIF
+
+.IF "$(USE_DEFFILE)"!=""
+USE_SHL6TARGET=$(SHL6TARGETN)
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+$(SHL6IMPLIBN): \
+ $(SHL6DEF) \
+ $(USE_SHL6TARGET) \
+ $(USELIB6DEPN) \
+ $(USELIBDEPN)
+.ELSE
+$(SHL6IMPLIBN): \
+ $(SHL6LIBS)
+.ENDIF
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(COM)"=="GCC"
+ @echo no ImportLibs on mingw
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ELSE # "$(COM)=="GCC"
+# bei use_deffile implib von linker erstellt
+.IF "$(USE_DEFFILE)"==""
+ $(IMPLIB) $(IMPLIBFLAGS) @$(mktmp -out:$(SHL6IMPLIBN) \
+ -def:$(SHL6DEF) )
+.ELSE # "$(USE_DEFFILE)==""
+ @echo build of $(SHL6TARGETN) creates $@
+ @$(TOUCH) $@
+.ENDIF # "$(USE_DEFFILE)==""
+.ENDIF # "$(COM)"=="GCC"
+
+.ELIF "$(GUI)" == "OS2"
+
+# touch creates an empty file, but this is not good for emxomfar, so
+# create a dummy lib here
+ $(COMMAND_ECHO)-$(LIBMGR) $(LIBFLAGS) $@ $(SHL6VERSIONOBJ)
+ +@echo build of $(SHL6TARGETN) creates $@
+
+.ELSE
+ @echo no ImportLibs on Mac and *ix
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ENDIF
+.ENDIF
+
+# unroll begin
+
+.IF "$(SHL7IMPLIBN)" != ""
+
+.IF "$(UPDATER)"=="YES"
+USELIB7DEPN+=$(SHL7LIBS)
+.ELSE
+.ENDIF
+
+.IF "$(USE_DEFFILE)"!=""
+USE_SHL7TARGET=$(SHL7TARGETN)
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+$(SHL7IMPLIBN): \
+ $(SHL7DEF) \
+ $(USE_SHL7TARGET) \
+ $(USELIB7DEPN) \
+ $(USELIBDEPN)
+.ELSE
+$(SHL7IMPLIBN): \
+ $(SHL7LIBS)
+.ENDIF
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(COM)"=="GCC"
+ @echo no ImportLibs on mingw
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ELSE # "$(COM)=="GCC"
+# bei use_deffile implib von linker erstellt
+.IF "$(USE_DEFFILE)"==""
+ $(IMPLIB) $(IMPLIBFLAGS) @$(mktmp -out:$(SHL7IMPLIBN) \
+ -def:$(SHL7DEF) )
+.ELSE # "$(USE_DEFFILE)==""
+ @echo build of $(SHL7TARGETN) creates $@
+ @$(TOUCH) $@
+.ENDIF # "$(USE_DEFFILE)==""
+.ENDIF # "$(COM)"=="GCC"
+
+.ELIF "$(GUI)" == "OS2"
+
+# touch creates an empty file, but this is not good for emxomfar, so
+# create a dummy lib here
+ $(COMMAND_ECHO)-$(LIBMGR) $(LIBFLAGS) $@ $(SHL7VERSIONOBJ)
+ +@echo build of $(SHL7TARGETN) creates $@
+
+.ELSE
+ @echo no ImportLibs on Mac and *ix
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ENDIF
+.ENDIF
+
+# unroll begin
+
+.IF "$(SHL8IMPLIBN)" != ""
+
+.IF "$(UPDATER)"=="YES"
+USELIB8DEPN+=$(SHL8LIBS)
+.ELSE
+.ENDIF
+
+.IF "$(USE_DEFFILE)"!=""
+USE_SHL8TARGET=$(SHL8TARGETN)
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+$(SHL8IMPLIBN): \
+ $(SHL8DEF) \
+ $(USE_SHL8TARGET) \
+ $(USELIB8DEPN) \
+ $(USELIBDEPN)
+.ELSE
+$(SHL8IMPLIBN): \
+ $(SHL8LIBS)
+.ENDIF
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(COM)"=="GCC"
+ @echo no ImportLibs on mingw
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ELSE # "$(COM)=="GCC"
+# bei use_deffile implib von linker erstellt
+.IF "$(USE_DEFFILE)"==""
+ $(IMPLIB) $(IMPLIBFLAGS) @$(mktmp -out:$(SHL8IMPLIBN) \
+ -def:$(SHL8DEF) )
+.ELSE # "$(USE_DEFFILE)==""
+ @echo build of $(SHL8TARGETN) creates $@
+ @$(TOUCH) $@
+.ENDIF # "$(USE_DEFFILE)==""
+.ENDIF # "$(COM)"=="GCC"
+
+.ELIF "$(GUI)" == "OS2"
+
+# touch creates an empty file, but this is not good for emxomfar, so
+# create a dummy lib here
+ $(COMMAND_ECHO)-$(LIBMGR) $(LIBFLAGS) $@ $(SHL8VERSIONOBJ)
+ +@echo build of $(SHL8TARGETN) creates $@
+
+.ELSE
+ @echo no ImportLibs on Mac and *ix
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ENDIF
+.ENDIF
+
+# unroll begin
+
+.IF "$(SHL9IMPLIBN)" != ""
+
+.IF "$(UPDATER)"=="YES"
+USELIB9DEPN+=$(SHL9LIBS)
+.ELSE
+.ENDIF
+
+.IF "$(USE_DEFFILE)"!=""
+USE_SHL9TARGET=$(SHL9TARGETN)
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+$(SHL9IMPLIBN): \
+ $(SHL9DEF) \
+ $(USE_SHL9TARGET) \
+ $(USELIB9DEPN) \
+ $(USELIBDEPN)
+.ELSE
+$(SHL9IMPLIBN): \
+ $(SHL9LIBS)
+.ENDIF
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(COM)"=="GCC"
+ @echo no ImportLibs on mingw
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ELSE # "$(COM)=="GCC"
+# bei use_deffile implib von linker erstellt
+.IF "$(USE_DEFFILE)"==""
+ $(IMPLIB) $(IMPLIBFLAGS) @$(mktmp -out:$(SHL9IMPLIBN) \
+ -def:$(SHL9DEF) )
+.ELSE # "$(USE_DEFFILE)==""
+ @echo build of $(SHL9TARGETN) creates $@
+ @$(TOUCH) $@
+.ENDIF # "$(USE_DEFFILE)==""
+.ENDIF # "$(COM)"=="GCC"
+
+.ELIF "$(GUI)" == "OS2"
+
+# touch creates an empty file, but this is not good for emxomfar, so
+# create a dummy lib here
+ $(COMMAND_ECHO)-$(LIBMGR) $(LIBFLAGS) $@ $(SHL9VERSIONOBJ)
+ +@echo build of $(SHL9TARGETN) creates $@
+
+.ELSE
+ @echo no ImportLibs on Mac and *ix
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ENDIF
+.ENDIF
+
+# unroll begin
+
+.IF "$(SHL10IMPLIBN)" != ""
+
+.IF "$(UPDATER)"=="YES"
+USELIB10DEPN+=$(SHL10LIBS)
+.ELSE
+.ENDIF
+
+.IF "$(USE_DEFFILE)"!=""
+USE_SHL10TARGET=$(SHL10TARGETN)
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+$(SHL10IMPLIBN): \
+ $(SHL10DEF) \
+ $(USE_SHL10TARGET) \
+ $(USELIB10DEPN) \
+ $(USELIBDEPN)
+.ELSE
+$(SHL10IMPLIBN): \
+ $(SHL10LIBS)
+.ENDIF
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(COM)"=="GCC"
+ @echo no ImportLibs on mingw
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ELSE # "$(COM)=="GCC"
+# bei use_deffile implib von linker erstellt
+.IF "$(USE_DEFFILE)"==""
+ $(IMPLIB) $(IMPLIBFLAGS) @$(mktmp -out:$(SHL10IMPLIBN) \
+ -def:$(SHL10DEF) )
+.ELSE # "$(USE_DEFFILE)==""
+ @echo build of $(SHL10TARGETN) creates $@
+ @$(TOUCH) $@
+.ENDIF # "$(USE_DEFFILE)==""
+.ENDIF # "$(COM)"=="GCC"
+
+.ELIF "$(GUI)" == "OS2"
+
+# touch creates an empty file, but this is not good for emxomfar, so
+# create a dummy lib here
+ $(COMMAND_ECHO)-$(LIBMGR) $(LIBFLAGS) $@ $(SHL10VERSIONOBJ)
+ +@echo build of $(SHL10TARGETN) creates $@
+
+.ELSE
+ @echo no ImportLibs on Mac and *ix
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ENDIF
+.ENDIF
+
diff --git a/solenv/inc/_tg_srs.mk b/solenv/inc/_tg_srs.mk
new file mode 100644
index 000000000000..a71216f0a7e9
--- /dev/null
+++ b/solenv/inc/_tg_srs.mk
@@ -0,0 +1,530 @@
+# unroll begin
+
+.IF "$(SRS1NAME)"!=""
+.IF "$(BUILDHIDS)"!=""
+HID1FILES=$(foreach,i,$(SRC1FILES:f) $(SRS)/$(i:s/.src/.hid/))
+HIDSRS1PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(SRS))/$(SRS1NAME)_srs.hid
+$(HIDSRS1PARTICLE) : $(HID1FILES)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(subst,/,/ $(HID1FILES))) | xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDSRS1PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(MISC)/$(TARGET).$(SRS1NAME).dprr: $(LOCALIZE_ME_DEST)
+
+$(MISC)/$(TARGET).$(SRS1NAME).dprr: $(SRC1FILES) $(HIDSRS1PARTICLE) $(HID1FILES)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $(MISC)/$(TARGET).$(SRS1NAME).dprr
+ $(COMMAND_ECHO)$(RSC) $(VERBOSITY) $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) -I$(INCLOCPRJ) -I$(INCLOCAL) -I$(INC) -I$(INCCOM) $(RSCDEFS) $(RSCUPDVERDEF) -fp={$(SRS)/$(SRS1NAME).srs} -fo=$@ -p=$(TARGET) $(SRC1FILES)
+
+.IF "$(WITH_LANG)"!=""
+
+$(foreach,i,$(SRC1FILES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(COMMONMISC)$/$(PRJNAME)
+ $(COMMAND_ECHO)$(WRAPCMD) $(TRANSEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(SRS)/$(SRS1NAME).srs: $(LOCALIZE_ME_DEST)
+
+$(SRS)/$(SRS1NAME).srs: $(foreach,i,$(SRC1FILES) $(COMMONMISC)/$(TARGET)/$i)
+.ELSE # "$(WITH_LANG)"!=""
+$(SRS)/$(SRS1NAME).srs: $(SRC1FILES)
+.ENDIF # "$(WITH_LANG)"!=""
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) \
+ $(INCLUDE) $(RSCDEFS) $(RSCUPDVERDEF) \
+ -fp=$@.$(INPATH) \
+ $< \
+ )
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+.ENDIF # "$(SRS1NAME)"!=""
+
+# unroll begin
+
+.IF "$(SRS2NAME)"!=""
+.IF "$(BUILDHIDS)"!=""
+HID2FILES=$(foreach,i,$(SRC2FILES:f) $(SRS)/$(i:s/.src/.hid/))
+HIDSRS2PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(SRS))/$(SRS2NAME)_srs.hid
+$(HIDSRS2PARTICLE) : $(HID2FILES)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(subst,/,/ $(HID2FILES))) | xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDSRS2PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(MISC)/$(TARGET).$(SRS2NAME).dprr: $(LOCALIZE_ME_DEST)
+
+$(MISC)/$(TARGET).$(SRS2NAME).dprr: $(SRC2FILES) $(HIDSRS2PARTICLE) $(HID2FILES)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $(MISC)/$(TARGET).$(SRS2NAME).dprr
+ $(COMMAND_ECHO)$(RSC) $(VERBOSITY) $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) -I$(INCLOCPRJ) -I$(INCLOCAL) -I$(INC) -I$(INCCOM) $(RSCDEFS) $(RSCUPDVERDEF) -fp={$(SRS)/$(SRS2NAME).srs} -fo=$@ -p=$(TARGET) $(SRC2FILES)
+
+.IF "$(WITH_LANG)"!=""
+
+$(foreach,i,$(SRC2FILES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(COMMONMISC)$/$(PRJNAME)
+ $(COMMAND_ECHO)$(WRAPCMD) $(TRANSEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(SRS)/$(SRS2NAME).srs: $(LOCALIZE_ME_DEST)
+
+$(SRS)/$(SRS2NAME).srs: $(foreach,i,$(SRC2FILES) $(COMMONMISC)/$(TARGET)/$i)
+.ELSE # "$(WITH_LANG)"!=""
+$(SRS)/$(SRS2NAME).srs: $(SRC2FILES)
+.ENDIF # "$(WITH_LANG)"!=""
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) \
+ $(INCLUDE) $(RSCDEFS) $(RSCUPDVERDEF) \
+ -fp=$@.$(INPATH) \
+ $< \
+ )
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+.ENDIF # "$(SRS2NAME)"!=""
+
+# unroll begin
+
+.IF "$(SRS3NAME)"!=""
+.IF "$(BUILDHIDS)"!=""
+HID3FILES=$(foreach,i,$(SRC3FILES:f) $(SRS)/$(i:s/.src/.hid/))
+HIDSRS3PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(SRS))/$(SRS3NAME)_srs.hid
+$(HIDSRS3PARTICLE) : $(HID3FILES)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(subst,/,/ $(HID3FILES))) | xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDSRS3PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(MISC)/$(TARGET).$(SRS3NAME).dprr: $(LOCALIZE_ME_DEST)
+
+$(MISC)/$(TARGET).$(SRS3NAME).dprr: $(SRC3FILES) $(HIDSRS3PARTICLE) $(HID3FILES)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $(MISC)/$(TARGET).$(SRS3NAME).dprr
+ $(COMMAND_ECHO)$(RSC) $(VERBOSITY) $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) -I$(INCLOCPRJ) -I$(INCLOCAL) -I$(INC) -I$(INCCOM) $(RSCDEFS) $(RSCUPDVERDEF) -fp={$(SRS)/$(SRS3NAME).srs} -fo=$@ -p=$(TARGET) $(SRC3FILES)
+
+.IF "$(WITH_LANG)"!=""
+
+$(foreach,i,$(SRC3FILES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(COMMONMISC)$/$(PRJNAME)
+ $(COMMAND_ECHO)$(WRAPCMD) $(TRANSEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(SRS)/$(SRS3NAME).srs: $(LOCALIZE_ME_DEST)
+
+$(SRS)/$(SRS3NAME).srs: $(foreach,i,$(SRC3FILES) $(COMMONMISC)/$(TARGET)/$i)
+.ELSE # "$(WITH_LANG)"!=""
+$(SRS)/$(SRS3NAME).srs: $(SRC3FILES)
+.ENDIF # "$(WITH_LANG)"!=""
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) \
+ $(INCLUDE) $(RSCDEFS) $(RSCUPDVERDEF) \
+ -fp=$@.$(INPATH) \
+ $< \
+ )
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+.ENDIF # "$(SRS3NAME)"!=""
+
+# unroll begin
+
+.IF "$(SRS4NAME)"!=""
+.IF "$(BUILDHIDS)"!=""
+HID4FILES=$(foreach,i,$(SRC4FILES:f) $(SRS)/$(i:s/.src/.hid/))
+HIDSRS4PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(SRS))/$(SRS4NAME)_srs.hid
+$(HIDSRS4PARTICLE) : $(HID4FILES)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(subst,/,/ $(HID4FILES))) | xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDSRS4PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(MISC)/$(TARGET).$(SRS4NAME).dprr: $(LOCALIZE_ME_DEST)
+
+$(MISC)/$(TARGET).$(SRS4NAME).dprr: $(SRC4FILES) $(HIDSRS4PARTICLE) $(HID4FILES)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $(MISC)/$(TARGET).$(SRS4NAME).dprr
+ $(COMMAND_ECHO)$(RSC) $(VERBOSITY) $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) -I$(INCLOCPRJ) -I$(INCLOCAL) -I$(INC) -I$(INCCOM) $(RSCDEFS) $(RSCUPDVERDEF) -fp={$(SRS)/$(SRS4NAME).srs} -fo=$@ -p=$(TARGET) $(SRC4FILES)
+
+.IF "$(WITH_LANG)"!=""
+
+$(foreach,i,$(SRC4FILES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(COMMONMISC)$/$(PRJNAME)
+ $(COMMAND_ECHO)$(WRAPCMD) $(TRANSEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(SRS)/$(SRS4NAME).srs: $(LOCALIZE_ME_DEST)
+
+$(SRS)/$(SRS4NAME).srs: $(foreach,i,$(SRC4FILES) $(COMMONMISC)/$(TARGET)/$i)
+.ELSE # "$(WITH_LANG)"!=""
+$(SRS)/$(SRS4NAME).srs: $(SRC4FILES)
+.ENDIF # "$(WITH_LANG)"!=""
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) \
+ $(INCLUDE) $(RSCDEFS) $(RSCUPDVERDEF) \
+ -fp=$@.$(INPATH) \
+ $< \
+ )
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+.ENDIF # "$(SRS4NAME)"!=""
+
+# unroll begin
+
+.IF "$(SRS5NAME)"!=""
+.IF "$(BUILDHIDS)"!=""
+HID5FILES=$(foreach,i,$(SRC5FILES:f) $(SRS)/$(i:s/.src/.hid/))
+HIDSRS5PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(SRS))/$(SRS5NAME)_srs.hid
+$(HIDSRS5PARTICLE) : $(HID5FILES)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(subst,/,/ $(HID5FILES))) | xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDSRS5PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(MISC)/$(TARGET).$(SRS5NAME).dprr: $(LOCALIZE_ME_DEST)
+
+$(MISC)/$(TARGET).$(SRS5NAME).dprr: $(SRC5FILES) $(HIDSRS5PARTICLE) $(HID5FILES)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $(MISC)/$(TARGET).$(SRS5NAME).dprr
+ $(COMMAND_ECHO)$(RSC) $(VERBOSITY) $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) -I$(INCLOCPRJ) -I$(INCLOCAL) -I$(INC) -I$(INCCOM) $(RSCDEFS) $(RSCUPDVERDEF) -fp={$(SRS)/$(SRS5NAME).srs} -fo=$@ -p=$(TARGET) $(SRC5FILES)
+
+.IF "$(WITH_LANG)"!=""
+
+$(foreach,i,$(SRC5FILES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(COMMONMISC)$/$(PRJNAME)
+ $(COMMAND_ECHO)$(WRAPCMD) $(TRANSEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(SRS)/$(SRS5NAME).srs: $(LOCALIZE_ME_DEST)
+
+$(SRS)/$(SRS5NAME).srs: $(foreach,i,$(SRC5FILES) $(COMMONMISC)/$(TARGET)/$i)
+.ELSE # "$(WITH_LANG)"!=""
+$(SRS)/$(SRS5NAME).srs: $(SRC5FILES)
+.ENDIF # "$(WITH_LANG)"!=""
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) \
+ $(INCLUDE) $(RSCDEFS) $(RSCUPDVERDEF) \
+ -fp=$@.$(INPATH) \
+ $< \
+ )
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+.ENDIF # "$(SRS5NAME)"!=""
+
+# unroll begin
+
+.IF "$(SRS6NAME)"!=""
+.IF "$(BUILDHIDS)"!=""
+HID6FILES=$(foreach,i,$(SRC6FILES:f) $(SRS)/$(i:s/.src/.hid/))
+HIDSRS6PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(SRS))/$(SRS6NAME)_srs.hid
+$(HIDSRS6PARTICLE) : $(HID6FILES)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(subst,/,/ $(HID6FILES))) | xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDSRS6PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(MISC)/$(TARGET).$(SRS6NAME).dprr: $(LOCALIZE_ME_DEST)
+
+$(MISC)/$(TARGET).$(SRS6NAME).dprr: $(SRC6FILES) $(HIDSRS6PARTICLE) $(HID6FILES)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $(MISC)/$(TARGET).$(SRS6NAME).dprr
+ $(COMMAND_ECHO)$(RSC) $(VERBOSITY) $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) -I$(INCLOCPRJ) -I$(INCLOCAL) -I$(INC) -I$(INCCOM) $(RSCDEFS) $(RSCUPDVERDEF) -fp={$(SRS)/$(SRS6NAME).srs} -fo=$@ -p=$(TARGET) $(SRC6FILES)
+
+.IF "$(WITH_LANG)"!=""
+
+$(foreach,i,$(SRC6FILES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(COMMONMISC)$/$(PRJNAME)
+ $(COMMAND_ECHO)$(WRAPCMD) $(TRANSEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(SRS)/$(SRS6NAME).srs: $(LOCALIZE_ME_DEST)
+
+$(SRS)/$(SRS6NAME).srs: $(foreach,i,$(SRC6FILES) $(COMMONMISC)/$(TARGET)/$i)
+.ELSE # "$(WITH_LANG)"!=""
+$(SRS)/$(SRS6NAME).srs: $(SRC6FILES)
+.ENDIF # "$(WITH_LANG)"!=""
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) \
+ $(INCLUDE) $(RSCDEFS) $(RSCUPDVERDEF) \
+ -fp=$@.$(INPATH) \
+ $< \
+ )
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+.ENDIF # "$(SRS6NAME)"!=""
+
+# unroll begin
+
+.IF "$(SRS7NAME)"!=""
+.IF "$(BUILDHIDS)"!=""
+HID7FILES=$(foreach,i,$(SRC7FILES:f) $(SRS)/$(i:s/.src/.hid/))
+HIDSRS7PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(SRS))/$(SRS7NAME)_srs.hid
+$(HIDSRS7PARTICLE) : $(HID7FILES)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(subst,/,/ $(HID7FILES))) | xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDSRS7PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(MISC)/$(TARGET).$(SRS7NAME).dprr: $(LOCALIZE_ME_DEST)
+
+$(MISC)/$(TARGET).$(SRS7NAME).dprr: $(SRC7FILES) $(HIDSRS7PARTICLE) $(HID7FILES)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $(MISC)/$(TARGET).$(SRS7NAME).dprr
+ $(COMMAND_ECHO)$(RSC) $(VERBOSITY) $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) -I$(INCLOCPRJ) -I$(INCLOCAL) -I$(INC) -I$(INCCOM) $(RSCDEFS) $(RSCUPDVERDEF) -fp={$(SRS)/$(SRS7NAME).srs} -fo=$@ -p=$(TARGET) $(SRC7FILES)
+
+.IF "$(WITH_LANG)"!=""
+
+$(foreach,i,$(SRC7FILES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(COMMONMISC)$/$(PRJNAME)
+ $(COMMAND_ECHO)$(WRAPCMD) $(TRANSEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(SRS)/$(SRS7NAME).srs: $(LOCALIZE_ME_DEST)
+
+$(SRS)/$(SRS7NAME).srs: $(foreach,i,$(SRC7FILES) $(COMMONMISC)/$(TARGET)/$i)
+.ELSE # "$(WITH_LANG)"!=""
+$(SRS)/$(SRS7NAME).srs: $(SRC7FILES)
+.ENDIF # "$(WITH_LANG)"!=""
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) \
+ $(INCLUDE) $(RSCDEFS) $(RSCUPDVERDEF) \
+ -fp=$@.$(INPATH) \
+ $< \
+ )
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+.ENDIF # "$(SRS7NAME)"!=""
+
+# unroll begin
+
+.IF "$(SRS8NAME)"!=""
+.IF "$(BUILDHIDS)"!=""
+HID8FILES=$(foreach,i,$(SRC8FILES:f) $(SRS)/$(i:s/.src/.hid/))
+HIDSRS8PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(SRS))/$(SRS8NAME)_srs.hid
+$(HIDSRS8PARTICLE) : $(HID8FILES)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(subst,/,/ $(HID8FILES))) | xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDSRS8PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(MISC)/$(TARGET).$(SRS8NAME).dprr: $(LOCALIZE_ME_DEST)
+
+$(MISC)/$(TARGET).$(SRS8NAME).dprr: $(SRC8FILES) $(HIDSRS8PARTICLE) $(HID8FILES)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $(MISC)/$(TARGET).$(SRS8NAME).dprr
+ $(COMMAND_ECHO)$(RSC) $(VERBOSITY) $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) -I$(INCLOCPRJ) -I$(INCLOCAL) -I$(INC) -I$(INCCOM) $(RSCDEFS) $(RSCUPDVERDEF) -fp={$(SRS)/$(SRS8NAME).srs} -fo=$@ -p=$(TARGET) $(SRC8FILES)
+
+.IF "$(WITH_LANG)"!=""
+
+$(foreach,i,$(SRC8FILES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(COMMONMISC)$/$(PRJNAME)
+ $(COMMAND_ECHO)$(WRAPCMD) $(TRANSEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(SRS)/$(SRS8NAME).srs: $(LOCALIZE_ME_DEST)
+
+$(SRS)/$(SRS8NAME).srs: $(foreach,i,$(SRC8FILES) $(COMMONMISC)/$(TARGET)/$i)
+.ELSE # "$(WITH_LANG)"!=""
+$(SRS)/$(SRS8NAME).srs: $(SRC8FILES)
+.ENDIF # "$(WITH_LANG)"!=""
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) \
+ $(INCLUDE) $(RSCDEFS) $(RSCUPDVERDEF) \
+ -fp=$@.$(INPATH) \
+ $< \
+ )
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+.ENDIF # "$(SRS8NAME)"!=""
+
+# unroll begin
+
+.IF "$(SRS9NAME)"!=""
+.IF "$(BUILDHIDS)"!=""
+HID9FILES=$(foreach,i,$(SRC9FILES:f) $(SRS)/$(i:s/.src/.hid/))
+HIDSRS9PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(SRS))/$(SRS9NAME)_srs.hid
+$(HIDSRS9PARTICLE) : $(HID9FILES)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(subst,/,/ $(HID9FILES))) | xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDSRS9PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(MISC)/$(TARGET).$(SRS9NAME).dprr: $(LOCALIZE_ME_DEST)
+
+$(MISC)/$(TARGET).$(SRS9NAME).dprr: $(SRC9FILES) $(HIDSRS9PARTICLE) $(HID9FILES)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $(MISC)/$(TARGET).$(SRS9NAME).dprr
+ $(COMMAND_ECHO)$(RSC) $(VERBOSITY) $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) -I$(INCLOCPRJ) -I$(INCLOCAL) -I$(INC) -I$(INCCOM) $(RSCDEFS) $(RSCUPDVERDEF) -fp={$(SRS)/$(SRS9NAME).srs} -fo=$@ -p=$(TARGET) $(SRC9FILES)
+
+.IF "$(WITH_LANG)"!=""
+
+$(foreach,i,$(SRC9FILES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(COMMONMISC)$/$(PRJNAME)
+ $(COMMAND_ECHO)$(WRAPCMD) $(TRANSEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(SRS)/$(SRS9NAME).srs: $(LOCALIZE_ME_DEST)
+
+$(SRS)/$(SRS9NAME).srs: $(foreach,i,$(SRC9FILES) $(COMMONMISC)/$(TARGET)/$i)
+.ELSE # "$(WITH_LANG)"!=""
+$(SRS)/$(SRS9NAME).srs: $(SRC9FILES)
+.ENDIF # "$(WITH_LANG)"!=""
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) \
+ $(INCLUDE) $(RSCDEFS) $(RSCUPDVERDEF) \
+ -fp=$@.$(INPATH) \
+ $< \
+ )
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+.ENDIF # "$(SRS9NAME)"!=""
+
+# unroll begin
+
+.IF "$(SRS10NAME)"!=""
+.IF "$(BUILDHIDS)"!=""
+HID10FILES=$(foreach,i,$(SRC10FILES:f) $(SRS)/$(i:s/.src/.hid/))
+HIDSRS10PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(SRS))/$(SRS10NAME)_srs.hid
+$(HIDSRS10PARTICLE) : $(HID10FILES)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(subst,/,/ $(HID10FILES))) | xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDSRS10PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(MISC)/$(TARGET).$(SRS10NAME).dprr: $(LOCALIZE_ME_DEST)
+
+$(MISC)/$(TARGET).$(SRS10NAME).dprr: $(SRC10FILES) $(HIDSRS10PARTICLE) $(HID10FILES)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $(MISC)/$(TARGET).$(SRS10NAME).dprr
+ $(COMMAND_ECHO)$(RSC) $(VERBOSITY) $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) -I$(INCLOCPRJ) -I$(INCLOCAL) -I$(INC) -I$(INCCOM) $(RSCDEFS) $(RSCUPDVERDEF) -fp={$(SRS)/$(SRS10NAME).srs} -fo=$@ -p=$(TARGET) $(SRC10FILES)
+
+.IF "$(WITH_LANG)"!=""
+
+$(foreach,i,$(SRC10FILES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(COMMONMISC)$/$(PRJNAME)
+ $(COMMAND_ECHO)$(WRAPCMD) $(TRANSEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(SRS)/$(SRS10NAME).srs: $(LOCALIZE_ME_DEST)
+
+$(SRS)/$(SRS10NAME).srs: $(foreach,i,$(SRC10FILES) $(COMMONMISC)/$(TARGET)/$i)
+.ELSE # "$(WITH_LANG)"!=""
+$(SRS)/$(SRS10NAME).srs: $(SRC10FILES)
+.ENDIF # "$(WITH_LANG)"!=""
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) \
+ $(INCLUDE) $(RSCDEFS) $(RSCUPDVERDEF) \
+ -fp=$@.$(INPATH) \
+ $< \
+ )
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+.ENDIF # "$(SRS10NAME)"!=""
+
diff --git a/solenv/inc/_tg_zip.mk b/solenv/inc/_tg_zip.mk
new file mode 100644
index 000000000000..608819da6596
--- /dev/null
+++ b/solenv/inc/_tg_zip.mk
@@ -0,0 +1,1230 @@
+# unroll begin
+
+.IF "$(GUI)"=="WNT"
+command_seperator=&&
+#command_seperator=^
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+.ELIF "$(GUI)"=="OS2"
+command_seperator=&&
+.ELSE
+command_seperator=;
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+
+.ENDIF
+
+.IF "$(ZIP1TARGET)"!=""
+
+ZIP1EXT*=.zip
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP1LIST:s/LANGDIR//)" == "$(ZIP1LIST)"
+ZIP1TARGETN=$(COMMONBIN)/$(ZIP1TARGET)$(ZIP1EXT)
+.ELSE
+ZIP1TARGETN=$(foreach,i,$(zip1alllangiso) $(COMMONBIN)/$(ZIP1TARGET)_$i$(ZIP1EXT) )
+.ENDIF
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP1LIST:s/LANGDIR//)" == "$(ZIP1LIST)"
+ZIP1TARGETN=$(BIN)/$(ZIP1TARGET)$(ZIP1EXT)
+.ELSE
+ZIP1TARGETN=$(foreach,i,$(zip1alllangiso) $(BIN)/$(ZIP1TARGET)_$i$(ZIP1EXT) )
+.ENDIF
+.ENDIF # "$(common_build_zip)"!=""
+ZIP1DEPFILE=$(subst,$(COMMON_OUTDIR),$(OUTPATH) $(subst,/bin/,/misc/ $(ZIP1TARGETN:s/$(ZIP1EXT)/.dpzz/)))
+ZIPDEPFILES+=$(ZIP1DEPFILE)
+
+ZIP1DIR*=$(ZIPDIR)
+ZIP1FLAGS*=$(ZIPFLAGS)
+.IF "$(zip1generatedlangs)"!=""
+zip1langdirs*=$(alllangiso)
+.ELSE # "$(zip1generatedlangs)"!=""
+zip1langdirs:=$(shell @-test -d {$(subst,/$(LANGDIR), $(null,$(ZIP1DIR) . $(ZIP1DIR)))}/ && find {$(subst,/$(LANGDIR), $(null,$(ZIP1DIR) . $(ZIP1DIR)))}/ -type d ! -name CVS ! -name ".svn" ! -name "." | sed "s/\.\/\///" | sed "s/\.\///" )
+.ENDIF # "$(zip1generatedlangs)"!=""
+.IF "$(ZIP1FORCEALLLANG)"!=""
+zip1alllangiso:=$(foreach,i,$(completelangiso) $(foreach,j,$(zip1langdirs) $(eq,$i,$j $i $(NULL))))
+.ELSE # "$(ZIP1ALLLANG)" != ""
+zip1alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(zip1langdirs) $(eq,$i,$j $i $(NULL))))
+.ENDIF # "$(ZIP1ALLLANG)" != ""
+.ENDIF # "$(ZIP1TARGET)"!=""
+
+.IF "$(ZIP1TARGETN)"!=""
+
+ZIP1TMP:=$(mktmp iii)
+
+$(MISC)/$(TARGET).$(PWD:f).$(ZIP1TARGET).dpzz : $(ZIP1TARGETN)
+
+.IF "$(common_build_zip)"!=""
+ZIP1HELPVAR=$(COMMONBIN)/$(ZIP1TARGET)
+.ELSE # "$(common_build_zip)"!=""
+ZIP1HELPVAR=$(BIN)/$(ZIP1TARGET)
+.ENDIF # "$(common_build_zip)"!=""
+
+$(ZIP1DEPFILE) :
+ @echo # > $(MISC)/$(@:f)
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP1DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP1DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP1DIR))) $(command_seperator) $(ZIPDEP) $(ZIP1FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP1DIR)))/ $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP1EXT)/))) $(foreach,j,$(ZIP1LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP1TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP1DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP1FLAGS) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP1EXT)/))) $(foreach,j,$(ZIP1LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP1TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP1DIR)" != ""
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP1DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP1DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP1DIR))) $(command_seperator) $(ZIPDEP) $(ZIP1FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP1DIR)))/ $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP1EXT)/)) $(foreach,j,$(ZIP1LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP1TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP1DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP1FLAGS) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP1EXT)/)) $(foreach,j,$(ZIP1LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP1TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP1DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+ @echo $(@:n:s#\#/#) : makefile.mk >> $(MISC)/$(@:f)
+
+
+$(ZIP1TARGETN) : delzip $(ZIP1DEPS)
+ @echo "Making: " $(@:f)
+ @@$(!eq,$?,$(?:s/delzip/zzz/) -$(RM) echo) $(uniq $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@))
+ @$(eq,$?,$(?:s/delzip/zzz/) noop echo ) rebuilding zipfiles
+ @echo ------------------------------ $(eq,$?,$(?:s/delzip/zzz/) >&$(NULLDEV) )
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP1DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP1TMP).$(ZIP1TARGET){$(subst,$(ZIP1HELPVAR),_ $(@:db))}$(ZIP1EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP1HELPVAR)_, $(@:db))} $(ZIP1DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP1FLAGS) $(ZIP1TMP).$(ZIP1TARGET){$(subst,$(ZIP1HELPVAR),_ $(@:db))}$(ZIP1EXT) $(subst,LANGDIR_away/, $(ZIP1LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP1TMP).$(ZIP1TARGET){$(subst,$(ZIP1HELPVAR),_ $(@:db))}$(ZIP1EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP1TMP).$(ZIP1TARGET){$(subst,$(ZIP1HELPVAR),_ $(@:db))}$(ZIP1EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP1TMP).$(ZIP1TARGET){$(subst,$(ZIP1HELPVAR),_ $(@:db))}$(ZIP1EXT) $@.$(INPATH)
+ $(COMMAND_ECHO)$(RM) $(ZIP1TMP).$(ZIP1TARGET){$(subst,$(ZIP1HELPVAR),_ $(@:db))}$(ZIP1EXT)
+.ELSE # "$(ZIP1DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP1FLAGS) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(foreach,j,$(ZIP1LIST) $(subst,LANGDIR,{$(subst,$(ZIP1HELPVAR)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) \
+ $(FI)
+ @@-$(GNUCOPY) -p $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $@.$(INPATH)
+ @-$(RM) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+.ENDIF # "$(ZIP1DIR)" != ""
+ @@-$(RM) $@
+ @$(IFEXIST) $@.$(INPATH) $(THEN) $(RENAME:s/+//) $@.$(INPATH) $@ $(FI)
+# @$(IFEXIST) $@ $(THEN) $(TOUCH) $@ $(FI) # even if it's not used...
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP1DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP1TMP).$(ZIP1TARGET){$(subst,$(ZIP1HELPVAR),_ $(@:db))}$(ZIP1EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP1HELPVAR)_, $(@:db))} $(ZIP1DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP1FLAGS) $(ZIP1TMP).$(ZIP1TARGET){$(subst,$(ZIP1HELPVAR),_ $(@:db))}$(ZIP1EXT) $(subst,LANGDIR_away/, $(ZIP1LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP1TMP).$(ZIP1TARGET){$(subst,$(ZIP1HELPVAR),_ $(@:db))}$(ZIP1EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP1TMP).$(ZIP1TARGET){$(subst,$(ZIP1HELPVAR),_ $(@:db))}$(ZIP1EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP1TMP).$(ZIP1TARGET){$(subst,$(ZIP1HELPVAR),_ $(@:db))}$(ZIP1EXT) $@
+ $(COMMAND_ECHO)$(RM) $(ZIP1TMP).$(ZIP1TARGET){$(subst,$(ZIP1HELPVAR),_ $(@:db))}$(ZIP1EXT)
+.ELSE # "$(ZIP1DIR)" != ""
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP1FLAGS) $@ $(foreach,j,$(ZIP1LIST) $(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP1TARGET)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $@ $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $@ \
+ $(FI)
+.ENDIF # "$(ZIP1DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+.ENDIF
+
+# unroll begin
+
+.IF "$(GUI)"=="WNT"
+command_seperator=&&
+#command_seperator=^
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+.ELIF "$(GUI)"=="OS2"
+command_seperator=&&
+.ELSE
+command_seperator=;
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+
+.ENDIF
+
+.IF "$(ZIP2TARGET)"!=""
+
+ZIP2EXT*=.zip
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP2LIST:s/LANGDIR//)" == "$(ZIP2LIST)"
+ZIP2TARGETN=$(COMMONBIN)/$(ZIP2TARGET)$(ZIP2EXT)
+.ELSE
+ZIP2TARGETN=$(foreach,i,$(zip2alllangiso) $(COMMONBIN)/$(ZIP2TARGET)_$i$(ZIP2EXT) )
+.ENDIF
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP2LIST:s/LANGDIR//)" == "$(ZIP2LIST)"
+ZIP2TARGETN=$(BIN)/$(ZIP2TARGET)$(ZIP2EXT)
+.ELSE
+ZIP2TARGETN=$(foreach,i,$(zip2alllangiso) $(BIN)/$(ZIP2TARGET)_$i$(ZIP2EXT) )
+.ENDIF
+.ENDIF # "$(common_build_zip)"!=""
+ZIP2DEPFILE=$(subst,$(COMMON_OUTDIR),$(OUTPATH) $(subst,/bin/,/misc/ $(ZIP2TARGETN:s/$(ZIP2EXT)/.dpzz/)))
+ZIPDEPFILES+=$(ZIP2DEPFILE)
+
+ZIP2DIR*=$(ZIPDIR)
+ZIP2FLAGS*=$(ZIPFLAGS)
+.IF "$(zip2generatedlangs)"!=""
+zip2langdirs*=$(alllangiso)
+.ELSE # "$(zip2generatedlangs)"!=""
+zip2langdirs:=$(shell @-test -d {$(subst,/$(LANGDIR), $(null,$(ZIP2DIR) . $(ZIP2DIR)))}/ && find {$(subst,/$(LANGDIR), $(null,$(ZIP2DIR) . $(ZIP2DIR)))}/ -type d ! -name CVS ! -name ".svn" ! -name "." | sed "s/\.\/\///" | sed "s/\.\///" )
+.ENDIF # "$(zip2generatedlangs)"!=""
+.IF "$(ZIP2FORCEALLLANG)"!=""
+zip2alllangiso:=$(foreach,i,$(completelangiso) $(foreach,j,$(zip2langdirs) $(eq,$i,$j $i $(NULL))))
+.ELSE # "$(ZIP2ALLLANG)" != ""
+zip2alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(zip2langdirs) $(eq,$i,$j $i $(NULL))))
+.ENDIF # "$(ZIP2ALLLANG)" != ""
+.ENDIF # "$(ZIP2TARGET)"!=""
+
+.IF "$(ZIP2TARGETN)"!=""
+
+ZIP2TMP:=$(mktmp iii)
+
+$(MISC)/$(TARGET).$(PWD:f).$(ZIP2TARGET).dpzz : $(ZIP2TARGETN)
+
+.IF "$(common_build_zip)"!=""
+ZIP2HELPVAR=$(COMMONBIN)/$(ZIP2TARGET)
+.ELSE # "$(common_build_zip)"!=""
+ZIP2HELPVAR=$(BIN)/$(ZIP2TARGET)
+.ENDIF # "$(common_build_zip)"!=""
+
+$(ZIP2DEPFILE) :
+ @echo # > $(MISC)/$(@:f)
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP2DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP2DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP2DIR))) $(command_seperator) $(ZIPDEP) $(ZIP2FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP2DIR)))/ $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP2EXT)/))) $(foreach,j,$(ZIP2LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP2TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP2DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP2FLAGS) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP2EXT)/))) $(foreach,j,$(ZIP2LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP2TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP2DIR)" != ""
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP2DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP2DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP2DIR))) $(command_seperator) $(ZIPDEP) $(ZIP2FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP2DIR)))/ $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP2EXT)/)) $(foreach,j,$(ZIP2LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP2TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP2DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP2FLAGS) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP2EXT)/)) $(foreach,j,$(ZIP2LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP2TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP2DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+ @echo $(@:n:s#\#/#) : makefile.mk >> $(MISC)/$(@:f)
+
+
+$(ZIP2TARGETN) : delzip $(ZIP2DEPS)
+ @echo "Making: " $(@:f)
+ @@$(!eq,$?,$(?:s/delzip/zzz/) -$(RM) echo) $(uniq $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@))
+ @$(eq,$?,$(?:s/delzip/zzz/) noop echo ) rebuilding zipfiles
+ @echo ------------------------------ $(eq,$?,$(?:s/delzip/zzz/) >&$(NULLDEV) )
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP2DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP2TMP).$(ZIP2TARGET){$(subst,$(ZIP2HELPVAR),_ $(@:db))}$(ZIP2EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP2HELPVAR)_, $(@:db))} $(ZIP2DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP2FLAGS) $(ZIP2TMP).$(ZIP2TARGET){$(subst,$(ZIP2HELPVAR),_ $(@:db))}$(ZIP2EXT) $(subst,LANGDIR_away/, $(ZIP2LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP2TMP).$(ZIP2TARGET){$(subst,$(ZIP2HELPVAR),_ $(@:db))}$(ZIP2EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP2TMP).$(ZIP2TARGET){$(subst,$(ZIP2HELPVAR),_ $(@:db))}$(ZIP2EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP2TMP).$(ZIP2TARGET){$(subst,$(ZIP2HELPVAR),_ $(@:db))}$(ZIP2EXT) $@.$(INPATH)
+ $(COMMAND_ECHO)$(RM) $(ZIP2TMP).$(ZIP2TARGET){$(subst,$(ZIP2HELPVAR),_ $(@:db))}$(ZIP2EXT)
+.ELSE # "$(ZIP2DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP2FLAGS) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(foreach,j,$(ZIP2LIST) $(subst,LANGDIR,{$(subst,$(ZIP2HELPVAR)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) \
+ $(FI)
+ @@-$(GNUCOPY) -p $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $@.$(INPATH)
+ @-$(RM) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+.ENDIF # "$(ZIP2DIR)" != ""
+ @@-$(RM) $@
+ @$(IFEXIST) $@.$(INPATH) $(THEN) $(RENAME:s/+//) $@.$(INPATH) $@ $(FI)
+# @$(IFEXIST) $@ $(THEN) $(TOUCH) $@ $(FI) # even if it's not used...
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP2DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP2TMP).$(ZIP2TARGET){$(subst,$(ZIP2HELPVAR),_ $(@:db))}$(ZIP2EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP2HELPVAR)_, $(@:db))} $(ZIP2DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP2FLAGS) $(ZIP2TMP).$(ZIP2TARGET){$(subst,$(ZIP2HELPVAR),_ $(@:db))}$(ZIP2EXT) $(subst,LANGDIR_away/, $(ZIP2LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP2TMP).$(ZIP2TARGET){$(subst,$(ZIP2HELPVAR),_ $(@:db))}$(ZIP2EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP2TMP).$(ZIP2TARGET){$(subst,$(ZIP2HELPVAR),_ $(@:db))}$(ZIP2EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP2TMP).$(ZIP2TARGET){$(subst,$(ZIP2HELPVAR),_ $(@:db))}$(ZIP2EXT) $@
+ $(COMMAND_ECHO)$(RM) $(ZIP2TMP).$(ZIP2TARGET){$(subst,$(ZIP2HELPVAR),_ $(@:db))}$(ZIP2EXT)
+.ELSE # "$(ZIP2DIR)" != ""
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP2FLAGS) $@ $(foreach,j,$(ZIP2LIST) $(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP2TARGET)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $@ $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $@ \
+ $(FI)
+.ENDIF # "$(ZIP2DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+.ENDIF
+
+# unroll begin
+
+.IF "$(GUI)"=="WNT"
+command_seperator=&&
+#command_seperator=^
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+.ELIF "$(GUI)"=="OS2"
+command_seperator=&&
+.ELSE
+command_seperator=;
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+
+.ENDIF
+
+.IF "$(ZIP3TARGET)"!=""
+
+ZIP3EXT*=.zip
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP3LIST:s/LANGDIR//)" == "$(ZIP3LIST)"
+ZIP3TARGETN=$(COMMONBIN)/$(ZIP3TARGET)$(ZIP3EXT)
+.ELSE
+ZIP3TARGETN=$(foreach,i,$(zip3alllangiso) $(COMMONBIN)/$(ZIP3TARGET)_$i$(ZIP3EXT) )
+.ENDIF
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP3LIST:s/LANGDIR//)" == "$(ZIP3LIST)"
+ZIP3TARGETN=$(BIN)/$(ZIP3TARGET)$(ZIP3EXT)
+.ELSE
+ZIP3TARGETN=$(foreach,i,$(zip3alllangiso) $(BIN)/$(ZIP3TARGET)_$i$(ZIP3EXT) )
+.ENDIF
+.ENDIF # "$(common_build_zip)"!=""
+ZIP3DEPFILE=$(subst,$(COMMON_OUTDIR),$(OUTPATH) $(subst,/bin/,/misc/ $(ZIP3TARGETN:s/$(ZIP3EXT)/.dpzz/)))
+ZIPDEPFILES+=$(ZIP3DEPFILE)
+
+ZIP3DIR*=$(ZIPDIR)
+ZIP3FLAGS*=$(ZIPFLAGS)
+.IF "$(zip3generatedlangs)"!=""
+zip3langdirs*=$(alllangiso)
+.ELSE # "$(zip3generatedlangs)"!=""
+zip3langdirs:=$(shell @-test -d {$(subst,/$(LANGDIR), $(null,$(ZIP3DIR) . $(ZIP3DIR)))}/ && find {$(subst,/$(LANGDIR), $(null,$(ZIP3DIR) . $(ZIP3DIR)))}/ -type d ! -name CVS ! -name ".svn" ! -name "." | sed "s/\.\/\///" | sed "s/\.\///" )
+.ENDIF # "$(zip3generatedlangs)"!=""
+.IF "$(ZIP3FORCEALLLANG)"!=""
+zip3alllangiso:=$(foreach,i,$(completelangiso) $(foreach,j,$(zip3langdirs) $(eq,$i,$j $i $(NULL))))
+.ELSE # "$(ZIP3ALLLANG)" != ""
+zip3alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(zip3langdirs) $(eq,$i,$j $i $(NULL))))
+.ENDIF # "$(ZIP3ALLLANG)" != ""
+.ENDIF # "$(ZIP3TARGET)"!=""
+
+.IF "$(ZIP3TARGETN)"!=""
+
+ZIP3TMP:=$(mktmp iii)
+
+$(MISC)/$(TARGET).$(PWD:f).$(ZIP3TARGET).dpzz : $(ZIP3TARGETN)
+
+.IF "$(common_build_zip)"!=""
+ZIP3HELPVAR=$(COMMONBIN)/$(ZIP3TARGET)
+.ELSE # "$(common_build_zip)"!=""
+ZIP3HELPVAR=$(BIN)/$(ZIP3TARGET)
+.ENDIF # "$(common_build_zip)"!=""
+
+$(ZIP3DEPFILE) :
+ @echo # > $(MISC)/$(@:f)
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP3DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP3DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP3DIR))) $(command_seperator) $(ZIPDEP) $(ZIP3FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP3DIR)))/ $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP3EXT)/))) $(foreach,j,$(ZIP3LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP3TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP3DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP3FLAGS) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP3EXT)/))) $(foreach,j,$(ZIP3LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP3TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP3DIR)" != ""
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP3DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP3DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP3DIR))) $(command_seperator) $(ZIPDEP) $(ZIP3FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP3DIR)))/ $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP3EXT)/)) $(foreach,j,$(ZIP3LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP3TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP3DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP3FLAGS) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP3EXT)/)) $(foreach,j,$(ZIP3LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP3TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP3DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+ @echo $(@:n:s#\#/#) : makefile.mk >> $(MISC)/$(@:f)
+
+
+$(ZIP3TARGETN) : delzip $(ZIP3DEPS)
+ @echo "Making: " $(@:f)
+ @@$(!eq,$?,$(?:s/delzip/zzz/) -$(RM) echo) $(uniq $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@))
+ @$(eq,$?,$(?:s/delzip/zzz/) noop echo ) rebuilding zipfiles
+ @echo ------------------------------ $(eq,$?,$(?:s/delzip/zzz/) >&$(NULLDEV) )
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP3DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP3TMP).$(ZIP3TARGET){$(subst,$(ZIP3HELPVAR),_ $(@:db))}$(ZIP3EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP3HELPVAR)_, $(@:db))} $(ZIP3DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP3FLAGS) $(ZIP3TMP).$(ZIP3TARGET){$(subst,$(ZIP3HELPVAR),_ $(@:db))}$(ZIP3EXT) $(subst,LANGDIR_away/, $(ZIP3LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP3TMP).$(ZIP3TARGET){$(subst,$(ZIP3HELPVAR),_ $(@:db))}$(ZIP3EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP3TMP).$(ZIP3TARGET){$(subst,$(ZIP3HELPVAR),_ $(@:db))}$(ZIP3EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP3TMP).$(ZIP3TARGET){$(subst,$(ZIP3HELPVAR),_ $(@:db))}$(ZIP3EXT) $@.$(INPATH)
+ $(COMMAND_ECHO)$(RM) $(ZIP3TMP).$(ZIP3TARGET){$(subst,$(ZIP3HELPVAR),_ $(@:db))}$(ZIP3EXT)
+.ELSE # "$(ZIP3DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP3FLAGS) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(foreach,j,$(ZIP3LIST) $(subst,LANGDIR,{$(subst,$(ZIP3HELPVAR)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) \
+ $(FI)
+ @@-$(GNUCOPY) -p $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $@.$(INPATH)
+ @-$(RM) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+.ENDIF # "$(ZIP3DIR)" != ""
+ @@-$(RM) $@
+ @$(IFEXIST) $@.$(INPATH) $(THEN) $(RENAME:s/+//) $@.$(INPATH) $@ $(FI)
+# @$(IFEXIST) $@ $(THEN) $(TOUCH) $@ $(FI) # even if it's not used...
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP3DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP3TMP).$(ZIP3TARGET){$(subst,$(ZIP3HELPVAR),_ $(@:db))}$(ZIP3EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP3HELPVAR)_, $(@:db))} $(ZIP3DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP3FLAGS) $(ZIP3TMP).$(ZIP3TARGET){$(subst,$(ZIP3HELPVAR),_ $(@:db))}$(ZIP3EXT) $(subst,LANGDIR_away/, $(ZIP3LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP3TMP).$(ZIP3TARGET){$(subst,$(ZIP3HELPVAR),_ $(@:db))}$(ZIP3EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP3TMP).$(ZIP3TARGET){$(subst,$(ZIP3HELPVAR),_ $(@:db))}$(ZIP3EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP3TMP).$(ZIP3TARGET){$(subst,$(ZIP3HELPVAR),_ $(@:db))}$(ZIP3EXT) $@
+ $(COMMAND_ECHO)$(RM) $(ZIP3TMP).$(ZIP3TARGET){$(subst,$(ZIP3HELPVAR),_ $(@:db))}$(ZIP3EXT)
+.ELSE # "$(ZIP3DIR)" != ""
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP3FLAGS) $@ $(foreach,j,$(ZIP3LIST) $(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP3TARGET)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $@ $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $@ \
+ $(FI)
+.ENDIF # "$(ZIP3DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+.ENDIF
+
+# unroll begin
+
+.IF "$(GUI)"=="WNT"
+command_seperator=&&
+#command_seperator=^
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+.ELIF "$(GUI)"=="OS2"
+command_seperator=&&
+.ELSE
+command_seperator=;
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+
+.ENDIF
+
+.IF "$(ZIP4TARGET)"!=""
+
+ZIP4EXT*=.zip
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP4LIST:s/LANGDIR//)" == "$(ZIP4LIST)"
+ZIP4TARGETN=$(COMMONBIN)/$(ZIP4TARGET)$(ZIP4EXT)
+.ELSE
+ZIP4TARGETN=$(foreach,i,$(zip4alllangiso) $(COMMONBIN)/$(ZIP4TARGET)_$i$(ZIP4EXT) )
+.ENDIF
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP4LIST:s/LANGDIR//)" == "$(ZIP4LIST)"
+ZIP4TARGETN=$(BIN)/$(ZIP4TARGET)$(ZIP4EXT)
+.ELSE
+ZIP4TARGETN=$(foreach,i,$(zip4alllangiso) $(BIN)/$(ZIP4TARGET)_$i$(ZIP4EXT) )
+.ENDIF
+.ENDIF # "$(common_build_zip)"!=""
+ZIP4DEPFILE=$(subst,$(COMMON_OUTDIR),$(OUTPATH) $(subst,/bin/,/misc/ $(ZIP4TARGETN:s/$(ZIP4EXT)/.dpzz/)))
+ZIPDEPFILES+=$(ZIP4DEPFILE)
+
+ZIP4DIR*=$(ZIPDIR)
+ZIP4FLAGS*=$(ZIPFLAGS)
+.IF "$(zip4generatedlangs)"!=""
+zip4langdirs*=$(alllangiso)
+.ELSE # "$(zip4generatedlangs)"!=""
+zip4langdirs:=$(shell @-test -d {$(subst,/$(LANGDIR), $(null,$(ZIP4DIR) . $(ZIP4DIR)))}/ && find {$(subst,/$(LANGDIR), $(null,$(ZIP4DIR) . $(ZIP4DIR)))}/ -type d ! -name CVS ! -name ".svn" ! -name "." | sed "s/\.\/\///" | sed "s/\.\///" )
+.ENDIF # "$(zip4generatedlangs)"!=""
+.IF "$(ZIP4FORCEALLLANG)"!=""
+zip4alllangiso:=$(foreach,i,$(completelangiso) $(foreach,j,$(zip4langdirs) $(eq,$i,$j $i $(NULL))))
+.ELSE # "$(ZIP4ALLLANG)" != ""
+zip4alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(zip4langdirs) $(eq,$i,$j $i $(NULL))))
+.ENDIF # "$(ZIP4ALLLANG)" != ""
+.ENDIF # "$(ZIP4TARGET)"!=""
+
+.IF "$(ZIP4TARGETN)"!=""
+
+ZIP4TMP:=$(mktmp iii)
+
+$(MISC)/$(TARGET).$(PWD:f).$(ZIP4TARGET).dpzz : $(ZIP4TARGETN)
+
+.IF "$(common_build_zip)"!=""
+ZIP4HELPVAR=$(COMMONBIN)/$(ZIP4TARGET)
+.ELSE # "$(common_build_zip)"!=""
+ZIP4HELPVAR=$(BIN)/$(ZIP4TARGET)
+.ENDIF # "$(common_build_zip)"!=""
+
+$(ZIP4DEPFILE) :
+ @echo # > $(MISC)/$(@:f)
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP4DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP4DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP4DIR))) $(command_seperator) $(ZIPDEP) $(ZIP4FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP4DIR)))/ $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP4EXT)/))) $(foreach,j,$(ZIP4LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP4TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP4DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP4FLAGS) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP4EXT)/))) $(foreach,j,$(ZIP4LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP4TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP4DIR)" != ""
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP4DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP4DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP4DIR))) $(command_seperator) $(ZIPDEP) $(ZIP4FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP4DIR)))/ $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP4EXT)/)) $(foreach,j,$(ZIP4LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP4TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP4DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP4FLAGS) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP4EXT)/)) $(foreach,j,$(ZIP4LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP4TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP4DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+ @echo $(@:n:s#\#/#) : makefile.mk >> $(MISC)/$(@:f)
+
+
+$(ZIP4TARGETN) : delzip $(ZIP4DEPS)
+ @echo "Making: " $(@:f)
+ @@$(!eq,$?,$(?:s/delzip/zzz/) -$(RM) echo) $(uniq $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@))
+ @$(eq,$?,$(?:s/delzip/zzz/) noop echo ) rebuilding zipfiles
+ @echo ------------------------------ $(eq,$?,$(?:s/delzip/zzz/) >&$(NULLDEV) )
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP4DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP4TMP).$(ZIP4TARGET){$(subst,$(ZIP4HELPVAR),_ $(@:db))}$(ZIP4EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP4HELPVAR)_, $(@:db))} $(ZIP4DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP4FLAGS) $(ZIP4TMP).$(ZIP4TARGET){$(subst,$(ZIP4HELPVAR),_ $(@:db))}$(ZIP4EXT) $(subst,LANGDIR_away/, $(ZIP4LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP4TMP).$(ZIP4TARGET){$(subst,$(ZIP4HELPVAR),_ $(@:db))}$(ZIP4EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP4TMP).$(ZIP4TARGET){$(subst,$(ZIP4HELPVAR),_ $(@:db))}$(ZIP4EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP4TMP).$(ZIP4TARGET){$(subst,$(ZIP4HELPVAR),_ $(@:db))}$(ZIP4EXT) $@.$(INPATH)
+ $(COMMAND_ECHO)$(RM) $(ZIP4TMP).$(ZIP4TARGET){$(subst,$(ZIP4HELPVAR),_ $(@:db))}$(ZIP4EXT)
+.ELSE # "$(ZIP4DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP4FLAGS) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(foreach,j,$(ZIP4LIST) $(subst,LANGDIR,{$(subst,$(ZIP4HELPVAR)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) \
+ $(FI)
+ @@-$(GNUCOPY) -p $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $@.$(INPATH)
+ @-$(RM) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+.ENDIF # "$(ZIP4DIR)" != ""
+ @@-$(RM) $@
+ @$(IFEXIST) $@.$(INPATH) $(THEN) $(RENAME:s/+//) $@.$(INPATH) $@ $(FI)
+# @$(IFEXIST) $@ $(THEN) $(TOUCH) $@ $(FI) # even if it's not used...
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP4DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP4TMP).$(ZIP4TARGET){$(subst,$(ZIP4HELPVAR),_ $(@:db))}$(ZIP4EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP4HELPVAR)_, $(@:db))} $(ZIP4DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP4FLAGS) $(ZIP4TMP).$(ZIP4TARGET){$(subst,$(ZIP4HELPVAR),_ $(@:db))}$(ZIP4EXT) $(subst,LANGDIR_away/, $(ZIP4LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP4TMP).$(ZIP4TARGET){$(subst,$(ZIP4HELPVAR),_ $(@:db))}$(ZIP4EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP4TMP).$(ZIP4TARGET){$(subst,$(ZIP4HELPVAR),_ $(@:db))}$(ZIP4EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP4TMP).$(ZIP4TARGET){$(subst,$(ZIP4HELPVAR),_ $(@:db))}$(ZIP4EXT) $@
+ $(COMMAND_ECHO)$(RM) $(ZIP4TMP).$(ZIP4TARGET){$(subst,$(ZIP4HELPVAR),_ $(@:db))}$(ZIP4EXT)
+.ELSE # "$(ZIP4DIR)" != ""
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP4FLAGS) $@ $(foreach,j,$(ZIP4LIST) $(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP4TARGET)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $@ $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $@ \
+ $(FI)
+.ENDIF # "$(ZIP4DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+.ENDIF
+
+# unroll begin
+
+.IF "$(GUI)"=="WNT"
+command_seperator=&&
+#command_seperator=^
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+.ELIF "$(GUI)"=="OS2"
+command_seperator=&&
+.ELSE
+command_seperator=;
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+
+.ENDIF
+
+.IF "$(ZIP5TARGET)"!=""
+
+ZIP5EXT*=.zip
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP5LIST:s/LANGDIR//)" == "$(ZIP5LIST)"
+ZIP5TARGETN=$(COMMONBIN)/$(ZIP5TARGET)$(ZIP5EXT)
+.ELSE
+ZIP5TARGETN=$(foreach,i,$(zip5alllangiso) $(COMMONBIN)/$(ZIP5TARGET)_$i$(ZIP5EXT) )
+.ENDIF
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP5LIST:s/LANGDIR//)" == "$(ZIP5LIST)"
+ZIP5TARGETN=$(BIN)/$(ZIP5TARGET)$(ZIP5EXT)
+.ELSE
+ZIP5TARGETN=$(foreach,i,$(zip5alllangiso) $(BIN)/$(ZIP5TARGET)_$i$(ZIP5EXT) )
+.ENDIF
+.ENDIF # "$(common_build_zip)"!=""
+ZIP5DEPFILE=$(subst,$(COMMON_OUTDIR),$(OUTPATH) $(subst,/bin/,/misc/ $(ZIP5TARGETN:s/$(ZIP5EXT)/.dpzz/)))
+ZIPDEPFILES+=$(ZIP5DEPFILE)
+
+ZIP5DIR*=$(ZIPDIR)
+ZIP5FLAGS*=$(ZIPFLAGS)
+.IF "$(zip5generatedlangs)"!=""
+zip5langdirs*=$(alllangiso)
+.ELSE # "$(zip5generatedlangs)"!=""
+zip5langdirs:=$(shell @-test -d {$(subst,/$(LANGDIR), $(null,$(ZIP5DIR) . $(ZIP5DIR)))}/ && find {$(subst,/$(LANGDIR), $(null,$(ZIP5DIR) . $(ZIP5DIR)))}/ -type d ! -name CVS ! -name ".svn" ! -name "." | sed "s/\.\/\///" | sed "s/\.\///" )
+.ENDIF # "$(zip5generatedlangs)"!=""
+.IF "$(ZIP5FORCEALLLANG)"!=""
+zip5alllangiso:=$(foreach,i,$(completelangiso) $(foreach,j,$(zip5langdirs) $(eq,$i,$j $i $(NULL))))
+.ELSE # "$(ZIP5ALLLANG)" != ""
+zip5alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(zip5langdirs) $(eq,$i,$j $i $(NULL))))
+.ENDIF # "$(ZIP5ALLLANG)" != ""
+.ENDIF # "$(ZIP5TARGET)"!=""
+
+.IF "$(ZIP5TARGETN)"!=""
+
+ZIP5TMP:=$(mktmp iii)
+
+$(MISC)/$(TARGET).$(PWD:f).$(ZIP5TARGET).dpzz : $(ZIP5TARGETN)
+
+.IF "$(common_build_zip)"!=""
+ZIP5HELPVAR=$(COMMONBIN)/$(ZIP5TARGET)
+.ELSE # "$(common_build_zip)"!=""
+ZIP5HELPVAR=$(BIN)/$(ZIP5TARGET)
+.ENDIF # "$(common_build_zip)"!=""
+
+$(ZIP5DEPFILE) :
+ @echo # > $(MISC)/$(@:f)
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP5DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP5DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP5DIR))) $(command_seperator) $(ZIPDEP) $(ZIP5FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP5DIR)))/ $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP5EXT)/))) $(foreach,j,$(ZIP5LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP5TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP5DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP5FLAGS) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP5EXT)/))) $(foreach,j,$(ZIP5LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP5TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP5DIR)" != ""
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP5DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP5DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP5DIR))) $(command_seperator) $(ZIPDEP) $(ZIP5FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP5DIR)))/ $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP5EXT)/)) $(foreach,j,$(ZIP5LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP5TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP5DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP5FLAGS) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP5EXT)/)) $(foreach,j,$(ZIP5LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP5TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP5DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+ @echo $(@:n:s#\#/#) : makefile.mk >> $(MISC)/$(@:f)
+
+
+$(ZIP5TARGETN) : delzip $(ZIP5DEPS)
+ @echo "Making: " $(@:f)
+ @@$(!eq,$?,$(?:s/delzip/zzz/) -$(RM) echo) $(uniq $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@))
+ @$(eq,$?,$(?:s/delzip/zzz/) noop echo ) rebuilding zipfiles
+ @echo ------------------------------ $(eq,$?,$(?:s/delzip/zzz/) >&$(NULLDEV) )
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP5DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP5TMP).$(ZIP5TARGET){$(subst,$(ZIP5HELPVAR),_ $(@:db))}$(ZIP5EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP5HELPVAR)_, $(@:db))} $(ZIP5DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP5FLAGS) $(ZIP5TMP).$(ZIP5TARGET){$(subst,$(ZIP5HELPVAR),_ $(@:db))}$(ZIP5EXT) $(subst,LANGDIR_away/, $(ZIP5LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP5TMP).$(ZIP5TARGET){$(subst,$(ZIP5HELPVAR),_ $(@:db))}$(ZIP5EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP5TMP).$(ZIP5TARGET){$(subst,$(ZIP5HELPVAR),_ $(@:db))}$(ZIP5EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP5TMP).$(ZIP5TARGET){$(subst,$(ZIP5HELPVAR),_ $(@:db))}$(ZIP5EXT) $@.$(INPATH)
+ $(COMMAND_ECHO)$(RM) $(ZIP5TMP).$(ZIP5TARGET){$(subst,$(ZIP5HELPVAR),_ $(@:db))}$(ZIP5EXT)
+.ELSE # "$(ZIP5DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP5FLAGS) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(foreach,j,$(ZIP5LIST) $(subst,LANGDIR,{$(subst,$(ZIP5HELPVAR)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) \
+ $(FI)
+ @@-$(GNUCOPY) -p $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $@.$(INPATH)
+ @-$(RM) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+.ENDIF # "$(ZIP5DIR)" != ""
+ @@-$(RM) $@
+ @$(IFEXIST) $@.$(INPATH) $(THEN) $(RENAME:s/+//) $@.$(INPATH) $@ $(FI)
+# @$(IFEXIST) $@ $(THEN) $(TOUCH) $@ $(FI) # even if it's not used...
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP5DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP5TMP).$(ZIP5TARGET){$(subst,$(ZIP5HELPVAR),_ $(@:db))}$(ZIP5EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP5HELPVAR)_, $(@:db))} $(ZIP5DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP5FLAGS) $(ZIP5TMP).$(ZIP5TARGET){$(subst,$(ZIP5HELPVAR),_ $(@:db))}$(ZIP5EXT) $(subst,LANGDIR_away/, $(ZIP5LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP5TMP).$(ZIP5TARGET){$(subst,$(ZIP5HELPVAR),_ $(@:db))}$(ZIP5EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP5TMP).$(ZIP5TARGET){$(subst,$(ZIP5HELPVAR),_ $(@:db))}$(ZIP5EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP5TMP).$(ZIP5TARGET){$(subst,$(ZIP5HELPVAR),_ $(@:db))}$(ZIP5EXT) $@
+ $(COMMAND_ECHO)$(RM) $(ZIP5TMP).$(ZIP5TARGET){$(subst,$(ZIP5HELPVAR),_ $(@:db))}$(ZIP5EXT)
+.ELSE # "$(ZIP5DIR)" != ""
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP5FLAGS) $@ $(foreach,j,$(ZIP5LIST) $(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP5TARGET)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $@ $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $@ \
+ $(FI)
+.ENDIF # "$(ZIP5DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+.ENDIF
+
+# unroll begin
+
+.IF "$(GUI)"=="WNT"
+command_seperator=&&
+#command_seperator=^
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+.ELIF "$(GUI)"=="OS2"
+command_seperator=&&
+.ELSE
+command_seperator=;
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+
+.ENDIF
+
+.IF "$(ZIP6TARGET)"!=""
+
+ZIP6EXT*=.zip
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP6LIST:s/LANGDIR//)" == "$(ZIP6LIST)"
+ZIP6TARGETN=$(COMMONBIN)/$(ZIP6TARGET)$(ZIP6EXT)
+.ELSE
+ZIP6TARGETN=$(foreach,i,$(zip6alllangiso) $(COMMONBIN)/$(ZIP6TARGET)_$i$(ZIP6EXT) )
+.ENDIF
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP6LIST:s/LANGDIR//)" == "$(ZIP6LIST)"
+ZIP6TARGETN=$(BIN)/$(ZIP6TARGET)$(ZIP6EXT)
+.ELSE
+ZIP6TARGETN=$(foreach,i,$(zip6alllangiso) $(BIN)/$(ZIP6TARGET)_$i$(ZIP6EXT) )
+.ENDIF
+.ENDIF # "$(common_build_zip)"!=""
+ZIP6DEPFILE=$(subst,$(COMMON_OUTDIR),$(OUTPATH) $(subst,/bin/,/misc/ $(ZIP6TARGETN:s/$(ZIP6EXT)/.dpzz/)))
+ZIPDEPFILES+=$(ZIP6DEPFILE)
+
+ZIP6DIR*=$(ZIPDIR)
+ZIP6FLAGS*=$(ZIPFLAGS)
+.IF "$(zip6generatedlangs)"!=""
+zip6langdirs*=$(alllangiso)
+.ELSE # "$(zip6generatedlangs)"!=""
+zip6langdirs:=$(shell @-test -d {$(subst,/$(LANGDIR), $(null,$(ZIP6DIR) . $(ZIP6DIR)))}/ && find {$(subst,/$(LANGDIR), $(null,$(ZIP6DIR) . $(ZIP6DIR)))}/ -type d ! -name CVS ! -name ".svn" ! -name "." | sed "s/\.\/\///" | sed "s/\.\///" )
+.ENDIF # "$(zip6generatedlangs)"!=""
+.IF "$(ZIP6FORCEALLLANG)"!=""
+zip6alllangiso:=$(foreach,i,$(completelangiso) $(foreach,j,$(zip6langdirs) $(eq,$i,$j $i $(NULL))))
+.ELSE # "$(ZIP6ALLLANG)" != ""
+zip6alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(zip6langdirs) $(eq,$i,$j $i $(NULL))))
+.ENDIF # "$(ZIP6ALLLANG)" != ""
+.ENDIF # "$(ZIP6TARGET)"!=""
+
+.IF "$(ZIP6TARGETN)"!=""
+
+ZIP6TMP:=$(mktmp iii)
+
+$(MISC)/$(TARGET).$(PWD:f).$(ZIP6TARGET).dpzz : $(ZIP6TARGETN)
+
+.IF "$(common_build_zip)"!=""
+ZIP6HELPVAR=$(COMMONBIN)/$(ZIP6TARGET)
+.ELSE # "$(common_build_zip)"!=""
+ZIP6HELPVAR=$(BIN)/$(ZIP6TARGET)
+.ENDIF # "$(common_build_zip)"!=""
+
+$(ZIP6DEPFILE) :
+ @echo # > $(MISC)/$(@:f)
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP6DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP6DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP6DIR))) $(command_seperator) $(ZIPDEP) $(ZIP6FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP6DIR)))/ $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP6EXT)/))) $(foreach,j,$(ZIP6LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP6TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP6DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP6FLAGS) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP6EXT)/))) $(foreach,j,$(ZIP6LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP6TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP6DIR)" != ""
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP6DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP6DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP6DIR))) $(command_seperator) $(ZIPDEP) $(ZIP6FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP6DIR)))/ $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP6EXT)/)) $(foreach,j,$(ZIP6LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP6TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP6DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP6FLAGS) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP6EXT)/)) $(foreach,j,$(ZIP6LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP6TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP6DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+ @echo $(@:n:s#\#/#) : makefile.mk >> $(MISC)/$(@:f)
+
+
+$(ZIP6TARGETN) : delzip $(ZIP6DEPS)
+ @echo "Making: " $(@:f)
+ @@$(!eq,$?,$(?:s/delzip/zzz/) -$(RM) echo) $(uniq $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@))
+ @$(eq,$?,$(?:s/delzip/zzz/) noop echo ) rebuilding zipfiles
+ @echo ------------------------------ $(eq,$?,$(?:s/delzip/zzz/) >&$(NULLDEV) )
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP6DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP6TMP).$(ZIP6TARGET){$(subst,$(ZIP6HELPVAR),_ $(@:db))}$(ZIP6EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP6HELPVAR)_, $(@:db))} $(ZIP6DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP6FLAGS) $(ZIP6TMP).$(ZIP6TARGET){$(subst,$(ZIP6HELPVAR),_ $(@:db))}$(ZIP6EXT) $(subst,LANGDIR_away/, $(ZIP6LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP6TMP).$(ZIP6TARGET){$(subst,$(ZIP6HELPVAR),_ $(@:db))}$(ZIP6EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP6TMP).$(ZIP6TARGET){$(subst,$(ZIP6HELPVAR),_ $(@:db))}$(ZIP6EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP6TMP).$(ZIP6TARGET){$(subst,$(ZIP6HELPVAR),_ $(@:db))}$(ZIP6EXT) $@.$(INPATH)
+ $(COMMAND_ECHO)$(RM) $(ZIP6TMP).$(ZIP6TARGET){$(subst,$(ZIP6HELPVAR),_ $(@:db))}$(ZIP6EXT)
+.ELSE # "$(ZIP6DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP6FLAGS) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(foreach,j,$(ZIP6LIST) $(subst,LANGDIR,{$(subst,$(ZIP6HELPVAR)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) \
+ $(FI)
+ @@-$(GNUCOPY) -p $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $@.$(INPATH)
+ @-$(RM) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+.ENDIF # "$(ZIP6DIR)" != ""
+ @@-$(RM) $@
+ @$(IFEXIST) $@.$(INPATH) $(THEN) $(RENAME:s/+//) $@.$(INPATH) $@ $(FI)
+# @$(IFEXIST) $@ $(THEN) $(TOUCH) $@ $(FI) # even if it's not used...
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP6DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP6TMP).$(ZIP6TARGET){$(subst,$(ZIP6HELPVAR),_ $(@:db))}$(ZIP6EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP6HELPVAR)_, $(@:db))} $(ZIP6DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP6FLAGS) $(ZIP6TMP).$(ZIP6TARGET){$(subst,$(ZIP6HELPVAR),_ $(@:db))}$(ZIP6EXT) $(subst,LANGDIR_away/, $(ZIP6LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP6TMP).$(ZIP6TARGET){$(subst,$(ZIP6HELPVAR),_ $(@:db))}$(ZIP6EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP6TMP).$(ZIP6TARGET){$(subst,$(ZIP6HELPVAR),_ $(@:db))}$(ZIP6EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP6TMP).$(ZIP6TARGET){$(subst,$(ZIP6HELPVAR),_ $(@:db))}$(ZIP6EXT) $@
+ $(COMMAND_ECHO)$(RM) $(ZIP6TMP).$(ZIP6TARGET){$(subst,$(ZIP6HELPVAR),_ $(@:db))}$(ZIP6EXT)
+.ELSE # "$(ZIP6DIR)" != ""
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP6FLAGS) $@ $(foreach,j,$(ZIP6LIST) $(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP6TARGET)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $@ $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $@ \
+ $(FI)
+.ENDIF # "$(ZIP6DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+.ENDIF
+
+# unroll begin
+
+.IF "$(GUI)"=="WNT"
+command_seperator=&&
+#command_seperator=^
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+.ELIF "$(GUI)"=="OS2"
+command_seperator=&&
+.ELSE
+command_seperator=;
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+
+.ENDIF
+
+.IF "$(ZIP7TARGET)"!=""
+
+ZIP7EXT*=.zip
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP7LIST:s/LANGDIR//)" == "$(ZIP7LIST)"
+ZIP7TARGETN=$(COMMONBIN)/$(ZIP7TARGET)$(ZIP7EXT)
+.ELSE
+ZIP7TARGETN=$(foreach,i,$(zip7alllangiso) $(COMMONBIN)/$(ZIP7TARGET)_$i$(ZIP7EXT) )
+.ENDIF
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP7LIST:s/LANGDIR//)" == "$(ZIP7LIST)"
+ZIP7TARGETN=$(BIN)/$(ZIP7TARGET)$(ZIP7EXT)
+.ELSE
+ZIP7TARGETN=$(foreach,i,$(zip7alllangiso) $(BIN)/$(ZIP7TARGET)_$i$(ZIP7EXT) )
+.ENDIF
+.ENDIF # "$(common_build_zip)"!=""
+ZIP7DEPFILE=$(subst,$(COMMON_OUTDIR),$(OUTPATH) $(subst,/bin/,/misc/ $(ZIP7TARGETN:s/$(ZIP7EXT)/.dpzz/)))
+ZIPDEPFILES+=$(ZIP7DEPFILE)
+
+ZIP7DIR*=$(ZIPDIR)
+ZIP7FLAGS*=$(ZIPFLAGS)
+.IF "$(zip7generatedlangs)"!=""
+zip7langdirs*=$(alllangiso)
+.ELSE # "$(zip7generatedlangs)"!=""
+zip7langdirs:=$(shell @-test -d {$(subst,/$(LANGDIR), $(null,$(ZIP7DIR) . $(ZIP7DIR)))}/ && find {$(subst,/$(LANGDIR), $(null,$(ZIP7DIR) . $(ZIP7DIR)))}/ -type d ! -name CVS ! -name ".svn" ! -name "." | sed "s/\.\/\///" | sed "s/\.\///" )
+.ENDIF # "$(zip7generatedlangs)"!=""
+.IF "$(ZIP7FORCEALLLANG)"!=""
+zip7alllangiso:=$(foreach,i,$(completelangiso) $(foreach,j,$(zip7langdirs) $(eq,$i,$j $i $(NULL))))
+.ELSE # "$(ZIP7ALLLANG)" != ""
+zip7alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(zip7langdirs) $(eq,$i,$j $i $(NULL))))
+.ENDIF # "$(ZIP7ALLLANG)" != ""
+.ENDIF # "$(ZIP7TARGET)"!=""
+
+.IF "$(ZIP7TARGETN)"!=""
+
+ZIP7TMP:=$(mktmp iii)
+
+$(MISC)/$(TARGET).$(PWD:f).$(ZIP7TARGET).dpzz : $(ZIP7TARGETN)
+
+.IF "$(common_build_zip)"!=""
+ZIP7HELPVAR=$(COMMONBIN)/$(ZIP7TARGET)
+.ELSE # "$(common_build_zip)"!=""
+ZIP7HELPVAR=$(BIN)/$(ZIP7TARGET)
+.ENDIF # "$(common_build_zip)"!=""
+
+$(ZIP7DEPFILE) :
+ @echo # > $(MISC)/$(@:f)
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP7DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP7DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP7DIR))) $(command_seperator) $(ZIPDEP) $(ZIP7FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP7DIR)))/ $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP7EXT)/))) $(foreach,j,$(ZIP7LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP7TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP7DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP7FLAGS) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP7EXT)/))) $(foreach,j,$(ZIP7LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP7TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP7DIR)" != ""
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP7DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP7DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP7DIR))) $(command_seperator) $(ZIPDEP) $(ZIP7FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP7DIR)))/ $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP7EXT)/)) $(foreach,j,$(ZIP7LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP7TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP7DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP7FLAGS) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP7EXT)/)) $(foreach,j,$(ZIP7LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP7TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP7DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+ @echo $(@:n:s#\#/#) : makefile.mk >> $(MISC)/$(@:f)
+
+
+$(ZIP7TARGETN) : delzip $(ZIP7DEPS)
+ @echo "Making: " $(@:f)
+ @@$(!eq,$?,$(?:s/delzip/zzz/) -$(RM) echo) $(uniq $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@))
+ @$(eq,$?,$(?:s/delzip/zzz/) noop echo ) rebuilding zipfiles
+ @echo ------------------------------ $(eq,$?,$(?:s/delzip/zzz/) >&$(NULLDEV) )
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP7DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP7TMP).$(ZIP7TARGET){$(subst,$(ZIP7HELPVAR),_ $(@:db))}$(ZIP7EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP7HELPVAR)_, $(@:db))} $(ZIP7DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP7FLAGS) $(ZIP7TMP).$(ZIP7TARGET){$(subst,$(ZIP7HELPVAR),_ $(@:db))}$(ZIP7EXT) $(subst,LANGDIR_away/, $(ZIP7LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP7TMP).$(ZIP7TARGET){$(subst,$(ZIP7HELPVAR),_ $(@:db))}$(ZIP7EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP7TMP).$(ZIP7TARGET){$(subst,$(ZIP7HELPVAR),_ $(@:db))}$(ZIP7EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP7TMP).$(ZIP7TARGET){$(subst,$(ZIP7HELPVAR),_ $(@:db))}$(ZIP7EXT) $@.$(INPATH)
+ $(COMMAND_ECHO)$(RM) $(ZIP7TMP).$(ZIP7TARGET){$(subst,$(ZIP7HELPVAR),_ $(@:db))}$(ZIP7EXT)
+.ELSE # "$(ZIP7DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP7FLAGS) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(foreach,j,$(ZIP7LIST) $(subst,LANGDIR,{$(subst,$(ZIP7HELPVAR)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) \
+ $(FI)
+ @@-$(GNUCOPY) -p $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $@.$(INPATH)
+ @-$(RM) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+.ENDIF # "$(ZIP7DIR)" != ""
+ @@-$(RM) $@
+ @$(IFEXIST) $@.$(INPATH) $(THEN) $(RENAME:s/+//) $@.$(INPATH) $@ $(FI)
+# @$(IFEXIST) $@ $(THEN) $(TOUCH) $@ $(FI) # even if it's not used...
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP7DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP7TMP).$(ZIP7TARGET){$(subst,$(ZIP7HELPVAR),_ $(@:db))}$(ZIP7EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP7HELPVAR)_, $(@:db))} $(ZIP7DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP7FLAGS) $(ZIP7TMP).$(ZIP7TARGET){$(subst,$(ZIP7HELPVAR),_ $(@:db))}$(ZIP7EXT) $(subst,LANGDIR_away/, $(ZIP7LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP7TMP).$(ZIP7TARGET){$(subst,$(ZIP7HELPVAR),_ $(@:db))}$(ZIP7EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP7TMP).$(ZIP7TARGET){$(subst,$(ZIP7HELPVAR),_ $(@:db))}$(ZIP7EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP7TMP).$(ZIP7TARGET){$(subst,$(ZIP7HELPVAR),_ $(@:db))}$(ZIP7EXT) $@
+ $(COMMAND_ECHO)$(RM) $(ZIP7TMP).$(ZIP7TARGET){$(subst,$(ZIP7HELPVAR),_ $(@:db))}$(ZIP7EXT)
+.ELSE # "$(ZIP7DIR)" != ""
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP7FLAGS) $@ $(foreach,j,$(ZIP7LIST) $(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP7TARGET)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $@ $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $@ \
+ $(FI)
+.ENDIF # "$(ZIP7DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+.ENDIF
+
+# unroll begin
+
+.IF "$(GUI)"=="WNT"
+command_seperator=&&
+#command_seperator=^
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+.ELIF "$(GUI)"=="OS2"
+command_seperator=&&
+.ELSE
+command_seperator=;
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+
+.ENDIF
+
+.IF "$(ZIP8TARGET)"!=""
+
+ZIP8EXT*=.zip
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP8LIST:s/LANGDIR//)" == "$(ZIP8LIST)"
+ZIP8TARGETN=$(COMMONBIN)/$(ZIP8TARGET)$(ZIP8EXT)
+.ELSE
+ZIP8TARGETN=$(foreach,i,$(zip8alllangiso) $(COMMONBIN)/$(ZIP8TARGET)_$i$(ZIP8EXT) )
+.ENDIF
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP8LIST:s/LANGDIR//)" == "$(ZIP8LIST)"
+ZIP8TARGETN=$(BIN)/$(ZIP8TARGET)$(ZIP8EXT)
+.ELSE
+ZIP8TARGETN=$(foreach,i,$(zip8alllangiso) $(BIN)/$(ZIP8TARGET)_$i$(ZIP8EXT) )
+.ENDIF
+.ENDIF # "$(common_build_zip)"!=""
+ZIP8DEPFILE=$(subst,$(COMMON_OUTDIR),$(OUTPATH) $(subst,/bin/,/misc/ $(ZIP8TARGETN:s/$(ZIP8EXT)/.dpzz/)))
+ZIPDEPFILES+=$(ZIP8DEPFILE)
+
+ZIP8DIR*=$(ZIPDIR)
+ZIP8FLAGS*=$(ZIPFLAGS)
+.IF "$(zip8generatedlangs)"!=""
+zip8langdirs*=$(alllangiso)
+.ELSE # "$(zip8generatedlangs)"!=""
+zip8langdirs:=$(shell @-test -d {$(subst,/$(LANGDIR), $(null,$(ZIP8DIR) . $(ZIP8DIR)))}/ && find {$(subst,/$(LANGDIR), $(null,$(ZIP8DIR) . $(ZIP8DIR)))}/ -type d ! -name CVS ! -name ".svn" ! -name "." | sed "s/\.\/\///" | sed "s/\.\///" )
+.ENDIF # "$(zip8generatedlangs)"!=""
+.IF "$(ZIP8FORCEALLLANG)"!=""
+zip8alllangiso:=$(foreach,i,$(completelangiso) $(foreach,j,$(zip8langdirs) $(eq,$i,$j $i $(NULL))))
+.ELSE # "$(ZIP8ALLLANG)" != ""
+zip8alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(zip8langdirs) $(eq,$i,$j $i $(NULL))))
+.ENDIF # "$(ZIP8ALLLANG)" != ""
+.ENDIF # "$(ZIP8TARGET)"!=""
+
+.IF "$(ZIP8TARGETN)"!=""
+
+ZIP8TMP:=$(mktmp iii)
+
+$(MISC)/$(TARGET).$(PWD:f).$(ZIP8TARGET).dpzz : $(ZIP8TARGETN)
+
+.IF "$(common_build_zip)"!=""
+ZIP8HELPVAR=$(COMMONBIN)/$(ZIP8TARGET)
+.ELSE # "$(common_build_zip)"!=""
+ZIP8HELPVAR=$(BIN)/$(ZIP8TARGET)
+.ENDIF # "$(common_build_zip)"!=""
+
+$(ZIP8DEPFILE) :
+ @echo # > $(MISC)/$(@:f)
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP8DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP8DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP8DIR))) $(command_seperator) $(ZIPDEP) $(ZIP8FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP8DIR)))/ $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP8EXT)/))) $(foreach,j,$(ZIP8LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP8TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP8DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP8FLAGS) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP8EXT)/))) $(foreach,j,$(ZIP8LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP8TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP8DIR)" != ""
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP8DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP8DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP8DIR))) $(command_seperator) $(ZIPDEP) $(ZIP8FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP8DIR)))/ $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP8EXT)/)) $(foreach,j,$(ZIP8LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP8TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP8DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP8FLAGS) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP8EXT)/)) $(foreach,j,$(ZIP8LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP8TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP8DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+ @echo $(@:n:s#\#/#) : makefile.mk >> $(MISC)/$(@:f)
+
+
+$(ZIP8TARGETN) : delzip $(ZIP8DEPS)
+ @echo "Making: " $(@:f)
+ @@$(!eq,$?,$(?:s/delzip/zzz/) -$(RM) echo) $(uniq $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@))
+ @$(eq,$?,$(?:s/delzip/zzz/) noop echo ) rebuilding zipfiles
+ @echo ------------------------------ $(eq,$?,$(?:s/delzip/zzz/) >&$(NULLDEV) )
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP8DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP8TMP).$(ZIP8TARGET){$(subst,$(ZIP8HELPVAR),_ $(@:db))}$(ZIP8EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP8HELPVAR)_, $(@:db))} $(ZIP8DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP8FLAGS) $(ZIP8TMP).$(ZIP8TARGET){$(subst,$(ZIP8HELPVAR),_ $(@:db))}$(ZIP8EXT) $(subst,LANGDIR_away/, $(ZIP8LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP8TMP).$(ZIP8TARGET){$(subst,$(ZIP8HELPVAR),_ $(@:db))}$(ZIP8EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP8TMP).$(ZIP8TARGET){$(subst,$(ZIP8HELPVAR),_ $(@:db))}$(ZIP8EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP8TMP).$(ZIP8TARGET){$(subst,$(ZIP8HELPVAR),_ $(@:db))}$(ZIP8EXT) $@.$(INPATH)
+ $(COMMAND_ECHO)$(RM) $(ZIP8TMP).$(ZIP8TARGET){$(subst,$(ZIP8HELPVAR),_ $(@:db))}$(ZIP8EXT)
+.ELSE # "$(ZIP8DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP8FLAGS) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(foreach,j,$(ZIP8LIST) $(subst,LANGDIR,{$(subst,$(ZIP8HELPVAR)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) \
+ $(FI)
+ @@-$(GNUCOPY) -p $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $@.$(INPATH)
+ @-$(RM) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+.ENDIF # "$(ZIP8DIR)" != ""
+ @@-$(RM) $@
+ @$(IFEXIST) $@.$(INPATH) $(THEN) $(RENAME:s/+//) $@.$(INPATH) $@ $(FI)
+# @$(IFEXIST) $@ $(THEN) $(TOUCH) $@ $(FI) # even if it's not used...
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP8DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP8TMP).$(ZIP8TARGET){$(subst,$(ZIP8HELPVAR),_ $(@:db))}$(ZIP8EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP8HELPVAR)_, $(@:db))} $(ZIP8DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP8FLAGS) $(ZIP8TMP).$(ZIP8TARGET){$(subst,$(ZIP8HELPVAR),_ $(@:db))}$(ZIP8EXT) $(subst,LANGDIR_away/, $(ZIP8LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP8TMP).$(ZIP8TARGET){$(subst,$(ZIP8HELPVAR),_ $(@:db))}$(ZIP8EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP8TMP).$(ZIP8TARGET){$(subst,$(ZIP8HELPVAR),_ $(@:db))}$(ZIP8EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP8TMP).$(ZIP8TARGET){$(subst,$(ZIP8HELPVAR),_ $(@:db))}$(ZIP8EXT) $@
+ $(COMMAND_ECHO)$(RM) $(ZIP8TMP).$(ZIP8TARGET){$(subst,$(ZIP8HELPVAR),_ $(@:db))}$(ZIP8EXT)
+.ELSE # "$(ZIP8DIR)" != ""
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP8FLAGS) $@ $(foreach,j,$(ZIP8LIST) $(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP8TARGET)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $@ $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $@ \
+ $(FI)
+.ENDIF # "$(ZIP8DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+.ENDIF
+
+# unroll begin
+
+.IF "$(GUI)"=="WNT"
+command_seperator=&&
+#command_seperator=^
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+.ELIF "$(GUI)"=="OS2"
+command_seperator=&&
+.ELSE
+command_seperator=;
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+
+.ENDIF
+
+.IF "$(ZIP9TARGET)"!=""
+
+ZIP9EXT*=.zip
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP9LIST:s/LANGDIR//)" == "$(ZIP9LIST)"
+ZIP9TARGETN=$(COMMONBIN)/$(ZIP9TARGET)$(ZIP9EXT)
+.ELSE
+ZIP9TARGETN=$(foreach,i,$(zip9alllangiso) $(COMMONBIN)/$(ZIP9TARGET)_$i$(ZIP9EXT) )
+.ENDIF
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP9LIST:s/LANGDIR//)" == "$(ZIP9LIST)"
+ZIP9TARGETN=$(BIN)/$(ZIP9TARGET)$(ZIP9EXT)
+.ELSE
+ZIP9TARGETN=$(foreach,i,$(zip9alllangiso) $(BIN)/$(ZIP9TARGET)_$i$(ZIP9EXT) )
+.ENDIF
+.ENDIF # "$(common_build_zip)"!=""
+ZIP9DEPFILE=$(subst,$(COMMON_OUTDIR),$(OUTPATH) $(subst,/bin/,/misc/ $(ZIP9TARGETN:s/$(ZIP9EXT)/.dpzz/)))
+ZIPDEPFILES+=$(ZIP9DEPFILE)
+
+ZIP9DIR*=$(ZIPDIR)
+ZIP9FLAGS*=$(ZIPFLAGS)
+.IF "$(zip9generatedlangs)"!=""
+zip9langdirs*=$(alllangiso)
+.ELSE # "$(zip9generatedlangs)"!=""
+zip9langdirs:=$(shell @-test -d {$(subst,/$(LANGDIR), $(null,$(ZIP9DIR) . $(ZIP9DIR)))}/ && find {$(subst,/$(LANGDIR), $(null,$(ZIP9DIR) . $(ZIP9DIR)))}/ -type d ! -name CVS ! -name ".svn" ! -name "." | sed "s/\.\/\///" | sed "s/\.\///" )
+.ENDIF # "$(zip9generatedlangs)"!=""
+.IF "$(ZIP9FORCEALLLANG)"!=""
+zip9alllangiso:=$(foreach,i,$(completelangiso) $(foreach,j,$(zip9langdirs) $(eq,$i,$j $i $(NULL))))
+.ELSE # "$(ZIP9ALLLANG)" != ""
+zip9alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(zip9langdirs) $(eq,$i,$j $i $(NULL))))
+.ENDIF # "$(ZIP9ALLLANG)" != ""
+.ENDIF # "$(ZIP9TARGET)"!=""
+
+.IF "$(ZIP9TARGETN)"!=""
+
+ZIP9TMP:=$(mktmp iii)
+
+$(MISC)/$(TARGET).$(PWD:f).$(ZIP9TARGET).dpzz : $(ZIP9TARGETN)
+
+.IF "$(common_build_zip)"!=""
+ZIP9HELPVAR=$(COMMONBIN)/$(ZIP9TARGET)
+.ELSE # "$(common_build_zip)"!=""
+ZIP9HELPVAR=$(BIN)/$(ZIP9TARGET)
+.ENDIF # "$(common_build_zip)"!=""
+
+$(ZIP9DEPFILE) :
+ @echo # > $(MISC)/$(@:f)
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP9DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP9DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP9DIR))) $(command_seperator) $(ZIPDEP) $(ZIP9FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP9DIR)))/ $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP9EXT)/))) $(foreach,j,$(ZIP9LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP9TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP9DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP9FLAGS) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP9EXT)/))) $(foreach,j,$(ZIP9LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP9TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP9DIR)" != ""
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP9DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP9DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP9DIR))) $(command_seperator) $(ZIPDEP) $(ZIP9FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP9DIR)))/ $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP9EXT)/)) $(foreach,j,$(ZIP9LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP9TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP9DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP9FLAGS) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP9EXT)/)) $(foreach,j,$(ZIP9LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP9TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP9DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+ @echo $(@:n:s#\#/#) : makefile.mk >> $(MISC)/$(@:f)
+
+
+$(ZIP9TARGETN) : delzip $(ZIP9DEPS)
+ @echo "Making: " $(@:f)
+ @@$(!eq,$?,$(?:s/delzip/zzz/) -$(RM) echo) $(uniq $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@))
+ @$(eq,$?,$(?:s/delzip/zzz/) noop echo ) rebuilding zipfiles
+ @echo ------------------------------ $(eq,$?,$(?:s/delzip/zzz/) >&$(NULLDEV) )
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP9DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP9TMP).$(ZIP9TARGET){$(subst,$(ZIP9HELPVAR),_ $(@:db))}$(ZIP9EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP9HELPVAR)_, $(@:db))} $(ZIP9DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP9FLAGS) $(ZIP9TMP).$(ZIP9TARGET){$(subst,$(ZIP9HELPVAR),_ $(@:db))}$(ZIP9EXT) $(subst,LANGDIR_away/, $(ZIP9LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP9TMP).$(ZIP9TARGET){$(subst,$(ZIP9HELPVAR),_ $(@:db))}$(ZIP9EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP9TMP).$(ZIP9TARGET){$(subst,$(ZIP9HELPVAR),_ $(@:db))}$(ZIP9EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP9TMP).$(ZIP9TARGET){$(subst,$(ZIP9HELPVAR),_ $(@:db))}$(ZIP9EXT) $@.$(INPATH)
+ $(COMMAND_ECHO)$(RM) $(ZIP9TMP).$(ZIP9TARGET){$(subst,$(ZIP9HELPVAR),_ $(@:db))}$(ZIP9EXT)
+.ELSE # "$(ZIP9DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP9FLAGS) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(foreach,j,$(ZIP9LIST) $(subst,LANGDIR,{$(subst,$(ZIP9HELPVAR)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) \
+ $(FI)
+ @@-$(GNUCOPY) -p $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $@.$(INPATH)
+ @-$(RM) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+.ENDIF # "$(ZIP9DIR)" != ""
+ @@-$(RM) $@
+ @$(IFEXIST) $@.$(INPATH) $(THEN) $(RENAME:s/+//) $@.$(INPATH) $@ $(FI)
+# @$(IFEXIST) $@ $(THEN) $(TOUCH) $@ $(FI) # even if it's not used...
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP9DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP9TMP).$(ZIP9TARGET){$(subst,$(ZIP9HELPVAR),_ $(@:db))}$(ZIP9EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP9HELPVAR)_, $(@:db))} $(ZIP9DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP9FLAGS) $(ZIP9TMP).$(ZIP9TARGET){$(subst,$(ZIP9HELPVAR),_ $(@:db))}$(ZIP9EXT) $(subst,LANGDIR_away/, $(ZIP9LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP9TMP).$(ZIP9TARGET){$(subst,$(ZIP9HELPVAR),_ $(@:db))}$(ZIP9EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP9TMP).$(ZIP9TARGET){$(subst,$(ZIP9HELPVAR),_ $(@:db))}$(ZIP9EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP9TMP).$(ZIP9TARGET){$(subst,$(ZIP9HELPVAR),_ $(@:db))}$(ZIP9EXT) $@
+ $(COMMAND_ECHO)$(RM) $(ZIP9TMP).$(ZIP9TARGET){$(subst,$(ZIP9HELPVAR),_ $(@:db))}$(ZIP9EXT)
+.ELSE # "$(ZIP9DIR)" != ""
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP9FLAGS) $@ $(foreach,j,$(ZIP9LIST) $(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP9TARGET)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $@ $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $@ \
+ $(FI)
+.ENDIF # "$(ZIP9DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+.ENDIF
+
+# unroll begin
+
+.IF "$(GUI)"=="WNT"
+command_seperator=&&
+#command_seperator=^
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+.ELIF "$(GUI)"=="OS2"
+command_seperator=&&
+.ELSE
+command_seperator=;
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+
+.ENDIF
+
+.IF "$(ZIP10TARGET)"!=""
+
+ZIP10EXT*=.zip
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP10LIST:s/LANGDIR//)" == "$(ZIP10LIST)"
+ZIP10TARGETN=$(COMMONBIN)/$(ZIP10TARGET)$(ZIP10EXT)
+.ELSE
+ZIP10TARGETN=$(foreach,i,$(zip10alllangiso) $(COMMONBIN)/$(ZIP10TARGET)_$i$(ZIP10EXT) )
+.ENDIF
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP10LIST:s/LANGDIR//)" == "$(ZIP10LIST)"
+ZIP10TARGETN=$(BIN)/$(ZIP10TARGET)$(ZIP10EXT)
+.ELSE
+ZIP10TARGETN=$(foreach,i,$(zip10alllangiso) $(BIN)/$(ZIP10TARGET)_$i$(ZIP10EXT) )
+.ENDIF
+.ENDIF # "$(common_build_zip)"!=""
+ZIP10DEPFILE=$(subst,$(COMMON_OUTDIR),$(OUTPATH) $(subst,/bin/,/misc/ $(ZIP10TARGETN:s/$(ZIP10EXT)/.dpzz/)))
+ZIPDEPFILES+=$(ZIP10DEPFILE)
+
+ZIP10DIR*=$(ZIPDIR)
+ZIP10FLAGS*=$(ZIPFLAGS)
+.IF "$(zip10generatedlangs)"!=""
+zip10langdirs*=$(alllangiso)
+.ELSE # "$(zip10generatedlangs)"!=""
+zip10langdirs:=$(shell @-test -d {$(subst,/$(LANGDIR), $(null,$(ZIP10DIR) . $(ZIP10DIR)))}/ && find {$(subst,/$(LANGDIR), $(null,$(ZIP10DIR) . $(ZIP10DIR)))}/ -type d ! -name CVS ! -name ".svn" ! -name "." | sed "s/\.\/\///" | sed "s/\.\///" )
+.ENDIF # "$(zip10generatedlangs)"!=""
+.IF "$(ZIP10FORCEALLLANG)"!=""
+zip10alllangiso:=$(foreach,i,$(completelangiso) $(foreach,j,$(zip10langdirs) $(eq,$i,$j $i $(NULL))))
+.ELSE # "$(ZIP10ALLLANG)" != ""
+zip10alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(zip10langdirs) $(eq,$i,$j $i $(NULL))))
+.ENDIF # "$(ZIP10ALLLANG)" != ""
+.ENDIF # "$(ZIP10TARGET)"!=""
+
+.IF "$(ZIP10TARGETN)"!=""
+
+ZIP10TMP:=$(mktmp iii)
+
+$(MISC)/$(TARGET).$(PWD:f).$(ZIP10TARGET).dpzz : $(ZIP10TARGETN)
+
+.IF "$(common_build_zip)"!=""
+ZIP10HELPVAR=$(COMMONBIN)/$(ZIP10TARGET)
+.ELSE # "$(common_build_zip)"!=""
+ZIP10HELPVAR=$(BIN)/$(ZIP10TARGET)
+.ENDIF # "$(common_build_zip)"!=""
+
+$(ZIP10DEPFILE) :
+ @echo # > $(MISC)/$(@:f)
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP10DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP10DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP10DIR))) $(command_seperator) $(ZIPDEP) $(ZIP10FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP10DIR)))/ $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP10EXT)/))) $(foreach,j,$(ZIP10LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP10TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP10DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP10FLAGS) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP10EXT)/))) $(foreach,j,$(ZIP10LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP10TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP10DIR)" != ""
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP10DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP10DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP10DIR))) $(command_seperator) $(ZIPDEP) $(ZIP10FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP10DIR)))/ $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP10EXT)/)) $(foreach,j,$(ZIP10LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP10TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP10DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP10FLAGS) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP10EXT)/)) $(foreach,j,$(ZIP10LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP10TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP10DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+ @echo $(@:n:s#\#/#) : makefile.mk >> $(MISC)/$(@:f)
+
+
+$(ZIP10TARGETN) : delzip $(ZIP10DEPS)
+ @echo "Making: " $(@:f)
+ @@$(!eq,$?,$(?:s/delzip/zzz/) -$(RM) echo) $(uniq $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@))
+ @$(eq,$?,$(?:s/delzip/zzz/) noop echo ) rebuilding zipfiles
+ @echo ------------------------------ $(eq,$?,$(?:s/delzip/zzz/) >&$(NULLDEV) )
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP10DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP10TMP).$(ZIP10TARGET){$(subst,$(ZIP10HELPVAR),_ $(@:db))}$(ZIP10EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP10HELPVAR)_, $(@:db))} $(ZIP10DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP10FLAGS) $(ZIP10TMP).$(ZIP10TARGET){$(subst,$(ZIP10HELPVAR),_ $(@:db))}$(ZIP10EXT) $(subst,LANGDIR_away/, $(ZIP10LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP10TMP).$(ZIP10TARGET){$(subst,$(ZIP10HELPVAR),_ $(@:db))}$(ZIP10EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP10TMP).$(ZIP10TARGET){$(subst,$(ZIP10HELPVAR),_ $(@:db))}$(ZIP10EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP10TMP).$(ZIP10TARGET){$(subst,$(ZIP10HELPVAR),_ $(@:db))}$(ZIP10EXT) $@.$(INPATH)
+ $(COMMAND_ECHO)$(RM) $(ZIP10TMP).$(ZIP10TARGET){$(subst,$(ZIP10HELPVAR),_ $(@:db))}$(ZIP10EXT)
+.ELSE # "$(ZIP10DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP10FLAGS) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(foreach,j,$(ZIP10LIST) $(subst,LANGDIR,{$(subst,$(ZIP10HELPVAR)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) \
+ $(FI)
+ @@-$(GNUCOPY) -p $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $@.$(INPATH)
+ @-$(RM) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+.ENDIF # "$(ZIP10DIR)" != ""
+ @@-$(RM) $@
+ @$(IFEXIST) $@.$(INPATH) $(THEN) $(RENAME:s/+//) $@.$(INPATH) $@ $(FI)
+# @$(IFEXIST) $@ $(THEN) $(TOUCH) $@ $(FI) # even if it's not used...
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP10DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP10TMP).$(ZIP10TARGET){$(subst,$(ZIP10HELPVAR),_ $(@:db))}$(ZIP10EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP10HELPVAR)_, $(@:db))} $(ZIP10DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP10FLAGS) $(ZIP10TMP).$(ZIP10TARGET){$(subst,$(ZIP10HELPVAR),_ $(@:db))}$(ZIP10EXT) $(subst,LANGDIR_away/, $(ZIP10LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP10TMP).$(ZIP10TARGET){$(subst,$(ZIP10HELPVAR),_ $(@:db))}$(ZIP10EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP10TMP).$(ZIP10TARGET){$(subst,$(ZIP10HELPVAR),_ $(@:db))}$(ZIP10EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP10TMP).$(ZIP10TARGET){$(subst,$(ZIP10HELPVAR),_ $(@:db))}$(ZIP10EXT) $@
+ $(COMMAND_ECHO)$(RM) $(ZIP10TMP).$(ZIP10TARGET){$(subst,$(ZIP10HELPVAR),_ $(@:db))}$(ZIP10EXT)
+.ELSE # "$(ZIP10DIR)" != ""
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP10FLAGS) $@ $(foreach,j,$(ZIP10LIST) $(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP10TARGET)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $@ $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $@ \
+ $(FI)
+.ENDIF # "$(ZIP10DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+.ENDIF
+
diff --git a/solenv/inc/ant.mk b/solenv/inc/ant.mk
new file mode 100644
index 000000000000..2d182a66a437
--- /dev/null
+++ b/solenv/inc/ant.mk
@@ -0,0 +1,100 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# --- Force JDK14 switch ------------------------------------------
+
+.IF "$(USE_JDK_VERSION)" == "140"
+JDK_VERSION=140
+JAVA_HOME=$(JDK14PATH)
+
+PATH!:=$(JDK14PATH)/bin$(PATH_SEPERATOR)$(PATH)
+XCLASSPATH:=$(JDK14PATH)/jre/lib/rt.jar
+CLASSPATH:=$(XCLASSPATH)
+.ENDIF
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+
+# --- ANT build environment ---------------------------------------
+
+.INCLUDE : antsettings.mk
+
+.INCLUDE : target.mk
+
+CLASSPATH!:=$(CLASSPATH)$(PATH_SEPERATOR)$(ANT_CLASSPATH)$(PATH_SEPERATOR)$(JAVA_HOME)/lib/tools.jar
+.EXPORT : CLASSPATH
+.EXPORT : PATH
+
+# --- TARGETS -----------------------------------------------------
+
+$(CLASSDIR)/solar.properties : $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/minormkchanged.flg $(SOLARENV)/inc/ant.properties
+ @echo "Making: " $@
+ @echo solar.build=$(BUILD) > $@
+ @echo solar.rscversion=$(USQ)$(RSCVERSION)$(USQ) >> $@
+ @echo solar.rscrevision=$(USQ)$(RSCREVISION)$(USQ) >> $@
+ @echo solar.minor=$(LAST_MINOR) >> $@
+ @echo solar.sourceversion=$(SOURCEVERSION) >> $@
+ @echo solar.udkstamp=$(UDKSTAMP) >> $@
+ @echo solar.extstamp=$(EXTSTAMP) >> $@
+ @cat $(DMAKEROOT)/../ant.properties >> $@
+
+ANTBUILD .PHONY:
+ $(ANT) $(ANT_FLAGS)
+
+clean .PHONY:
+ $(ANT) $(ANT_FLAGS) $@
+
+prepare .PHONY:
+ $(ANT) $(ANT_FLAGS) $@
+
+main: .PHONY:
+ $(ANT) $(ANT_FLAGS) $@
+
+info: .PHONY
+ $(ANT) $(ANT_FLAGS) $@
+
+jar .PHONY:
+ $(ANT) $(ANT_FLAGS) $@
+
+compile .PHONY:
+ $(ANT) $(ANT_FLAGS) $@
+
+depend .PHONY:
+ $(ANT) $(ANT_FLAGS) $@
+
+javadoc .PHONY:
+ $(ANT) $(ANT_FLAGS) $@
+
+config .PHONY:
+ $(ANT) $(ANT_FLAGS) $@
+
+test .PHONY:
+ $(ANT) $(ANT_FLAGS) $@
+
+
diff --git a/solenv/inc/ant.properties b/solenv/inc/ant.properties
new file mode 100644
index 000000000000..b2c0f748ef7a
--- /dev/null
+++ b/solenv/inc/ant.properties
@@ -0,0 +1,12 @@
+# x-no-translate
+build.bin=${build.dir}/bin
+build.class=${build.dir}/class
+build.inc=${build.dir}/inc
+build.lib=${build.dir}/lib
+build.misc=${build.dir}/misc
+build.obj=${build.dir}/obj
+build.res=${build.dir}/res
+build.slb=${build.dir}/slb
+build.slo=${build.dir}/slo
+build.srs=${build.dir}/srs
+
diff --git a/solenv/inc/antsettings.mk b/solenv/inc/antsettings.mk
new file mode 100644
index 000000000000..5a28b242967d
--- /dev/null
+++ b/solenv/inc/antsettings.mk
@@ -0,0 +1,87 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+.IF "$(SOLAR_JAVA)"!=""
+
+ANT_LIB*:=$(ANT_HOME)/lib
+
+ANT_CLASSPATH:=$(ANT_LIB)/xercesImpl.jar$(PATH_SEPERATOR)$(ANT_LIB)/xml-apis.jar$(PATH_SEPERATOR)$(ANT_LIB)/ant.jar
+
+# PATH_SEPERATOR won't work here as it is defined
+# as ; for wondows (all shells)
+#PATH!:=$(ANT_HOME)/bin$(PATH_SEPERATOR)$(PATH)
+PATH!:=$(ANT_HOME)/bin:$(PATH)
+
+ANT*:=$(ANT_HOME)/bin/ant
+ANT_BUILDFILE*=build.xml
+
+.IF "$(ANT_DEBUG)"==""
+.IF "$(debug)"==""
+ANT_DEBUG=off
+.ELSE
+ANT_DEBUG=on
+.ENDIF
+.ENDIF
+
+.IF "$(ANT_OPT)"==""
+.IF "$(optimize)"==""
+ANT_OPT=off
+.ELSE
+ANT_OPT=on
+.ENDIF
+.ENDIF
+
+.IF "$(JDK)"=="gcj"
+JAVA_HOME=
+.EXPORT : JAVA_HOME
+.ENDIF
+
+.IF "$(JAVACISGCJ)" == "yes"
+ANT_FLAGS!:=-Dbuild.compiler=gcj -Dprj=$(PRJ) -Dprjname=$(PRJNAME) -Ddebug=$(ANT_DEBUG) \
+ -Doptimize=$(ANT_OPT) -Dtarget=$(TARGET) -Dsolar.update=on -Dout=$(OUT) -Dinpath=$(INPATH) \
+ -Dproext="$(PROEXT)" -Dsolar.bin=$(SOLARBINDIR) -Dsolar.jar=$(SOLARBINDIR) \
+ -Dsolar.doc=$(SOLARDOCDIR) -Dcommon.jar=$(SOLARCOMMONBINDIR) \
+ -Dcommon.doc=$(SOLARCOMMONDOCDIR) -Dsolar.sourceversion=$(SOURCEVERSION) \
+ -Dsolar.lastminor=$(LAST_MINOR) -Dsolar.build=$(BUILD) -f $(ANT_BUILDFILE) $(ANT_FLAGS) -emacs
+.ELSE
+ANT_FLAGS!:=-Dprj=$(PRJ) -Dprjname=$(PRJNAME) -Ddebug=$(ANT_DEBUG) -Doptimize=$(ANT_OPT) \
+ -Dtarget=$(TARGET) -Dsolar.update=on -Dout=$(OUT) -Dinpath=$(INPATH) -Dproext="$(PROEXT)" \
+ -Dsolar.bin=$(SOLARBINDIR) -Dsolar.jar=$(SOLARBINDIR) -Dsolar.doc=$(SOLARDOCDIR) \
+ -Dcommon.jar=$(SOLARCOMMONBINDIR) -Dcommon.doc=$(SOLARCOMMONDOCDIR) \
+ -Dsolar.sourceversion=$(SOURCEVERSION) -Dsolar.lastminor=$(LAST_MINOR) \
+ -Dsolar.build=$(BUILD) -f $(ANT_BUILDFILE) $(ANT_FLAGS) -emacs
+.ENDIF
+.ELSE # No java
+ANT=
+ANT_FLAGS=
+.ENDIF
+
+.IF "$(WITH_LANG)"!=""
+ANT_FLAGS+=-Dsolar.langs="$(WITH_LANG)" -Dsolar.localized="true"
+.ENDIF # "$(WITH_LANG)"!=""
+
diff --git a/solenv/inc/cppunit.mk b/solenv/inc/cppunit.mk
new file mode 100644
index 000000000000..2173f1a9ff9a
--- /dev/null
+++ b/solenv/inc/cppunit.mk
@@ -0,0 +1,56 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# Helper makefile additional, to support
+# dmake test
+# for cppunittester (cppunit testing)
+# for simple start all generated libraries:
+# dmake test
+#
+# for library 1 & 2:
+# or dmake test1 test2
+
+# This file have to be unroll by
+# cat cppunit.mk | mkunroll >_cppunit.mk
+# all between begin and end will repeat n times (at the moment n=10) to create such iterations
+# $(TNR) is the number
+# $(SHL$(TNR)TARGETN) is the same like $(OUT)/bin/$(SHL1TARGET) for every number, within unix, "bin" is replaced by "lib"
+
+################################################################################
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+.IF "$(SHL$(TNR)TARGET)"!=""
+ALLTAR : test$(TNR)
+test$(TNR) .PHONY : $(SHL$(TNR)TARGETN)
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#$(TNR) on library $(SHL$(TNR)TARGETN)
+ @echo ----------------------------------------------------------
+ $(CPPUNITTESTER) $(SHL$(TNR)TARGETN)
+.ENDIF
+
+# unroll end
diff --git a/solenv/inc/dummy.flt b/solenv/inc/dummy.flt
new file mode 100644
index 000000000000..e69de29bb2d1
--- /dev/null
+++ b/solenv/inc/dummy.flt
diff --git a/solenv/inc/extension_helplink.mk b/solenv/inc/extension_helplink.mk
new file mode 100644
index 000000000000..e375696bda18
--- /dev/null
+++ b/solenv/inc/extension_helplink.mk
@@ -0,0 +1,80 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+my_cp:=$(CLASSPATH)$(PATH_SEPERATOR)$(SOLARBINDIR)/jaxp.jar$(PATH_SEPERATOR)$(SOLARBINDIR)/juh.jar$(PATH_SEPERATOR)$(SOLARBINDIR)/parser.jar$(PATH_SEPERATOR)$(SOLARBINDIR)/xt.jar$(PATH_SEPERATOR)$(SOLARBINDIR)/unoil.jar$(PATH_SEPERATOR)$(SOLARBINDIR)/ridl.jar$(PATH_SEPERATOR)$(SOLARBINDIR)/jurt.jar$(PATH_SEPERATOR)$(SOLARBINDIR)/xmlsearch.jar$(PATH_SEPERATOR)$(SOLARBINDIR)/LuceneHelpWrapper.jar$(PATH_SEPERATOR)$(SOLARBINDIR)/HelpIndexerTool.jar$
+
+.IF "$(SYSTEM_LUCENE)" == "YES"
+my_cp!:=$(my_cp)$(PATH_SEPERATOR)$(LUCENE_CORE_JAR)$(PATH_SEPERATOR)$(LUCENE_ANALYZERS_JAR)
+.ELSE
+my_cp!:=$(my_cp)$(PATH_SEPERATOR)$(SOLARBINDIR)/lucene-core-2.3.jar$(PATH_SEPERATOR)$(SOLARBINDIR)/lucene-analyzers-2.3.jar
+.ENDIF
+
+.IF "$(SYSTEM_DB)" != "YES"
+JAVA_LIBRARY_PATH= -Djava.library.path=$(SOLARSHAREDBIN)
+.ENDIF
+
+#aux_alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(aux_langdirs) $(eq,$i,$j $i $(NULL))))
+aux_alllangiso*:=$(alllangiso)
+
+#########################################################
+
+
+HELPLINKALLTARGETS=$(foreach,i,$(aux_alllangiso) $(MISC)/$(TARGET)_$(LINKNAME)_$i.done)
+HELPLINKALLADDEDDEPS=$(foreach,i,$(aux_alllangiso) $(subst,LANGUAGE,$i $(LINKADDEDDPES)))
+
+ALLTAR : $(HELPLINKALLTARGETS)
+
+.IF "$(SYSTEM_DB)" != "YES"
+JAVA_LIBRARY_PATH= -Djava.library.path=$(SOLARSHAREDBIN)
+.ENDIF
+
+XSL_DIR*:=$(SOLARBINDIR)
+XHPLINKSRC*:=$(XHPDEST)
+STY_SWITCH:= -sty $(XSL_DIR)/embed.xsl
+
+.IF "$(XHPFILES)"!="" && "$(HELP_OUT)"!=""
+$(foreach,i,$(LINKLINKFILES) $(XHPLINKSRC)/{$(aux_alllangiso)}/$i) : $(HELP_OUT)/$(TARGET).done
+LINKDEPS+=$(HELP_OUT)/xhp_changed.flag
+.ENDIF # "$(XHPFILES)"!="" && "$(HELP_OUT)"!=""
+
+$(HELPLINKALLTARGETS) : $(foreach,i,$(LINKLINKFILES) $(XHPLINKSRC)/$$(@:b:s/_/./:e:s/.//)/$i) $(subst,LANGUAGE,$$(@:b:s/_/./:e:s/.//) $(LINKDEPS))
+ @echo Building help index for $(@:b:s/_/./:e:s/.//)
+ $(COMMAND_ECHO)$(HELPLINKER) -mod $(LINKNAME) -extlangsrc $(XHPLINKSRC)/{$(subst,$(TARGET)_$(LINKNAME)_, $(@:b))} $(STY_SWITCH) -extlangdest $(XHPLINKSRC)/{$(subst,$(TARGET)_$(LINKNAME)_, $(@:b))} -idxcaption $(XSL_DIR)/idxcaption.xsl -idxcontent $(XSL_DIR)/idxcontent.xsl $(LINKLINKFILES)
+ $(COMMAND_ECHO)cd $(XHPLINKSRC)/{$(subst,$(TARGET)_$(LINKNAME)_, $(@:b))} && zip -u -r $(LINKNAME).jar $(PACKAGE)/* $(CHECKZIPRESULT)
+.IF "$(SOLAR_JAVA)" == "TRUE"
+# cleanup index dir
+ -$(RM) $(XHPLINKSRC)/{$(subst,$(TARGET)_$(LINKNAME)_, $(@:b))}/$(LINKNAME).idxl/*
+.IF "$(CHECK_LUCENCE_INDEXER_OUTPUT)" == ""
+ $(COMMAND_ECHO)$(JAVAI) $(JAVAIFLAGS) $(JAVA_LIBRARY_PATH) -cp "$(my_cp)" com.sun.star.help.HelpIndexerTool -extension -lang $(@:b:s/_/./:e:s/.//) -mod $(LINKNAME) -zipdir $(XHPLINKSRC)/{$(subst,$(TARGET)_$(LINKNAME)_, $(@:b))} && $(TOUCH) $@
+.ELSE
+ $(COMMAND_ECHO)$(JAVAI) $(JAVAIFLAGS) $(JAVA_LIBRARY_PATH) -cp "$(my_cp)" com.sun.star.help.HelpIndexerTool -extension -lang $(@:b:s/_/./:e:s/.//) -mod $(LINKNAME) -zipdir $(XHPLINKSRC)/{$(subst,$(TARGET)_$(LINKNAME)_, $(@:b))} -checkcfsandsegname _0 _3 && $(TOUCH) $@
+.ENDIF
+.ELSE
+ -$(RM) $(XHPLINKSRC)/$(@:b)/content/*.*
+ -$(RM) $(XHPLINKSRC)/$(@:b)/caption/*.*
+.ENDIF
+
diff --git a/solenv/inc/extension_post.mk b/solenv/inc/extension_post.mk
new file mode 100644
index 000000000000..f221ff7ebe4a
--- /dev/null
+++ b/solenv/inc/extension_post.mk
@@ -0,0 +1,176 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+EXTENSION_TARGET:=$(ZIP9TARGETN)
+
+.SOURCE.xcu : $(MISC)/$(EXTNAME)/merge $(MISC)/$(EXTNAME)/registry/data $(MISC)/$(COMPONENT_SHARED_CONFIG)_in/merge $(MISC)/$(COMPONENT_SHARED_CONFIG)_in/registry/data $(COMPONENT_CONFIGDIR) .
+.SOURCE.xcs : $(MISC)/$(EXTNAME)/registry $(MISC)/$(EXTNAME)/registry/schema .
+
+fixme=$(MISC)/$(EXTNAME)/merge/$(MISC)
+fixme2=$(fixme:n)
+
+fixme3=$(MISC)/$(EXTNAME)/$(MISC)
+fixme4=$(fixme:n)
+
+$(EXTENSIONDIR)/$(COMPONENT_CONFIGDEST)/%.xcu : %.xcu
+# ugly hacking to workaround prepended first source path
+ @@-$(MKDIRHIER) $(subst,$(fixme2),$(MISC) $(@:d))
+.IF "$(COMPONENT_XCU_REPLACEMENT)"!=""
+ $(TYPE) $< | sed '$(COMPONENT_XCU_REPLACEMENT)' > $(subst,$(fixme2),$(MISC) $@)
+.ELSE # "$(COMPONENT_REPLACEMENT)"!=""
+ $(GNUCOPY) $< $(subst,$(fixme2),$(MISC) $@)
+.ENDIF # "$(COMPONENT_REPLACEMENT)"!=""
+
+$(EXTENSIONDIR)/$(COMPONENT_CONFIGDESTSCHEMA)/%.xcs : %.xcs
+ @@-$(MKDIRHIER) $(subst,$(fixme4),$(MISC) $(@:d))
+ $(GNUCOPY) $< $(subst,$(fixme4),$(MISC) $@)
+
+$(EXTENSIONDIR)/%.jar : $(SOLARBINDIR)/%.jar
+ @@-$(MKDIRHIER) $(@:d)
+ $(GNUCOPY) $< $@
+
+.IF "$(COMPONENT_FILES)"!=""
+COMPONENT_FILES_SRC*=./
+# ugly hacking to workaround prepended first source path - also hits
+# here in case of "just copied" .xcu files
+$(COMPONENT_FILES) : $$(@:s|$(fixme2)|$(MISC)|:s|$(EXTENSIONDIR)/|$(COMPONENT_FILES_SRC)|)
+ @@-$(MKDIRHIER) $(@:s|$(fixme2)|$(MISC)|:d)
+ $(COMMAND_ECHO)$(COPY) $< $(@:s|$(fixme2)|$(MISC)|)
+.ENDIF # "$(COMPONENT_FILES)"!=""
+
+.IF "$(COMPONENT_JARFILES)"!=""
+$(COMPONENT_JARFILES) : $(CLASSDIR)/$$(@:f)
+ @@-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+.ENDIF # "$(COMPONENT_JARFILES)"!=""
+
+.IF "$(COMPONENT_LIBRARIES)"!=""
+# TODO(Q3): strip the binary?
+$(COMPONENT_LIBRARIES) : $(DLLDEST)/$$(@:f)
+ @@-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+.IF "$(OS)$(CPU)"=="WNTI"
+.IF "$(COM)"=="GCC"
+ $(GNUCOPY) $(SOLARBINDIR)/mingwm10.dll $(EXTENSIONDIR)
+ .IF "$(MINGW_GCCDLL)"!=""
+ $(GNUCOPY) $(SOLARBINDIR)/$(MINGW_GCCDLL) $(EXTENSIONDIR)
+ .ENDIF
+ .IF "$(MINGW_GXXDLL)"!=""
+ $(GNUCOPY) $(SOLARBINDIR)/$(MINGW_GXXDLL) $(EXTENSIONDIR)
+ .ENDIF
+.ELSE
+.IF "$(PACKMS)"!=""
+.IF "$(CCNUMVER)" <= "001399999999"
+ $(GNUCOPY) $(PACKMS)/msvcr71.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(PACKMS)/msvcp71.dll $(EXTENSIONDIR)
+.ELSE # "$(CCNUMVER)" <= "001399999999"
+.IF "$(CCNUMVER)" <= "001499999999"
+ $(GNUCOPY) $(PACKMS)/msvcr80.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(PACKMS)/msvcp80.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(PACKMS)/msvcm80.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(PACKMS)/Microsoft.VC80.CRT.manifest $(EXTENSIONDIR)
+.ELSE # "$(CCNUMVER)" <= "001499999999"
+ $(GNUCOPY) $(PACKMS)/msvcr90.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(PACKMS)/msvcp90.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(PACKMS)/msvcm90.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(PACKMS)/Microsoft.VC90.CRT.manifest $(EXTENSIONDIR)
+.ENDIF # "$(CCNUMVER)" <= "001499999999"
+.ENDIF # "$(CCNUMVER)" <= "001399999999"
+.ELSE # "$(PACKMS)"!=""
+.IF "$(CCNUMVER)" <= "001399999999"
+ $(GNUCOPY) $(SOLARBINDIR)/msvcr71.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(SOLARBINDIR)/msvcp71.dll $(EXTENSIONDIR)
+.ELSE # "$(CCNUMVER)" <= "001399999999"
+.IF "$(CCNUMVER)" <= "001499999999"
+ $(GNUCOPY) $(SOLARBINDIR)/msvcr80.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(SOLARBINDIR)/msvcp80.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(SOLARBINDIR)/msvcm80.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(SOLARBINDIR)/Microsoft.VC80.CRT.manifest $(EXTENSIONDIR)
+.ELSE # "$(CCNUMVER)" <= "001499999999"
+ $(GNUCOPY) $(SOLARBINDIR)/msvcr90.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(SOLARBINDIR)/msvcp90.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(SOLARBINDIR)/msvcm90.dll $(EXTENSIONDIR)
+ $(GNUCOPY) $(SOLARBINDIR)/Microsoft.VC90.CRT.manifest $(EXTENSIONDIR)
+.ENDIF # "$(CCNUMVER)" <= "001499999999"
+.ENDIF # "$(CCNUMVER)" <= "001399999999"
+.ENDIF # "$(PACKMS)"!=""
+.ENDIF #"$(COM)"=="GCC"
+.ENDIF # "$(OS)$(CPU)"=="WNTI"
+.ENDIF # "$(COMPONENT_LIBRARIES)"!=""
+
+IMPLEMENTATION_IDENTIFIER*="com.sun.star.$(EXTENSIONNAME)-$(PLATFORMID)"
+
+.INCLUDE .IGNORE : $(MISC)/$(TARGET)_lang_track.mk
+.IF "$(LAST_WITH_LANG)"!="$(WITH_LANG)"
+PHONYDESC=.PHONY
+.ENDIF # "$(LAST_WITH_LANG)"!="$(WITH_LANG)"
+.IF "$(DESCRIPTION)"!=""
+$(DESCRIPTION) $(PHONYDESC) : $(DESCRIPTION_SRC)
+ @@-$(MKDIRHIER) $(@:d)
+ @echo LAST_WITH_LANG=$(WITH_LANG) > $(MISC)/$(TARGET)_lang_track.mk
+
+ $(COMMAND_ECHO)$(PERL) $(SOLARENV)/bin/licinserter.pl $(DESCRIPTION_SRC) $(COMPONENT_LIC_TEMPL) $@.1.$(EXTNAME)
+
+ $(COMMAND_ECHO)$(PERL) $(SOLARENV)/bin/transform_description.pl $@.1.$(EXTNAME) $@.2.$(EXTNAME)
+ @@-$(RM) $@.1.$(EXTNAME)
+
+ $(COMMAND_ECHO)$(TYPE) $@.2.$(EXTNAME) | sed s/UPDATED_IDENTIFIER/$(IMPLEMENTATION_IDENTIFIER)/ > $@.3.$(EXTNAME)
+ @@-$(RM) $@.2.$(EXTNAME)
+
+ $(COMMAND_ECHO)$(TYPE) $@.3.$(EXTNAME) | sed s/UPDATED_SUPPORTED_PLATFORM/$(PLATFORMID)/ > $@
+ @@-$(RM) $@.3.$(EXTNAME)
+
+.ENDIF # "$(DESCRIPTION)"!=""
+# default OOo license text!!!
+# may not fit...
+.IF "$(CUSTOM_LICENSE)"==""
+.IF "$(GUI)" == "WNT"
+PACKLICDEPS=$(SOLARBINDIR)/osl/license$$(@:b:s/_/./:e:s/./_/)$$(@:e)
+.ELSE # "$(GUI)" == "WNT"
+PACKLICDEPS=$(SOLARBINDIR)/osl/LICENSE$$(@:b:s/_/./:e:s/./_/)$$(@:e)
+.ENDIF # "$(GUI)" == "WNT"
+.ELSE # "$(CUSTOM_LICENSE)" == ""
+PACKLICDEPS=$(CUSTOM_LICENSE)
+.ENDIF # "$(CUSTOM_LICENSE)" == ""
+.IF "$(PACKLICS)"!=""
+$(PACKLICS) : $(PACKLICDEPS)
+ @@-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)$(GNUCOPY) $< $@
+.ENDIF # "$(PACKLICS)"!=""
+
+.IF "$(COMPONENT_MANIFEST)"!=""
+#$(COMPONENT_MANIFEST) : $$(@:f)
+$(COMPONENT_MANIFEST) : $(MANIFEST_SRC) $(MANIFEST_DEPS)
+ @@-$(MKDIRHIER) $(@:d)
+.IF "$(COMPONENT_MANIFEST_GENERIC)" == ""
+ $(COMMAND_ECHO)$(TYPE) $(MANIFEST_SRC) | $(SED) "s/SHARED_EXTENSION/$(DLLPOST)/" | $(SED) "s/EXEC_EXTENSION/$(EXECPOST)/" > $@
+.ELSE # "$(COMPONENT_MANIFEST_GENERIC)" != ""
+ $(COMMAND_ECHO)$(PERL) $(SOLARENV)/bin/makemani.pl $(PRJ)/util/manifest.xml $(EXTENSIONDIR) $(COMPONENT_MANIFEST_SEARCHDIR) $(@:d:d)
+.ENDIF # "$(COMPONENT_MANIFEST_GENERIC)" != ""
+.ENDIF # "$(COMPONENT_MANIFEST)"!=""
+
+ALLTAR : $(EXTENSION_PACKDEPS)
diff --git a/solenv/inc/extension_pre.mk b/solenv/inc/extension_pre.mk
new file mode 100644
index 000000000000..abef2e7f8b73
--- /dev/null
+++ b/solenv/inc/extension_pre.mk
@@ -0,0 +1,59 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+EXTENSIONDIR*:=$(MISC)/$(EXTENSIONNAME)
+
+COMPONENT_CONFIGDIR*:=.
+COMPONENT_CONFIGDEST*:=registry/data
+COMPONENT_CONFIGDESTSCHEMA*:=registry/schema
+
+.IF "$(COMPONENT_COPYONLY)"==""
+DESCRIPTION:=$(EXTENSIONDIR)/description.xml
+DESCRIPTION_SRC*:=description.xml
+
+COMPONENT_MANIFEST*:=$(EXTENSIONDIR)/META-INF/manifest.xml
+MANIFEST_SRC*:=manifest.xml
+
+.IF "$(GUI)" == "WIN" || "$(GUI)" == "WNT"
+PACKLICS*:=$(foreach,i,$(alllangiso) $(EXTENSIONDIR)/registration/license_$i.txt)
+COMPONENT_LIC_TEMPL*:=registration/license_xxx.txt
+.ELSE
+PACKLICS*:=$(foreach,i,$(alllangiso) $(EXTENSIONDIR)/registration/LICENSE_$i)
+COMPONENT_LIC_TEMPL*:=registration/LICENSE_xxx
+.ENDIF
+
+#TODO: check ZIP9TARGET for previous use!
+common_build_zip=
+MANIFEST_DEPS= $(PACKLICS) $(DESCRIPTION) $(COMPONENT_FILES) $(COMPONENT_LIBRARIES) $(COMPONENT_JARFILES) $(COMPONENT_MERGED_XCU) $(EXTENSION_PACKDEPS)
+ZIP9DEPS= $(PACKLICS) $(DESCRIPTION) $(COMPONENT_XCU) $(COMPONENT_FILES) $(COMPONENT_LIBRARIES) $(COMPONENT_MANIFEST) $(COMPONENT_JARFILES) $(COMPONENT_MERGED_XCU) $(EXTENSION_PACKDEPS)
+ZIP9TARGET= $(EXTENSION_ZIPNAME)
+ZIP9DIR= $(EXTENSIONDIR)
+ZIP9EXT= .oxt
+ZIP9FLAGS=-r
+ZIP9LIST= *
+.ENDIF # "$(COMPONNENT_COPYONLY)"==""
+
diff --git a/solenv/inc/found_no.mk b/solenv/inc/found_no.mk
new file mode 100644
index 000000000000..43c888f8d90d
--- /dev/null
+++ b/solenv/inc/found_no.mk
@@ -0,0 +1,5 @@
+no_traget:
+ @echo -----------------------------------------------
+ @echo Error: No makefile.mk found!
+ @echo -----------------------------------------------
+ force_dmake_to_error
diff --git a/solenv/inc/installationtest.mk b/solenv/inc/installationtest.mk
new file mode 100644
index 000000000000..6806e15c69e7
--- /dev/null
+++ b/solenv/inc/installationtest.mk
@@ -0,0 +1,130 @@
+#*************************************************************************
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#***********************************************************************/
+
+.IF "$(OS)" == "WNT"
+my_file = file:///
+.ELSE
+my_file = file://
+.END
+
+# The following conditional is an approximation of: UPDATER set to YES and
+# SHIPDRIVE set and CWS_WORK_STAMP not set and either SOL_TMP not set or
+# SOLARENV set to a pathname of which SOL_TMP is not a prefix:
+.IF "$(UPDATER)" == "YES" && "$(SHIPDRIVE)" != "" && \
+ "$(CWS_WORK_STAMP)" == "" && "$(SOLARENV:s/$(SOL_TMP)//" == "$(SOLARENV)"
+my_instsets = $(shell ls -dt \
+ $(SHIPDRIVE)/$(INPATH)/OpenOffice/archive/$(WORK_STAMP)_$(LAST_MINOR)_native_packed-*_$(defaultlangiso).$(BUILD))
+installationtest_instset = $(my_instsets:1)
+.ELSE
+installationtest_instset = \
+ $(SOLARSRC)/instsetoo_native/$(INPATH)/OpenOffice/archive/install/$(defaultlangiso)
+.END
+
+.IF "$(OS)" == "WNT"
+installationtest_instpath = `cat $(MISC)/$(TARGET)/installation.flag`
+.ELSE
+installationtest_instpath = $(SOLARVERSION)/$(INPATH)/installation$(UPDMINOREXT)
+.END
+
+.IF "$(OS)" == "MACOSX"
+my_sofficepath = \
+ $(installationtest_instpath)/opt/OpenOffice.org.app/Contents/MacOS/soffice
+.ELIF "$(OS)" == "WNT"
+my_sofficepath = \
+ $(installationtest_instpath)'/opt/OpenOffice.org 3/program/soffice.exe'
+.ELSE
+my_sofficepath = \
+ $(installationtest_instpath)/opt/openoffice.org3/program/soffice
+.END
+
+.IF "$(OOO_TEST_SOFFICE)" == ""
+my_soffice = path:$(my_sofficepath)
+.ELSE
+my_soffice = '$(OOO_TEST_SOFFICE:s/'/'\''/)'
+.END
+
+.IF "$(OOO_LIBRARY_PATH_VAR)" != ""
+my_cppenv = \
+ -env:arg-env=$(OOO_LIBRARY_PATH_VAR)"$${{$(OOO_LIBRARY_PATH_VAR)+=$$$(OOO_LIBRARY_PATH_VAR)}}"
+my_javaenv = \
+ -Dorg.openoffice.test.arg.env=$(OOO_LIBRARY_PATH_VAR)"$${{$(OOO_LIBRARY_PATH_VAR)+=$$$(OOO_LIBRARY_PATH_VAR)}}"
+.END
+
+# Work around Windows problems with long pathnames (see issue 50885) by
+# installing into the temp directory instead of the module output tree (in which
+# case $(TARGET).installation.flag contains the path to the temp installation,
+# which is removed after smoketest); can be removed once issue 50885 is fixed;
+# on other platforms, a single installation to solver is created in
+# smoketestoo_native:
+.IF "$(OS)" == "WNT" && "$(OOO_TEST_SOFFICE)" == ""
+$(MISC)/$(TARGET)/installation.flag : $(shell \
+ ls $(installationtest_instset)/OOo_*_install-arc_$(defaultlangiso).zip)
+ $(MKDIRHIER) $(@:d)
+ my_tmp=$$(cygpath -m $$(mktemp -dt ooosmoke.XXXXXX)) && \
+ unzip $(installationtest_instset)/OOo_*_install-arc_$(defaultlangiso).zip \
+ -d "$$my_tmp" && \
+ mv "$$my_tmp"/OOo_*_install-arc_$(defaultlangiso) "$$my_tmp"/opt && \
+ echo "$$my_tmp" > $@
+.END
+
+cpptest .PHONY : $(MISC)/$(TARGET)/services.rdb
+ $(RM) -r $(MISC)/$(TARGET)/user
+ $(MKDIRHIER) $(MISC)/$(TARGET)/user
+ $(CPPUNITTESTER) \
+ -env:UNO_SERVICES=$(my_file)$(PWD)/$(MISC)/$(TARGET)/services.rdb \
+ -env:UNO_TYPES=$(my_file)$(SOLARBINDIR)/types.rdb \
+ -env:arg-soffice=$(my_soffice) -env:arg-user=$(MISC)/$(TARGET)/user \
+ $(my_cppenv) $(OOO_CPPTEST_ARGS)
+ $(RM) -r $(MISC)/$(TARGET)/user
+.IF "$(OS)" == "WNT" && "$(OOO_TEST_SOFFICE)" == ""
+ $(RM) -r $(installationtest_instpath) $(MISC)/$(TARGET)/installation.flag
+cpptest : $(MISC)/$(TARGET)/installation.flag
+.END
+
+$(MISC)/$(TARGET)/services.rdb :
+ $(MKDIRHIER) $(@:d)
+ $(RM) $@
+ $(REGCOMP) -register -r $@ -wop -c bridgefac.uno -c connector.uno \
+ -c remotebridge.uno -c uuresolver.uno
+
+.IF "$(SOLAR_JAVA)" == "TRUE" && "$(OOO_JUNIT_JAR)" != ""
+javatest .PHONY : $(JAVATARGET)
+ $(RM) -r $(MISC)/$(TARGET)/user
+ $(MKDIRHIER) $(MISC)/$(TARGET)/user
+ $(JAVAI) $(JAVAIFLAGS) $(JAVACPS) \
+ '$(OOO_JUNIT_JAR)$(PATH_SEPERATOR)$(CLASSPATH)' \
+ -Dorg.openoffice.test.arg.soffice=$(my_soffice) \
+ -Dorg.openoffice.test.arg.user=$(my_file)$(PWD)/$(MISC)/$(TARGET)/user \
+ $(my_javaenv) org.junit.runner.JUnitCore \
+ $(foreach,i,$(JAVATESTFILES) $(subst,/,. $(PACKAGE)).$(i:s/.java//))
+ $(RM) -r $(MISC)/$(TARGET)/user
+.IF "$(OS)" == "WNT" && "$(OOO_TEST_SOFFICE)" == ""
+ $(RM) -r $(installationtest_instpath) $(MISC)/$(TARGET)/installation.flag
+javatest : $(MISC)/$(TARGET)/installation.flag
+.END
+.ELSE
+javatest .PHONY :
+ echo 'javatest needs SOLAR_JAVA=TRUE and OOO_JUNIT_JAR'
+.END
diff --git a/solenv/inc/javaunittest.mk b/solenv/inc/javaunittest.mk
new file mode 100644
index 000000000000..e129052a445e
--- /dev/null
+++ b/solenv/inc/javaunittest.mk
@@ -0,0 +1,107 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# Makefile template for directories that contain Java unit tests.
+#
+# Before including this makefile, the following variables should be set:
+# - PRJ, PRJNAME, TARGET
+# - PACKAGE
+# - JAVATESTFILES: the unit test classes;
+# each one of the form <basename>.java;
+# these java files must only define classes within the package corresponding
+# to PACKAGE, the name of each defined (outer) class should end with "_Test"
+# - JAVAFILES: optional java files, corresponding class files are generated
+# that can be used when compiling or running the tests;
+# each one of the form <basename>.java;
+# these java files must only define classes within the package corresponding
+# to PACKAGE, the name of each defined (outer) class should start with
+# "Test"
+# - IDLTESTFILES: optional idl files, corresponding class files are generated
+# that can be used when compiling or running the tests;
+# each one of the form <basename>.idl;
+# these idl files must only define entities within the module corresponding
+# to PACKAGE, the name of each defined entity should start with "Test"
+# - JARFILES: optional jar files that can be used when compiling or running the
+# tests;
+# each one of the form <basename>.jar
+# All generated class files are placed into <platform>/class/test/ instead of
+# <platform>/class/, so that they are not accidentally included in jar files
+# packed from <platform>/class/ subdirectories.
+
+TESTS := $(subst,.java,.test $(JAVATESTFILES))
+JAVAFILES +:= $(JAVATESTFILES)
+JARFILES +:= OOoRunner.jar
+
+.INCLUDE: settings.mk
+
+.IF "$(XCLASSPATH)" == ""
+XCLASSPATH := $(CLASSDIR)
+.ELSE
+XCLASSPATH !:= $(XCLASSPATH)$(PATH_SEPERATOR)$(CLASSDIR)
+.ENDIF
+CLASSDIR !:= $(CLASSDIR)/test
+
+.INCLUDE: target.mk
+
+ALLTAR: $(TESTS)
+
+$(JAVAFILES): $(MISC)/$(TARGET).classdir.flag
+
+$(MISC)/$(TARGET).classdir.flag:
+ - $(MKDIR) $(CLASSDIR)
+ $(TOUCH) $@
+
+.IF "$(TESTS)" != ""
+$(TESTS): $(JAVACLASSFILES)
+.ENDIF
+
+%.test .PHONY: %.java
+ $(JAVAI) $(JAVAIFLAGS) $(JAVACPS) $(CLASSPATH) org.openoffice.Runner \
+ -TestBase java_complex -NoOffice yes \
+ -o $(subst,/,. $(subst,.test, $(PACKAGE).$@))
+
+.IF "$(IDLTESTFILES)" != ""
+
+# The following dependency (to execute javac whenever javamaker has run) does
+# not work reliably, see #i28827#:
+$(JAVAFILES) $(JAVACLASSFILES): $(MISC)/$(TARGET).javamaker.flag
+
+$(MISC)/$(TARGET).javamaker.flag: $(MISC)/$(TARGET).rdb
+ $(JAVAMAKER) -O$(CLASSDIR) -BUCR -nD $< -X$(SOLARBINDIR)/types.rdb
+ $(TOUCH) $@
+
+$(MISC)/$(TARGET).rdb .ERRREMOVE: \
+ $(foreach,i,$(IDLTESTFILES) $(subst,.idl,.urd $(MISC)/$(TARGET)/$i))
+ - rm $@
+ $(REGMERGE) $@ /UCR $<
+
+$(foreach,i,$(IDLTESTFILES) $(subst,.idl,.urd $(MISC)/$(TARGET)/$i)): \
+ $(IDLTESTFILES)
+ - $(MKDIR) $(MISC)/$(TARGET)
+ $(IDLC) -O$(MISC)/$(TARGET) -I$(SOLARIDLDIR) -cid -we $<
+
+.ENDIF
diff --git a/solenv/inc/lang.mk b/solenv/inc/lang.mk
new file mode 100644
index 000000000000..fc5321653fbc
--- /dev/null
+++ b/solenv/inc/lang.mk
@@ -0,0 +1,57 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+#.IF "$(GUI)"=="UNX" || "$(GUIBASE)"=="WIN"
+#LANG_GUI=WIN
+#.ELSE
+LANG_GUI=$(GUI)
+#.ENDIF
+
+###################################################
+#
+# entries for charsets
+
+# variable name equals $(solarlang)$(LANG_GUI)
+#
+###################################################
+
+#deut$(LANG_GUI)*=-CHARSET_microsoft-cp1252
+
+###################################################
+#
+# set defaults
+#
+###################################################
+
+#.IF "$(solarlang)" == ""
+#solarlang=deut
+#.ENDIF
+
+RSC_SRS_CHARSET=-CHARSET_DONTKNOW
+default$(LANG_GUI)*=-CHARSET_UTF8
+
diff --git a/solenv/inc/layout.mk b/solenv/inc/layout.mk
new file mode 100644
index 000000000000..0fb4c39454c9
--- /dev/null
+++ b/solenv/inc/layout.mk
@@ -0,0 +1,32 @@
+TRALAY=$(AUGMENT_LIBRARY_PATH) tralay
+XML_DEST=$(DLLDEST)
+XML_LANGS=$(alllangiso)
+
+ALL_XMLS=$(foreach,i,$(XML_FILES) "$(XML_DEST)/$i") $(foreach,i,$(XML_LANGS) $(foreach,j,$(XML_FILES) "$(XML_DEST)/$i/$j"))
+
+# Must remove the -j (no duplicate base file names) flag
+ZIPUPDATE=-u
+XML_ZIP = $(PRJNAME)-layout
+
+ALLTAR: localize.sdf $(XML_ZIP)
+
+$(XML_ZIP): $(ALL_XMLS)
+
+ZIP1DIR=$(XML_DEST)
+ZIP1TARGET=$(XML_ZIP)
+ZIP1LIST=$(ALL_XMLS:s@$(XML_DEST)/@@)
+
+$(foreach,i,$(XML_LANGS) $(XML_DEST)/$i/%.xml): %.xml
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ @echo $(foreach,i,$(XML_LANGS) $(XML_DEST)/$i/%.xml): %.xml
+ $(TRALAY) -m localize.sdf -o "$(XML_DEST)" -l $(XML_LANGS:f:t" -l ") "$<"
+
+$(XML_DEST)/%.xml: %.xml
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)$(COPY) "$<" "$@"
+
+# Don't want to overwrite filled localize.sdf with empty template
+template.sdf:
+ $(foreach,i,$(XML_FILES) $(TRALAY) -l en-US "$i") > $@
+
+$(ZIP1LIST): localize.sdf
diff --git a/solenv/inc/libs.mk b/solenv/inc/libs.mk
new file mode 100644
index 000000000000..09b6df9d33d9
--- /dev/null
+++ b/solenv/inc/libs.mk
@@ -0,0 +1,539 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+LIBSMKREV!:="$$Revision: 1.134.2.3 $$"
+
+.IF ("$(GUI)"=="UNX" || "$(COM)"=="GCC") && "$(GUI)"!="OS2"
+
+#
+#externe libs in plattform.mk
+#
+.IF "$(GUI)$(COM)"=="WNTGCC"
+AWTLIB*=$(JAVA_HOME)/lib/jawt.lib
+.ELSE # "$(GUI)$(COM)"=="WNTGCC"
+AWTLIB*=-ljawt
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+AVMEDIALIB=-lavmedia$(DLLPOSTFIX)
+.IF "$(GUI)$(COM)"=="WNTGCC"
+.INCLUDE .IGNORE : icuversion.mk
+ICUINLIB=-licuin$(ICU_MAJOR)$(ICU_MINOR)
+ICULELIB=-licule$(ICU_MAJOR)$(ICU_MINOR)
+ICUUCLIB=-licuuc$(ICU_MAJOR)$(ICU_MINOR)
+ICUDATALIB=-licudt$(ICU_MAJOR)$(ICU_MINOR)
+.ELSE # "$(GUI)$(COM)"=="WNTGCC"
+ICUINLIB=-licui18n
+ICULELIB=-licule
+ICUUCLIB=-licuuc
+ICUDATALIB=-licudata
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+I18NUTILLIB=-li18nutil$(COMID)
+.INCLUDE .IGNORE : i18npool/version.mk
+I18NISOLANGLIB=-li18nisolang$(ISOLANG_MAJOR)$(COMID)
+I18NPAPERLIB=-li18npaper$(DLLPOSTFIX)
+.IF "$(GUI)$(COM)"=="WNTGCC"
+SALHELPERLIB=-lsalhelper$(UDK_MAJOR)$(COMID)
+.ELSE # "$(GUI)$(COM)"=="WNTGCC"
+SALHELPERLIB=-luno_salhelper$(COMID)
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+XMLSCRIPTLIB =-lxcr$(DLLPOSTFIX)
+.INCLUDE .IGNORE : comphelper/version.mk
+COMPHELPERLIB=-lcomphelp$(COMPHLP_MAJOR)$(COMID)
+CONNECTIVITYLIB=-lconnectivity
+LDAPBERLIB=-lldapber
+TOOLSLIBST=-latools
+BPICONVLIB=-lbpiconv
+TOOLSLIB=-ltl$(DLLPOSTFIX)
+.IF "$(GUI)$(COM)"=="WNTGCC"
+CPPULIB=-lcppu$(UDK_MAJOR)
+CPPUHELPERLIB=-lcppuhelper$(UDK_MAJOR)$(COMID)
+.ELSE # "$(GUI)$(COM)"=="WNTGCC"
+CPPULIB=-luno_cppu
+CPPUHELPERLIB=-luno_cppuhelper$(COMID)
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.INCLUDE .IGNORE : ucbhelper/version.mk
+UCBHELPERLIB=-lucbhelper$(UCBHELPER_MAJOR)$(COMID)
+.IF "$(SYSTEM_OPENSSL)" == "YES"
+OPENSSLLIB=$(OPENSSL_LIBS)
+OPENSSLLIBST=$(STATIC) $(OPENSSL_LIBS) $(DYNAMIC)
+.ELSE # "$(SYSTEM_OPENSSL)" == "YES
+OPENSSLLIB=-lssl -lcrypto
+.IF "$(GUI)$(COM)"=="WNTGCC"
+OPENSSLLIBST=-lssl_static -lcrypto_static
+.ELSE # "$(GUI)$(COM)"=="WNTGCC"
+OPENSSLLIBST=$(STATIC) -lssl -lcrypto $(DYNAMIC)
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.ENDIF # "$(SYSTEM_OPENSSL)" == "YES"
+.IF "$(GUI)$(COM)"=="WNTGCC"
+REGLIB=-lreg$(UDK_MAJOR)
+.ELSE # "$(GUI)$(COM)"=="WNTGCC"
+REGLIB=-lreg
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.INCLUDE .IGNORE : vos/version.mk
+VOSLIB=-lvos$(VOS_MAJOR)$(COMID)
+XMLOFFLIB=-lxo$(DLLPOSTFIX)
+XMLOFFLLIB=-lxol
+.IF "$(GUI)$(COM)"=="WNTGCC"
+STORELIB=-lstore$(UDK_MAJOR)
+SALLIB=-lsal$(UDK_MAJOR)
+.ELSE # "$(GUI)$(COM)"=="WNTGCC"
+STORELIB=-lstore
+SALLIB=-luno_sal
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.INCLUDE .IGNORE : connectivity/version.mk
+ODBCLIB=-lodbc$(DLLPOSTFIX)
+ODBCBASELIB=-lodbcbase$(DLLPOSTFIX)
+DBFILELIB=-lfile$(DLLPOSTFIX)
+.IF "$(GUI)$(COM)"=="WNTGCC"
+RMCXTLIB=-lrmcxt$(UDK_MAJOR)
+.ELSE # "$(GUI)$(COM)"=="WNTGCC"
+RMCXTLIB=-lrmcxt
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+BTSTRPLIB=-lbtstrp
+BTSTRPDTLIB=-lbootstrpdt$(DLLPOSTFIX)
+SOLDEPLIB=-lsoldep$(DLLPOSTFIX)
+TRANSEXLIB=-ltransex
+OTXLIB=-lotx_ind
+OSXLIB=-losx
+UNOTOOLSLIB=-lutl$(DLLPOSTFIX)
+SOTLIB=-lsot$(DLLPOSTFIX)
+.IF "$(GUI)$(COM)"=="WNTGCC"
+MOZBASELIBST=$(STATIC) -lnspr4_s -lxpcombase_s
+.ELSE # "$(GUI)$(COM)"=="WNTGCC"
+MOZBASELIBST=$(STATIC) -lnspr4 -lxpcombase_s $(DYNAMIC)
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+MOZBASELIB=-lnspr4 -lxpcom
+.IF "$(GUI)$(COM)"=="WNTGCC"
+LDAPSDKLIB=-lnsldap32v50
+.ELSE # "$(GUI)$(COM)"=="WNTGCC"
+.IF "$(WITH_OPENLDAP)" == "YES"
+LDAPSDKLIB=-lldap
+.ELSE
+LDAPSDKLIB=-lldap50
+.ENDIF
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+
+ICOLIB=-lico$(DLLPOSTFIX)
+VCLLIB=-lvcl$(DLLPOSTFIX)
+OOXLIB=-loox$(DLLPOSTFIX)
+BASEGFXLIB=-lbasegfx$(DLLPOSTFIX)
+DRAWINGLAYERLIB=-ldrawinglayer$(DLLPOSTFIX)
+BASEBMPLIB=-lbasebmp$(DLLPOSTFIX)
+CANVASTOOLSLIB=-lcanvastools$(DLLPOSTFIX)
+CPPCANVASLIB=-lcppcanvas$(DLLPOSTFIX)
+FORLIB=-lfor$(DLLPOSTFIX)
+FORUILIB=-lforui$(DLLPOSTFIX)
+
+.IF "$(SYSTEM_AGG)" == "YES"
+AGGLIB=-lagg
+.ELSE
+AGGLIB=-lagg$(DLLPOSTFIX)
+.ENDIF
+FREETYPE_LIBS*=-lfreetype
+FREETYPELIB=$(FREETYPE_LIBS)
+TKLIB=-ltk$(DLLPOSTFIX)
+LAYOUTLIB=-ltklayout$(DLLPOSTFIX)
+SVTOOLLIB=-lsvt$(DLLPOSTFIX)
+XMLSECLIB=-lxmlsec1
+XMLSECLIB-NSS=-lxmlsec1-nss
+.IF "$(SYSTEM_LIBXML)"=="YES"
+LIBXML2LIB=$(LIBXML_LIBS)
+.ELSE
+LIBXML2LIB=-lxml2
+.ENDIF
+NSS3LIB=-lnss3
+NSPR4LIB=-lnspr4
+PLC4LIB=-lplc4
+NSSCRYPTOLIBS=$(XMLSECLIB-NSS) $(XMLSECLIB) $(LIBXML2LIB) $(NSS3LIB) $(NSPR4LIB) $(PLC4LIB)
+.IF "$(GUI)$(COM)"=="WNTGCC"
+XMLSECLIB-MS=-lxmlsec1-mscrypto
+MSCRYPTOLIBS=$(XMLSECLIB) $(XMLSECLIB-MS) $(LIBXML2LIB) $(CRYPT32LIB) $(ADVAPI32LIB)
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+BROOKERLIB=-lbrooker$(DLLPOSTFIX)
+SIMPLECMLIB=-lsimplecm$(DLLPOSTFIX)
+COMMUNILIB=-lcommuni$(DLLPOSTFIX)
+BTCOMMUNILIB=-lbtcommuni$(DLLPOSTFIX)
+AUTOMATIONLIB=-lsts$(DLLPOSTFIX)
+SVLLIB=-lsvl$(DLLPOSTFIX)
+TKTLIB=-ltkt$(DLLPOSTFIX)
+SAXLIB=-lsax$(DLLPOSTFIX)
+MAILLIB=-lmail
+DOCMGRLIB=-ldmg$(DLLPOSTFIX)
+BASICLIB=-lsb$(DLLPOSTFIX)
+.IF "$(ENABLE_VBA)"=="YES"
+VBAHELPERLIB=-lvbahelper$(DLLPOSTFIX)
+.ENDIF
+DBTOOLSLIB=-ldbtools$(DLLPOSTFIX)
+HM2LIBSH=-lhmwrpdll
+HM2LIBST=-lhmwrap
+LINGULIB=$(HM2LIBST)
+LNGLIB=-llng$(DLLPOSTFIX)
+.IF "$(SYSTEM_EXPAT)"=="YES"
+EXPAT3RDLIB=-lexpat
+EXPATASCII3RDLIB=-lexpat
+.ELSE
+EXPAT3RDLIB=-lexpat_xmlparse -lexpat_xmltok
+EXPATASCII3RDLIB=-lascii_expat_xmlparse -lexpat_xmltok
+.ENDIF
+.IF "$(SYSTEM_ZLIB)"=="YES"
+ZLIB3RDLIB=-lz
+.ELSE
+ZLIB3RDLIB=-lzlib
+.ENDIF
+.IF "$(SYSTEM_JPEG)"=="YES"
+.IF "$(SOLAR_JAVA)" != "" && "$(JDK)" != "gcj" && "$(OS)" != "MACOSX"
+#i34482# Blackdown/Sun jdk is in the libsearch patch and has a libjpeg :-(
+.IF "$(OS)" == "FREEBSD"
+JPEG3RDLIB=/usr/local/lib/libjpeg.so
+.ELIF "$(CPUNAME)" == "X86_64" || "$(CPUNAME)" == "S390X" || "$(CPUNAME)" == "POWERPC64"
+JPEG3RDLIB=/usr/lib64/libjpeg.so
+.ELSE
+JPEG3RDLIB=/usr/lib/libjpeg.so
+.ENDIF
+.ELSE
+JPEG3RDLIB=-ljpeg
+.ENDIF
+.ELSE
+JPEG3RDLIB=-ljpeglib
+.ENDIF
+.IF "$(SYSTEM_NEON)" == "YES"
+NEON3RDLIB=-lneon
+.ELIF "$(GUI)$(COM)"=="WNTGCC"
+NEON3RDLIB=-lneon
+.ELIF "$(OS)" == "MACOSX"
+NEON3RDLIB=$(SOLARLIBDIR)/libneon.dylib
+.ELSE
+NEON3RDLIB=-lneon
+.ENDIF
+.IF "$(SYSTEM_DB)" == "YES"
+BERKELEYLIB=-ldb
+.ELSE
+BERKELEYLIB=-ldb-4.7
+.ENDIF
+CURLLIB=-lcurl
+SFX2LIB=-lsfx$(DLLPOSTFIX)
+SFXLIB=-lsfx$(DLLPOSTFIX)
+EGGTRAYLIB=-leggtray$(DLLPOSTFIX)
+SFXDEBUGLIB=
+FWELIB=-lfwe$(DLLPOSTFIX)
+FWILIB=-lfwi$(DLLPOSTFIX)
+SVXCORELIB=-lsvxcore$(DLLPOSTFIX)
+MSFILTERLIB=-lmsfilter$(DLLPOSTFIX)
+SVXLIB=-lsvx$(DLLPOSTFIX)
+EDITENGLIB=-lediteng$(DLLPOSTFIX)
+BASCTLLIB=-lbasctl$(DLLPOSTFIX)
+BASICIDELIB=-lybctl
+SVXLLIB=-lsvxl
+CHAOSLIB=-lcnt$(DLLPOSTFIX)
+UUILIB=-luui$(DLLPOSTFIX)
+DGLIB=
+SCHLIB=-lysch
+SMLIB=-lysm
+OFALIB=-lofa$(DLLPOSTFIX)
+PRXLIB=-llprx2$(DLLPOSTFIX)
+PAPILIB=-lpap$(DLLPOSTFIX)
+SCLIB=-lsclib
+SDLIB=-lsdlib
+SDLLIB=-lsdl
+SWLIB=-lswlib
+ISWLIB=-lsw$(DLLPOSTFIX)
+ISCLIB=-lsc$(DLLPOSTFIX)
+ISDLIB=-lsd$(DLLPOSTFIX)
+PKGCHKLIB=-lpkgchk$(DLLPOSTFIX)
+HELPLINKERLIB=-lhelplinker$(DLLPOSTFIX)
+.IF "$(GUI)$(COM)"=="WNTGCC"
+JVMACCESSLIB = -ljvmaccess$(UDK_MAJOR)$(COMID)
+.ELSE # "$(GUI)$(COM)"=="WNTGCC"
+JVMACCESSLIB = -ljvmaccess$(COMID)
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.IF "$(OS)" == "WNT"
+CPPUNITLIB = -lcygcppunit-1-12-1
+.ELSE
+.IF "$(SYSTEM_CPPUNIT)"=="YES"
+CPPUNITLIB = $(CPPUNIT_LIBS)
+.ELSE
+CPPUNITLIB = -lcppunit
+.ENDIF
+.ENDIF
+.IF "$(SYSTEM_LIBXSLT)"=="YES"
+XSLTLIB=$(LIBXSLT_LIBS)
+.ELSE
+XSLTLIB=-lxslt $(LIBXML2LIB)
+.ENDIF
+.IF "$(GUI)$(COM)"=="WNTGCC"
+JVMFWKLIB = -ljvmfwk$(UDK_MAJOR)
+.ELSE # "$(GUI)$(COM)"=="WNTGCC"
+JVMFWKLIB = -ljvmfwk
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.IF "$(SYSTEM_REDLAND)"=="YES"
+REDLANDLIB=$(REDLAND_LIBS)
+.ELSE
+REDLANDLIB=-lrdf
+.ENDIF
+
+
+# #110743#
+# For BinFilters, some libs were added.
+#
+
+BFSVXLIB=-lbf_svx$(DLLPOSTFIX)
+BFSCHLIB=-lbf_ysch
+BFSMLIB=-lbf_ysm
+BFSCLIB=-lbf_sclib
+BFSDLIB=-lbf_sdlib
+BFSWLIB=-lbf_swlib
+BFOFALIB=-lbf_ofa$(DLLPOSTFIX)
+LEGACYSMGRLIB=-llegacy_binfilters$(DLLPOSTFIX)
+BFXMLOFFLIB=-lbf_xo$(DLLPOSTFIX)
+BFGOODIESLIB=-lbf_go$(DLLPOSTFIX)
+BFBASICLIB=-lbf_sb$(DLLPOSTFIX)
+BFSO3LIB=-lbf_so$(DLLPOSTFIX)
+BFSVTOOLLIB=-lbf_svt$(DLLPOSTFIX)
+
+#
+# USED_%NAME%_LIBS
+# Variablen, in denen in gueltiger Reihenfolge ALLE Libraries,
+# die unterhalb von %NAME% liegen, zusammengefasst werden
+#
+
+# Libraries
+USED_OSL_LIBS =
+USED_VOS_LIBS = $(OSLLIB)
+USED_UNO_LIBS = $(VOSLIB) $(OSLLIB)
+USED_TOOLS_LIBS =
+USED_SOT_LIBS = $(TOOLSLIB)
+USED_VCL_LIBS = $(SOTLIB) $(TOOLSLIB) $(USED_UNO_LIBS)
+
+# Applikationen
+USED_BOOTSTRP_LIBS= $(TOOLSLIB)
+USED_RCLIENT_LIBS = $(VCLLIB) $(SOTLIB) $(TOOLSLIB) \
+ $(USED_UNO_LIBS)
+
+SABLOT3RDLIB=-lsablot
+APP3RDLIB=-lapp
+SAMPLE3RDLIB=-lsample
+HNJLIB*=-lhyphen
+MYSPELLLIB=-lmyspell
+COSVLIB=-lcosv
+UDMLIB=-ludm
+ULINGULIB=-lulingu
+.IF "$(SYSTEM_HUNSPELL)" == "YES"
+HUNSPELLLIB=$(HUNSPELL_LIBS)
+.ELSE
+HUNSPELLLIB=-lhunspell-1.2
+.ENDIF
+.IF "$(SYSTEM_MYTHES)" == "YES"
+MYTHESLIB=$(MYTHES_LIBS)
+.ELSE
+MYTHESLIB=-lmythes-1.2
+.ENDIF
+PYUNOLIB=-lpyuno
+LPSOLVELIB=-llpsolve55
+SOFFICELIB=-lsofficeapp
+UNOPKGAPPLIB=-lunopkgapp
+TESTLIB=-ltest
+
+.ELSE # ("$(GUI)"=="UNX" || "$(COM)"=="GCC") && "$(GUI)"!="OS2"
+
+AWTLIB*=jawt.lib
+AVMEDIALIB=iavmedia.lib
+ICUINLIB=icuin.lib
+ICULELIB=icule.lib
+ICUUCLIB=icuuc.lib
+.IF "$(GUI)"=="OS2"
+ICUDATALIB=icudt.lib
+.ELSE
+ICUDATALIB=icudata.lib
+.ENDIF
+I18NUTILLIB=ii18nutil.lib
+I18NISOLANGLIB=ii18nisolang.lib
+I18NPAPERLIB=ii18npaper.lib
+SALHELPERLIB=isalhelper.lib
+XMLSCRIPTLIB=ixcr.lib
+COMPHELPERLIB=icomphelp.lib
+CONNECTIVITYLIB=connectivity.lib
+LDAPBERLIB=ldapber.lib
+CPPULIB=icppu.lib
+CPPUHELPERLIB=icppuhelper.lib
+UCBHELPERLIB=iucbhelper.lib
+.IF "$(GUI)"=="OS2"
+OPENSSLLIB=ssl.lib crypto.lib
+.ELSE
+OPENSSLLIB=ssleay32.lib libeay32.lib
+.ENDIF
+ODBCLIB=iodbc.lib
+ODBCBASELIB=iodbcbase.lib
+DBFILELIB=ifile.lib
+TOOLSLIB=itools.lib
+TOOLSLIBST=atools.lib
+BPICONVLIB=bpiconv.lib
+SALLIB=isal.lib
+VOSLIB=ivos.lib
+UNOTOOLSLIB=iutl.lib
+RMCXTLIB=irmcxt.lib
+XMLOFFLIB=ixo.lib
+XMLOFFLLIB=xol.lib
+STORELIB=istore.lib
+OTXLIB=otx_ind.lib
+OSXLIB=osx.lib
+REGLIB=ireg.lib
+EXTLIB=iext.lib
+SOTLIB=sot.lib
+MOZBASELIBST=nspr4_s.lib xpcombase_s.lib
+MOZBASELIB=nspr4.lib xpcom.lib
+LDAPSDKLIB=nsldap32v50.lib
+PAPILIB=ipap.lib
+SFX2LIB=sfx.lib
+SFXLIB=$(SFX2LIB)
+FWELIB=ifwe.lib
+FWILIB=ifwi.lib
+BTSTRPLIB=btstrp.lib
+BTSTRPDTLIB=bootstrpdt.lib
+SOLDEPLIB=soldep.lib
+TRANSEXLIB=transex.lib
+ICOLIB=icom.lib
+SVTOOLLIB=svtool.lib
+XMLSECLIB=libxmlsec.lib
+XMLSECLIB-MS=libxmlsec-mscrypto.lib
+XMLSECLIB-NSS=libxmlsec-nss.lib
+LIBXML2LIB=libxml2.lib
+NSS3LIB=nss3.lib
+NSPR4LIB=nspr4.lib
+PLC4LIB=plc4.lib
+NSSCRYPTOLIBS=$(XMLSECLIB-NSS) $(XMLSECLIB) $(LIBXML2LIB) $(NSS3LIB) $(NSPR4LIB) $(PLC4LIB)
+MSCRYPTOLIBS=$(XMLSECLIB-MS) $(XMLSECLIB) $(LIBXML2LIB) crypt32.lib advapi32.lib
+BROOKERLIB=ibrooker.lib
+SIMPLECMLIB=isimplecm.lib
+COMMUNILIB=icommuni.lib
+BTCOMMUNILIB=ibtcommuni.lib
+AUTOMATIONLIB=ists.lib
+SVLLIB=isvl.lib
+PLUGAPPLIB=plugapp.lib
+SAXLIB=isax.lib
+MAILLIB=mail.lib
+DOCMGRLIB=docmgr.lib
+BASICLIB=basic.lib
+VBAHELPERLIB=vbahelper.lib
+TKTLIB=tkt.lib
+SJLIB=sj.lib
+SVXCORELIB=isvxcore.lib
+MSFILTERLIB=imsfilter.lib
+SVXLIB=isvx.lib
+EDITENGLIB=iediteng.lib
+BASCTLLIB=basctl.lib
+BASICIDELIB=ybctl.lib
+SVXLLIB=svxl.lib
+DBTOOLSLIB=idbtools.lib
+HM2LIBSH=hmwrpdll.lib
+HM2LIBST=hmwrap.lib
+LINGULIB=$(HM2LIBST)
+LNGLIB=ilng.lib
+EXPAT3RDLIB=expat_xmltok.lib expat_xmlparse.lib
+EXPATASCII3RDLIB=expat_xmltok.lib ascii_expat_xmlparse.lib
+ZLIB3RDLIB=zlib.lib
+JPEG3RDLIB=jpeglib.lib
+NEON3RDLIB=ineon.lib
+BERKELEYLIB=libdb47.lib
+CURLLIB=libcurl.lib
+CHAOSLIB=ichaos.lib
+UUILIB=iuui.lib
+DGLIB=
+SCHLIB=ysch.lib
+SMLIB=ysm.lib
+OFALIB=aofa.lib
+SCLIB=sclib.lib
+SDLIB=sdlib.lib
+SDLLIB=sdl.lib
+SWLIB=swlib.lib
+PRXLIB=ilprx2.lib
+ISWLIB=_sw.lib
+ISCLIB=sci.lib
+ISDLIB=sdi.lib
+VCLLIB=ivcl.lib
+OOXLIB=ioox.lib
+BASEGFXLIB=ibasegfx.lib
+DRAWINGLAYERLIB=idrawinglayer.lib
+BASEBMPLIB=ibasebmp.lib
+CANVASTOOLSLIB=icanvastools.lib
+CPPCANVASLIB=icppcanvas.lib
+FORLIB=ifor.lib
+FORUILIB=iforui.lib
+AGGLIB=iagg.lib
+TKLIB=itk.lib
+LAYOUTLIB=itklayout.lib
+SVXLLIB=svxl.lib
+FREETYPELIB=freetype.lib
+PKGCHKLIB=ipkgchk.lib
+HELPLINKERLIB=ihelplinker.lib
+JVMACCESSLIB = ijvmaccess.lib
+CPPUNITLIB = icppunit_dll.lib
+XSLTLIB = libxslt.lib $(LIBXML2LIB)
+.IF "$(GUI)"=="OS2"
+REDLANDLIB = raptor.a rasqal.a rdf.a $(LIBXML2LIB) $(OPENSSLLIB) pthread.lib
+.ELSE
+REDLANDLIB = librdf.lib
+.ENDIF
+
+JVMFWKLIB = ijvmfwk.lib
+
+# #110743#
+# For BinFilters, some libs were added.
+#
+
+BFSVXLIB=bf_svx.lib
+BFSCHLIB=bf_ysch.lib
+BFSMLIB=bf_ysm.lib
+BFSCLIB=bf_sclib.lib
+BFSDLIB=bf_sdlib.lib
+BFSWLIB=bf_swlib.lib
+BFOFALIB=bf_ofa.lib
+BFXMLOFFLIB=ibf_xo.lib
+BFGOODIESLIB=bf_go.lib
+BFBASICLIB=bf_sb.lib
+BFSO3LIB=bf_so.lib
+LEGACYSMGRLIB=ilegacy_binfilters.lib
+BFSVTOOLLIB=bf_svt.lib
+
+SABLOT3RDLIB= $(LIBPRE) sablot.lib
+APP3RDLIB= $(LIBPRE) app.lib
+SAMPLE3RDLIB= $(LIBPRE) sample.lib
+HNJLIB*=libhnj.lib
+MYSPELLLIB= $(LIBPRE) myspell.lib
+COSVLIB= $(LIBPRE) cosv.lib
+UDMLIB= $(LIBPRE) udm.lib
+ULINGULIB=$(LIBPRE) libulingu.lib
+.IF "$(SYSTEM_HUNSPELL)" == "YES"
+HUNSPELLLIB=$(HUNSPELL_LIBS)
+.ELSE
+HUNSPELLLIB=$(LIBPRE) libhunspell.lib
+.ENDIF
+MYTHESLIB=libmythes.lib
+PYUNOLIB=ipyuno.lib
+LPSOLVELIB=lpsolve55.lib
+SOFFICELIB=isofficeapp.lib
+UNOPKGAPPLIB=iunopkgapp.lib
+TESTLIB=itest.lib
+
+.ENDIF # ("$(GUI)"=="UNX" || "$(COM)"=="GCC") && "$(GUI)"!="OS2"
diff --git a/solenv/inc/mime.types b/solenv/inc/mime.types
new file mode 100644
index 000000000000..43820404c434
--- /dev/null
+++ b/solenv/inc/mime.types
@@ -0,0 +1,201 @@
+# This file controls what Internet media types are sent to the client for
+# given file extension(s). Sending the correct media type to the client
+# is important so they know how to handle the content of the file.
+# For more information about Internet media types, please read
+# RFC 2045, 2046, 2047, 2048, and 2077. The Internet media type
+# registry is at <ftp://ftp.iana.org/assignments/media-types/>.
+# MIME type Extension
+application/EDI-Consent
+application/EDI-X12
+application/EDIFACT
+application/activemessage
+application/andrew-inset ez
+application/applefile
+application/atomicmail
+application/cals-1840
+application/commonground
+application/cybercash
+application/cu-seeme csm cu
+application/dca-rft
+application/dec-dx
+application/eshop
+application/excel xls
+application/ghostview
+application/hyperstudio
+application/iges
+application/mac-binhex40 hqx
+application/mac-compactpro cpt
+application/macwriteii
+application/marc
+application/mathematica
+application/msword doc dot wrd
+application/news-message-id
+application/news-transmission
+application/octet-stream bin dms lha lzh exe class iso
+application/oda oda
+application/pdf pdf
+application/pgp pgp
+application/pgp-encrypted
+application/pgp-keys
+application/pgp-signature pgp
+application/postscript ai eps ps
+application/powerpoint ppt
+application/remote-printing
+application/rtf rtf
+application/slate
+application/wita
+application/wordperfect5.1 wp5
+application/vnd.wap.wbxml wbxml
+application/vnd.wap.wmlc wmlc
+application/vnd.wap.wmlscriptc wmlsc
+application/x-123 wk
+application/x-Wingz wz
+application/x-bcpio bcpio
+application/x-bzip2 bz2
+application/x-cdlink vcd
+application/x-chess-pgn pgn
+application/x-compress z Z
+application/x-cpio cpio
+application/x-csh csh
+application/x-debian-package deb
+application/x-director dcr dir dxr
+application/x-dvi dvi
+application/x-gtar gtar tgz
+application/x-gunzip gz
+application/x-gzip gz
+application/x-hdf hdf
+application/x-httpd-php phtml pht php
+application/x-javascript js
+application/x-java-jnlp-file jnlp
+application/x-kword kwd kwt
+application/x-kspread ksp
+application/x-kpresenter kpr kpt
+application/x-kchart chrt
+application/x-koan skp skd skt skm
+application/x-latex latex
+application/x-maker frm maker frame fm fb book fbdoc
+application/x-mif mif
+application/x-msdos-program com exe bat
+application/x-netcdf nc cdf
+application/x-ns-proxy-autoconfig pac
+application/x-perl pl pm
+application/x-rad rad
+application/x-rpm rpm spm
+application/x-sh sh
+application/x-shar shar
+application/x-shockwave-flash swf
+application/x-stuffit sit
+application/x-sv4cpio sv4cpio
+application/x-sv4crc sv4crc
+application/x-tar tar
+application/x-tcl tcl
+application/x-tex tex
+application/x-texinfo texinfo texi
+application/x-troff t tr roff
+application/x-troff-man man
+application/x-troff-me me
+application/x-troff-ms ms
+application/x-ustar ustar
+application/x-wais-source src
+application/xhtml+xml xhtml xht
+application/zip zip
+audio/basic au snd
+audio/midi mid midi kar
+audio/mpeg mpga mp2 mp3
+audio/x-mpegurl m3u
+audio/x-aiff aif aifc aiff
+audio/x-realaudio ra
+audio/x-wav wav
+chemical/x-pdb pdb
+chemical/x-xyz xyz
+image/bmp bmp
+image/gif gif
+image/ief ief
+image/jpeg jpeg jpg jpe
+image/png png
+image/tiff tiff tif
+image/vnd.djvu djvu djv
+image/vnd.wap.wbmp wbmp
+image/x-cmu-raster ras
+image/x-portable-anymap pnm
+image/x-portable-bitmap pbm
+image/x-portable-graymap pgm
+image/x-portable-pixmap ppm
+image/x-rgb rgb
+image/x-xbitmap xbm
+image/x-xpixmap xpm
+image/x-xwindowdump xwd
+message/external-body
+message/news
+message/partial
+message/rfc822
+model/iges igs iges
+model/mesh msh mesh silo
+model/vrml wrl vrml
+multipart/alternative
+multipart/appledouble
+multipart/digest
+multipart/mixed
+multipart/parallel
+text/css css
+text/html html htm
+text/plain asc txt c cc h hh cpp hpp
+text/richtext rtx
+text/rtf rtf
+text/sgml sgml sgm
+text/tab-separated-values tsv
+text/x-setext etx
+text/x-vCalendar vcs
+text/x-vCard vcf
+text/xml xml dtd xsl
+video/dl dl
+video/fli fli
+video/gl gl
+video/mpeg mp2 mpe mpeg mpg
+video/quicktime qt mov
+video/x-msvideo avi
+video/x-sgi-movie movie
+x-conference/x-cooltalk ice
+x-world/x-vrml wrl vrml
+audio/x-pn-realaudio rmm ram
+audio/vnd.rn-realaudio ra
+application/smil smi smil
+text/vnd.rn-realtext rt
+video/vnd.rn-realvideo rv
+image/vnd.rn-realflash rf swf
+application/x-shockwave-flash2-preview rf swf
+application/sdp sdp
+application/x-sdp sdp
+application/vnd.rn-realmedia rm
+image/vnd.rn-realpix rp
+application/vnd.oasis.opendocument.text odt
+application/vnd.oasis.opendocument.text-template ott
+application/vnd.oasis.opendocument.text-web oth
+application/vnd.oasis.opendocument.text-master odm
+application/vnd.oasis.opendocument.graphics odg
+application/vnd.oasis.opendocument.graphics-template otg
+application/vnd.oasis.opendocument.presentation odp
+application/vnd.oasis.opendocument.presentation-template otp
+application/vnd.oasis.opendocument.spreadsheet ods
+application/vnd.oasis.opendocument.spreadsheet-template ots
+application/vnd.oasis.opendocument.chart odc
+application/vnd.oasis.opendocument.formula odf
+application/vnd.oasis.opendocument.image odi
+application/vnd.sun.xml.writer sxw
+application/vnd.sun.xml.writer.template stw
+application/vnd.sun.xml.writer.global sxg
+application/vnd.stardivision.writer sdw vor
+application/vnd.stardivision.writer-global sgl
+application/vnd.sun.xml.calc sxc
+application/vnd.sun.xml.calc.template stc
+application/vnd.stardivision.calc sdc
+application/vnd.stardivision.chart sds
+application/vnd.sun.xml.impress sxi
+application/vnd.sun.xml.impress.template sti
+application/vnd.stardivision.impress sdd sdp
+application/vnd.sun.xml.draw sxd
+application/vnd.sun.xml.draw.template std
+application/vnd.stardivision.draw sda
+application/vnd.sun.xml.math sxm
+application/vnd.stardivision.math smf
+application/vnd.sun.xml.base odb
diff --git a/solenv/inc/minor.mk b/solenv/inc/minor.mk
new file mode 100644
index 000000000000..11748869457e
--- /dev/null
+++ b/solenv/inc/minor.mk
@@ -0,0 +1,5 @@
+RSCVERSION=330
+RSCREVISION=330m20(Build:9567)
+BUILD=9567
+LAST_MINOR=m20
+SOURCEVERSION=OOO330
diff --git a/solenv/inc/os2.mk b/solenv/inc/os2.mk
new file mode 100644
index 000000000000..981479f184c4
--- /dev/null
+++ b/solenv/inc/os2.mk
@@ -0,0 +1,333 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# --- OS2-Environment ----------------------------------------------
+
+.IF "$(GUI)" == "OS2"
+
+# YD defined in os2env.cmd
+#.IF "$(NOSOLAR_JAVA)"==""
+#SOLAR_JAVA=TRUE
+#.ENDIF
+
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+.ENDIF
+JAVAFLAGSDEBUG=-g
+
+# --- Borland ---
+.IF "$(COM)" == "BLC"
+
+JAVADEF=-DSOLAR_JAVA
+
+ASM=tasm
+AFLAGS=
+
+CXX=bcc
+CC=bcc
+CFLAGS=-c -3 -a1 -X -d -wbbf -weas -wucp -w-hid -w-par -I. $(MINUS_I)$(INCLUDE)
+CFLAGSCXX=-Pcxx -RT- -x- -V
+CFLAGSOBJGUIST=
+CFLAGSOBJCUIST=
+CFLAGSOBJGUIMT=-sm
+CFLAGSOBJCUIMT=-sm
+CFLAGSSLOGUIMT=-sm -sd
+CFLAGSSLOCUIMT=-sm -sd
+CFLAGSPROF=
+CFLAGSDEBUG=-v
+CFLAGSDBGUTIL=
+CFLAGSOPT=-Os -Ob -k-
+CFLAGSNOOPT=-Od
+CFLAGSOUTOBJ=-o
+
+LINK=tlink
+LINKFLAGS=/m /L$(LIB)
+#LINKFLAGSAPPGUI=/Toe /B:0x10000 /aa
+#Base wg. lxopt raus
+LINKFLAGSAPPGUI=/Toe /aa
+LINKFLAGSSHLGUI=/Tod
+LINKFLAGSAPPCUI=/Toe /B:0x10000 /ap
+LINKFLAGSSHLCUI=/Tod
+LINKFLAGSTACK=/S:
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=/v
+.IF "$(SOLAR_JAVA)"==""
+LINKFLAGSOPT=/Oc
+.ENDIF
+
+STDOBJVCL=$(L)/salmain.obj
+STDOBJGUI=c02.obj
+STDSLOGUI=c02d.obj
+STDOBJCUI=c02.obj
+STDSLOCUI=c02d.obj
+STDLIBGUIST=c2.lib os2.lib
+STDLIBCUIST=c2.lib os2.lib
+STDLIBGUIMT=c2mt.lib os2.lib
+STDLIBCUIMT=c2mt.lib os2.lib
+STDSHLGUIMT=c2mt.lib os2.lib
+STDSHLCUIMT=c2mt.lib os2.lib
+
+LIBMGR=tlib
+LIBFLAGS=/C /P128
+
+IMPLIB=implib
+IMPLIBFLAGS=/c
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=rc
+RCFLAGS=-r $(RCFILES) $@
+RCLINK=rc
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=bo
+
+.ENDIF
+
+# --- IBM ---
+.IF "$(COM)" == "ICC"
+
+ASM=tasm
+AFLAGS=/ml /oi
+
+CXX=icc
+CC=icc
+.IF "$(COMEX)"=="3"
+CFLAGS=/C+ /Q+ /Gf+ /Sp1 /G4 /Se /Gs+ /Gt+ /Gd+ /J- /W2 /D__EXTENDED__ /Si+ /Xi+ $(MINUS_I)$(INCLUDE) /Wvft-
+.ELSE
+.IF "$(COMEX)"=="I"
+CFLAGS=/C+ /Tl10 /Q+ /Gf+ /Sp4 /G4 /Sc /Gs- /D__EXTENDED__ /Si+ /Su4
+.ELSE
+CFLAGS=/C+ /Tl10 /Q+ /Gf+ /Sp1 /G4 /Sc /Gs+ /D__EXTENDED__ /Si+
+.ENDIF
+.ENDIF
+
+CFLAGSCXX=/Tdp
+
+CFLAGSEXCEPTIONS=-Gx-
+CFLAGS_NO_EXCEPTIONS=-Gx+
+
+CFLAGSOBJGUIST=/Ge+
+CFLAGSOBJCUIST=/Ge+
+.IF "$(COMEX)"=="I"
+CFLAGSOBJGUIMT=/Ge+ /Gm+
+CFLAGSOBJCUIMT=/Ge+ /Gm+
+CFLAGSSLOGUIMT=/Ge- /Gm+
+CFLAGSSLOCUIMT=/Ge- /Gm+
+.ELSE
+CFLAGSOBJGUIMT=/Ge+ /Gm+
+CFLAGSOBJCUIMT=/Ge+ /Gm+
+CFLAGSSLOGUIMT=/Ge- /Gm+
+CFLAGSSLOCUIMT=/Ge- /Gm+
+.ENDIF
+CFLAGSPROF=/Gh+
+CFLAGSDEBUG=/Ti+
+CFLAGSDBGUTIL=
+CFLAGSOPT=/O+ /Oi+ /Oc+
+CFLAGSNOOPT=/O-
+CFLAGSOUTOBJ=/Fo
+
+CDEFS+=-D_STD_NO_NAMESPACE -D_VOS_NO_NAMESPACE -D_UNO_NO_NAMESPACE
+
+LINK=ilink
+#LINKFLAGS=/PACKCODE:8192 /ALIGN:16 /NOD /NOE /NOI /MAP /NOFREE
+
+#bei too many segments ist /SEGMENTS:nnnn hilfreich. 3072 ist max!
+.IF "$(CPPRTST)"!=""
+LINKFLAGS=/NOFREE /NOD /NOE /NOI /MAP /OPTFUNC /PACKD:65536 /EXEPACK:2
+.ELSE
+LINKFLAGS=/NOFREE /NOD /NOE /NOI /MAP /OPTFUNC /PACKD:65536
+.ENDIF
+LINKFLAGSAPPGUI=/PM:PM /NOBASE
+LINKFLAGSSHLGUI=
+LINKFLAGSAPPCUI=/PM:VIO /NOBASE
+LINKFLAGSSHLCUI=
+LINKFLAGSTACK=/STACK:
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=/COD
+#LINKFLAGSOPT=/EXEPACK:2 /OPTFUNC
+LINKFLAGSOPT=
+#.IF "$(product)"!="full" && "$(product)"!="demo" && "$(product)"!="compact"
+#LINKFLAGS=$(LINKFLAGS) /COD
+#.ELSE
+#LINKFLAGS=$(LINKFLAGS)
+#.ENDIF
+
+.IF "$(product)"=="full" || "$(product)"=="demo" || "$(product)"=="compact"
+# LINKFLAGS=$(LINKFLAGS)
+.ELSE
+LINKFLAGS+=/COD
+.ENDIF
+
+STDOBJVCL=$(L)/salmain.obj
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+.IF "$(COMEX)"=="3"
+.IF "$(CPPRTST)"!=""
+STDLIBGUIST=cppom30o.lib cpprtst.lib os2386.lib
+STDLIBCUIST=cppom30o.lib cpprtst.lib os2386.lib
+STDLIBGUIMT=cppom30o.lib cpprtst.lib os2386.lib
+STDLIBCUIMT=cppom30o.lib cpprtst.lib os2386.lib
+STDSHLGUIMT=cppom30o.lib cpprtst.lib os2386.lib
+STDSHLCUIMT=cppom30o.lib cpprtst.lib os2386.lib
+.ELSE
+STDLIBGUIST=cppom30o.lib cppom30i.lib os2386.lib
+STDLIBCUIST=cppom30o.lib cppom30i.lib os2386.lib
+STDLIBGUIMT=cppom30o.lib cppom30i.lib os2386.lib
+STDLIBCUIMT=cppom30o.lib cppom30i.lib os2386.lib
+STDSHLGUIMT=cppom30o.lib cppom30i.lib os2386.lib
+STDSHLCUIMT=cppom30o.lib cppom30i.lib os2386.lib
+.ENDIF
+.ELSE
+STDLIBGUIST=dde4sbs.lib os2386.lib
+STDLIBCUIST=dde4sbs.lib os2386.lib
+STDLIBGUIMT=dde4mbs.lib os2386.lib
+STDLIBCUIMT=dde4mbs.lib os2386.lib
+STDSHLGUIMT=dde4mbs.lib os2386.lib
+STDSHLCUIMT=dde4mbs.lib os2386.lib
+.ENDIF
+
+.IF "$(COMEX)"=="3"
+LIBMGR=ilib
+.ELSE
+LIBMGR=lib
+.ENDIF
+LIBFLAGS=/NOI
+
+IMPLIB=implib
+IMPLIBFLAGS=/noi
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=rc
+RCFLAGS=-r $(RCFILES) $@
+RCLINK=rc
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=co
+
+.ENDIF
+
+# --- GNU ---
+.IF "$(COM)" == "GCC"
+
+.INCLUDE : os2gcci.mk
+
+.ENDIF
+
+# --- Watcom ---
+.IF "$(COM)" == "WTC"
+
+ASM=wasm
+AFLAGS=/ml /4pr
+
+CC=wcl386
+CXX=wcl386
+.IF "$(e2p)" != ""
+CFLAGS=-c -W3 -Zp4 -Zld $(MINUS_I)$(INCLUDE) -bt=os2 -zq -zm -ep -ee
+.ELSE
+CFLAGS=-c -Zp4 -W3 -Zl -Zld $(MINUS_I)$(INCLUDE) -bt=os2 -zq -s
+.ENDIF
+CFLAGSCXX=-cc++ -xst
+CFLAGSOBJGUIST= #-Alfd -GA -GEfs
+CFLAGSOBJCUIST=
+CFLAGSOBJGUIMT=-bm #-Alfw -GA -GEd
+CFLAGSOBJCUIMT=-bm
+CFLAGSSLOGUIMT=-bm -bd #-Alfw -GD -GEfd
+CFLAGSSLOCUIMT=-bm -bd
+CFLAGSPROF=
+CFLAGSDEBUG=/d2
+CFLAGSDBGUTIL=
+.IF "$(e2p)" != ""
+CFLAGSOPT=-otexan -3s
+CFLAGSNOOPT=-od -3s
+.ELSE
+CFLAGSOPT=-otexan -4s
+CFLAGSNOOPT=-od -4s
+.ENDIF
+CFLAGSOUTOBJ=-Fo
+
+LINK=wlink
+LINKFLAGS=op symf op caseexact op statics op MANY
+LINKFLAGSAPPGUI=sys os2v2 pm
+LINKFLAGSSHLGUI=sys os2v2 dll INITINSTANCE TERMINSTANCE
+LINKFLAGSAPPCUI=sys os2v2
+LINKFLAGSSHLCUI=sys os2v2 dll
+LINKFLAGSTACK=op stack=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=debug all op undefsok
+LINKFLAGSOPT=
+
+STDOBJVCL=$(L)/salmain.obj
+STDOBJGUI=libr clib3s.lib libr plib3s.lib libr math387s.lib
+STDSLOGUI=libr clib3s.lib libr os2386.lib libr plib3s.lib libr math387s.lib
+STDOBJCUI=libr clib3s.lib libr plib3s.lib libr math387s.lib
+STDSLOCUI=libr clib3s.lib libr plib3s.lib libr math387s.lib
+STDLIBGUIST=libr os2386.lib libr clib3s.lib libr plib3s.lib
+STDLIBCUIST=libr os2386.lib libr clib3s.lib libr plib3s.lib
+STDLIBGUIMT=libr os2386.lib libr clib3s.lib libr plib3s.lib
+STDLIBCUIMT=libr os2386.lib libr clib3s.lib libr plib3s.lib
+STDSHLGUIMT=libr os2386.lib libr clib3s.lib libr plibmt3s.lib libr math387s.lib libr plib3s.lib libr noemu387.lib
+STDSHLCUIMT=libr os2386.lib libr clib3s.lib libr plibmt3s.lib libr matg387s.lib libr plib3s.lib
+
+LIBMGR=wlib
+LIBFLAGS=/p=128 /c /m
+
+IMPLIB=echo
+IMPLIBFLAGS=
+
+MAPSYM=mapsym
+MAPSYMFLAGS=
+
+RC=rc
+RCFLAGS=-r $(RCFILES) $@
+RCLINK=rc
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=wo
+
+.ENDIF
+
+# --- OS2 Allgemein ---
+HC=toipf
+HCFLAGS=
+PATH_SEPERATOR*=;
+DLLPRE=
+DLLPOST=.dll
+EXECPOST=.exe
+SCPPOST=.ins
+DLLDEST=$(BIN)
+SOLARSHAREDBIN=$(SOLARBINDIR)
+
+.ENDIF
diff --git a/solenv/inc/os2gcci.mk b/solenv/inc/os2gcci.mk
new file mode 100644
index 000000000000..46dcba24aaa1
--- /dev/null
+++ b/solenv/inc/os2gcci.mk
@@ -0,0 +1,288 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# --- OS2-Environment ----------------------------------------------
+
+#change output dir name using the object binary format.
+#.IF "$(aout)"==""
+#OUTFMT=omf
+#.ELSE
+#OUTFMT=aout
+#.ENDIF
+#OUTPATH+=OUTFMT
+#INPATH+=OUTFMT
+#GVERDIR+=OUTFMT
+
+# mk file for os2gcci
+ASM=as
+AFLAGS=
+
+#//YD SOLAR_JAVA=TRUE
+JAVAFLAGSDEBUG=-g
+
+# filter for supressing verbose messages from linker
+#not needed at the moment
+#LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
+
+.IF "$(ttt)"!=""
+CDEFS+=-E
+.ENDIF
+
+# _PTHREADS is needed for the stl
+CDEFS+=-DX86 -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1 -DSTLPORT_VERSION=400
+
+# this is a platform with JAVA support
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+.IF "$(debug)"==""
+JAVA_RUNTIME=javai.lib
+.ELSE
+JAVA_RUNTIME=javai_g.lib
+.ENDIF
+.ENDIF
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+
+# name of C++ Compiler
+CXX*=g++
+# name of C Compiler
+CC*=gcc
+# flags for C and C++ Compiler
+CFLAGS+=-c
+# flags for the C++ Compiler
+CFLAGSCC= $(ARCH_FLAGS)
+
+.IF "$(aout)"==""
+CFLAGS+=-Zomf
+.ENDIF
+
+# Flags for enabling exception handling
+CFLAGSEXCEPTIONS=-fexceptions
+# Flags for disabling exception handling
+CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+
+CFLAGSCXX= -frtti $(ARCH_FLAGS)
+CFLAGSCXX+= -Wno-ctor-dtor-privacy -fmessage-length=0
+PICSWITCH:=
+
+# Compiler flags for compiling static object in single threaded environment with graphical user interface
+CFLAGSOBJGUIST=-Zcrtdll
+# Compiler flags for compiling static object in single threaded environment with character user interface
+CFLAGSOBJCUIST=-Zcrtdll
+# Compiler flags for compiling static object in multi threaded environment with graphical user interface
+CFLAGSOBJGUIMT=-Zcrtdll
+# Compiler flags for compiling static object in multi threaded environment with character user interface
+CFLAGSOBJCUIMT=-Zcrtdll
+# Compiler flags for compiling shared object in multi threaded environment with graphical user interface
+CFLAGSSLOGUIMT=$(PICSWITCH) -Zdll -Zcrtdll
+# Compiler flags for compiling shared object in multi threaded environment with character user interface
+CFLAGSSLOCUIMT=$(PICSWITCH) -Zdll -Zcrtdll
+# Compiler flags for profiling
+CFLAGSPROF=
+# Compiler flags for debugging
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+# Compiler flags for enabling optimazations
+CFLAGSOPT=-s -O1 -march=pentium -mtune=pentium4
+# Compiler flags for disabling optimazations
+CFLAGSNOOPT=-O0
+# Compiler flags for discibing the output path
+CFLAGSOUTOBJ=-o
+
+# Warnings switched off for CXX:
+# - doubunder: we have many identifiers containing double underscores, some of
+# them in the stable UDK API we cannot change
+# - inllargeuse: "function is too large and will not be expanded inline" is
+# merely a hint
+# - inllargeint: "function is too large to generate inline, consider writing
+# it yourself" is merely a hint
+# - notemsource: "could not find source for function" appears to be spurious
+# - reftotemp: warns about calling non-const functions on temporary objects,
+# something legally done by boost::scoped_array<T>::reset, for example
+# (this_type(p).swap(*this))
+# - truncwarn: "conversion of 64 bit type value to smaller type causes
+# truncation" at least with CC 5.8 is reported only at the end of a
+# compilation unit that uses std::hash_map<sal_Int64, sal_Int64> (see
+# sfx2/source/toolbox/imgmgr.cxx:1.27) and thus unfortunately needs to be
+# disabled globally
+CFLAGSWARNCC=
+CFLAGSWARNCXX=+w2 -erroff=doubunder,inllargeuse,inllargeint,notemsource,reftotemp,truncwarn
+CFLAGSWARNCXX=
+CFLAGSWALLCC=$(CFLAGSWARNCC)
+CFLAGSWALLCXX=$(CFLAGSWARNCXX)
+CFLAGSWERRCC=-errwarn=%all
+CFLAGSWERRCXX=-xwe
+
+# Once all modules on this platform compile without warnings, set
+# COMPILER_WARN_ERRORS=TRUE here instead of setting MODULES_WITH_WARNINGS (see
+# settings.mk):
+MODULES_WITH_WARNINGS := \
+ b_server \
+ basctl \
+ basebmp \
+ canvas \
+ chart2 \
+ cppcanvas \
+ desktop \
+ devtools \
+ dxcanvas \
+ extensions \
+ filter \
+ glcanvas \
+ lingu \
+ r_tools \
+ sc \
+ sd \
+ slideshow \
+ starmath \
+ svx \
+ sw \
+ writerperfect \
+ xmlsecurity
+
+
+# switches for dynamic and static linking
+STATIC =
+DYNAMIC =
+
+# this is needed to allow stl headers to include os2.h instead of svpm.h
+# in earlier stages of project build. Once svpm.h is in place, we can
+# compile without this flag.
+.IF "$(STL_OS2_BUILDING)" != ""
+CFLAGS+=-DSTL_OS2_BUILDING
+CFLAGSCXX+=-DSTL_OS2_BUILDING
+.ENDIF
+
+# name of linker
+LINK*=gcc
+# default linker flags
+LINKFLAGS= -Zbin-files -Zmap
+#27/01/06 bin-files confuses transex/rsc work, removed.
+LINKFLAGS= -Zno-fork -Zhigh-mem -Zmap
+.IF "$(OS2_ARGS_WILD)" != ""
+LINKFLAGS+=-Zargs-wild -Zargs-resp
+.ENDIF
+
+.IF "$(aout)"==""
+#LINKFLAGS+= -Zlinker /NOI -Zlinker /PACKD:65536 -Zlinker /EXEPACK:2
+#LINKFLAGS+= -Zlinker /NOExtdictionary
+LINKFLAGS+= -Zomf
+#LINKFLAGS+= -Zlinker "DISABLE 1121"
+.ENDIF
+
+
+# linker flags for linking applications
+.IF "$(aout)"==""
+#LINKFLAGSAPPGUI= -Zlinker /PM:PM -Zstack 0x2000
+#LINKFLAGSAPPCUI= -Zlinker /PM:VIO
+.ELSE
+LINKFLAGSAPPGUI=
+LINKFLAGSAPPCUI=
+.ENDIF
+
+# linker flags for linking shared libraries
+LINKFLAGSSHLGUI= -Zdll #-Zsym
+LINKFLAGSSHLCUI= -Zdll #-Zsym
+
+.IF "$(aout)"==""
+LINKFLAGSTACK=-Zlinker /STACK:
+LINKFLAGSPROF=
+#LINKFLAGSDEBUG=-Zlinker /DEBUG
+LINKFLAGSDEBUG=-g
+LINKFLAGSOPT=-g
+.ELSE
+LINKFLAGSTACK=-Zstack
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=-g
+LINKFLAGSOPT=-s
+.ENDIF
+
+.IF "$(NO_BSYMBOLIC)"==""
+.IF "$(PRJNAME)" != "envtest"
+LINKFLAGSSHLGUI+=
+LINKFLAGSSHLCUI+=
+.ENDIF
+.ENDIF # "$(NO_BSYMBOLIC)"==""
+
+LINKVERSIONMAPFLAG=-Wl,--version-script
+
+SONAME_SWITCH=-Wl,-h
+
+# Sequence of libs does matter !
+
+#STDLIBCPP=stdc++ supc++ gcc_eh
+#STDLIBCPP=stdc++ gcc432
+STDLIBCPP=stdc432 gcc432
+
+# default objectfilenames to link
+STDOBJVCL=$(L)/salmain.obj
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+
+# libraries for linking applications
+STDLIBCUIST=$(STDLIBCPP)
+STDLIBGUIMT=$(STDLIBCPP)
+STDLIBCUIMT=$(STDLIBCPP)
+STDLIBGUIST=$(STDLIBCPP)
+# libraries for linking shared libraries
+STDSHLGUIMT=$(STDLIBCPP)
+STDSHLCUIMT=$(STDLIBCPP)
+
+LIBSTLPORT=$(DYNAMIC) stlp45.lib
+LIBSTLPORTST=$(STATIC) stlp45.lib $(DYNAMIC)
+
+
+# name of library manager
+LIBMGR=ar
+LIBFLAGS=crv
+
+.IF "$(aout)"==""
+LIBMGR=emxomfar -p2048
+.ENDIF
+
+# tool for generating import libraries
+IMPLIB=emximp
+IMPLIBFLAGS=-o
+
+MAPSYM=mapsym
+MAPSYMFLAGS=
+
+RC=wrc -bt=os2 -i$(PATH_EMXPGCC)\include
+RCFLAGS=-r $(RCFILES) -fo=$@
+RCLINK=wrc -bt=os2
+RCLINKFLAGS=
+RCSETVERSION=
+
+# platform specific identifier for shared libs
+DLLPOSTFIX=go
+DLLPRE=lib
+DLLPOST=.dll
+
diff --git a/solenv/inc/pkg_config.mk b/solenv/inc/pkg_config.mk
new file mode 100644
index 000000000000..3654083e76ad
--- /dev/null
+++ b/solenv/inc/pkg_config.mk
@@ -0,0 +1,49 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+.INCLUDE .IGNORE : pkgroot.mk
+
+.IF "$(PKGCONFIG_ROOT)"!=""
+PKG_CONFIG=$(PKGCONFIG_ROOT)/bin/pkg-config
+.IF "$(OS)"=="SOLARIS" && "$(CPUNAME)"=="SPARC" && "$(CPU)"=="U"
+PKG_CONFIG_PATH:=$(PKGCONFIG_ROOT)/lib/64/pkgconfig
+.ELSE
+PKG_CONFIG_PATH:=$(PKGCONFIG_ROOT)/lib/pkgconfig
+.ENDIF
+.EXPORT : PKG_CONFIG_PATH
+PKGCONFIG_PREFIX=--define-variable=prefix=$(PKGCONFIG_ROOT)
+.ELSE
+PKG_CONFIG*=pkg-config
+.IF "$(OS)"=="SOLARIS" && "$(CPUNAME)"=="SPARC" && "$(CPU)"=="U"
+PKG_CONFIG_PATH=/usr/lib/64/pkgconfig
+.EXPORT : PKG_CONFIG_PATH
+.ENDIF
+.ENDIF
+
+PKGCONFIG_CFLAGS:=$(shell @$(PKG_CONFIG) $(PKGCONFIG_PREFIX) --cflags $(PKGCONFIG_MODULES))
+PKGCONFIG_LIBS:=$(shell @$(PKG_CONFIG) $(PKGCONFIG_PREFIX) --libs $(PKGCONFIG_MODULES))
+CFLAGS+=$(PKGCONFIG_CFLAGS)
diff --git a/solenv/inc/postmac.h b/solenv/inc/postmac.h
new file mode 100644
index 000000000000..68f85b6c0f65
--- /dev/null
+++ b/solenv/inc/postmac.h
@@ -0,0 +1,52 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#undef Boolean
+#undef BOOL
+#undef Button
+#undef Byte
+#undef Control
+#undef Cursor
+#undef FontInfo
+#undef GetItem
+#undef MemoryBlock
+#undef Palette
+#undef Polygon
+#undef Point
+#undef Ptr
+#undef Region
+#undef Size
+#undef LSize
+#undef ModalDialog
+#undef SetCursor
+//#undef ShowWindow
+#undef StringPtr
+#undef DirInfo
+#undef ULONG
+#undef Line
+#undef TimeValue
+#undef Pattern
diff --git a/solenv/inc/postset.mk b/solenv/inc/postset.mk
new file mode 100644
index 000000000000..f16ccb554fc5
--- /dev/null
+++ b/solenv/inc/postset.mk
@@ -0,0 +1,150 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# Default ISO code used when no languages specified
+# This language will be always included!
+defaultlangiso=en-US
+
+# Complete list of all supported ISO codes
+completelangiso=af \
+ar \
+as-IN \
+be-BY \
+bo \
+bg \
+br \
+brx \
+bn \
+bn-BD \
+bn-IN \
+bs \
+by \
+ca \
+cs \
+cy \
+da \
+de \
+dgo \
+dz \
+el \
+en-GB \
+en-US \
+en-ZA \
+eo \
+es \
+et \
+eu \
+fa \
+fi \
+fr \
+ga \
+gd \
+gl \
+gu \
+gu-IN \
+he \
+hi-IN \
+hr \
+hu \
+is \
+it \
+ja \
+kid \
+ky \
+ka \
+kk \
+km \
+kn \
+ko \
+kok \
+ks \
+ku \
+lo \
+lt \
+lv \
+mai \
+mk \
+mn \
+mni \
+ms \
+ml-IN \
+mr-IN \
+my \
+ne \
+nb \
+nl \
+nn \
+nr \
+ns \
+om \
+oc \
+or-IN \
+pap \
+pa-IN \
+pl \
+ps \
+pt \
+pt-BR \
+ro \
+ru \
+rw \
+sat \
+sa-IN \
+si \
+sc \
+sd \
+sq \
+sk \
+sl \
+sh \
+sr \
+ss \
+st \
+sv \
+sw \
+sw-TZ \
+te-IN \
+ti-ER \
+ta \
+ta-IN \
+th \
+tn \
+tr \
+ts \
+tg \
+ug \
+ur-IN \
+uk \
+uz \
+ve \
+vi \
+xh \
+zh-CN \
+zh-TW \
+zu
+
+alllangiso=$(strip $(defaultlangiso) $(subst,$(defaultlangiso), $(uniq $(subst,ALL,$(completelangiso) $(WITH_LANG)))))
diff --git a/solenv/inc/preinclude.h b/solenv/inc/preinclude.h
new file mode 100644
index 000000000000..dee99bc6d3f4
--- /dev/null
+++ b/solenv/inc/preinclude.h
@@ -0,0 +1,38 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+/* HACK: include certain standard header to enable build on glibc-2.2 systems
+ * and compile vs. glibc-2.1 header
+ *
+ * please add more if necessary
+ */
+#include <stdlib.h>
+#include <stddef.h>
+#include <stdio.h>
+#include <string.h>
+#include <wchar.h>
+#include <features.h>
+#include <assert.h>
diff --git a/solenv/inc/premac.h b/solenv/inc/premac.h
new file mode 100644
index 000000000000..451a33b8ab00
--- /dev/null
+++ b/solenv/inc/premac.h
@@ -0,0 +1,52 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+
+#define Boolean MacOSBoolean
+#define BOOL MacOSBOOL
+#define Button MacOSButton
+#define Byte MacOSByte
+#define Control MacOSControl
+#define Cursor MacOSCursor
+#define FontInfo MacOSFontInfo
+#define MemoryBlock MacOSMemoryBlock
+#define Point MacOSPoint
+#define Size MacOSSize
+#define Region MacOSRegion
+#define Polygon MacOSPolygon
+#define Ptr MacOSPtr
+#define Palette MacOSPalette
+#define LSize MacOSLSize
+#define ModalDialog MacOSModalDialog
+#define SetCursor MacOSSetCursor
+//#define ShowWindow MacOSShowWindow
+#define StringPtr MacOSStringPtr
+#define DirInfo MacOSDirInfo
+#define ULONG MacOSULONG
+#define Line MacOSLine
+#define TimeValue MacOSTimeValue
+#define Pattern MacOSPattern
diff --git a/solenv/inc/pstrules.mk b/solenv/inc/pstrules.mk
new file mode 100644
index 000000000000..74c50ae9616d
--- /dev/null
+++ b/solenv/inc/pstrules.mk
@@ -0,0 +1,176 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ second_build rules +++++++++++++++++++++++++++++++++++++
+#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(SECOND_BUILD)"!=""
+.IF "$($(SECOND_BUILD)_OBJFILES)"!=""
+
+$(OBJ)/$(SECOND_BUILD)_%.obj : %.cxx
+ @echo "Making: " $@
+.IF "$(GUI)"=="UNX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXOBJ) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$(SECOND_BUILD)_$*.o $(CFLAGSINCXX)$(PWD)/$*.cxx
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ELSE
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ >& $(NULLDEV) $(FI)
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$(SECOND_BUILD)_$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx
+.ENDIF
+
+$(OBJ)/$(SECOND_BUILD)_%.obj : %.c
+ @echo "Making: " $@
+.IF "$(GUI)"=="UNX"
+.IF "$(TEST)"!=""
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) -E $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$(SECOND_BUILD)_$*.o $*.c
+.ELSE
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$(SECOND_BUILD)_$*.o $*.c
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ENDIF
+.ELSE
+ @$(TYPE) $(mktmp $(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)\$(SECOND_BUILD)_$*.obj $*.c )
+ @echo.
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)\$(SECOND_BUILD)_$*.obj $*.c
+.ELSE
+ $(COMMAND_ECHO)$(CC) @$(mktmp $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)\$(SECOND_BUILD)_$*.obj $*.c )
+.ENDIF
+ $(SEMADEBUG)
+.ENDIF
+
+.ENDIF # "$($(SECOND_BUILD)_OBJFILES)"!=""
+
+.IF "$($(SECOND_BUILD)_SLOFILES)"!=""
+
+$(SLO)/$(SECOND_BUILD)_%.obj : %.cxx
+ @echo "Making: " $@
+.IF "$(GUI)"=="UNX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$(SECOND_BUILD)_$*.o $(CFLAGSINCXX)$(PWD)/$*.cxx
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ELSE
+ @-$(RM) $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$(SECOND_BUILD)_$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx
+.ELSE
+ $(COMMAND_ECHO)$(CXX) @$(mktmp $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$(SECOND_BUILD)_$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx )
+.ENDIF
+.ENDIF
+
+$(SLO)/$(SECOND_BUILD)_%.obj : %.c
+ @echo "Making: " $@
+.IF "$(GUI)"=="UNX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$(SECOND_BUILD)_$*.o $*.c
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ELSE
+ @-$(RM) $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$(SECOND_BUILD)_$*.obj $*.c
+.ELSE
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$(SECOND_BUILD)_$*.obj $*.c )
+ $(COMMAND_ECHO)$(CC) @$(mktmp $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $($(SECOND_BUILD)CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$(SECOND_BUILD)_$*.obj $*.c )
+.ENDIF
+.ENDIF
+
+.ENDIF # "$($(SECOND_BUILD)_SLOFILES)"!=""
+.ENDIF # "$(SECOND_BUILD)"!=""
+
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ srcipting rules ++++++++++++++++++++++++++++++++++++++++
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(PARFILES)"!=""
+ULFPARFILES=$(foreach,i,$(ULFFILES) $(foreach,j,$(SCP_PRODUCT_TYPE) $(PAR)/$j/$(i:b).par))
+MOREPARFILES=$(foreach,i,$(PARFILES) $(foreach,j,$(SCP_PRODUCT_TYPE) $(PAR)/$j/$i ))
+ALLPARFILES=$(uniq $(ULFPARFILES) $(MOREPARFILES))
+
+SCP_PRODUCT_TYPE*=FAT
+
+.IF "$(GUI)" == "WNT"
+LANGFILEEXT=mlf
+.ELSE
+LANGFILEEXT=jlf
+.ENDIF
+
+$(PAR)/%.par :
+ @echo "Making: " $@
+ @@-$(MKDIR) $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))}
+.IF "$(GUI)"=="WNT"
+ $(COMMAND_ECHO)$(CPPLCC) -+ -P $(INCLUDE) $(CDEFS) $(SCPDEFS) -DDLLPOSTFIX=$(DLLPOSTFIX) $(*:b).scp > $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).pre
+.ENDIF
+# YD: INCLUDE macro too long, include only few items (scp2 compile)
+.IF "$(GUI)"=="OS2"
+ $(CPPLCC) -+ -P -I..\..\inc -I..\..\os2gcci.pro\inc $(CDEFS) $(SCPDEFS) -DDLLPOSTFIX=$(DLLPOSTFIX) $(*:b).scp > $(MISC)$/{$(subst,$(@:d:d:d), $(@:d:d))}$/$(*:b).pre
+.ENDIF
+.IF "$(GUI)"=="UNX"
+ $(COMMAND_ECHO)$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/cpp.lcc -+ -P $(CDEFS) $(SCPDEFS) -DDLLPOSTFIX=$(DLLPOSTFIX) -I. -I$(INC) -I$(INCLOCAL) -I$(INCGUI) -I$(INCCOM) $(SOLARINC) $(*:b).scp > $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).pre
+.ENDIF
+.IF "$(common_build_srs)"!=""
+ $(COMMAND_ECHO)$(SCPCOMP) -l {$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(TARGET)/$(@:b).$(LANGFILEEXT)} -s $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).pre -o $@
+.ELSE # "$(common_build_srs)"!=""
+ $(COMMAND_ECHO)$(SCPCOMP) -l {$(MISC)/$(TARGET)/$(@:b).$(LANGFILEEXT)} -s $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).pre -o $@
+.ENDIF # "$(common_build_srs)"!=""
+# hacked version
+# $(COMMAND_ECHO)$(SCPCOMP) -l $(@:b).$(LANGFILEEXT) -s $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).pre -o $@
+
+.ENDIF # "$(PARFILES)"!=""
+
+.IF "$(TESTDIR)"!=""
+
+# workaround for strange dmake bug:
+# if the previous block was a rule or a target, "\#" isn't recognized
+# as an escaped "#". if it was an assignment, escaping works...
+some_unique_variable_name:=1
+
+.IF "$(OS)" == "WNT"
+REGEXP:="s/^[\#].*//"
+.ELSE
+REGEXP:='s/^[\#].*//'
+.ENDIF
+
+$(MISC)/%.exp : sce/%.sce
+ @@-$(RM) $@
+ @@-$(RM) $(@:d)$(@:b).tst
+ $(COMMAND_ECHO)$(TYPE) $< | sed $(REGEXP) | sed "s/^/test_/" > $(@:d)$(@:b).tst
+ $(COMMAND_ECHO)$(TYPE) $(@:d)$(@:b).tst | sed "/test_./ w $@"
+
+.ENDIF # "$(TESTDIR)"!=""
diff --git a/solenv/inc/rules.mk b/solenv/inc/rules.mk
new file mode 100644
index 000000000000..7ad8fd19f33f
--- /dev/null
+++ b/solenv/inc/rules.mk
@@ -0,0 +1,804 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+MKFILENAME:=RULES.MK
+
+$(OBJ)/%.obj : %.cxx
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(GUI)"=="UNX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXOBJ) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $(CFLAGSINCXX)$(PWD)/$*.cxx
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+.IF "$(noadjust)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(noadjust)"==""
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ELSE
+ @@-$(RM) $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx
+.ELSE
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx
+.ENDIF
+.ENDIF
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(OBJ) $(MKDEPFLAGS) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $< ) > $(MISC)/o_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=o_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+
+$(OBJ)/%.obj : %.cpp
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(GUI)"=="UNX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXOBJ) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $(CFLAGSINCXX)$(PWD)/$*.cpp
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ELSE
+ @@-$(RM) $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cpp
+.ELSE
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cpp
+.ENDIF
+.ENDIF
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(OBJ) $(MKDEPFLAGS) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $< ) > $(MISC)/o_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=o_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+
+$(OBJ)/%.obj : %.cc
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(GUI)"=="UNX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXOBJ) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $(CFLAGSINCXX)$(PWD)/$*.cc
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @+$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ELSE
+ @@$(RM) $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cc
+.ELSE
+ $(COMMAND_ECHO)$(CXX) @$(mktmp $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cc )
+.ENDIF
+.ENDIF
+
+.IF "$(ENABLE_PCH)"!=""
+# workaround for file locking problems on network volumes
+.IF "$(NETWORK_BUILD)"==""
+PCHOUTDIR=$(SLO)/pch
+PCHEXOUTDIR=$(SLO)/pch_ex
+.ELSE # "$(NETWORK_BUILD)"==""
+PCHOUTDIR=$(TMP)/$(BUILD)$(CWS_WORK_STAMP)$(PRJNAME)$(PROEXT)
+PCHEXOUTDIR=$(TMP)/$(BUILD)$(CWS_WORK_STAMP)$(PRJNAME)_ex$(PROEXT)
+.ENDIF # "$(NETWORK_BUILD)"==""
+$(SLO)/precompiled.% .PHONY:
+ -$(MKDIRHIER) $(SLO)/pch
+.IF "$(COM)"=="MSC"
+.IF "$(NETWORK_BUILD)"!=""
+ -$(MKDIRHIER) $(PCHOUTDIR)
+.IF "$(HAVE_BIG_TMP)"==""
+ $(COMMAND_ECHO)-$(COPY) $(SLO)/pch/precompiled_$(PRJNAME).hxx$(PCHPOST) $(PCHOUTDIR)/precompiled_$(PRJNAME).hxx$(PCHPOST)
+.ENDIF # "$(HAVE_BIG_TMP)"==""
+.ENDIF # "$(NETWORK_BUILD)"!=""
+ $(COMMAND_ECHO)$(CXX) @$(mktmp -Fp$(PCHOUTDIR)/precompiled_$(PRJNAME).hxx$(PCHPOST) $(CFLAGS_CREATE_PCH) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGS_NO_EXCEPTIONS) -DEXCEPTIONS_OFF $(CFLAGSAPPEND) $(INCPCH)/precompiled_$(PRJNAME).cxx)
+.IF "$(NETWORK_BUILD)"!=""
+ $(COMMAND_ECHO)$(COPY) $(PCHOUTDIR)/precompiled_$(PRJNAME).hxx$(PCHPOST) $(SLO)/pch/precompiled_$(PRJNAME).hxx$(PCHPOST)
+.IF "$(HAVE_BIG_TMP)"==""
+ $(COMMAND_ECHO)$(RM) $(PCHOUTDIR)/precompiled_$(PRJNAME).hxx$(PCHPOST)
+ $(COMMAND_ECHO)$(RMDIR) $(PCHOUTDIR)
+.ENDIF # "$(HAVE_BIG_TMP)"==""
+.ENDIF # "$(NETWORK_BUILD)"!=""
+.ELIF "$(COM)"=="GCC" && "$(CCNUMVER)">="000300040000"
+ $(COMMAND_ECHO)$(CXX) -o$(SLO)/pch/precompiled_$(PRJNAME).hxx$(PCHPOST) $(CFLAGS_CREATE_PCH) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGS_NO_EXCEPTIONS) -DEXCEPTIONS_OFF $(CFLAGSAPPEND) $(INCPCH)/precompiled_$(PRJNAME).hxx
+ @echo "#error Tried to use wrong precompiled header" > $(SLO)/pch/precompiled_$(PRJNAME).hxx
+.ELSE # "$(COM)"=="MSC"
+ @$(TOUCH) $(SLO)/pch/precompiled_$(PRJNAME).hxx$(PCHPOST)
+.ENDIF # "$(COM)"=="MSC"
+ @echo USED_PCHFLAGS=$(CFLAGS)$(CFLAGSCXX)$(CFLAGSCXXSLO)$(CFLAGSSLO)$(CDEFS)$(CDEFSSLO)$(CDEFSMT)$(CFLAGS_NO_EXCEPTIONS) -DEXCEPTIONS_OFF$(CFLAGSAPPEND)> $(INCCOM)/pch.mk
+
+$(SLO)/precompiled_ex.% .PHONY:
+ -$(MKDIRHIER) $(SLO)/pch_ex
+.IF "$(COM)"=="MSC"
+.IF "$(NETWORK_BUILD)"!=""
+ -$(MKDIRHIER) $(PCHEXOUTDIR)
+.IF "$(HAVE_BIG_TMP)"==""
+ $(COMMAND_ECHO)-$(COPY) $(SLO)/pch_ex/precompiled_$(PRJNAME).hxx$(PCHPOST) $(PCHEXOUTDIR)/precompiled_$(PRJNAME).hxx$(PCHPOST)
+.ENDIF # "$(HAVE_BIG_TMP)"==""
+.ENDIF # "$(NETWORK_BUILD)"!=""
+ $(COMMAND_ECHO)$(CXX) @$(mktmp -Fp$(PCHEXOUTDIR)/precompiled_$(PRJNAME).hxx$(PCHPOST) $(CFLAGS_CREATE_PCH:s/pchname/pchname_ex/) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSEXCEPTIONS) -DEXCEPTIONS_ON $(CFLAGSAPPEND) $(INCPCH)/precompiled_$(PRJNAME).cxx)
+.IF "$(NETWORK_BUILD)"!=""
+ $(COMMAND_ECHO)$(COPY) $(PCHEXOUTDIR)/precompiled_$(PRJNAME).hxx$(PCHPOST) $(SLO)/pch_ex/precompiled_$(PRJNAME).hxx$(PCHPOST)
+.IF "$(HAVE_BIG_TMP)"==""
+ $(COMMAND_ECHO)$(RM) $(PCHEXOUTDIR)/precompiled_$(PRJNAME).hxx$(PCHPOST)
+ $(COMMAND_ECHO)$(RMDIR) $(PCHEXOUTDIR)
+.ENDIF # "$(HAVE_BIG_TMP)"==""
+.ENDIF # "$(NETWORK_BUILD)"!=""
+.ELIF "$(COM)"=="GCC" && "$(CCNUMVER)">="000300040000"
+ $(COMMAND_ECHO)$(CXX) -o$(SLO)/pch_ex/precompiled_$(PRJNAME).hxx$(PCHPOST) $(CFLAGS_CREATE_PCH) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSEXCEPTIONS) -DEXCEPTIONS_ON $(CFLAGSAPPEND) $(INCPCH)/precompiled_$(PRJNAME).hxx
+ @echo "#error Tried to use wrong precompiled header" > $(SLO)/pch_ex/precompiled_$(PRJNAME).hxx
+.ELSE # "$(COM)"=="MSC"
+ @$(TOUCH) $(SLO)/pch_ex/precompiled_$(PRJNAME).hxx$(PCHPOST)
+.ENDIF # "$(COM)"=="MSC"
+ @echo USED_EXCEPTIONS_PCHFLAGS=$(subst,$(CFLAGSDEBUG), $(CFLAGS))$(CFLAGSCXX)$(CFLAGSCXXSLO)$(CFLAGSSLO)$(CDEFS)$(CDEFSSLO)$(CDEFSMT)$(CFLAGSEXCEPTIONS) -DEXCEPTIONS_ON$(CFLAGSAPPEND)> $(INCCOM)/pch_ex.mk
+
+.INCLUDE .IGNORE : $(INCCOM)/pch.mk
+.INCLUDE .IGNORE : $(INCCOM)/pch_ex.mk
+.ENDIF # "$(ENABLE_PCH)"!=""
+
+$(SLO)/%.obj : %.cxx
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(ENABLE_PCH)"!=""
+# just a helper var
+ @noop $(assign used_exc_switches=$(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)))
+# cleanup first
+ @noop $(assign ACT_PCH_SWITCHES:=$(NULL))
+# eq: first string is a copy of the compile line,
+# second generated by pch creation
+# use pch with exception support
+ @noop $(assign ACT_PCH_SWITCHES+=$(eq,$(strip $(USED_EXCEPTIONS_PCHFLAGS)),$(strip $(subst,$(CFLAGSDEBUG), $(CFLAGS))$(CFLAGSCXX)$(CFLAGSCXXSLO)$(CFLAGSSLO)$(CDEFS:s/\//)$(CDEFSSLO)$(CDEFSMT)$(used_exc_switches)$(CFLAGSAPPEND)) $(CFLAGS_USE_EXCEPTIONS_PCH) $(NULL)))
+# use pch without exception support
+ @noop $(assign ACT_PCH_SWITCHES+=$(eq,$(strip $(USED_PCHFLAGS)),$(strip $(subst,$(CFLAGSDEBUG), $(CFLAGS))$(CFLAGSCXX)$(CFLAGSCXXSLO)$(CFLAGSSLO)$(CDEFS:s/\//)$(CDEFSSLO)$(CDEFSMT)$(used_exc_switches)$(CFLAGSAPPEND)) $(CFLAGS_USE_PCH) $(NULL)))
+.ENDIF # "$(ENABLE_PCH)"!=""
+.IF "$(GUI)"=="UNX"
+.IF "$(TEST)"!=""
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) -E $(CFLAGSINCXX)$(PWD)/$*.cxx
+.ELSE
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CAPTURE_COMMAND) $(CXX) $(ACT_PCH_SWITCHES) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$*.o $(CFLAGSINCXX)$(PWD)/$*.cxx $(CAPTURE_OUTPUT)
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"=="" && "$(CAPTURE_COMMAND)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ENDIF
+.ELSE # "$(GUI)"=="UNX"
+ @@-$(RM) $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CAPTURE_COMMAND) $(CXX) $(ACT_PCH_SWITCHES) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx $(CAPTURE_OUTPUT)
+.ELSE
+ $(COMMAND_ECHO)$(CAPTURE_COMMAND) $(CXX) $(ACT_PCH_SWITCHES) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx $(CAPTURE_OUTPUT)
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)"=="UNX"
+.IF "$(nodep)"==""
+# fixme: write to file
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $< ) > $(MISC)/s_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=s_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+
+$(SLO)/%.obj : %.cpp
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(GUI)"=="UNX"
+.IF "$(TEST)"!=""
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) -E $(CFLAGSINCXX)$(PWD)/$*.cpp
+.ELSE
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$*.o $(CFLAGSINCXX)$(PWD)/$*.cpp
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ENDIF
+.ELSE
+ @@-$(RM) $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cpp
+.ELSE
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cpp
+.ENDIF
+.ENDIF
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $< ) > $(MISC)/s_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=s_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+
+$(SLO)/%.obj : $(MISC)/%.cxx
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(INPATH)/misc/$(COMPILE_ECHO_FILE)
+.IF "$(GUI)"=="UNX"
+.IF "$(TEST)"!=""
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) -E $(CFLAGSINCXX)$(MISC)/$*.cxx
+.ELSE
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$*.o $(CFLAGSINCXX)$(MISC)/$*.cxx
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ENDIF
+.ELSE
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$*.obj $(CFLAGSINCXX)$(MISC)/$*.cxx
+.ELSE
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$*.obj $(CFLAGSINCXX)$(MISC)/$*.cxx
+.ENDIF
+.ENDIF
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $@ ) > $(MISC)/s_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=s_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+
+$(SLO)/%.obj : $(MISC)/%.cc
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(INPATH)/misc/$(COMPILE_ECHO_FILE)
+.IF "$(GUI)"=="UNX"
+.IF "$(TEST)"!=""
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) -E $(CFLAGSINCXX)$(MISC)/$*.cc
+.ELSE
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXSLO) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$*.o $(CFLAGSINCXX)$(MISC)/$*.cc
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @+$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ENDIF
+.ELSE
+ $(COMMAND_ECHO)$(CXX) @$(mktmp $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$*.obj $(CFLAGSINCXX)$(MISC)/$*.cc )
+.ENDIF
+
+$(OBJ)/%.obj : $(MISC)/%.cxx
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(INPATH)/misc/$(COMPILE_ECHO_FILE)
+.IF "$(GUI)"=="UNX"
+.IF "$(TEST)"!=""
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXOBJ) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) -E $(CFLAGSINCXX)$(MISC)/$*.cxx
+.ELSE
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSCXXOBJ) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $(CFLAGSINCXX)$(MISC)/$*.cxx
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ENDIF
+.ELSE
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$*.obj $(CFLAGSINCXX)$(MISC)/$*.cxx
+.ELSE
+ $(COMMAND_ECHO)$(CXX) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$*.obj $(CFLAGSINCXX)$(MISC)/$*.cxx
+.ENDIF
+.ENDIF
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(OBJ) $(MKDEPFLAGS) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $< ) > $(MISC)/o_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=o_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+
+$(OBJ)/%.obj : %.c
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(GUI)"=="UNX"
+.IF "$(TEST)"!=""
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) -E $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $*.c
+.ELSE
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $*.c
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+.IF "$(noadjust)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(noadjust)"==""
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ENDIF
+.ELSE
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$*.obj $*.c
+.ELSE
+ .IF "$(VERBOSE)" == "TRUE"
+ -@echo Cflags: $(CFLAGS) $(INCLUDE)
+ .ENDIF
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$*.obj $*.c
+.ENDIF
+.ENDIF
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(OBJ) $(MKDEPFLAGS) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $< ) > $(MISC)/o_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=o_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+
+$(OBJ)/%.obj : $(MISC)/%.c
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(INPATH)/misc/$(COMPILE_ECHO_FILE)
+.IF "$(GUI)"=="UNX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $(MISC)/$*.c
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ELSE
+ @@-$(RM) $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$*.obj $(MISC)/$*.c
+.ELSE
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(OBJ)/$*.obj $(MISC)/$*.c
+.ENDIF
+.ENDIF
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(OBJ) $(MKDEPFLAGS) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $< ) > $(MISC)/o_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=o_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+
+$(SLO)/%.obj : $(MISC)/%.c
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(INPATH)/misc/$(COMPILE_ECHO_FILE)
+.IF "$(GUI)"=="UNX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$*.o $(MISC)/$*.c
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ELSE
+ @@-$(RM) $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$*.obj $(MISC)/$*.c
+.ELSE
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$*.obj $(MISC)/$*.c
+.ENDIF
+.ENDIF
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $< ) > $(MISC)/s_$(@:f:s/.obj/.dpcc/)
+# avoid _version objects (see tg_shl.mk) - quite hacky...
+ @noop $(!eq,$@,$(@:s/_version.obj/.obj/) $(NULL) $(assign DEPS_MADE+:=s_$(@:f:s/.obj/.dpcc/)))
+.ENDIF # "$(nodep)"==""
+
+$(SLO)/%.obj : %.c
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(GUI)"=="UNX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$*.o $*.c
+.IF "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ $(COMMAND_ECHO)$(ADJUSTVISIBILITY) -p $(@:s/.obj/.o/)
+.ENDIF # "$(OS)"=="SOLARIS" && "$(product)"=="full" && "$(debug)"==""
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ELSE
+ @@-$(RM) $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$*.obj $*.c
+.ELSE
+ $(COMMAND_ECHO)$(CC) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO)/$*.obj $*.c
+.ENDIF
+.ENDIF
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $< ) > $(MISC)/s_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=s_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+
+# Objective-C files
+$(OBJ)/%.obj : %.m
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(OS)"=="MACOSX"
+.IF "$(TEST)"!=""
+ $(COMMAND_ECHO)$(objc) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(OBJCFLAGS) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) -E $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $*.m
+.ELSE
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(objc) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(OBJCFLAGS) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $*.m
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ENDIF
+.ELSE # "$(OS)"=="MACOSX"
+ @echo "No recipe for compiling Objective-C files is available for this platform"
+.ENDIF "$(OS)"=="MACOSX"
+
+# Objective-C files
+$(OBJ)/%.obj : $(MISC)/%.m
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(INPATH)/misc/$(COMPILE_ECHO_FILE)
+.IF "$(OS)"=="MACOSX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(objc) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(OBJCFLAGS) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $(MISC)/$*.m
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ELSE # "$(OS)"=="MACOSX"
+ @echo "No recipe for compiling Objective-C files is available for this platform"
+.ENDIF "$(OS)"=="MACOSX"
+
+# Objective-C files
+$(SLO)/%.obj : $(MISC)/%.m
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(INPATH)/misc/$(COMPILE_ECHO_FILE)
+.IF "$(OS)"=="MACOSX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(objc) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(OBJCFLAGS) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$*.o $(MISC)/$*.m
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ELSE # "$(OS)"=="MACOSX"
+ @echo "No recipe for compiling Objective-C files is available for this platform"
+.ENDIF "$(OS)"=="MACOSX"
+
+# Objective-C files
+$(SLO)/%.obj : %.m
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(OS)"=="MACOSX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(objc) $(CFLAGS) $(INCLUDE_C) $(CFLAGSCC) $(OBJCFLAGS) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$*.o $*.m
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ELSE # "$(OS)"=="MACOSX"
+ @echo "No recipe for compiling Objective-C files is available for this platform"
+.ENDIF "$(OS)"=="MACOSX"
+
+# dependencies c / c++
+
+not_existing/s_%.dpcc : %.c;@noop $(assign all_local_slo+:=$<)
+not_existing/o_%.dpcc : %.c;@noop $(assign all_local_obj+:=$<)
+
+# Objective-C++ files
+$(OBJ)/%.obj : %.mm
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(OS)"=="MACOSX"
+.IF "$(TEST)"!=""
+ $(COMMAND_ECHO)$(objcpp) $(CFLAGS) $(INCLUDE) $(CFLAGSCC) $(OBJCXXFLAGS) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) -E $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $*.mm
+.ELSE
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(objcpp) $(CFLAGS) $(INCLUDE) $(CFLAGSCC) $(OBJCXXFLAGS) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $*.mm
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.ENDIF
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(OBJ) $(MKDEPFLAGS) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $< ) > $(MISC)/o_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=o_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+.ELSE # "$(OS)"=="MACOSX"
+ @echo "No recipe for compiling Objective-C++ files is available for this platform"
+.ENDIF # "$(OS)"=="MACOSX"
+
+# Objective-C++ files
+$(OBJ)/%.obj : $(MISC)/%.mm
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(INPATH)/misc/$(COMPILE_ECHO_FILE)
+.IF "$(OS)"=="MACOSX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(objcpp) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(OBJCXXFLAGS) $(CFLAGSOBJ) $(CDEFS) $(CDEFSOBJ) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(OBJ)/$*.o $(MISC)/$*.mm
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(OBJ) $(MKDEPFLAGS) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $< ) > $(MISC)/o_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=o_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+.ELSE # "$(OS)"=="MACOSX"
+ @echo "No recipe for compiling Objective-C++ files is available for this platform"
+.ENDIF # "$(OS)"=="MACOSX"
+
+# Objective-C++ files
+$(SLO)/%.obj : $(MISC)/%.mm
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(INPATH)/misc/$(COMPILE_ECHO_FILE)
+.IF "$(OS)"=="MACOSX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(objcpp) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(OBJCXXFLAGS) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$*.o $(MISC)/$*.mm
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $< ) > $(MISC)/s_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=s_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+.ELSE # "$(OS)"=="MACOSX"
+ @echo "No recipe for compiling Objective-C++ files is available for this platform"
+.ENDIF # "$(OS)"=="MACOSX"
+
+# Objective-C++ files
+$(SLO)/%.obj : %.mm
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(OS)"=="MACOSX"
+ @$(RM) $@ $(@:s/.obj/.o/)
+ $(COMMAND_ECHO)$(objcpp) $(CFLAGS) $(INCLUDE) $(CFLAGSCXX) $(OBJCXXFLAGS) $(CFLAGSSLO) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ) $(SLO)/$*.o $*.mm
+ @$(IFEXIST) $(@:s/.obj/.o/) $(THEN) $(TOUCH) $@ $(FI)
+.IF "$(nodep)"==""
+ $(COMMAND_ECHO)$(MAKEDEPEND) @$(mktmp -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $< ) > $(MISC)/s_$(@:f:s/.obj/.dpcc/)
+ @noop $(assign DEPS_MADE+:=s_$(@:f:s/.obj/.dpcc/))
+.ENDIF # "$(nodep)"==""
+.ELSE # "$(OS)"=="MACOSX"
+ @echo "No recipe for compiling Objective-C++ files is available for this platform"
+.ENDIF # "$(OS)"=="MACOSX"
+
+$(MISC)/%.dpslo :
+ @echo "Making: " $(@:f)
+ @@$(RM) $@
+ @@-$(CDD) $(MISC) && $(!null,$(all_local_slo) $(TYPE:s/+//) echo #) $(foreach,i,$(all_local_slo:b:+".dpcc") s_$(i)) > $(@:f)
+ @@-$(CDD) $(MISC) && $(!null,$(all_misc_slo) $(TYPE:s/+//) echo #) $(foreach,i,$(all_misc_slo:b:+".dpcc") s_$(i)) >> $(@:f)
+ @$(TYPE) $(mktmp $(foreach,i,$(all_local_slo:b:+".dpcc") $(@:s#\#/#:^"\n") : $(MISC:s#\#/#)/s_$i) $(foreach,i,$(all_misc_slo:b:+".dpcc") $(@:s#\#/#:^"\n") : $(MISC:s#\#/#)/s_$i)) >> $@
+ @$(TYPE) $(mktmp $(TARGET)_known_dpcc+=$(all_local_slo:b:+".dpcc":^"s_") $(all_misc_slo:b:+".dpcc":^"s_")) >> $@
+
+$(MISC)/%.dpobj :
+ @echo "Making: " $(@:f)
+ @@$(RM) $@
+ @@-$(CDD) $(MISC) && $(!null,$(all_local_obj) $(TYPE:s/+//) echo #) $(foreach,i,$(all_local_obj:b:+".dpcc") o_$(i)) > $(@:f)
+ @@-$(CDD) $(MISC) && $(!null,$(all_misc_obj) $(TYPE:s/+//) echo #) $(foreach,i,$(all_misc_obj:b:+".dpcc") o_$(i)) >> $(@:f)
+ @$(TYPE) $(mktmp $(foreach,i,$(all_local_obj:b:+".dpcc") $(@:s#\#/#:^"\n") : $(MISC:s#\#/#)/o_$i) $(foreach,i,$(all_misc_obj:b:+".dpcc") $(@:s#\#/#:^"\n") : $(MISC:s#\#/#)/o_$i)) >> $@
+ @$(TYPE) $(mktmp $(TARGET)_known_dpcc+=$(all_local_obj:b:+".dpcc":^"s_") $(all_misc_obj:b:+".dpcc":^"s_")) >> $@
+
+# see also %.dpslo
+not_existing/s_%.dpcc : %.cxx;@noop $(assign all_local_slo+:=$<)
+not_existing/o_%.dpcc : %.cxx;@noop $(assign all_local_obj+:=$<)
+
+not_existing/s_%.dpcc : %.cpp;@noop $(assign all_local_slo+:=$<)
+not_existing/o_%.dpcc : %.cpp;@noop $(assign all_local_obj+:=$<)
+
+not_existing/s_%.dpcc : $(MISC)/%.c;@noop $(assign all_misc_slo+:=$<)
+not_existing/o_%.dpcc : $(MISC)/%.c;@noop $(assign all_misc_obj+:=$<)
+
+not_existing/s_%.dpcc : $(MISC)/%.cxx;@noop $(assign all_misc_slo+:=$<)
+not_existing/o_%.dpcc : $(MISC)/%.cxx;@noop $(assign all_misc_obj+:=$<)
+
+not_existing/s_%.dpcc : %.mm;@noop $(assign all_local_slo+:=$<)
+not_existing/o_%.dpcc : %.mm;@noop $(assign all_local_obj+:=$<)
+
+not_existing/s_%.dpcc : $(MISC)/%.mm;@noop $(assign all_misc_slo+:=$<)
+not_existing/o_%.dpcc : $(MISC)/%.mm;@noop $(assign all_misc_obj+:=$<)
+
+# dependencies objective-c
+
+$(MISC)/s_%.dpcc : %.m
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(MAKEDEPEND) -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $< > $@
+ @echo $@ : $(SLO)/$(<:b).obj >> $@
+
+$(MISC)/o_%.dpcc : %.m
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(MAKEDEPEND) -f - -p$(OBJ) $(MKDEPFLAGS) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $< > $@
+ @echo $@ : $(OBJ)/$(<:b).obj >> $@
+
+$(MISC)/s_%.dpcc : $(MISC)/%.m
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ $(COMMAND_ECHO)$(MAKEDEPEND) -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $< | sed s\#$(MISC)/\#\# > $@
+.ELSE # "$(GUI)"=="UNX"
+ $(COMMAND_ECHO)$(MAKEDEPEND) -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $< | $(SED) s/$(MISC:s/\/\\/)\\// > $@
+.ENDIF # "$(GUI)"=="UNX"
+ @echo $@ : $(SLO)/$(<:b).obj >> $@
+
+$(MISC)/o_%.dpcc : $(MISC)/%.m
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ $(COMMAND_ECHO)$(MAKEDEPEND) -f - -p$(OBJ) $(MKDEPFLAGS) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $< | sed s\#$(MISC)/\#\# > $@
+.ELSE # "$(GUI)"=="UNX"
+ $(COMMAND_ECHO)$(MAKEDEPEND) -f - -p$(OBJ) $(MKDEPFLAGS) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $< | $(SED) s/$(MISC:s/\/\\/)\\// > $@
+.ENDIF # "$(GUI)"=="UNX"
+ @echo $@ : $(OBJ)/$(<:b).obj >> $@
+
+# dependency dummy for *.s files
+
+$(MISC)/s_%.dpcc : %.s
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(MAKEDEPEND) -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $< > $@
+ @echo $@ : $(SLO)/$(<:b).obj >> $@
+
+$(MISC)/s_%.dpcc : $(SLO)/%.obj
+ @noop $(assign DEPS_MISSING+:=$(@:f))
+
+$(MISC)/o_%.dpcc : $(OBJ)/%.obj
+ @noop $(assign DEPS_MISSING+:=$(@:f))
+
+# dependencies script files
+
+$(MISC)/%.dpsc :
+ @@-$(RM) $@
+ @@-$(MKDIR) $(MISC)/{$(subst,$(@:d:d:d), $(@:d:d))}
+ $(COMMAND_ECHO)$(MAKEDEPEND) -f - -p$(PAR)/{$(subst,$(@:d:d:d), $(@:d:d))} -o.par -D{$(subst,$(@:d:d:d:u), $(@:d:d:u))}_PRODUCT $(CDEFS) -DDLLPOSTFIX=$(DLLPOSTFIX) -I. -I$(INC) -I$(INCLOCAL) -I$(INCGUI) -I$(INCCOM) $(*:b).scp > $@
+ @echo $@ : $(PAR)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).par >> $@
+ @echo $(PAR)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).par : $(*:b).scp >> $@
+
+# dependencies rc files (native resources for windows)
+
+$(MISC)/%.dprc :
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(MAKEDEPEND) -f - -p$(RES) -o.res $(RCLANGFLAGS_{$(subst,$(@:d:d:d:u), $(@:d:d:u))}:u:s/ //) $(CDEFS) -DDLLPOSTFIX=$(DLLPOSTFIX) -I. -I$(INC) -I$(INCLOCAL) -I$(INCGUI) -I$(INCCOM) -I$(SOLARENV)/inc $(*:b).rc >> $@
+# @echo $@ : $(RES)/{$(subst,$(@:d:d:d), $(@:d:d))}/$(*:b).res >> $@
+ @echo $@ : $(RES)/$(*:b).res >> $@
+
+$(MISC)/%.dpr :
+ @@noop
+.IF "$(nodep)"==""
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)dmake $(MFLAGS) $(MAKEFILE) $(CALLMACROS) NO_HIDS=true make_srs_deps=true $(DEPSRSFILES)
+ $(COMMAND_ECHO)-$(TYPE) $(MISC)/$(TARGET).*.dprr >> $@
+.ENDIF # "$(nodep)"==""
+
+$(MISC)/%.dpz :
+ @@noop
+.IF "$(nodep)"==""
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)dmake $(MFLAGS) $(MAKEFILE) $(CALLMACROS) make_zip_deps=true $(ZIPDEPFILES)
+ $(COMMAND_ECHO)$(TYPE) $(ZIPDEPFILES) $(mktmp $(NULL)) | grep -v "CVS" | grep -v "\.svn" >> $@
+ @echo zipdep_langs=$(alllangiso) >> $@
+ @@-$(RM) $(ZIPDEPFILES)
+.ENDIF # "$(nodep)"==""
+
+# Dependencies fuer java - Files
+
+$(MISC)/%.dpj :
+ @echo "Making: " $(@:f)
+.IF "$(nodep)"!=""
+.IF "$(GUI)"=="UNX"
+ @echo > $@
+.ELSE
+ @$(ECHONL) > $@
+.ENDIF
+.ELSE # "$(ndep)"==""
+.IF "$(GUI)"=="UNX"
+ @echo $(shell @$(STARDEP) @$(mktmp -o $@ -i $(CLASSDIR) $(foreach,i,$(JAVADEPINCLUDES:s/:/ /) -i $i) $(JAVACLASSFILES)))
+.ELSE
+ @echo javadeps
+ @echo $(shell @$(STARDEP) @$(mktmp -o $@ -i $(CLASSDIR) $(foreach,i,$(JAVADEPINCLUDES:s/;/ /) -i $i) $(JAVACLASSFILES)))
+.ENDIF
+.ENDIF # "$(nodep)"==""
+
+$(SLO)/%.obj : %.asm
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(COM)"=="GCC"
+.IF "$(ASM)"=="ml"
+ $(COMMAND_ECHO)$(ASM) $(AFLAGS) -D$(COM) /Fo$(SLO)/$*.obj $*.asm
+ @@-$(RM) $*.err
+.ELSE # "$(ASM)"=="ml"
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(ASM) $(AFLAGS) $*.asm,$(SLO)/$*.obj;
+.ENDIF # "$(ASM)"=="ml"
+.ELSE
+.IF "$(COM)"=="WTC"
+ $(COMMAND_ECHO)$(ASM) $(AFLAGS) -D$(COM) $*.asm -fo=$(SLO)/$*.obj
+ @-$(IFEXIST) $*.err $(THEN) $(RM:s/+//) $*.err $(FI)
+.ELSE
+.IF "$(COM)"=="MSC"
+.IF "$(ASM)"=="ml"
+ $(COMMAND_ECHO)$(ASM) $(AFLAGS) -D$(COM) /Fo$(SLO)/$*.obj $*.asm
+ @-$(IFEXIST) $*.err $(THEN) $(RM:s/+//) $*.err $(FI)
+.ELSE # "$(ASM)"=="ml"
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(ASM) $(AFLAGS) $*.asm,$(SLO)/$*.obj;
+.ENDIF # "$(ASM)"=="ml"
+.ENDIF "$(COM)"=="MSC"
+.ENDIF
+.ENDIF
+
+$(OBJ)/%.obj : %.asm
+ @echo $(COMPILE_ECHO_SWITCH) Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(COMPILE_ECHO_FILE)
+.IF "$(COM)"=="GCC"
+.IF "$(ASM)"=="ml"
+ $(COMMAND_ECHO)$(ASM) $(AFLAGS) -D$(COM) /Fo$(OBJ)/$*.obj $*.asm
+ @@-$(RM) $*.err
+.ELSE # "$(ASM)"=="ml"
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(ASM) $(AFLAGS) $*.asm,$(OBJ)/$*.obj;
+.ENDIF # "$(ASM)"=="ml"
+.ELSE
+.IF "$(COM)"=="MSC"
+.IF "$(ASM)"=="ml"
+ $(COMMAND_ECHO)$(ASM) $(AFLAGS) -D$(COM) /Fo$(SLO)/$*.obj $*.asm
+ @-$(IFEXIST) $*.err $(THEN) $(RM:s/+//) $*.err $(FI)
+.ELSE # "$(ASM)"=="ml"
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ >& $(NULLDEV) $(FI)
+ $(COMMAND_ECHO)$(ASM) $(AFLAGS) $*.asm,$(OBJ)/$*.obj;
+.ENDIF # "$(ASM)"=="ml"
+.ENDIF "$(COM)"=="MSC"
+.ENDIF
+
+$(OUT)/ucr/$(IDLPACKAGE)/%.urd : %.idl
+ @noop $(assign all_outdated_idl+:=$<)
+
+$(OUT)/ucrdoc/$(IDLPACKAGE)/%.urd : %.idl
+ @noop $(assign all_outdated_doc_idl+:=$<)
+
+# generate hid files
+$(SRS)/%.hid : %.src
+ @echo Compiling: $(PRJNAME)/$(PATH_IN_MODULE)/$(*:f).src
+ $(COMMAND_ECHO)$(AUGMENT_LIBRARY_PATH) $(PERL) $(SOLARENV)/bin/mhids.pl $*.src $(SRS) $(PRJNAME) $(CDEFS) $(INCLUDE)
+
+# make *.xml descriptions available in $(MISC)
+$(MISC)/%$($(WINVERSIONNAMES)_MAJOR).xml : %.xml
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+# dummy rule to make sure xml file is in place when used in settings.mk
+$(MISC)/%.mk : $(MISC)/%$($(WINVERSIONNAMES)_MAJOR).xml
+ @$(TOUCH) $@
+ @echo XML2MK_FILES += $(@:b) >> $@
+
+#generate descriptions from xml
+$(MISC)/%$($(WINVERSIONNAMES)_MAJOR)_description.cxx : $(MISC)/%$($(WINVERSIONNAMES)_MAJOR).xml
+ xml2cmp -func $(MISC)/$*$($(WINVERSIONNAMES)_MAJOR)_description.cxx $<
+
+#generate private rdb
+$(BIN)/%.rdb: $(MISC)/%$($(WINVERSIONNAMES)_MAJOR).xml
+ $(COMMAND_ECHO)$(RDBMAKER) -BUCR -O$(BIN)/$*.rdb @$(mktmp $(foreach,i,$($(@:b)_XML2CMPTYPES) -T$i ) $(COMPRDB))
+
+#strip dos lineends
+$(MISC)/%.sh : %.sh
+ @@-$(RM) -f $@
+ @tr -d "\015" < $< > $@
+
+# merge targets
+.IF "$(WITH_LANG)"!=""
+$(COMMONMISC)/$(TARGET)/%.ulf : %.ulf
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(ULFEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(COMMONMISC)/$(TARGET)/%.xrb : %.xrb
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(XMLEX) -t xrb -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(COMMONMISC)/$(MYPATH)/%.xrm : %.xrm
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ @echo trysdf = $(TRYSDF)
+ $(COMMAND_ECHO)$(XRMEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+#$(COMMONMISC)/$(TARGET)/%.xrm : %.xrm
+# -$(MKDIRHIER) $(@:d)
+# -$(RM) $@
+# $(XRMEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+# $(RENAME) $@.$(INPATH) $@
+# -$(RM) $@.$(INPATH)
+#
+#$(COMMONMISC)/%.xrm : %.xrm
+# -$(MKDIR) $(@:d)
+# -$(RM) $@
+# $(XRMEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+# $(RENAME) $@.$(INPATH) $@
+# -$(RM) $@.$(INPATH)
+.ENDIF # "$(WITH_LANG)"!=""
+
+.IF "$(WITH_LANG)"!=""
+$(COMMONMISC)/$(TARGET)/%.jlf : $$(@:db).ulf
+.ELSE # "$(WITH_LANG)"!=""
+$(COMMONMISC)/$(TARGET)/%.jlf : $$(@:b).ulf
+.ENDIF # "$(WITH_LANG)"!=""
+ @-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(ULFCONV) -o $@.$(INPATH) $<
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+.IF "$(WITH_LANG)"!=""
+$(COMMONMISC)/$(TARGET)/%.mlf : $$(@:db).ulf
+.ELSE # "$(WITH_LANG)"!=""
+$(COMMONMISC)/$(TARGET)/%.mlf : $$(@:b).ulf
+.ENDIF # "$(WITH_LANG)"!=""
+ @-$(MKDIRHIER) $(@:d)
+ @-$(RM) $@
+ @$(ULFCONV) -o $@.$(INPATH) -t $(SOLARBINDIR)/msi-encodinglist.txt $<
+ @$(RENAME) $@.$(INPATH) $@
+ @-$(RM) $@.$(INPATH)
+
+.IF "$(WITH_LANG)"!=""
+$(COMMONMISC)/$(TARGET)/%.uulf : $$(@:db).ulf
+.ELSE # "$(WITH_LANG)"!=""
+$(COMMONMISC)/$(TARGET)/%.uulf : $$(@:b).ulf
+.ENDIF # "$(WITH_LANG)"!=""
+ @-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ @$(COPY) $< $@.$(INPATH)
+ @$(RENAME) $@.$(INPATH) $@
+ @-$(RM) $@.$(INPATH)
+
+# This is still needed?????
+$(COMMONMISC)/$(TARGET)/%.xrm : %.xrm
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(XRMEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+# dirty hack
+# if local *.sdf file is missing
+#%.sdf:
+# echo > $@
+
diff --git a/solenv/inc/sc.mk b/solenv/inc/sc.mk
new file mode 100644
index 000000000000..ad2102a92b4f
--- /dev/null
+++ b/solenv/inc/sc.mk
@@ -0,0 +1,28 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# TODO: remove usage and file...
diff --git a/solenv/inc/scpre.mk b/solenv/inc/scpre.mk
new file mode 100644
index 000000000000..1b9b7a7dacac
--- /dev/null
+++ b/solenv/inc/scpre.mk
@@ -0,0 +1,50 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+
+#======================================================================
+# standardmaessig mit Optimierung, muss explizit mit nopt=t ausgeschaltet
+# werden, wenn nicht gewuenscht
+#----------------------------------------------------------------------
+
+#.IF defined(nopt) || defined(NOPT)
+#nopt=true
+#NOPT=TRUE
+#!undef optimize
+#!undef OPTIMIZE
+#.ELSE
+#.IF !(defined(debug) || defined(DEBUG))
+#optimize=true
+#OPTIMIZE=TRUE
+#.ENDIF
+#.ENDIF
+
+# falls dependencies auf s:\solver\... erstellt werden sollen
+# MKDEPENDSOLVER=YES
+
+
diff --git a/solenv/inc/set_ext.mk b/solenv/inc/set_ext.mk
new file mode 100644
index 000000000000..8d6d4db5a627
--- /dev/null
+++ b/solenv/inc/set_ext.mk
@@ -0,0 +1,37 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#defaults
+TARFILE_ROOTDIR*=$(TARFILE_NAME)
+UNTAR_FLAG_FILE*=so_unpacked_$(TARGET)
+ADD_FILES_FLAG_FILE*=so_addfiles_$(TARGET)
+PATCH_FLAG_FILE*=so_patched_$(TARGET)
+CONFIGURE_FLAG_FILE*=so_configured_$(TARGET)
+BUILD_FLAG_FILE*=so_built_$(TARGET)
+INSTALL_FLAG_FILE*=so_installed_$(TARGET)
+PREDELIVER_FLAG_FILE*=so_predeliver_$(TARGET)
+
diff --git a/solenv/inc/set_wntx64.mk b/solenv/inc/set_wntx64.mk
new file mode 100644
index 000000000000..412fb3bd2821
--- /dev/null
+++ b/solenv/inc/set_wntx64.mk
@@ -0,0 +1,215 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+###############################################
+# Windows 64 bit special
+# only used for 64 bit shell extension
+# ( Windows Vista )
+# ---------------------------------------------
+# THIS FILE WILL BE DELETED when a fully ported
+# Windows 64 bit version is available
+###############################################
+
+.IF "$(BUILD_X64)"!=""
+# ----------------- settings for x64 --------------------
+CC_X64*:=$(WRAPCMD) $(CXX_X64_BINARY)
+CXX_X64*:=$(WRAPCMD) $(CXX_X64_BINARY)
+LINK_X64*:=$(WRAPCMD) $(LINK_X64_BINARY) $(NOLOGO) -MACHINE:X64
+LIBMGR_X64=$(WRAPCMD) $(LIBMGR_X64_BINARY) $(NOLOGO)
+IMPLIB_X64=$(WRAPCMD) $(LIBMGR_X64_BINARY)
+
+USE_CFLAGS_X64=-c -nologo -Gs $(NOLOGO) -Zm500 -Zc:forScope,wchar_t- -GR
+
+# Stack buffer overrun detection.
+CFLAGS+=-GS
+
+USE_CDEFS_X64+= -DWIN32 -D_AMD64_=1 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS
+.IF "$(debug)"!=""
+USE_CFLAGS_X64+=-Zi -Fd$(MISC_X64)/$(@:b).pdb
+USE_CDEFS_X64+=-DDEBUG
+.ENDIF # "$(debug)"!=""
+USE_CFLAGS_X64+=$(CFLAGS_X64)
+USE_CDEFS_X64+=$(CDEFS_X64)
+INCLUDE_X64=$(subst,/stl$(SPACECHAR),dont_use_stl$(SPACECHAR) $(INCLUDE))
+
+.IF "$(product)" != ""
+USE_CFLAGS_X64+=-Gy
+.ENDIF # "$(product)" != ""
+
+# inline expansion
+USE_CFLAGS_X64+=-Ob1
+
+.IF "$(DYNAMIC_CRT)"!=""
+CDEFSSLOMT_X64+=-D_MT -D_DLL
+CDEFSSLOMT_X64+=-D_MT -D_DLL
+.IF "$(NO_DYNAMIC_OBJ)"==""
+CDEFSOBJMT_X64+=-D_MT -D_DLL
+CDEFSOBJMT_X64+=-D_MT -D_DLL
+.ELSE
+CDEFSOBJMT_X64+=-D_MT
+CDEFSOBJMT_X64+=-D_MT
+.ENDIF # "$(NO_DYNAMIC_OBJ)"==""
+.ELSE
+CDEFSSLOMT_X64+=-D_MT
+CDEFSOBJMT_X64+=-D_MT
+.ENDIF # "$(DYNAMIC_CRT)"!=""
+
+.IF "$(PRODUCT)"!="full"
+.ELSE
+LINKFLAGS_X64=/MAP /OPT:NOREF
+.ENDIF
+
+# excetion handling protection
+LINKFLAGS+=-safeseh
+
+# enable DEP
+LINKFLAGS+=-nxcompat
+
+# enable ASLR
+LINKFLAGS+=-dynamicbase
+
+.IF "$(PRODUCT)"!="full"
+LINKFLAGS_X64+= -NODEFAULTLIB -DEBUG
+.ELSE # "$(PRODUCT)"!="full"
+LINKFLAGS_X64+= -NODEFAULTLIB -RELEASE -DEBUG -INCREMENTAL:NO
+.ENDIF # "$(PRODUCT)"!="full"
+MAPFILE=-out:$$@
+
+.IF "$(debug)" != ""
+LINKFLAGS_X64+= $(LINKFLAGSDEBUG)
+.ENDIF
+
+LINKFLAGSSHLCUI_X64=/SUBSYSTEM:CONSOLE /DLL
+LINKFLAGSSHL_X64=$(LINKFLAGSSHLCUI_X64)
+CDEFSSLO_X64+=$(CDEFSMT_X64) $(CDEFSOBJMT_X64)
+CFLAGSSLO_X64+=-MT
+
+STDOBJGUI_X64=
+STDSLOGUI_X64=
+STDOBJCUI_X64=
+STDSLOCUI_X64=
+
+IMPLIBFLAGS_X64=-machine:X64
+
+LIBPATH_X64=$(PSDK)/lib/x64
+LIBPATH_VC_X64=$(COMPATH)/lib/amd64
+
+ADVAPI32LIB_X64=$(LIBPATH_X64)/advapi32.lib
+SHELL32LIB_X64=$(LIBPATH_X64)/shell32.lib
+GDI32LIB_X64=$(LIBPATH_X64)/gdi32.lib
+OLE32LIB_X64=$(LIBPATH_X64)/ole32.lib
+OLEAUT32LIB_X64=$(LIBPATH_X64)/oleaut32.lib
+UUIDLIB_X64=$(LIBPATH_X64)/uuid.lib
+WINSPOOLLIB_X64=$(LIBPATH_X64)/winspool.lib
+IMM32LIB_X64=$(LIBPATH_X64)/imm32.lib
+VERSIONLIB_X64=$(LIBPATH_X64)/version.lib
+WINMMLIB_X64=$(LIBPATH_X64)/winmm.lib
+WSOCK32LIB_X64=$(LIBPATH_X64)/wsock32.lib
+MPRLIB_X64=$(LIBPATH_X64)/mpr.lib
+WS2_32LIB_X64=$(LIBPATH_X64)/ws2_32.lib
+KERNEL32LIB_X64=$(LIBPATH_X64)/kernel32.lib
+USER32LIB_X64=$(LIBPATH_X64)/user32.lib
+COMDLG32LIB_X64=$(LIBPATH_X64)/comdlg32.lib
+COMCTL32LIB_X64=$(LIBPATH_X64)/comctl32.lib
+CRYPT32LIB_X64=$(LIBPATH_X64)/crypt32.lib
+GDIPLUSLIB_X64=$(LIBPATH_X64)/gdiplus.lib
+DBGHELPLIB_X64=$(LIBPATH_X64)/dbghelp.lib
+PROPSYSLIB_X64=$(LIBPATH_X64)/propsys.lib
+MSILIB_X64=$(LIBPATH_X64)/msi.lib
+DDRAWLIB_X64=$(LIBPATH_X64)/ddraw.lib
+SHLWAPILIB_X64=$(LIBPATH_X64)/shlwapi.lib
+URLMONLIB_X64=$(LIBPATH_X64)/urlmon.lib
+UNICOWSLIB_X64=$(LIBPATH_X64)/unicows.lib
+WININETLIB_X64=$(LIBPATH_X64)/wininet.lib
+OLDNAMESLIB_X64=$(LIBPATH_VC_X64)/oldnames.lib
+MSIMG32LIB_X64=$(LIBPATH_X64)/msimg32.lib
+MSVCPRT_X64=$(LIBPATH_VC_X64)/msvcprt.lib
+MSVCRT_X64=$(LIBPATH_VC_X64)/msvcrt.lib
+
+MISC_X64=$(MISC)/x64
+OBJ_X64=$(OBJ)/x64
+SLO_X64=$(SLO)/x64
+LB_X64=$(LB)/x64
+SLB_X64=$(SLB)/x64
+L_X64=$(SOLARLIBDIR_X64)
+VERSIONOBJ_X64=$(SLO_X64)/_version.obj
+BIN_X64=$(BIN)/x64
+RES_X64=$(RES)/x64
+SOLARLIBDIR_X64=$(SOLARVERSION)/$(INPATH)/lib$(UPDMINOREXT)/x64
+LIB_X64:=$(LB_X64);$(SLB_X64);$(ILIB_X64)
+
+.IF "$(LIBTARGET)"==""
+.IF "$(OBJFILES_X64)$(IDLOBJFILES_X64)"!=""
+OBJTARGET_X64=$(LB_X64)/$(TARGET).lib
+.ENDIF # "$(OBJFILES_X64)$(IDLOBJFILES_X64)"!=""
+.IF "$(SLOFILES_X64)$(IDLSLOFILES_x64)"!=""
+SLOTARGET_X64=$(SLB_X64)/$(TARGET).lib
+.ENDIF # "$(SLOFILES_X64)$(IDLSLOFILES_x64)"!=""
+.ENDIF # "$(LIBTARGET)"==""
+
+.IF "$(OBJFILES_X64)"!=""
+.IF "$(LIBTARGET)" != ""
+NOLIBOBJTARGET_X64=$(OBJFILES_X64)
+.ENDIF
+.ENDIF
+
+.IF "$(SLOFILES_X64)"!=""
+.IF "$(LIBTARGET)" != ""
+NOLIBSLOTARGET_X64=$(SLOFILES_X64)
+.ENDIF
+.ENDIF
+
+.IF "$(SHL1TARGET_X64)"!=""
+SHL1TARGETN_X64=$(BIN_X64)/$(DLLPRE)$(SHL1TARGET_X64)$(DLLPOST)
+.ENDIF
+.IF "$(SHL2TARGET_X64)"!=""
+SHL2TARGETN_X64=$(BIN_X64)/$(DLLPRE)$(SHL2TARGET_X64)$(DLLPOST)
+.ENDIF
+.IF "$(LIB1TARGET_X64)" != ""
+LIB1TARGETN_X64=$(LIB1TARGET_X64)
+.ENDIF
+.IF "$(LIB2TARGET_X64)" != ""
+LIB2TARGETN_X64=$(LIB2TARGET_X64)
+.ENDIF
+.IF "$(DEF1NAME_X64)"!=""
+DEF1TARGETN_X64=$(MISC_X64)/$(DEF1NAME_X64).def
+.ENDIF
+.IF "$(DEF2NAME_X64)"!=""
+DEF2TARGETN_X64=$(MISC_X64)/$(DEF2NAME_X64).def
+.ENDIF
+
+$(SLO_X64)/%.obj : $(MISC_X64)/%.c
+ @echo ------------------------------
+ @echo Making: $@
+ -$(MKDIR) $(@:d)
+ @-$(MKDIR) $(MISC_X64)
+ @@-$(RM) $@
+ @$(TYPE) $(mktmp $(CC_X64) $(USE_CFLAGS_X64) $(INCLUDE_C) $(CFLAGSCC_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CFLAGSAPPEND_X64) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(MISC_X64)/$*.c )
+ @$(ECHONL)
+ $(CC_X64) @$(mktmp $(USE_CFLAGS_X64) $(INCLUDE_C) $(CFLAGSCC_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CFLAGSAPPEND_X64) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(MISC_X64)/$*.c )
+
+.ENDIF # "$(BUILD_X64)"!=""
+
diff --git a/solenv/inc/settings.mk b/solenv/inc/settings.mk
new file mode 100644
index 000000000000..68bbc797d8af
--- /dev/null
+++ b/solenv/inc/settings.mk
@@ -0,0 +1,1360 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+MKFILENAME:=SETTINGS.MK
+
+# smaller/greater arithmetic's like ".IF 400<=200" are an OOo extention to
+# the initial dmake 4.1PL0 (unfortunately called 4.10) version and are
+# tested implicitly by the construction below.
+.IF $(MAKEVERSION:s/-cvs//:s/.//)<=410
+.ERROR : ; @echo Forced error: dmake version 4.11 or newer is needed!
+force_dmake_to_error
+.ENDIF
+
+.INCLUDE .IGNORE : ooo_vendor.mk
+
+# --- common tool makros --------------------------------------
+
+.IF "$(USE_PCH)"!=""
+ENABLE_PCH=TRUE
+.ENDIF # "$(USE_PCH)"!=""
+
+.IF "$(ENABLE_PCH)"!="" && "$(BUILD_SPECIAL)"!=""
+.IF "$(SOLARSRC)"=="$(SRC_ROOT)"
+NETWORK_BUILD:=TRUE
+.ENDIF # "$(SOLARSRC)"=="$(SRC_ROOT)"
+.ENDIF # "$(ENABLE_PCH)"!="" && "$(BUILD_SPECIAL)"!=""
+
+.INCLUDE : unitools.mk
+
+.INCLUDE : minor.mk
+
+.INCLUDE .IGNORE : rtlbootstrap.mk
+
+PLATFORMID = $(RTL_OS:l)_$(RTL_ARCH:l)
+EXTNAME*=$(EXTENSIONNAME)_in
+
+.IF "$(UPDATER)"!="" || "$(CWS_WORK_STAMP)"!=""
+
+.IF "$(SOURCEVERSION)"!="$(WORK_STAMP)"
+.ERROR : ; @echo Forced error: minor.mk in solenv/inc does not match your version!
+WRONG_SOURCEVERSION
+.ENDIF
+
+# Create $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/$(UPD)minor.mk if needed
+%minor.mk : $(SOLARENV)/inc/minor.mk
+ @@-$(MKDIRHIER) $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)
+ @@$(COPY) $(SOLARENV)/inc/minor.mk $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/$(UPD)minor.mk
+ @@$(TOUCH) $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/minormkchanged.flg
+.ENDIF # "$(UPDATER)"!="" || "$(CWS_WORK_STAMP)"!=""
+
+# Force creation of $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/
+# $(UPD)minor.mk could be empty as it's contents were already included from minor.mk
+.INCLUDE : $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/$(UPD)minor.mk
+
+.IF "$(BSCLIENT)"=="TRUE"
+.IF "$(UPDATER)"!="YES"
+incorrect_settings:
+ @echo "#"
+ @echo "#" ERROR: setsolar option -bsclient used but UPDATER=YES not set!
+ @echo "#"
+ force_dmake_to_error
+.ENDIF
+.ENDIF
+
+.INCLUDE : udkversion.mk
+
+# --- reset defined Environments --------------------
+ASM=
+AFLAGS=
+
+
+#START JAVA
+
+#interpreter location
+.IF "$(JAVAINTERPRETER)" == ""
+.IF "$(JDK)" == "J++"
+JAVAINTERPRETER=jview.exe
+.ELSE
+.IF "$(JDK)" == "SCAFE"
+.IF "$(JDK_VERSION)" != ""
+JAVAINTERPRETER=$(DEVROOT)/vcafe11/java/bin/java.exe
+.ELSE
+JAVAINTERPRETER=$(DEVROOT)/cafepro/java/bin/java.exe
+.ENDIF
+.ELSE
+.IF "$(JAVACISGCJ)" == "yes"
+JAVAINTERPRETER=gij
+.ELSE
+JAVAINTERPRETER=java
+.ENDIF
+.ENDIF
+.ENDIF
+.ENDIF
+
+#compiler location
+.IF "$(JAVACOMPILER)" == ""
+.IF "$(JDK)" == "J++"
+JAVACOMPILER=jvc.exe
+.ELSE
+.IF "$(JDK)" == "SCAFE"
+.IF "$(JDK_VERSION)" != ""
+JAVACOMPILER=$(DEVROOT)/vcafe11/bin/sj.exe
+.ELSE
+JAVACOMPILER=$(DEVROOT)/cafepro/bin/sj.exe
+.ENDIF
+.ELSE
+.IF "$(JAVACISGCJ)" == "yes"
+JAVACOMPILER=gcj
+.ELSE
+JAVACOMPILER=javac
+.ENDIF
+.ENDIF
+.ENDIF
+.ENDIF
+
+#if javadoc is not already set
+.IF "$(JAVADOC)"==""
+JAVADOC=javadoc -J-Xmx120m
+.ENDIF
+
+#required arguments
+JAVAC=$(JAVACOMPILER)
+JAVAI:=$(JAVAINTERPRETER)
+.IF "$(JAVACISGCJ)" == "yes"
+JAVAC+=--encoding=UTF-8 -O2 -fno-assert -Wno-deprecated -C
+.ENDIF
+
+#classpath and response
+.IF "$(JDK)" == "J++"
+JAVACPS=/cp
+.ELSE
+.IF "$(JDK)" == "SCAFE"
+JAVACPS=-classpath
+JAVARESPONSE=TRUE
+.ELSE
+JAVACPS=-classpath
+JAVARESPONSE=
+.ENDIF
+.ENDIF
+
+JAVAFLAGS+=$(JAVA_TARGET_FLAG)
+
+#END JAVA
+
+CDEFS=
+CXXDEFS=
+CDEFSCXX=
+CDEFSOBJ=
+CDEFSSLO=
+CDEFSGUI=
+CDEFSCUI=
+CDEFSMT=
+CDEFSPROF=
+CDEFSDEBUG=
+CDEFSDBGUTIL=
+CDEFSOPT=
+
+CFLAGS=
+CFLAGSCALL=
+CFLAGSCXX=
+CFLAGSCC=
+CFLAGSOBJ=
+CFLAGSSLO=
+CFLAGSOBJGUIMT=
+CFLAGSOBJCUIMT=
+CFLAGSSLOGUIMT=
+CFLAGSSLOCUIMT=
+CFLAGSPROF=
+CFLAGSDEBUG=
+CFLAGSDBGUTIL=
+CFLAGSOPT=
+CFLAGSNOOPT=
+CFLAGSOUTOBJ=
+
+CFLAGSINCXX=
+
+LINKFLAGS=
+LINKFLAGSAPPGUI=
+LINKFLAGSSHLGUI=
+LINKFLAGSAPPCUI=
+LINKFLAGSSHLCUI=
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=
+LINKFLAGSOPT=
+LINKFLAGSAPP=
+LINKFLAGSSHL=
+LINKEXTENDLINE=
+
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+STDLIBGUIMT=
+STDLIBCUIMT=
+STDSHLGUIMT=
+STDSHLCUIMT=
+STDOBJ=
+STDSLO=
+STDLIB=
+STDSHL=
+
+LIBFLAGS=
+
+IMPLIBMGR=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RSC=
+RSCFLAGS=
+RSCDEFS=
+RSCLANG=
+
+RC=
+RCFLAGS=
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=
+
+HC=
+HCFLAGS=
+
+MKDEP=
+
+AS=
+BC=
+COBOL=
+CPP=
+FOR=
+PASCAL=
+
+BFLAGS=
+COBFLAGS=
+CPPFLAGS=
+CXXFLAGS=
+FFLAGS=
+PFLAGS=
+RFLAGS=
+
+LNT=
+LNTFLAGS=
+LNTFLAGSGUI=
+LNTFLAGSCOM=
+
+# doesn't make sense
+#IDLSTATICOBJS=
+
+E2P=
+CAP=
+cap=
+
+# not to reset because possibly taken from environment
+#CC=
+#CXX=
+#LINK=
+#LIBMGR=
+
+
+# avoid confusion with CUE PROFILE variable...
+PROFILE=
+
+# can be set on the command line. we shouldn't delete them!
+#profile=
+
+# reset as setting those manually is no lonjger supported
+DBGUTIL=
+dbgutil=
+
+# ===========================================================================
+# unter NT werden Variablennamen an untergeordnete makefiles UPPERCASE
+# weitergereicht, aber case significant ausgewertet!
+# ---------------------------------------------------------------------------
+
+DMAKE_WORK_DIR*:=$(subst,/,/ $(PWD))
+
+.IF "$(TMP)"!=""
+tmp*=$(TMP)
+.ENDIF
+
+.IF "$(tmp)"!=""
+TMP*=$(tmp)
+.ENDIF
+
+.IF "$(TEMP)"!=""
+temp*=$(TEMP)
+.ENDIF
+
+.IF "$(temp)"!=""
+TEMP*=$(temp)
+.ENDIF
+
+.IF "$(DEPEND)"!=""
+depend=$(DEPEND)
+.ENDIF
+
+.IF "$(OPTIMIZE)"!=""
+optimize=$(OPTIMIZE)
+.ENDIF
+
+.IF "$(NOPT)"!=""
+nopt*=$(NOPT)
+.ENDIF
+
+.IF "$(GROUP)"!=""
+group*=$(GROUP)
+.ENDIF
+
+.IF "$(group)"!=""
+GROUP*=$(group)
+.ENDIF
+
+# override dbglevel if set manually
+.IF "$(dbglevel)"!=""
+DBG_LEVEL=$(dbglevel)
+.ENDIF
+
+.IF "$(NODEBUG)"!=""
+nodebug=$(NODEBUG)
+.ENDIF
+
+.IF "$(hbtoolkit)"!=""
+HBTOOLKIT=$(hbtoolkit)
+.ENDIF
+
+.IF "$(PRODUCT)"!=""
+product*=$(PRODUCT)
+.ENDIF
+
+.IF "$(product)"!=""
+PRODUCT*=$(product)
+.ENDIF
+
+.IF "$(VERBOSE)"!=""
+verbose*=$(VERBOSE)
+.ENDIF
+
+.IF "$(verbose)"!=""
+# normalize: "false" (any upper/lower case) and "0" mean FALSE, everything else means TRUE
+VERBOSE_IS_FALSE:=$(or $(eq,"$(verbose:u)","FALSE" "false" ) $(eq,"$(verbose)","0" "false" ))
+VERBOSE!:=$(eq,"$(VERBOSE_IS_FALSE)","t" FALSE TRUE)
+.ENDIF
+
+.IF "$(SOLARLANG)" != ""
+solarlang*=$(SOLARLANG)
+.ENDIF
+
+.IF "$(solarlang)" != ""
+SOLARLANG:=$(solarlang)
+.ENDIF
+
+.IF "$(wall)"!=""
+COMPILER_WARN_ALL=TRUE
+.ENDIF # "$(wall)"!=""
+
+.IF "$(werror)"!=""
+COMPILER_WARN_ERRORS=TRUE
+.ENDIF
+
+.IF "$(RSC_ONCE)"!=""
+rsc_once*=$(RSC_ONCE)
+.ENDIF
+
+.IF "$(COMMON_BUILD)"!=""
+common_build*=$(COMMON_BUILD)
+.ENDIF
+
+.IF "$(USE_SHL_VERSIONS)"!=""
+use_shl_versions*=$(USE_SHL_VERSIONS)
+.ENDIF
+
+.IF "$(noremove)"!=""
+NOREMOVE*=$(noremove)
+.ENDIF
+
+# --- env flags not case sensitive --------------------------------
+
+#.IF "$(envcflags)"!=""
+ENVCFLAGS*=$(envcflags)
+#.ENDIF
+
+#.IF "$(envcflagscxx)"!=""
+ENVCFLAGSCXX*=$(envcflagscxx)
+#.ENDIF
+
+
+.IF "$(envcdefs)"!=""
+ENVCDEFS*=$(envcdefs)
+.ENDIF
+
+.IF "$(envlibflags)"!=""
+ENVLIBFLAGS*=$(envlibflags)
+.ENDIF
+
+.IF "$(envcflagsincxx)"!=""
+ENVCFLAGSINCXX*=$(envcflagsincxx)
+.ENDIF
+
+.IF "$(envlinkflags)"!=""
+ENVLINKFLAGS*=$(envlinkflags)
+.ENDIF
+
+.IF "$(envrscflags)"!=""
+ENVRSCFLAGS*=$(envrscflags)
+.ENDIF
+
+.IF "$(envrscdefs)"!=""
+ENVRSCDEFS*=$(envrscdefs)
+.ENDIF
+
+.IF "$(envrsclinkflags)"!=""
+# ENVRSCLINKFLAGS*=$(envrsclinkflags)
+.ENDIF
+
+.IF "$(envrcflags)"!=""
+ENVRCFLAGS*=$(envrcflags)
+.ENDIF
+
+.IF "$(envrclinkflags)"!=""
+ENVRCLINKFLAGS*=$(envrclinkflags)
+.ENDIF
+
+# --- set both L10N variables to keep things working ---------------
+
+L10N-framework=$(L10N_framework)
+
+# --- Parameter Einstellungen ueberpruefen und umsetzen ------------
+
+# profile immer mit product
+.IF "$(profile)"!=""
+.IF "$(product)"==""
+product=full
+.ENDIF
+.ENDIF
+
+.IF "$(debug)"!=""
+DBG_LEVEL*=2
+.ENDIF
+
+# Produkt auf einen Wert setzen (alles klein)
+.IF "$(product)" != ""
+optimize=true
+.IF "$(product)" == "full" || "$(product)" == "Full" || "$(product)" == "FULL"
+product!=full
+.ENDIF
+.IF "$(product)" == "demo" || "$(product)" == "Demo" || "$(product)" == "DEMO"
+product!=demo
+.ENDIF
+.IF "$(product)" == "compact" || "$(product)" == "Compact" || "$(product)" == "COMPACT"
+product!=compact
+.ENDIF
+DBG_LEVEL*=0
+.ELSE
+optimize!=true
+dbgutil!=true
+DBG_LEVEL*=1
+USE_STLP_DEBUG*=TRUE
+.ENDIF
+
+.IF "$(debug)"!=""
+.IF "$(debug)"!="D_FORCE_OPT"
+optimize=
+OPTIMIZE=
+.ENDIF
+.ENDIF
+
+.IF "$(nopt)"!=""
+optimize=
+OPTIMIZE=
+.ENDIF
+
+# Optimierung bei FinalCheck funktioniert nicht!
+.IF "$(bndchk)" != ""
+optimize=
+OPTIMIZE=
+.ENDIF
+
+######################################################
+#
+# sprachabh. einstellungen
+#
+######################################################
+
+.INCLUDE : lang.mk
+
+.INCLUDE : postset.mk
+
+RSC_LANG_ISO+:=$(completelangiso)
+.EXPORT : RSC_LANG_ISO
+
+######################################################
+
+.IF "$(TARGETTYPE)"==""
+TARGETTYPE=CUI
+.ENDIF
+
+# --- Pfade setzen -------------------------------------------------
+
+# Output-Pfad
+# profile has to be first for not getting the .pro extension
+.IF "$(profile)"!=""
+OUT=$(PRJ)/$(OUTPATH).cap
+ROUT=$(OUTPATH).cap
+.ELSE
+
+.IF "$(product)"!=""
+OUT=$(PRJ)/$(OUTPATH).pro
+ROUT=$(OUTPATH).pro
+
+.ELSE
+.IF "$(profile)"!=""
+OUT=$(PRJ)/$(OUTPATH).cap
+ROUT=$(OUTPATH).cap
+.ENDIF
+.IF "$(dbcs)"!=""
+OUT=$(PRJ)/$(OUTPATH).w
+ROUT=$(OUTPATH).w
+.ENDIF
+# could already be set by makefile.mk
+.IF "$(OUT)" == ""
+OUT*=$(PRJ)/$(OUTPATH)
+ROUT*=$(OUTPATH)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(bndchk)" != ""
+OUT:=$(PRJ)/$(OUTPATH).bnd
+ROUT=$(OUTPATH).bnd
+.ENDIF
+.IF "$(truetime)" != ""
+OUT=$(PRJ)/$(OUTPATH).tt
+ROUT=$(OUTPATH).tt
+.ENDIF
+.IF "$(hbtoolkit)"!=""
+OUT=$(PRJ)/$(OUTPATH).tlk
+ROUT=$(OUTPATH).tlk
+.ENDIF
+
+.IF "$(PRJ)"!="."
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+PATH_IN_MODULE:=\
+ $(subst,$(normpath $(shell @+cd $(PRJ) && pwd $(PWDFLAGS)))/, $(PWD))
+.ELSE # "$(GUI)"=="WNT"
+PATH_IN_MODULE:=$(subst,$(shell @+cd $(PRJ) && pwd $(PWDFLAGS))/, $(PWD))
+.ENDIF # "$(GUI)"=="WNT"
+.ELSE # "$(PRJ)"!="."
+PATH_IN_MODULE:=
+.ENDIF # "$(PRJ)"!="."
+
+# common output tree
+.IF "$(common_build)"!=""
+COMMON_OUTDIR*=common
+.IF "$(no_common_build_reslib)"==""
+common_build_reslib=true
+.ENDIF # "$(no_common_build_reslib)"==""
+.IF "$(no_common_build_zip)"==""
+common_build_zip=true
+.ENDIF # "$(no_common_build_zip)"==""
+.IF "$(no_common_build_sign_jar)"==""
+common_build_sign_jar=true
+.ENDIF # "$(no_common_build_sign_jar)"==""
+.IF "$(no_common_build_srs)"==""
+common_build_srs=true
+.ENDIF # "$(no_common_build_srs)"==""
+.ELSE # "$(common_build)"!=""
+COMMON_OUTDIR:=$(OUTPATH)
+.ENDIF # "$(common_build)"!=""
+
+LOCAL_OUT:=$(OUT)
+LOCAL_COMMON_OUT:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(OUT))
+.EXPORT : LOCAL_OUT LOCAL_COMMON_OUT
+
+# --- generate output tree -----------------------------------------
+
+# As this is not part of the initial startup makefile we define an infered
+# target instead of using $(OUT)/inc/myworld.mk as target name.
+# (See iz62795)
+$(OUT)/inc/%world.mk :
+ @$(MKOUT) $(ROUT)
+ @echo $(EMQ)# > $@
+
+# don't need/want output trees in solenv!!!
+.IF "$(PRJNAME)"!="solenv"
+.INCLUDE : $(OUT)/inc/myworld.mk
+.ENDIF # "$(PRJNAME)"!="solenv"
+
+.IF "$(common_build)"!=""
+$(LOCAL_COMMON_OUT)/inc/%world.mk :
+ @$(MKOUT) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(ROUT))
+ @echo $(EMQ)# > $@
+
+.IF "$(PRJNAME)"!="solenv"
+.INCLUDE : $(LOCAL_COMMON_OUT)/inc/myworld.mk
+.ENDIF # "$(PRJNAME)"!="solenv"
+.ENDIF # "$(common_build)"!=""
+
+.INCLUDE .IGNORE : office.mk
+
+# Misc-Pfad
+.IF "$(UNR)"!=""
+MISCX=$(OUT)/umisc
+MISC=$(OUT)/umisc
+.ELSE
+MISC=$(OUT)/misc
+# pointing to misc in common output tree if exists
+COMMONMISC={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))}
+.ENDIF
+
+OUTCXX=$(OUT)/cxx
+
+.IF "$(PACKAGE)"!=""
+IDLPACKAGE:=$(PACKAGE)
+IDLPACKAGENAME:=$(IDLPACKAGE:sX\X/X)
+.ELSE
+IDLPACKAGE=$(PRJNAME)
+IDLPACKAGENAME=$(PRJNAME)
+.ENDIF
+
+# Objekt-Pfad
+OBJ=$(OUT)/obj
+SLO=$(OUT)/slo
+ROBJ=$(ROUT)/obj
+RSLO=$(ROUT)/slo
+
+# Particle Path
+PAR=$(OUT)/par
+
+# Library-Pfad
+LB=$(OUT)/lib
+SLB=$(OUT)/slb
+
+# wir haben ein ucr verzeichnis
+UCR=$(OUT)/ucr
+
+# $(L) nur noch pfad ins solver\upd\...\lib
+#L:={$(LB);$(SLB);$(ILIB)}
+L=$(SOLARLIBDIR)
+
+#.EXPORT : SLB LB L LIB
+ENVPRJ:=$(PRJ)
+#todo: check PRJ is still expected to exist in environment
+.EXPORT : PRJ ENVPRJ
+
+# Class-Path for java-classes
+# obwohl der generierte Bytecode plattformunabhg. sein sollte
+# generieren wir ihn ersteinmal ins abhaengige Verzeichnis
+CLASSDIR=$(OUT)/class
+CLASSPATH!:=.$(PATH_SEPERATOR)$(CLASSDIR)$(PATH_SEPERATOR)$(CLASSPATH)
+STARJAR=java -classpath $(CLASSPATH)$(PATH_SEPERATOR)$(SOLARENV)/bin/jtools.jar com.sun.star.tool.starjar.StarJar
+
+STARDEP=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/javadep
+.IF "$(PRJNAME)"=="sj2"
+CLASSPATH!:=$(CLASSPATH:s/sj2/no/)
+.ENDIF
+.IF "$(PRJNAME)"=="uno"
+CLASSPATH!:=$(CLASSPATH:s/uno/no/)
+.ENDIF
+.IF "$(PRJNAME)"=="tkt"
+CLASSPATH!:=$(CLASSPATH:s/tkt/no/)
+.ENDIF
+
+# default output directory when processing
+# configuration files
+PROCESSOUT*:=$(MISC)
+
+# Makros fuer die Librarynamen des Solar
+.INCLUDE : libs.mk
+
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+VERSIONOBJ=$(SLO)/_version.obj
+.ENDIF
+
+.IF "$(GUI)"=="UNX"
+VERSIONOBJ=$(SLO)/_version.o
+.ENDIF
+
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+WINVERSIONNAMES=$(UNIXVERSIONNAMES)
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(COM)"=="GCC"
+SHELLLIB=-lgdi32 -lshell32 -ladvapi32 -lcomdlg32
+.ELSE
+SHELLLIB=gdi32.lib shell32.lib advapi32.lib comdlg32.lib
+.ENDIF
+.ENDIF
+
+# BIN-Pfad
+.IF "$(UNR)"!=""
+BIN=$(OUT)/ubin
+.ELSE
+BIN=$(OUT)/bin
+.ENDIF
+# pointing to misc in common output tree if exists
+COMMONBIN=$(LOCAL_COMMON_OUT)/bin
+
+# Include-Pfad
+# still without -I here s.a. target.mk INCLUDE
+INC=$(PRJ)/inc
+INCPCH=$(PRJ)/inc/pch
+INCLOCAL=../inc
+INCGUI=$(PRJ)/$(GUIBASE)/inc
+INCCOM=$(OUT)/inc
+INCCOMX=$(OUT)/inc
+INCUNOIDL=$(INCCOM)/$(PRJNAME)
+INCDEPN=. $(INCGUI) $(INCLOCAL) $(INC) $(INC)/$(PRJNAME)
+.IF "$(PRJINC)"!=""
+INCLOCPRJ=$(foreach,i,$(PRJINC) $i/inc)
+INCDEPN+=$(INCLOCPRJ)
+.ENDIF
+.IF "$(INCPRE)"!=""
+INCDEPN+=$(INCPRE)
+.ENDIF
+
+# Resource-Pfad fuer .SRS
+
+.IF "$(common_build_srs)"!=""
+SRS=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(OUT))/srs
+SRSX=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(OUT))/srs
+.ELSE # "$(common_build_srs)"!=""
+SRS=$(OUT)/srs
+SRSX=$(OUT)/srs
+.ENDIF # "$(common_build_srs)"!=""
+
+# Resource-Pfad fuer .RC und .RES
+RES=$(OUT)/res
+
+# das normale MISC wird nicht an LDMISC angepasst, stattdessen MISCX
+
+.IF "$(make_xl)"!=""
+BIN=$(PRJ)/$(OUTPATH).xl/bin
+.ENDIF
+
+# damit gezielt Abhaengigkeiten auf s: angegeben werden koennen
+
+.IF "$(common_build)"!=""
+SOLARIDLDIR=$(SOLARVERSION)/common$(PROEXT)/idl$(UPDMINOREXT)
+.ELSE
+SOLARIDLDIR=$(SOLARVERSION)/$(INPATH)/idl$(UPDMINOREXT)
+.ENDIF
+
+#.IF "$(UPDMINOR)" != ""
+#UPDMINOREXT=.$(UPDMINOR)
+#.ELSE
+#UPDMINOREXT=
+#.ENDIF
+SOLARRESDIR=$(SOLARVERSION)/$(INPATH)/res$(UPDMINOREXT)
+SOLARRESXDIR=$(SOLARVERSION)/$(INPATH)/res$(UPDMINOREXT)
+SOLARLIBDIR=$(SOLARVERSION)/$(INPATH)/lib$(UPDMINOREXT)
+SOLARJAVADIR=$(SOLARVERSION)/$(INPATH)/java$(UPDMINOREXT)
+SOLARINCDIR=$(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)
+SOLARINCXDIR=$(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)
+.IF "$(SOLARLANG)"!="deut"
+.IF "$(SOLARLANG)" != ""
+SOLARINCXDIR=$(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/$(SOLARLANG)
+SOLARRESXDIR=$(SOLARVERSION)/$(INPATH)/res$(UPDMINOREXT)/$(SOLARLANG)
+.ENDIF
+.ENDIF
+SOLARBINDIR:=$(SOLARVERSION)/$(INPATH)/bin$(UPDMINOREXT)
+SOLARUCRDIR=$(SOLARVERSION)/$(INPATH)/ucr$(UPDMINOREXT)
+SOLARPARDIR=$(SOLARVERSION)/$(INPATH)/par$(UPDMINOREXT)
+SOLARXMLDIR=$(SOLARVERSION)/$(INPATH)/xml$(UPDMINOREXT)
+SOLARDOCDIR=$(SOLARVERSION)/$(INPATH)/doc$(UPDMINOREXT)
+SOLARPCKDIR=$(SOLARVERSION)/$(INPATH)/pck$(UPDMINOREXT)
+SOLARSDFDIR=$(SOLARVERSION)/$(INPATH)/sdf$(UPDMINOREXT)
+SOLARCOMMONBINDIR=$(SOLARVERSION)/common$(PROEXT)/bin$(UPDMINOREXT)
+SOLARCOMMONRESDIR=$(SOLARVERSION)/common$(PROEXT)/res$(UPDMINOREXT)
+SOLARCOMMONPCKDIR=$(SOLARVERSION)/common$(PROEXT)/pck$(UPDMINOREXT)
+SOLARCOMMONSDFDIR=$(SOLARVERSION)/common$(PROEXT)/sdf$(UPDMINOREXT)
+.IF "$(common_build)"==""
+SOLARCOMMONBINDIR=$(SOLARBINDIR)
+SOLARCOMMONRESDIR=$(SOLARRESDIR)
+SOLARCOMMONPCKDIR=$(SOLARPCKDIR)
+SOLARCOMMONSDFDIR=$(SOLARSDFDIR)
+.ENDIF
+
+.EXPORT : SOLARBINDIR
+
+L10N_MODULE*=$(SOLARSRC)$/l10n
+ALT_L10N_MODULE*=$(SOLARSRC)$/l10n_so
+
+.IF "$(WITH_LANG)"!=""
+.INCLUDE .IGNORE: $(L10N_MODULE)/$(COMMON_OUTDIR)$(PROEXT)/inc/localization_present.mk
+.INCLUDE .IGNORE: $(ALT_L10N_MODULE)/$(COMMON_OUTDIR)$(PROEXT)/inc/localization_present.mk
+
+# check for localizations not hosted in l10n module. if a file exists there
+# it won't in l10n
+.IF "$(ALT_LOCALIZATION_FOUND)"!=""
+TRYALTSDF:=$(ALT_L10N_MODULE)$/$(COMMON_OUTDIR)$(PROEXT)$/misc/sdf$/$(PRJNAME)$/$(PATH_IN_MODULE)$/localize.sdf
+LOCALIZESDF:=$(strip $(shell @+$(IFEXIST) $(TRYALTSDF) $(THEN) echo $(TRYALTSDF) $(FI)))
+.ENDIF # "$(ALT_LOCALIZATION_FOUND)"!=""
+# if the l10n module exists, use split localize.sdf directly from there
+.IF "$(LOCALIZATION_FOUND)"!="" && "$(LOCALIZESDF)"==""
+# still check for existence as there may be no localization yet
+TRYSDF:=$(L10N_MODULE)$/$(COMMON_OUTDIR)$(PROEXT)$/misc/sdf$/$(PRJNAME)$/$(PATH_IN_MODULE)$/localize.sdf
+LOCALIZESDF:=$(strip $(shell @+$(IFEXIST) $(TRYSDF) $(THEN) echo $(TRYSDF) $(FI)))
+.ENDIF # "$(LOCALIZATION_FOUND)"!="" && "$(LOCALIZESDF)"==""
+# else use localize.sdf from local output tree if localization .zip exists
+.IF "$(LOCALIZESDF)"==""
+LOCALSDFFILE:=$(COMMONMISC)$/$(PRJNAME)$/$(PATH_IN_MODULE)$/localize.sdf
+LOCALIZESDF:=$(strip $(shell @+$(IFEXIST) $(SOLARCOMMONSDFDIR)$/$(PRJNAME).zip $(THEN) echo $(LOCALSDFFILE) $(FI)))
+.IF "$(LOCALIZESDF)"==""
+LOCALSDFFILE!:=
+.ENDIF # "$(LOCALIZESDF)"==""
+.ENDIF # "$(LOCALIZESDF)"==""
+# dummy target to keep the build happy.
+.IF "$(LOCALIZESDF)"==""
+LOCALIZESDF:=$(COMMONMISC)$/$(PRJNAME)$/dummy$/localize.sdf
+.ENDIF # "$(LOCALIZESDF)"==""
+.ENDIF # "$(WITH_LANG)"!=""
+
+JARDIR=$(OUT)/class
+
+# needs to be expanded!!!
+
+# extend library path for MS Compiler
+.IF "$(COM)"=="MSC"
+LIB:=$(LB);$(SLB);$(ILIB)
+.ENDIF
+
+# extend library path for MinGW Compiler
+.IF "$(GUI)$(COM)"=="WNTGCC"
+LIB:=$(LB);$(BIN);$(ILIB)
+.ENDIF
+
+# --- Environment-Allgemein ----------------------------------------
+
+.IF "$(CPUNAME)" == ""
+CPUNAME=CPUNAME_HAS_TO_BE_SET_IN_ENVIRONMENT
+.ENDIF
+
+.IF "$(USE_STLP_DEBUG)" != ""
+SCPCDEFS+=-D_STLP_DEBUG
+.ENDIF
+
+.IF "$(UDK_MAJOR)"!=""
+SCPDEFS+=-DUDK_MAJOR=$(UDK_MAJOR)
+.ENDIF # "$(UDK_MAJOR)"!=""
+
+SCPDEFS+=-U$(COMID) -DCOMID=$(COMID) -DCOMNAME=$(COMNAME) -D_$(COMID)
+SCPDEFS+=-DCCNUMVER=$(CCNUMVER)
+.IF "$(COM)"=="GCC"
+SCPDEFS+=-DSHORTSTDCPP3=$(SHORTSTDCPP3) -DSHORTSTDC3=$(SHORTSTDC3)
+.ENDIF # "$(SHORTSTDCPP3)"!=""
+# extend library path for OS/2 gcc/wlink
+.IF "$(GUI)"=="OS2"
+LIB:=$(LB);$(SLB);$(ILIB)
+.ENDIF
+
+
+UNOIDLDEFS+=-DSUPD=$(UPD) -DUPD=$(UPD)
+
+UNOIDLDEPFLAGS=-Mdepend=$(SOLARVER)
+
+UNOIDLINC+=-I. -I.. -I$(PRJ) -I$(PRJ)/inc -I$(PRJ)/$(INPATH)/idl -I$(OUT)/inc -I$(SOLARIDLDIR) -I$(SOLARINCDIR)
+
+CDEFS= -D$(OS) -D$(GUI) -D$(GVER) -D$(COM) -D$(CVER) -D$(CPUNAME)
+
+.IF "$(USE_STLP_DEBUG)" != "" && "$(GUI)"!="OS2"
+CDEFS+=-D_STLP_DEBUG
+.ENDIF
+
+.IF "$(CDEFS_PRESET)" != ""
+CDEFS+=$(CDEFS_PRESET)
+.ENDIF
+
+.IF "$(TIMELOG)" != ""
+CDEFS+=-DTIMELOG
+.ENDIF
+
+CDEFSCXX=
+CDEFSOBJ=
+CDEFSSLO=-DSHAREDLIB -D_DLL_
+CDEFSGUI=-DGUI
+CDEFSCUI=-DCUI
+#CDEFSMT=-DMULTITHREAD
+CDEFSPROF=-DPROFILE
+.IF "$(dbg_build_only)" == ""
+CDEFSDEBUG=-DDEBUG
+.ENDIF
+CDEFSDBGUTIL=-DDBG_UTIL
+CDEFSOPT=-DOPTIMIZE
+
+MKDEPFLAGS+=-I$(INCDEPN:s/ / -I/:s/-I-I/-I/)
+MKDEPALLINC=$(SOLARINC:s/-I/ -I/)
+MKDEPPREINC=-I$(PREPATH)/$(INPATH)/inc$(UPDMINOREXT)
+MKDEPSOLENV=-I$(SOLARENV)/inc -I$(SOLARENV)/$(GUI)$(CVER)$(COMEX)/inc
+MKDEPSOLVER=-I$(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT) -I$(SOLARVERSION)/$(INPATH)/inc
+MKDEPLOCAL=-I$(INCCOM)
+
+.IF "$(MKDEPENDALL)"!=""
+MKDEPFLAGS+=$(MKDEPALLINC)
+.ENDIF
+
+.IF "$(MKDEPENDSOLENV)"!=""
+MKDEPFLAGS+=$(MKDEPSOLENV)
+.ENDIF
+
+.IF "$(MKDEPENDPREPATH)"!=""
+MKDEPFLAGS+=$(MKDEPPREINC)
+.ENDIF
+
+.IF "$(MKDEPENDSOLVER)"!=""
+MKDEPFLAGS+=$(MKDEPSOLVER)
+.ENDIF
+# unused - nodep should do the same now
+#.IF "$(MKDEPENDLOCAL)"!="NO"
+MKDEPFLAGS+=$(MKDEPLOCAL)
+#.ENDIF
+
+BISON*=bison
+YACCFLAGS*=-d
+
+SVIDL=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/svidl
+
+LDUMP2*=$(SOLARBINDIR)/ldump4
+
+ZIPUPDATE=-u -j
+ZIPFLAGS=$(ZIPUPDATE)
+#hack for dynamic language subdirs
+LANGDIR=LANGDIR
+
+#scplinker flags
+SCPLINKFLAGS=-i $(PAR),$(SOLARPARDIR)
+.IF "$(SCPLINKVERSION)"!=""
+SCPLINKFLAGS+=-v $(SCPLINKVERSION)
+.ENDIF # "$(SCPLINKVERSION)"!=""
+
+.IF "$(make_srs_deps)"!=""
+RSC=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/rscdep
+.ELSE # "$(make_srs_deps)"!=""
+RSC=$(AUGMENT_LIBRARY_PATH) $(FLIPCMD) $(SOLARBINDIR)/rsc
+.ENDIF # "$(make_srs_deps)"!=""
+
+.IF "$(VERBOSE)" == "TRUE"
+ VERBOSITY=-verbose
+.ELSE
+ COMMAND_ECHO=@
+ .IF "$(VERBOSE)" == "FALSE"
+ VERBOSITY=-quiet
+ ZIP_VERBOSITY=-q
+ .ENDIF
+.ENDIF # "$(VERBOSE)" == "TRUE"
+COMPILE_ECHO_SWITCH=
+COMPILE_ECHO_FILE=$(<:f)
+
+#new
+RSCUPDVER=$(RSCREVISION)
+RSCUPDVERDEF=-DUPDVER="$(RSCUPDVER)"
+
+RSCFLAGS=-s
+RSCDEFS=-D$(GUI) -D$(GVER) -D$(COM) -D$(CVER) $(JAVADEF)
+
+.IF "$(BUILD_SPECIAL)"!=""
+RSCDEFS+=-DBUILD_SPECIAL=$(BUILD_SPECIAL)
+.ENDIF
+
+RSCDEFIMG*=default_images
+
+RSCEXTINC=.
+
+.IF "$(DEBUG)" != ""
+RSCDEFS+= -DDEBUG
+.ENDIF
+
+# settings for mozilla idl compiler
+XPIDL=xpidl
+XPIDL_LINK=xpt_link
+
+# alle bisher verwendeten Linker benutzen + um LIBs auf der naechsten Zeile
+# weiter zu schreiben, wenn es da eine Ausnahme geben sollte, muss
+# LINKEXTENDLINE compilerabhaengig definiert werden
+LINKEXTENDLINE=+
+
+LNT=$(DEVROOT)/lint/lint
+#LNTFLAGS=+v -i$(DEVROOT)/lint\ -mL options.lnt -u
+LNTFLAGS=+v -i$(DEVROOT)/lint/ -mL options.lnt -u
+LNTFLAGSOUTOBJ=-os
+
+.IF "$(GUI)"=="WNT"
+.INCLUDE : wnt.mk
+.ENDIF
+
+.IF "$(GUI)" == "UNX"
+.INCLUDE : unx.mk
+.ENDIF
+
+.IF "$(GUI)" == "OS2"
+.INCLUDE : os2.mk
+.ENDIF
+
+.IF "$(OOO_LIBRARY_PATH_VAR)" != ""
+# Add SOLARLIBDIR to the end of a (potentially previously undefined) library
+# path (LD_LIBRARY_PATH, PATH, etc.; there is no real reason to prefer adding at
+# the end over adding at the start); the ": &&" in the bash case enables this to
+# work at the start of a recipe line that is not prefixed by "+" as well as in
+# the middle of an existing && chain:
+AUGMENT_LIBRARY_PATH = : && \
+ $(OOO_LIBRARY_PATH_VAR)=$${{$(OOO_LIBRARY_PATH_VAR)+$${{$(OOO_LIBRARY_PATH_VAR)}}:}}$(normpath, $(SOLARSHAREDBIN))
+AUGMENT_LIBRARY_PATH_LOCAL = : && \
+ $(OOO_LIBRARY_PATH_VAR)=$${{$(OOO_LIBRARY_PATH_VAR)+$${{$(OOO_LIBRARY_PATH_VAR)}}:}}$(normpath, $(PWD)/$(DLLDEST)):$(normpath, $(SOLARSHAREDBIN))
+.END
+
+# remove if .Net 2003 support has expired
+.IF "$(debug)"!=""
+.IF "$(OS)$(COM)$(CPU)" == "WNTMSCI"
+.IF "$(COMEX)" == "10"
+.IF "$(SLOFILES)$(OBJFILES)$(DEPOBJFILES)"!=""
+MAXPROCESS!:=1
+.EXPORT : MAXPROCESS
+.ENDIF # "$(SLOFILES)$(OBJFILES)$(DEPOBJFILES)"!=""
+.ENDIF # "$(COMEX)" == "10"
+.ENDIF # "$(OS)$(COM)$(CPU)" == "WNTMSCI"
+.ENDIF # "$(debug)"!=""
+
+# for multiprocess building in external modules
+# allow seperate handling
+EXTMAXPROCESS*=$(MAXPROCESS)
+
+IDLC*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/idlc
+REGMERGE*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/regmerge
+REGCOMPARE*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/regcompare
+REGCOMP*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/regcomp
+CPPUMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/cppumaker
+JAVAMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/javamaker
+RDBMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/rdbmaker
+CLIMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/climaker
+
+CPPUNITTESTER=$(AUGMENT_LIBRARY_PATH_LOCAL) $(SOLARBINDIR)/cppunittester
+HELPEX=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/helpex
+LNGCONVEX=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/lngconvex
+HELPLINKER=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/HelpLinker
+
+.IF "$(JAVAINTERPRETER)" == ""
+JAVA*:=java
+.ELSE
+JAVA*:=$(JAVAINTERPRETER)
+.ENDIF
+.EXPORT : JAVA JAVAI
+
+# Define SCPCOMP without wrapper because pre2par.pl chokes on DOS style
+# pathes. (See iz57443)
+SCPCOMP=$(PERL) $(SOLARENV)/bin/pre2par.pl
+SCPLINK=$(PERL) $(SOLARENV)/bin/par2script.pl
+LZIP*=lzip
+CPPLCC*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/cpplcc
+
+.IF "$(DISABLE_ENHANCED_COMID)"==""
+.INCLUDE : tg_compv.mk
+.ELSE # "$(DISABLE_ENHANCED_COMID)"==""
+COMID=$(COM)
+.ENDIF # "$(DISABLE_ENHANCED_COMID)"==""
+.IF "$(SOLAR_JAVA)"=="TRUE"
+.IF "$(USE_JAVAVER)"!=""
+.INCLUDE : tg_javav.mk
+.ENDIF "$(USE_JAVAVER)"!=""
+.ENDIF # "$(SOLAR_JAVA)"=="TRUE"
+
+.IF "$(COM)"=="GCC"
+GXX_INCLUDE_PATH*:=$(COMPATH)/include/c++/$(CCVER)
+.EXPORT : GXX_INCLUDE_PATH
+CDEFS+= -DGXX_INCLUDE_PATH=$(GXX_INCLUDE_PATH)
+.ENDIF
+
+# --- extend new environment ----------------------------------
+CDEFS+= -DSUPD=$(UPD)
+
+# flags to enable build with symbols; required for crashdump feature
+.IF ("$(ENABLE_CRASHDUMP)"!="" && "$(ENABLE_CRASHDUMP)"!="DUMMY") || "$(ENABLE_SYMBOLS)"!=""
+CFLAGSENABLESYMBOLS_CC_ONLY*=$(CFLAGSENABLESYMBOLS)
+CFLAGSCXX+=$(CFLAGSENABLESYMBOLS)
+CFLAGSCC+=$(CFLAGSENABLESYMBOLS_CC_ONLY)
+.ENDIF # ("$(ENABLE_CRASHDUMP)"!="" && "$(ENABLE_CRASHDUMP)"!="DUMMY") || "$(ENABLE_SYMBOLS)"!=""
+
+.IF "$(profile)"!=""
+CDEFS+= $(CDEFSPROF)
+CFLAGS+= $(CFLAGSPROF)
+.IF "$(WST)"!=""
+LINKFLAGS=$(LINKFLAGSWST)
+LINKCFLAGS=$(LINKFLAGSWST)
+.ELSE
+LINKFLAGSADD+=$(LINKFLAGSPROF)
+.ENDIF
+.ENDIF
+
+.IF "$(debug)"!=""
+JAVAFLAGS+=$(JAVAFLAGSDEBUG)
+CDEFS+= $(CDEFSDEBUG)
+CFLAGS+= $(CFLAGSDEBUG)
+LINKFLAGSADD+= $(LINKFLAGSDEBUG)
+.ENDIF
+
+.IF "$(dbgutil)"!=""
+CDEFS+=$(CDEFSDBGUTIL)
+CFLAGS+=$(CFLAGSDBGUTIL)
+RSCDEFS+=-DDBG_UTIL
+.ENDIF
+
+.IF "$(product)"!=""
+CDEFS+= -DPRODUCT -DNDEBUG
+RSCDEFS+= -DPRODUCT
+RSCDEFS+= -DNDEBUG
+.ENDIF
+
+.IF "$(DBG_LEVEL)"!=""
+CDEFS+=-DOSL_DEBUG_LEVEL=$(DBG_LEVEL)
+RSCDEFS+=-DOSL_DEBUG_LEVEL=$(DBG_LEVEL)
+.ENDIF
+
+.IF "$(optimize)"!=""
+CDEFS+=$(CDEFSOPT)
+CFLAGS+=$(CFLAGSOPT)
+LINKFLAGSADD+=$(LINKFLAGSOPT)
+.ELSE
+CFLAGS+=$(CFLAGSNOOPT)
+.ENDIF
+
+.IF "$(ENABLE_EXCEPTIONS)"!=""
+GLOBAL_EXCEPTIONS_FLAGS+=$(CFLAGSEXCEPTIONS)
+GLOBAL_EXCEPTIONS_FLAGS+=-DEXCEPTIONS_ON
+.ELSE
+GLOBAL_EXCEPTIONS_FLAGS+=$(CFLAGS_NO_EXCEPTIONS)
+GLOBAL_EXCEPTIONS_FLAGS+=-DEXCEPTIONS_OFF
+.ENDIF
+# used if an object appears in the EXCEPTIONSFILES list
+# see also rules.mk
+LOCAL_EXCEPTIONS_FLAGS+=$(CFLAGSEXCEPTIONS)
+LOCAL_EXCEPTIONS_FLAGS+=-DEXCEPTIONS_ON
+
+.IF "$(ENABLE_LAYOUT)" == "TRUE"
+CDEFS+=-DENABLE_LAYOUT=1
+.ELSE # ENABLE_LAYOUT != TRUE
+CFLAGS+=-DENABLE_LAYOUT=0
+.ENDIF # ENABLE_LAYOUT != TRUE
+
+.IF "$(ENABLE_LAYOUT_EXPERIMENTAL)" == "TRUE"
+CDEFS+=-DENABLE_LAYOUT_EXPERIMENTAL=1
+.ELSE # ENABLE_LAYOUT_EXPERIMENTAL != TRUE
+CFLAGS+=-DENABLE_LAYOUT_EXPERIMENTAL=0
+.ENDIF # ENABLE_LAYOUT_EXPERIMENTAL != TRUE
+
+# compose flags and defines for GUI
+.IF "$(TARGETTYPE)"=="GUI"
+CDEFS+= $(CDEFSGUI)
+CFLAGSSLO+=$(CFLAGSSLOGUIMT)
+CDEFSSLO+=$(CDEFSSLOMT)
+LINKFLAGSAPP=$(LINKFLAGSAPPGUI)
+LINKFLAGSSHL=$(LINKFLAGSSHLGUI)
+STDOBJ=$(STDOBJGUI)
+STDSLO=$(STDSLOGUI)
+
+CDEFSOBJ+= $(CDEFSMT) $(CDEFSOBJMT)
+CFLAGSOBJ+=$(CFLAGSOBJGUIMT)
+STDLIB=$(STDLIBGUIMT)
+STDSHL=$(STDSHLGUIMT)
+
+.ENDIF
+
+# compose flags and defines for CUI
+.IF "$(TARGETTYPE)" == "CUI" || "$(TARGETTYPE)"=="cui"
+CDEFS+= $(CDEFSCUI)
+CFLAGSSLO+=$(CFLAGSSLOCUIMT)
+CDEFSSLO+=$(CDEFSSLOMT)
+LINKFLAGSAPP=$(LINKFLAGSAPPCUI)
+LINKFLAGSSHL=$(LINKFLAGSSHLCUI)
+STDOBJ=$(STDOBJCUI)
+STDSLO=$(STDSLOCUI)
+
+CDEFSOBJ+=$(CDEFSMT) $(CDEFSOBJMT)
+CFLAGSOBJ+=$(CFLAGSOBJCUIMT)
+STDLIB=$(STDLIBCUIMT)
+STDSHL=$(STDSHLCUIMT)
+
+.ENDIF
+
+.EXPORT : PICSWITCH
+
+.IF "$(USE_SYSTEM_STL)"=="YES"
+LIBSTLPORT=""
+.ENDIF
+
+.IF "$(NO_DEFAULT_STL)"==""
+STDLIB+=$(LIBSTLPORT)
+STDSHL+=$(LIBSTLPORT)
+.ENDIF # "$(NO_DEFAULT_STL)"==""
+
+# fill up unresolved symbols not found else where
+.IF "$(FILLUPARC)"!=""
+STDLIB+=$(FILLUPARC)
+STDSHL+=$(FILLUPARC)
+.ENDIF # "$(FILUPARC)"!=""
+
+.IF "$(SOLAR_JAVA)"!=""
+CDEFS+=$(JAVADEF)
+.ENDIF # "$(SOLAR_JAVA)"!=""
+
+.INCLUDE .IGNORE: $(UPD)$(LAST_MINOR).mk
+
+# Once all modules on a given platform compile without warnings, the specific
+# .mk file for that platform should set COMPILER_WARN_ERRORS=TRUE and no longer
+# set MODULES_WITH_WARNINGS, and once no platform sets MODULES_WITH_WARNINGS any
+# longer, this code can go away:
+.IF "$(MODULES_WITH_WARNINGS)" != ""
+MODULES_WITH_WARNINGS_1 := $(foreach,i,$(MODULES_WITH_WARNINGS) .$(i).)
+MODULES_WITH_WARNINGS_2 := $(subst,.$(PRJNAME)., $(MODULES_WITH_WARNINGS_1))
+.IF "$(MODULES_WITH_WARNINGS_1)" == "$(MODULES_WITH_WARNINGS_2)"
+COMPILER_WARN_ERRORS = TRUE
+.ENDIF
+.ENDIF
+
+CFLAGSWARNCXX *= $(CFLAGSWARNCC)
+CFLAGSWALLCXX *= $(CFLAGSWALLCC)
+CFLAGSWERRCXX *= $(CFLAGSWERRCC)
+
+.IF "$(ENVWARNFLAGS)"==""
+.IF "$(COMPILER_WARN_ALL)"==""
+CFLAGSCC+=$(CFLAGSWARNCC)
+CFLAGSCXX+=$(CFLAGSWARNCXX)
+.ELSE
+CFLAGSCC+=$(CFLAGSWALLCC)
+CFLAGSCXX+=$(CFLAGSWALLCXX)
+.ENDIF
+.IF "$(COMPILER_WARN_ERRORS)"!="" && "$(EXTERNAL_WARNINGS_NOT_ERRORS)"==""
+CFLAGSCC+=$(CFLAGSWERRCC)
+CFLAGSCXX+=$(CFLAGSWERRCXX)
+.ENDIF
+.ELSE # "$(ENVWARNFLAGS)"==""
+CFLAGSAPPEND+=$(ENVWARNFLAGS)
+.ENDIF # "$(ENVWARNFLAGS)"==""
+
+CDEFS+= $(ADDCDEFS)
+CDEFS+= $(ENVCDEFS)
+CFLAGS+= $(CFLAGSCALL) $(ENVCFLAGS)
+CFLAGSCXX+= $(ENVCFLAGSCXX)
+# andersrum wg. -TPxxxx
+CFLAGSINCXX+:=$(ENVCFLAGSINCXX)
+LIBFLAGS+= $(ENVLIBFLAGS)
+LINKFLAGSADD+= $(ENVLINKFLAGS)
+RSCFLAGS+= $(ENVRSCFLAGS)
+RSCDEFS+= $(ENVRSCDEFS)
+# RSCLINKFLAGS+= $(ENVRSCLINKFLAGS)
+RCFLAGS+= $(ENVRCFLAGS)
+RCLINKFLAGS+= $(ENVRCLINKFLAGS)
+
+LINKFLAGSRUNPATH_URELIB*=
+LINKFLAGSRUNPATH_UREBIN*=
+LINKFLAGSRUNPATH_OOO*=
+LINKFLAGSRUNPATH_SDK*=
+LINKFLAGSRUNPATH_BRAND*=
+LINKFLAGSRUNPATH_OXT*=
+LINKFLAGSRUNPATH_BOXT*=
+LINKFLAGSRUNPATH_NONE*=
+
+# make sure both linker variables are set
+LINKC*=$(LINK)
+LINKCFLAGS*=$(LINKFLAGS)
+LINKFLAGS+=$(LINKFLAGSADD)
+LINKCFLAGS+=$(LINKFLAGSADD)
+
+#defaults for UCR HEADER
+UNOUCRBASE*=UCR
+UNOUCROUT*=$(OUT)/inc/$(TARGET)
+INCPRE+=-I$(UNOUCROUT)
+UNOUCRRDB*=$(SOLARBINDIR)/types.rdb
+
+# location of trustedinfo.manifest for Windows Vista
+.IF "$(COM)"=="MSC"
+TRUSTED_MANIFEST_LOCATION*=$(SOLARENV)/inc
+.ENDIF # "$(COM)"=="MSC"
+
+# --- Compiler -----------------------------------------------------
+.INCLUDE : rules.mk
+
+# --- include typelists --------------------------------------------
+
+.IF "$(COMP1TYPELIST)"!=""
+.INCLUDE .IGNORE : $(MISC)/$(COMP1TYPELIST).mk
+$(COMP1TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP1TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml)
+.ENDIF
+
+.IF "$(COMP2TYPELIST)"!=""
+.INCLUDE .IGNORE : $(MISC)/$(COMP2TYPELIST).mk
+$(COMP2TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP2TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml)
+.ENDIF
+
+.IF "$(COMP3TYPELIST)"!=""
+.INCLUDE .IGNORE : $(MISC)/$(COMP3TYPELIST).mk
+$(COMP3TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP3TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml)
+.ENDIF
+
+.IF "$(COMP4TYPELIST)"!=""
+.INCLUDE .IGNORE : $(MISC)/$(COMP4TYPELIST).mk
+$(COMP4TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP4TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml)
+.ENDIF
+
+.IF "$(COMP5TYPELIST)"!=""
+.INCLUDE .IGNORE : $(MISC)/$(COMP5TYPELIST).mk
+$(COMP5TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP5TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml)
+.ENDIF
+
+.IF "$(COMP6TYPELIST)"!=""
+.INCLUDE .IGNORE : $(MISC)/$(COMP6TYPELIST).mk
+$(COMP6TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP6TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml)
+.ENDIF
+
+.IF "$(COMP7TYPELIST)"!=""
+.INCLUDE .IGNORE : $(MISC)/$(COMP7TYPELIST).mk
+$(COMP7TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP7TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml)
+.ENDIF
+
+.IF "$(COMP8TYPELIST)"!=""
+.INCLUDE .IGNORE : $(MISC)/$(COMP8TYPELIST).mk
+$(COMP8TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP8TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml)
+.ENDIF
+
+.IF "$(COMP9TYPELIST)"!=""
+.INCLUDE .IGNORE : $(MISC)/$(COMP9TYPELIST).mk
+$(COMP9TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP9TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml)
+.ENDIF
+
+# some place to define these jars for SO environment
+XML_APIS_JAR*=$(SOLARBINDIR)/xml-apis.jar
+XERCES_JAR*=$(SOLARBINDIR)/xercesImpl.jar
+
+.IF "$(SYSTEM_CPPUNIT)" != "YES"
+CPPUNIT_CFLAGS =
+.END
+
+# workaround for strange dmake bug:
+# if the previous block was a rule or a target, "\#" isn't recognized
+# as an escaped "#". if it was an assignment, escaping works...
+some_unique_variable_name:=1
diff --git a/solenv/inc/shlinfo.rc b/solenv/inc/shlinfo.rc
new file mode 100644
index 000000000000..3e090272408d
--- /dev/null
+++ b/solenv/inc/shlinfo.rc
@@ -0,0 +1,113 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#if !defined(ENGLISH)
+#define LG_D // generate always german version
+#endif
+
+#define VER_FIRSTYEAR 2010
+
+
+#if defined(OS2)
+
+#define OS2_VERSION "hello world"
+
+#else
+
+#include <windows.h>
+#include "version.hrc"
+
+// -----------------------------------------------------------------------
+// version information
+// -----------------------------------------------------------------------
+
+VS_VERSION_INFO versioninfo
+#ifndef SUBVERSION
+ fileversion VERSION, 0, VERVARIANT, VER_COUNT
+ productversion VERSION, 0, VERVARIANT, VER_COUNT
+#else
+ fileversion VERSION, SUBVERSION, VERVARIANT, VER_COUNT
+ productversion VERSION, SUBVERSION, VERVARIANT, VER_COUNT
+#endif
+ fileflagsmask 0x3F
+ fileflags
+#if defined(DEBUG)
+ VS_FF_DEBUG |
+#endif
+#ifdef VER_PREL
+ VS_FF_PRERELEASE |
+#endif
+ 0
+#ifndef WIN32
+ fileos VOS_DOS_WINDOWS16
+#else
+ fileos VOS_NT_WINDOWS32
+#endif
+ filetype VFT_APP
+ {
+ block "StringFileInfo"
+ {
+#ifdef LG_D
+ block "040704E4"
+ {
+ // German StringTable
+ value "CompanyName", "OpenOffice.org\0"
+ value "FileVersion", PPS(VER_LEVEL) "\0"
+ value "OriginalFilename", PPS(ORG_NAME) "\0"
+ value "InternalName", PPS(INTERNAL_NAME) "\0"
+ value "LegalCopyright", S_CRIGHT " Oracle, Inc.\0"
+ ADDITIONAL_VERINFO1
+ ADDITIONAL_VERINFO2
+ ADDITIONAL_VERINFO3
+ }
+#else
+ block "040904E4"
+ {
+ // International StringTable
+ value "CompanyName", "OpenOffice.org\0"
+ value "FileVersion", PPS(VER_LEVEL) "\0"
+ value "OriginalFilename", PPS(ORG_NAME) "\0"
+ value "InternalName", PPS(INTERNAL_NAME) "\0"
+ value "LegalCopyright", S_CRIGHT " Oracle, Inc.\0"
+ ADDITIONAL_VERINFO1
+ ADDITIONAL_VERINFO2
+ ADDITIONAL_VERINFO3
+ }
+#endif
+ }
+
+ block "VarFileInfo"
+ {
+#ifdef LG_D
+ value "Translation", 0x0407, 1252
+#else
+ value "Translation", 0x0409, 1252
+#endif
+ }
+ }
+
+#endif // OS2
diff --git a/solenv/inc/startup/OS2/macros.mk b/solenv/inc/startup/OS2/macros.mk
new file mode 100644
index 000000000000..2f1447e6e714
--- /dev/null
+++ b/solenv/inc/startup/OS2/macros.mk
@@ -0,0 +1,30 @@
+# Define additional OS/2 specific macros.
+#
+
+# Process release-specific refinements, if any.
+# YD .INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d)$(OSRELEASE)$/macros.mk
+
+# Directory entries are case incensitive
+.DIRCACHERESPCASE *:= no
+
+# tmp is already imported - use it!
+TMPDIR *= $(TMP)
+
+# Applicable suffix definitions
+A *:= .lib # Libraries
+E *:= .exe # Executables
+F *:= .for # Fortran
+O *:= .obj # Objects
+P *:= .pas # Pascal
+S *:= .asm # Assembler sources
+V *:= # RCS suffix
+
+.MKSARGS *:= yes
+RM *= $(ROOTDIR)$/bin$/rm
+MV *= $(ROOTDIR)$/bin$/mv
+DIVFILE *= $(TMPFILE:s,/,${__.DIVSEP-sh-${USESHELL}})
+__.DIVSEP-sh-yes !:= \\\
+__.DIVSEP-sh-no !:= \\
+
+NAMEMAX = 256
+
diff --git a/solenv/inc/startup/Readme b/solenv/inc/startup/Readme
new file mode 100644
index 000000000000..63a023d10d3e
--- /dev/null
+++ b/solenv/inc/startup/Readme
@@ -0,0 +1,6 @@
+
+here are some hints about our use of the startup directory.
+
+the .INCLUDEDIRS line in startup.mk gives you the oportunity of switching
+to your own set of central makefiles.
+
diff --git a/solenv/inc/startup/startup.mk b/solenv/inc/startup/startup.mk
new file mode 100644
index 000000000000..b4aa9a74353a
--- /dev/null
+++ b/solenv/inc/startup/startup.mk
@@ -0,0 +1,109 @@
+# This is the root DMAKE startup file.
+#
+# Definitions common to all environments are given at the root.
+# Definitions parameterized at the root have their parameters specified
+# in sub-makefiles which are included based on the values of the three
+# make variables:
+#
+# OS - core operating system flavour
+#
+# See the file 'summary', found in this directory for a list of
+# environments supported by this release.
+
+# Disable warnings for macros given on the command line but redefined here.
+__.silent !:= $(.SILENT) # Preserve user's .SILENT flag
+.SILENT !:= yes
+.NOTABS !:= yes
+.ERROR :
+ @echo '---* $(MKFILENAME) *---'
+
+# Define the directory separator string.
+/ *= $(DIRSEPSTR)
+
+.IMPORT .IGNORE : .EVERYTHING
+
+.IF "$(TNR)" == ""
+
+CALLMACROS:=$(MAKEMACROS)
+.EXPORT : CALLMACROS
+
+CALLTARGETS=$(MAKETARGETS)
+.ENDIF # "$(TNR)" == ""
+
+.INCLUDEDIRS : $(DMAKE_INC) $(SOLARVERSION)$/$(INPATH)$/inc$(UPDMINOREXT) $(SOLARENV)$/inc
+
+# Grab key definitions from the environment
+# .IMPORT .IGNORE : OS TMPDIR UPD INPATH OUTPATH GUI COM EX CLASSPATH PRODUCT GUIBASE SOLARENV SOLARVER GUIENV CPU CPUNAME CVER GVER COMPATH LIB INCLUDE TR SORT UNIQ ROOTDIR SED AWK TOUCH IENV ILIB PRODUCT_ENV COMEX UPD BUILD DEVROOT VCL SO3 ENVCFLAGS
+
+.IF "$(OS)" == "" || "$(OS)" == "Windows_NT"
+.ERROR : ; @echo Forced error: Environment variable OS has to be set for OOo build!
+OS_variable_needed
+.ENDIF
+
+# Customize macro definitions based on seting of OS.
+# This must come before the default macro definitions which follow.
+.IF "$(OS)" == "OS2"
+.INCLUDE: $(INCFILENAME:d)OS2/macros.mk
+.ELIF "$(OS)" == "WNT"
+.INCLUDE: $(INCFILENAME:d)wnt/macros.mk
+.END
+
+# ----------------- Default Control Macro definitions -----------------------
+# Select appropriate defaults for basic macros
+MAKE *= $(MAKECMD) $(MFLAGS)
+TMPDIR *:= $/tmp
+DIVFILE *= $(TMPFILE)
+
+MAXLINELENGTH = 65530
+
+# Recipe execution configuration
+SHELL := $(OOO_SHELL)
+SHELLFLAGS := -c
+SHELLMETAS := !"\#$$%&'()*;<=>?[\]`{{|}}~
+ # the colon (":") utility is typically only available as a shell built-in,
+ # so it should be included in SHELLMETAS; however, this would result in very
+ # many false positives on Windows where ":" is used in drive letter notation
+GROUPSHELL := $(SHELL)
+GROUPFLAGS :=
+GROUPSUFFIX :=
+
+# Intermediate target removal configuration
+RM *:= rm
+RMFLAGS *= -f
+RMTARGET *= $<
+
+# Default recipe that is used to remove intermediate targets.
+.REMOVE :; #echo dummy remove #$(RM) $(RMFLAGS) $(RMTARGET)
+#.REMOVE :; echo $(RM) $(RMFLAGS) $(RMTARGET)
+
+# Directory caching configuration.
+.DIRCACHE *:= yes
+.DIRCACHERESPCASE *:= yes
+
+# Define the special NULL Prerequisite
+NULLPRQ *:= __.NULLPRQ
+
+# Primary suffixes in common use
+E *:= # Executables
+
+# Other Compilers, Tools and their flags
+MV *:= mv # File rename command
+
+
+# Finally, define the default construction strategy
+.ROOT .PHONY .NOSTATE .SEQUENTIAL :- .INIT .TARGETS .DONE;
+.INIT .DONE .PHONY: $(NULLPRQ);
+
+# Define the NULL Prerequisite as having no recipe.
+$(NULLPRQ) .PHONY :;
+
+# Reset warnings back to previous setting.
+.SILENT !:= $(__.silent)
+
+# Check for a Local project file, gets parsed before user makefile.
+.INCLUDE .IGNORE .NOINFER: "project.mk"
+
+.MAKEFILES :- makefile.mk MAKEFILE.MK $(CONFIG_PROJECT)$/makefile.rc $(SOLARENV)$/inc$/found_no.mk
+
+LANG=C
+.EXPORT : LANG
diff --git a/solenv/inc/startup/summary b/solenv/inc/startup/summary
new file mode 100644
index 000000000000..4ae18860da41
--- /dev/null
+++ b/solenv/inc/startup/summary
@@ -0,0 +1,3 @@
+The following is a summary of the supported dmake environments. When you
+issue the build command 'dmake tag' where tag is the target environment it
+will build one of these by default.
diff --git a/solenv/inc/startup/wnt/macros.mk b/solenv/inc/startup/wnt/macros.mk
new file mode 100644
index 000000000000..2d8181439e81
--- /dev/null
+++ b/solenv/inc/startup/wnt/macros.mk
@@ -0,0 +1,32 @@
+# Define additional MSDOS specific settings.
+#
+
+# --- Set Wrapper command ---
+# Provide a macro that can be used to access the wrapper and to avoid
+# hardcoding the program name everywhere
+GUWCMD*=guw.exe
+
+# This is a no-op for native W32 dmake
+.WINPATH !:= yes
+
+# Directory cache configuration.
+.DIRCACHE *:= no
+
+# Applicable suffix definitions
+E *:= .exe # Executables
+
+# This is hopefully not used. Only in: dmake/msdos/spawn.c
+# .MKSARGS *:= yes
+ DIVFILE *= $(TMPFILE:s,/,${__.DIVSEP-sh-${USESHELL}})
+ RM *= $/bin$/rm
+ MV *= $/bin$/mv
+ __.DIVSEP-sh-yes *:= \\\
+ __.DIVSEP-sh-no *:= \\
+ DIRSEPSTR :=/
+
+.EXPORT : GUWCMD
+
+# Does not respect case of filenames.
+.DIRCACHERESPCASE := no
+NAMEMAX = 256
+
diff --git a/solenv/inc/starview.hid b/solenv/inc/starview.hid
new file mode 100644
index 000000000000..54474c566b99
--- /dev/null
+++ b/solenv/inc/starview.hid
@@ -0,0 +1,304 @@
+#include <stdio.h>
+
+#define leer 0
+
+#define application 1
+#define Application 1
+#define APPLICATION 1
+#define resource 2
+#define Resource 2
+#define RESOURCE 2
+#define string 3
+#define String 3
+#define STRING 3
+#define icon 4
+#define Icon 4
+#define ICON 4
+#define bitmap 5
+#define Bitmap 5
+#define BITMAP 5
+#define pointer 6
+#define Pointer 6
+#define POINTER 6
+#define brush 7
+#define Brush 7
+#define BRUSH 7
+#define color 8
+#define Color 8
+#define COLOR 8
+#define font 9
+#define Font 9
+#define FONT 9
+#define pen 10
+#define Pen 10
+#define PEN 10
+#define mapmode 11
+#define MapMode 11
+#define MAPMODE 11
+#define accel 12
+#define Accel 12
+#define ACCEL 12
+#define accelitem 13
+#define AccelItem 13
+#define ACCELITEM 13
+#define menu 14
+#define Menu 14
+#define MENU 14
+#define menuitem 15
+#define MenuItem 15
+#define MENUITEM 15
+#define outputdevice 16
+#define OutputDevice 16
+#define OUTPUTDEVICE 16
+#define keycode 17
+#define KeyCode 17
+#define KEYCODE 17
+#define time 18
+#define Time 18
+#define TIME 18
+#define date 19
+#define Date 19
+#define DATE 19
+#define international 20
+#define International 20
+#define INTERNATIONAL 20
+#define image 21
+#define Image 21
+#define IMAGE 21
+#define imagelist 22
+#define ImageList 22
+#define IMAGELIST 22
+#define messbox 23
+#define MessBox 23
+#define MESSBOX 23
+#define infobox 24
+#define InfoBox 24
+#define INFOBOX 24
+#define warningbox 25
+#define WarningBox 25
+#define WARNINGBOX 25
+#define errorbox 26
+#define ErrorBox 26
+#define ERRORBOX 26
+#define querybox 27
+#define QueryBox 27
+#define QUERYBOX 27
+#define window 28
+#define Window 28
+#define WINDOW 28
+#define syswindow 29
+#define SysWindow 29
+#define SYSWINDOW 29
+#define workwin 30
+#define WorkWin 30
+#define WORKWIN 30
+#define mdiwindow 31
+#define MdiWindow 31
+#define MDIWINDOW 31
+#define floatingwindow 32
+#define FloatingWindow 32
+#define FLOATINGWINDOW 32
+#define dialog 33
+#define Dialog 33
+#define DIALOG 33
+#define modelessdialog 34
+#define ModelessDialog 34
+#define MODELESSDIALOG 34
+#define modaldialog 35
+#define ModalDialog 35
+#define MODALDIALOG 35
+#define systemdialog 36
+#define SystemDialog 36
+#define SYSTEMDIALOG 36
+#define pathdialog 37
+#define PathDialog 37
+#define PATHDIALOG 37
+#define filedialog 38
+#define FileDialog 38
+#define FILEDIALOG 38
+#define printersetupdialog 39
+#define PrinterSetupDialog 39
+#define PRINTERSETUPDIALOG 39
+#define printdialog 40
+#define PrintDialog 40
+#define PRINTDIALOG 40
+#define colordialog 41
+#define ColorDialog 41
+#define COLORDIALOG 41
+#define fontdialog 42
+#define FontDialog 42
+#define FONTDIALOG 42
+#define control 43
+#define Control 43
+#define CONTROL 43
+#define button 44
+#define Button 44
+#define BUTTON 44
+#define pushbutton 45
+#define PushButton 45
+#define PUSHBUTTON 45
+#define okbutton 46
+#define OkButton 46
+#define OKButton 46
+#define OKBUTTON 46
+#define cancelbutton 47
+#define CancelButton 47
+#define CANCELBUTTON 47
+#define helpbutton 48
+#define HelpButton 48
+#define HELPBUTTON 48
+#define imagebutton 49
+#define ImageButton 49
+#define IMAGEBUTTON 49
+#define menubutton 50
+#define MenuButton 50
+#define MENUBUTTON 50
+#define morebutton 51
+#define MoreButton 51
+#define MOREBUTTON 51
+#define spinbutton 52
+#define SpinButton 52
+#define SPINBUTTON 52
+#define radiobutton 53
+#define RadioButton 53
+#define RADIOBUTTON 53
+#define checkbox 54
+#define CheckBox 54
+#define CHECKBOX 54
+#define tristatebox 55
+#define TriStateBox 55
+#define TRISTATEBOX 55
+#define edit 56
+#define Edit 56
+#define EDIT 56
+#define multilineedit 57
+#define MultiLineEdit 57
+#define MULTILINEEDIT 57
+#define combobox 58
+#define ComboBox 58
+#define COMBOBOX 58
+#define listbox 59
+#define ListBox 59
+#define LISTBOX 59
+#define multilistbox 60
+#define MultiListBox 60
+#define MULTILISTBOX 60
+#define text 61
+#define Text 61
+#define TEXT 61
+#define fixedline 62
+#define FixedLine 62
+#define FIXEDLINE 62
+#define fixedbitmap 63
+#define FixedBitmap 63
+#define FIXEDBITMAP 63
+#define fixedimage 64
+#define FixedImage 64
+#define FIXEDIMAGE 64
+#define fixedicon 65
+#define FixedIcon 65
+#define FIXEDICON 65
+#define groupBox 66
+#define GroupBox 66
+#define GROUPBOX 66
+#define scrollbar 67
+#define ScrollBar 67
+#define SCROLLBAR 67
+#define scrollbarbox 68
+#define ScrollBarBox 68
+#define SCROLLBARBOX 68
+#define splitter 69
+#define Splitter 69
+#define SPLITTER 69
+#define splitwindow 70
+#define SplitWindow 70
+#define SPLITWINDOW 70
+#define spinfield 71
+#define SpinField 71
+#define SPINFIELD 71
+#define patternfield 72
+#define PatternField 72
+#define PATTERNFIELD 72
+#define numericfield 73
+#define NumericField 73
+#define NUMERICFIELD 73
+#define metricfield 74
+#define MetricField 74
+#define METRICFIELD 74
+#define currencyfield 75
+#define CurrencyField 75
+#define CURRENCYFIELD 75
+#define datefield 76
+#define DateField 76
+#define DATEFIELD 76
+#define timefield 77
+#define TimeField 77
+#define TIMEFIELD 77
+#define patternbox 78
+#define PatternBox 78
+#define PATTERNBOX 78
+#define numericbox 79
+#define NumericBox 79
+#define NUMERICBOX 79
+#define metricbox 80
+#define MetricBox 80
+#define METRICBOX 80
+#define currencybox 81
+#define CurrencyBox 81
+#define CURRENCYBOX 81
+#define datebox 82
+#define DateBox 82
+#define DATEBOX 82
+#define timebox 83
+#define TimeBox 83
+#define TIMEBOX 83
+#define toolboxitem 84
+#define ToolBoxItem 84
+#define TOOLBOXITEM 84
+#define toolbox 85
+#define ToolBox 85
+#define TOOLBOX 85
+#define dockingwindow 86
+#define DockingWindow 86
+#define DOCKINGWINDOW 86
+#define statusbar 87
+#define StatusBar 87
+#define STATUSBAR 87
+#define tabpage 88
+#define TabPage 88
+#define TABPAGE 88
+#define tabcontrol 89
+#define TabControl 89
+#define TABCONTROL 89
+#define tabdialog 90
+#define TabDialog 90
+#define TABDIALOG 90
+#define tabcontrolitem 91
+#define TabControlItem 91
+#define TABCONTROLITEM 91
+#define treelistbox 92
+#define TreeListBox 92
+#define TREELISTBOX 92
+#define stringarray 93
+#define StringArray 93
+#define STRINGARRAY 93
+/* MH and OG */
+#define fixedtext 94
+#define FixedText 94
+#define FIXEDTEXT 94
+#define pageitem 95
+#define PageItem 95
+#define PAGEITEM 95
+#define accelerator 96
+#define Accelerator 96
+#define ACCELERATOR 96
+#define acceleratoritem 97
+#define AcceleratorItem 97
+#define ACCELERATORITEM 97
+
+#define SfxStyleFamilies 98
+#define SfxStyleFamilyItem 99
+#define SfxSlotInfo 100
+
+#define define 127
+
diff --git a/solenv/inc/target.mk b/solenv/inc/target.mk
new file mode 100644
index 000000000000..0fe06145879d
--- /dev/null
+++ b/solenv/inc/target.mk
@@ -0,0 +1,2117 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+MKFILENAME:=TARGET.MK
+
+# ------------------------------------------------------------------
+# INCLUDE-Path
+# ------------------------------------------------------------------
+
+.IF "$(STL_OS2_BUILDING)" != ""
+CDEFS+=-DSTL_OS2_BUILDING
+.ENDIF
+.IF "$(VISIBILITY_HIDDEN)" != ""
+.IF "$(COMNAME)" == "gcc3" && "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+CFLAGS += -fvisibility=hidden
+.ELIF "$(COMNAME)" == "sunpro5" && "$(CCNUMVER)" >= "00050005"
+CFLAGS += -xldscope=hidden
+.ENDIF
+.ENDIF
+
+.IF "$(TARGET)"==""
+target_empty=warn_target_empty
+.ENDIF
+
+# all use solarinc
+# no standalone -I flags!!
+INCEXT*=.
+INCPRE*=.
+INCPOST*=.
+.IF "$(BOOTSTRAP_SERVICE)"!="TRUE" && "$(NO_OFFUH)"==""
+UNOINCLUDES=$(SOLARINCDIR)/offuh
+.ENDIF # "$(BOOTSTRAP_SERVICE)"!="TRUE" && "$(NO_OFFUH)"==""
+SOLARINC+=$(JDKINCS)
+# make sure INCLUDE isn't set
+INCLUDE:=
+.EXPORT : INCLUDE
+.IF "$(PRJINC)"!=""
+INCLUDE!:=-I. $(INCPRE:^"-I":s/-I-I/-I/) -I$(INCLOCAL) $(INCLOCPRJ:^"-I":s/-I-I/-I/) -I$(INCPCH) -I$(INC) -I$(INCGUI) -I$(INCCOM) $(SOLARINC) $(null,$(UNOINCLUDES) $(NULL) -I$(UNOINCLUDES)) -I$(INCEXT) -I$(PRJ)/res -I$(INCPOST)
+.ELSE # "$(PRJINC)"!=""
+INCLUDE!:=-I. $(INCPRE:^"-I":s/-I-I/-I/) -I$(INCLOCAL) -I$(INCPCH) -I$(INC) -I$(INCGUI) -I$(INCCOM) $(SOLARINC) $(null,$(UNOINCLUDES) $(NULL) -I$(UNOINCLUDES)) -I$(INCEXT) -I$(PRJ)/res -I$(INCPOST)
+.ENDIF # "$(PRJINC)"!=""
+INCLUDE_C=$(subst,/stl$(SPACECHAR),dont_use_stl$(SPACECHAR) $(INCLUDE))
+.EXPORT : LIB
+# --- Compiler -----------------------------------------------------
+
+.IF "$(RC_SUBDIRS)"!=""
+SUBDIRS:=$(RC_SUBDIRS)
+SUBDIRSDEPS=$(RC_SUBDIRSDEPS)
+.ENDIF
+
+.INCLUDE : pstrules.mk
+
+.IF "$(YACCTARGET)"!=""
+.INCLUDE : tg_yxx.mk
+.ENDIF # "$(YACCTARGET)"!=""
+
+.IF "$(nodep)"==""
+
+.IF "$(L10N_framework)"==""
+.IF "$(DEPOBJFILES)"!=""
+DEPCOLLECT_SLO+:=$(foreach,i,$(DEPOBJFILES) $(eq,$i,$(subst,$(SLO),ttt $i) $(NULL) $(subst,$(SLO)/,not_existing/s_ $(i:s/.obj/.dpcc/))))
+DEPCOLLECT_OBJ+:=$(foreach,i,$(DEPOBJFILES) $(eq,$i,$(subst,$(OBJ),ttt $i) $(NULL) $(subst,$(OBJ)/,not_existing/o_ $(i:s/.obj/.dpcc/))))
+.ENDIF # "$(DEPOBJFILES)"!=""
+# point to not existing directory as there is no creation intended anyway and
+# stat call looks faster
+DEPCOLLECT_SLO+:=$(subst,$(SLO)/,not_existing/s_ $(SLOFILES:s/.obj/.dpcc/))
+DEPCOLLECT_OBJ+:=$(subst,$(OBJ)/,not_existing/o_ $(OBJFILES:s/.obj/.dpcc/))
+.ENDIF # "$(L10N_framework)"==""
+DEPFILESx+:=$(subst,$(PAR),$(MISC) $(ALLPARFILES:s/.par/.dpsc/))
+.IF "$(L10N_framework)"==""
+.IF "$(RCFILES)"!=""
+.IF "$(RESNAME)"!=""
+DEPFILESx+:=$(MISC)/$(RESNAME).dpcc
+.ELSE # "$(RESNAME)"!=""
+DEPFILESx+:=$(MISC)/$(TARGET).dprc
+.ENDIF # "$(RESNAME)"!=""
+.ENDIF # "$(RCFILES)"!=""
+.ENDIF # "$(L10N_framework)"==""
+DEPFILES:=$(uniq $(DEPFILESx))
+DEPCOLLECT_SLO!:=$(strip $(uniq $(DEPCOLLECT_SLO)))
+.IF "$(DEPCOLLECT_SLO)"!=""
+DEPFILE_SLO+:=$(MISC)/all_$(TARGET).dpslo
+.ENDIF # "$(DEPCOLLECT_SLO)"!=""
+DEPCOLLECT_OBJ!:=$(strip $(uniq $(DEPCOLLECT_OBJ)))
+.IF "$(DEPCOLLECT_OBJ)"!=""
+DEPFILE_OBJ+:=$(MISC)/all_$(TARGET).dpobj
+.ENDIF # "$(DEPCOLLECT_OBJ)"!=""
+.ENDIF # "$(nodep)"==""
+
+.IF "$(depend)" == ""
+
+# -------
+# - ALL -
+# -------
+
+# with VCL no resources are appended to the application
+APP1RES=
+APP2RES=
+APP3RES=
+APP4RES=
+APP5RES=
+APP6RES=
+APP7RES=
+APP8RES=
+APP9RES=
+# unfortunatly there are some applications which don't VCL resources but have
+# resources of their own
+.IF "$(APP1NOSVRES)" != ""
+APP1RES=$(APP1NOSVRES)
+.ENDIF
+.IF "$(APP2NOSVRES)" != ""
+APP2RES=$(APP2NOSVRES)
+.ENDIF
+.IF "$(APP3NOSVRES)" != ""
+APP3RES=$(APP3NOSVRES)
+.ENDIF
+
+.IF "$(NO_APP)"!=""
+APP1TARGET=
+APP2TARGET=
+APP3TARGET=
+APP4TARGET=
+APP5TARGET=
+APP6TARGET=
+APP7TARGET=
+APP8TARGET=
+APP9TARGET=
+.ENDIF
+
+.IF "$(IDLFILES)"!=""
+
+URDFILES+=$(foreach,i,$(IDLFILES:s/.idl/.urd/:f) $(OUT)/ucr/$(IDLPACKAGE)/$i)
+UNOIDLTARGETS+=$(URDFILES)
+
+.IF "$(URDFILES)"!=""
+LOCALDBTARGET=$(OUT)/ucr/$(TARGET).db
+.ENDIF
+
+.IF "$(URDDOC)" != ""
+URDDOCFILES+=$(foreach,i,$(IDLFILES:s/.idl/.urd/:f) $(OUT)/ucrdoc/$(IDLPACKAGE)/$i)
+UNOIDLTARGETS+=$(URDDOCFILES)
+
+.IF "$(URDDOCFILES)"!=""
+LOCALDOCDBTARGET=$(OUT)/ucrdoc/$(TARGET).db
+.ENDIF
+
+.ENDIF # "$(URDDOC)" != ""
+
+.ENDIF # "$(IDLFILES)"!=""
+
+.IF "$(UNOIDLDBFILES)"!=""
+UNOIDLDBTARGET=$(OUT)/ucr/$(PRJNAME).db
+.IF "$(URDDOC)" != ""
+UNOIDLDBDOCFILES:=$(subst,/ucr/,/ucrdoc/ $(UNOIDLDBFILES))
+UNOIDLDBDOCTARGET=$(OUT)/ucrdoc/$(PRJNAME)_doc.db
+.IF "$(UNOIDLDBREGS)"!=""
+UNOIDLDBDOCREGS=$(foreach,i,$(UNOIDLDBREGS) $(i:d)$(i:b)_doc$(i:e))
+.ENDIF # "$(UNOIDLDBREGS)"!=""
+.ENDIF # "$(URDDOC)" != ""
+.ENDIF # "$(UNOIDLDBFILES)"!=""
+
+.IF "$(IDLFILES)"!=""
+.IF "$(PACKAGE)"!=""
+IDLDIRS=$(SOLARIDLDIR)/$(PACKAGE)
+.ELSE # "$(PACKAGE)"!=""
+IDLDIRS=$(SOLARIDLDIR)
+.ENDIF # "$(PACKAGE)"!=""
+
+.IF "$(LOCALIDLFILES)$(EXTERNIDLFILES)"!=""
+.IF "$(EXTERNIDLFILES)"!=""
+DEPIDLFILES:=$(foreach,i,$(IDLFILES) $(IDLDIRS)/$i)
+.ELSE # "$(EXTERNIDLFILES)"!=""
+DEPIDLFILES:=$(IDLFILES)
+.ENDIF # "$(EXTERNIDLFILES)"!=""
+.ELSE # "$(LOCALIDLFILES)$(EXTERNIDLFILES)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+DEPIDLFILES:=$(foreach,i,$(IDLFILES) $(!null,$(shell @$(FIND) . -name $i) $i $(shell @($(FIND) $(IDLDIRS) -name $(i:f)) | $(SED) s/\//\\/g )))
+.ELSE # "$(GUI)"=="WNT"
+DEPIDLFILES:=$(foreach,i,$(IDLFILES) $(!null,$(shell @$(FIND) . -name $i -print) $i $(shell @$(FIND) $(IDLDIRS) -name $(i:f) -print ) ))
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(LOCALIDLFILES)$(EXTERNIDLFILES)"!=""
+.ENDIF # "$(IDLFILES)"!=""
+
+.IF "$(L10N_framework)"==""
+.IF "$(JARFILES)"!=""
+LOCALJARS:=$(foreach,i,$(shell @@-cd $(JARDIR) && ls -1 $(JARFILES) ) $(JARDIR)/$i)
+NEWCLASS:=$(LOCALJARS)
+NEWCLASS+:=$(foreach,i,$(JARFILES) $(eq,$(LOCALJARS),$(subst,$i, $(LOCALJARS)) $(SOLARBINDIR)/$i $(NULL)))
+.ENDIF # "$(JARFILES)"!=""
+NEWCLASS+=$(EXTRAJARFILES)
+.IF "$(GENJAVACLASSFILES)"!=""
+NEWCLASS+=$(CLASSGENDIR)
+.ENDIF # "$(GENJAVACLASSFILES)"!=""
+.IF "$(NEWCLASS)"!=""
+# See iz36027 for the reason for the strange $(subst ..) construct
+CLASSPATH:=.$(PATH_SEPERATOR)$(CLASSDIR)$(PATH_SEPERATOR)$(XCLASSPATH)$(PATH_SEPERATOR){$(subst,%Z*Z%,$(PATH_SEPERATOR) $(NEWCLASS:s/ /%Z*Z%/))}$(PATH_SEPERATOR)$(SOLARLIBDIR)
+.ENDIF # "$(NEWCLASS)"!=""
+.ENDIF # "$(L10N_framework)"==""
+
+.IF "$(NOOPTFILES)" != ""
+NOOPTTARGET=do_it_noopt
+.ENDIF
+
+.IF "$(EXCEPTIONSNOOPTFILES)" != ""
+EXCEPTIONSNOOPTTARGET=do_it_exceptions_noopt
+.ENDIF
+
+.IF "$(LIBTARGET)"==""
+.IF "$(OBJFILES)$(IDLOBJFILES)"!=""
+OBJTARGET=$(LB)/$(TARGET).lib
+.ENDIF
+
+.IF "$(SLOFILES)$(IDLSLOFILES)"!=""
+SLOTARGET=$(SLB)/$(TARGET).lib
+.ENDIF
+.ENDIF # "$(LIBTARGET)"==""
+
+.IF "$(SECOND_BUILD)"!=""
+.IF "$($(SECOND_BUILD)_SLOFILES)"!=""
+.IF "$(LIBTARGET)"==""
+$(SECOND_BUILD)SLOTARGET=$(SLB)/$(SECOND_BUILD)_$(TARGET).lib
+.ENDIF # "$(LIBTARGET)"==""
+REAL_$(SECOND_BUILD)_SLOFILES=$(foreach,i,$($(SECOND_BUILD)_SLOFILES) $(i:d)$(SECOND_BUILD)_$(i:f))
+.ENDIF
+
+.IF "$($(SECOND_BUILD)_OBJFILES)"!=""
+.IF "$(LIBTARGET)"==""
+$(SECOND_BUILD)OBJTARGET=$(LB)/$(SECOND_BUILD)_$(TARGET).lib
+.ENDIF # "$(LIBTARGET)"==""
+REAL_$(SECOND_BUILD)_OBJFILES=$(foreach,i,$($(SECOND_BUILD)_OBJFILES) $(i:d)$(SECOND_BUILD)_$(i:f))
+.ENDIF
+.ENDIF # "$(SECOND_BUILD)"!=""
+
+.IF "$(NOLIBOBJTARGET)$(NOLIBSLOTARGET)"!=""
+dont_set_NOLIBOBJTARGET:
+ @echo --------------------------------------------------
+ @echo setting NOLIBOBJTARGET or NOLIBSLOTARGET in your makefile
+ @echo will cause serious problems!
+ @echo use DEPOBJFILES instead.
+ @echo --------------------------------------------------
+ force_dmake_to_error
+.ENDIF # "$(NOLIBTARGET)"!=""
+.IF "$(OBJFILES)"!=""
+.IF "$(LIBTARGET)" != ""
+NOLIBOBJTARGET=$(OBJFILES)
+.ENDIF
+.ENDIF
+
+.IF "$(SLOFILES)"!=""
+.IF "$(LIBTARGET)" != ""
+NOLIBSLOTARGET=$(SLOFILES)
+.ENDIF
+.ENDIF
+
+.IF "$(SRC1FILES)"!=""
+SRC1TARGET=$(SRS)/$(SRS1NAME).srs
+DEPSRS1FILE+=$(MISC)/$(TARGET).$(SRS1NAME).dprr
+DEPSRSFILES+=$(DEPSRS1FILE)
+.ENDIF
+
+.IF "$(SRC2FILES)"!=""
+SRC2TARGET=$(SRS)/$(SRS2NAME).srs
+DEPSRS2FILE+=$(MISC)/$(TARGET).$(SRS2NAME).dprr
+DEPSRSFILES+=$(DEPSRS2FILE)
+.ENDIF
+
+.IF "$(SRC3FILES)"!=""
+SRC3TARGET=$(SRS)/$(SRS3NAME).srs
+DEPSRS3FILE+=$(MISC)/$(TARGET).$(SRS3NAME).dprr
+DEPSRSFILES+=$(DEPSRS3FILE)
+.ENDIF
+
+.IF "$(SRC4FILES)"!=""
+SRC4TARGET=$(SRS)/$(SRS4NAME).srs
+DEPSRS4FILE+=$(MISC)/$(TARGET).$(SRS4NAME).dprr
+DEPSRSFILES+=$(DEPSRS4FILE)
+.ENDIF
+
+.IF "$(SRC5FILES)"!=""
+SRC5TARGET=$(SRS)/$(SRS5NAME).srs
+DEPSRS5FILE+=$(MISC)/$(TARGET).$(SRS5NAME).dprr
+DEPSRSFILES+=$(DEPSRS5FILE)
+.ENDIF
+
+.IF "$(SRC6FILES)"!=""
+SRC6TARGET=$(SRS)/$(SRS6NAME).srs
+DEPSRS6FILE+=$(MISC)/$(TARGET).$(SRS6NAME).dprr
+DEPSRSFILES+=$(DEPSRS6FILE)
+.ENDIF
+
+.IF "$(SRC7FILES)"!=""
+SRC7TARGET=$(SRS)/$(SRS7NAME).srs
+DEPSRS7FILE+=$(MISC)/$(TARGET).$(SRS7NAME).dprr
+DEPSRSFILES+=$(DEPSRS7FILE)
+.ENDIF
+
+.IF "$(SRC8FILES)"!=""
+SRC8TARGET=$(SRS)/$(SRS8NAME).srs
+DEPSRS8FILE+=$(MISC)/$(TARGET).$(SRS8NAME).dprr
+DEPSRSFILES+=$(DEPSRS8FILE)
+.ENDIF
+
+.IF "$(SRC9FILES)"!=""
+SRC9TARGET=$(SRS)/$(SRS9NAME).srs
+DEPSRS9FILE+=$(MISC)/$(TARGET).$(SRS9NAME).dprr
+DEPSRSFILES+=$(DEPSRS9FILE)
+.ENDIF
+
+.IF "$(SOLAR_JAVA)"!=""
+.IF "$(JAVAFILES)$(JAVACLASSFILES)$(GENJAVAFILES)"!=""
+.IF "$(JAVAFILES)$(JAVACLASSFILES)"=="$(JAVAFILES)"
+JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)/$(PACKAGE)/$(i:s/.java//).class)
+.ELSE # "$(JAVAFILES)$(JAVACLASSFILES)"=="$(JAVAFILES)"
+.IF "$(JAVAFILES)$(JAVACLASSFILES)"=="$(JAVACLASSFILES)"
+JAVAFILES= $(foreach,i,$(JAVACLASSFILES) $(subst,$(CLASSDIR)/$(PACKAGE)/, $(i:s/.class//).java))
+.ENDIF # "$(JAVAFILES)$(JAVACLASSFILES)"=="$(JAVACLASSFILES)"
+.ENDIF # "$(JAVAFILES)$(JAVACLASSFILES)"=="$(JAVAFILES)"
+JAVATARGET:=$(MISC)/$(TARGET)_dummy.java
+.ENDIF # "$(JAVAFILES)$(JAVACLASSFILES)$(GENJAVAFILES)"!=""
+
+.IF "$(JARTARGET)"!=""
+JARCLASSDIRS*=.
+.IF "$(NEW_JAR_PACK)"!=""
+JARMANIFEST*=$(CLASSDIR)/$(TARGET)/META-INF/MANIFEST.MF
+.ENDIF # "$(NEW_JAR_PACK)"!=""
+JARTARGETN=$(CLASSDIR)/$(JARTARGET)
+.IF "$(NOJARDEP)$(NEW_JAR_PACK)"==""
+JARTARGETDEP=$(JARTARGET).dep
+JARTARGETDEPN=$(MISC)/$(JARTARGET).dep
+.ENDIF # "$(NOJARDEP)$(NEW_JAR_PACK)"==""
+.ENDIF # "$(JARTARGET)"!=""
+.ELSE # "$(SOLAR_JAVA)"!=""
+JAVACLASSFILES:=
+JAVAFILES:=
+javauno:=
+.ENDIF # "$(SOLAR_JAVA)"!=""
+
+.IF "$(L10N_framework)"==""
+.IF "$(RCFILES)"!=""
+RESNAME*=$(TARGET)
+.IF "$(RCFILES)" != "verinfo.rc"
+RCTARGET=$(RES)/$(RESNAME).res
+.ELSE # "$(RCFILES)" != "verinfo.rc"
+RCFILES=
+.ENDIF # "$(RCFILES)" != "verinfo.rc"
+.ENDIF # "$(RCFILES)"!=""
+.ENDIF # "$(L10N_framework)"==""
+
+LOCALIZE_ME_DEST:=$(foreach,i,$(LOCALIZE_ME) $(INCCOM)/$(i:f:s/_tmpl//))
+
+.IF "$(SCP1TARGET)"!=""
+SCP1TARGETN:=$(foreach,i,$(SCP1LINK_PRODUCT_TYPE) $(BIN)/$i/$(SCP1TARGET)$(SCPPOST))
+.ENDIF
+
+.IF "$(SCP2TARGET)"!=""
+SCP2TARGETN:=$(foreach,i,$(SCP2LINK_PRODUCT_TYPE) $(BIN)/$i/$(SCP2TARGET)$(SCPPOST))
+.ENDIF
+
+.IF "$(SCP3TARGET)"!=""
+SCP3TARGETN:=$(foreach,i,$(SCP3LINK_PRODUCT_TYPE) $(BIN)/$i/$(SCP3TARGET)$(SCPPOST))
+.ENDIF
+
+.IF "$(SCP4TARGET)"!=""
+SCP4TARGETN:=$(foreach,i,$(SCP4LINK_PRODUCT_TYPE) $(BIN)/$i/$(SCP4TARGET)$(SCPPOST))
+.ENDIF
+
+.IF "$(SCP5TARGET)"!=""
+SCP5TARGETN:=$(foreach,i,$(SCP5LINK_PRODUCT_TYPE) $(BIN)/$i/$(SCP5TARGET)$(SCPPOST))
+.ENDIF
+
+.IF "$(SCP6TARGET)"!=""
+SCP6TARGETN:=$(foreach,i,$(SCP6LINK_PRODUCT_TYPE) $(BIN)/$i/$(SCP6TARGET)$(SCPPOST))
+.ENDIF
+
+.IF "$(SCP7TARGET)"!=""
+SCP7TARGETN:=$(foreach,i,$(SCP7LINK_PRODUCT_TYPE) $(BIN)/$i/$(SCP7TARGET)$(SCPPOST))
+.ENDIF
+
+.IF "$(SCP8TARGET)"!=""
+SCP8TARGETN:=$(foreach,i,$(SCP8LINK_PRODUCT_TYPE) $(BIN)/$i/$(SCP8TARGET)$(SCPPOST))
+.ENDIF
+
+.IF "$(SCP9TARGET)"!=""
+SCP9TARGETN:=$(foreach,i,$(SCP9LINK_PRODUCT_TYPE) $(BIN)/$i/$(SCP9TARGET)$(SCPPOST))
+.ENDIF
+
+.IF "$(ZIP1TARGET)$(ZIP2TARGET)$(ZIP3TARGET)$(ZIP4TARGET)$(ZIP5TARGET)$(ZIP6TARGET)$(ZIP7TARGET)$(ZIP8TARGET)$(ZIP9TARGET)"!="$(ZIP1LIST:s/LANGDIR//)$(ZIP2LIST:s/LANGDIR//)$(ZIP3LIST:s/LANGDIR//)$(ZIP4LIST:s/LANGDIR//)$(ZIP5LIST:s/LANGDIR//)$(ZIP6LIST:s/LANGDIR//)$(ZIP7LIST:s/LANGDIR//)$(ZIP8LIST:s/LANGDIR//)$(ZIP9LIST:s/LANGDIR//)"
+
+ZIPALL=ZIPALLTARGET
+
+.ENDIF #
+
+.IF "$(APP1TARGET)"!=""
+APP1TARGETN=$(BIN)/$(APP1TARGET)$(EXECPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT"
+.IF "$(APP1BASE)"==""
+APP1BASE=$(BASE)
+.ENDIF
+APP1BASEX=/BASE:$(APP1BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(APP2TARGET)"!=""
+APP2TARGETN=$(BIN)/$(APP2TARGET)$(EXECPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT"
+.IF "$(APP2BASE)"==""
+APP2BASE=$(BASE)
+.ENDIF
+APP2BASEX=/BASE:$(APP2BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(APP3TARGET)"!=""
+APP3TARGETN=$(BIN)/$(APP3TARGET)$(EXECPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP3BASE)"==""
+APP3BASE=$(BASE)
+.ENDIF
+APP3BASEX=/BASE:$(APP3BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(APP4TARGET)"!=""
+APP4TARGETN=$(BIN)/$(APP4TARGET)$(EXECPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT"
+.IF "$(APP4BASE)"==""
+APP4BASE=$(BASE)
+.ENDIF
+APP4BASEX=/BASE:$(APP4BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(APP5TARGET)"!=""
+APP5TARGETN=$(BIN)/$(APP5TARGET)$(EXECPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT"
+.IF "$(APP5BASE)"==""
+APP5BASE=$(BASE)
+.ENDIF
+APP5BASEX=/BASE:$(APP5BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(APP6TARGET)"!=""
+APP6TARGETN=$(BIN)/$(APP6TARGET)$(EXECPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT"
+.IF "$(APP6BASE)"==""
+APP6BASE=$(BASE)
+.ENDIF
+APP6BASEX=/BASE:$(APP6BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(APP7TARGET)"!=""
+APP7TARGETN=$(BIN)/$(APP7TARGET)$(EXECPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT"
+.IF "$(APP7BASE)"==""
+APP7BASE=$(BASE)
+.ENDIF
+APP7BASEX=/BASE:$(APP7BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(APP8TARGET)"!=""
+APP8TARGETN=$(BIN)/$(APP8TARGET)$(EXECPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP8BASE)"==""
+APP8BASE=$(BASE)
+.ENDIF
+APP8BASEX=/BASE:$(APP8BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(APP9TARGET)"!=""
+APP9TARGETN=$(BIN)/$(APP9TARGET)$(EXECPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP9BASE)"==""
+APP9BASE=$(BASE)
+.ENDIF
+APP9BASEX=/BASE:$(APP9BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(SHL1TARGET)"!=""
+.IF "$(WINVERSIONNAMES)"!=""
+SHL1TARGET!:=$(SHL1TARGET)$($(WINVERSIONNAMES)_MAJOR)
+.ENDIF # "$(WINVERSIONNAMES)"!=""
+SHL1DLLPRE*=$(DLLPRE)
+SHL1TARGETN=$(DLLDEST)/$(SHL1DLLPRE)$(SHL1TARGET)$(DLLPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(SHL1BASE)"==""
+SHL1BASE=$(BASE)
+.ENDIF
+SHL1BASEX=/BASE:$(SHL1BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(SHL2TARGET)"!=""
+.IF "$(WINVERSIONNAMES)"!=""
+SHL2TARGET!:=$(SHL2TARGET)$($(WINVERSIONNAMES)_MAJOR)
+.ENDIF # "$(WINVERSIONNAMES)"!=""
+SHL2DLLPRE*=$(DLLPRE)
+SHL2TARGETN=$(DLLDEST)/$(SHL2DLLPRE)$(SHL2TARGET)$(DLLPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(SHL2BASE)"==""
+SHL2BASE=$(BASE)
+.ENDIF
+SHL2BASEX=/BASE:$(SHL2BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(SHL3TARGET)"!=""
+.IF "$(WINVERSIONNAMES)"!=""
+SHL3TARGET!:=$(SHL3TARGET)$($(WINVERSIONNAMES)_MAJOR)
+.ENDIF # "$(WINVERSIONNAMES)"!=""
+SHL3DLLPRE*=$(DLLPRE)
+SHL3TARGETN=$(DLLDEST)/$(SHL3DLLPRE)$(SHL3TARGET)$(DLLPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(SHL3BASE)"==""
+SHL3BASE=$(BASE)
+.ENDIF
+SHL3BASEX=/BASE:$(SHL3BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(SHL4TARGET)"!=""
+.IF "$(WINVERSIONNAMES)"!=""
+SHL4TARGET!:=$(SHL4TARGET)$($(WINVERSIONNAMES)_MAJOR)
+.ENDIF # "$(WINVERSIONNAMES)"!=""
+SHL4DLLPRE*=$(DLLPRE)
+SHL4TARGETN=$(DLLDEST)/$(SHL4DLLPRE)$(SHL4TARGET)$(DLLPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(SHL4BASE)"==""
+SHL4BASE=$(BASE)
+.ENDIF
+SHL4BASEX=/BASE:$(SHL4BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(SHL5TARGET)"!=""
+.IF "$(WINVERSIONNAMES)"!=""
+SHL5TARGET!:=$(SHL5TARGET)$($(WINVERSIONNAMES)_MAJOR)
+.ENDIF # "$(WINVERSIONNAMES)"!=""
+SHL5DLLPRE*=$(DLLPRE)
+SHL5TARGETN=$(DLLDEST)/$(SHL5DLLPRE)$(SHL5TARGET)$(DLLPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(SHL5BASE)"==""
+SHL5BASE=$(BASE)
+.ENDIF
+SHL5BASEX=/BASE:$(SHL5BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(SHL6TARGET)"!=""
+.IF "$(WINVERSIONNAMES)"!=""
+SHL6TARGET!:=$(SHL6TARGET)$($(WINVERSIONNAMES)_MAJOR)
+.ENDIF # "$(WINVERSIONNAMES)"!=""
+SHL6DLLPRE*=$(DLLPRE)
+SHL6TARGETN=$(DLLDEST)/$(SHL6DLLPRE)$(SHL6TARGET)$(DLLPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(SHL6BASE)"==""
+SHL6BASE=$(BASE)
+.ENDIF
+SHL6BASEX=/BASE:$(SHL6BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(SHL7TARGET)"!=""
+.IF "$(WINVERSIONNAMES)"!=""
+SHL7TARGET!:=$(SHL7TARGET)$($(WINVERSIONNAMES)_MAJOR)
+.ENDIF # "$(WINVERSIONNAMES)"!=""
+SHL7DLLPRE*=$(DLLPRE)
+SHL7TARGETN=$(DLLDEST)/$(SHL7DLLPRE)$(SHL7TARGET)$(DLLPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(SHL7BASE)"==""
+SHL7BASE=$(BASE)
+.ENDIF
+SHL7BASEX=/BASE:$(SHL7BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(SHL8TARGET)"!=""
+.IF "$(WINVERSIONNAMES)"!=""
+SHL8TARGET!:=$(SHL8TARGET)$($(WINVERSIONNAMES)_MAJOR)
+.ENDIF # "$(WINVERSIONNAMES)"!=""
+SHL8DLLPRE*=$(DLLPRE)
+SHL8TARGETN=$(DLLDEST)/$(SHL8DLLPRE)$(SHL8TARGET)$(DLLPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(SHL8BASE)"==""
+SHL8BASE=$(BASE)
+.ENDIF
+SHL8BASEX=/BASE:$(SHL8BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(SHL9TARGET)"!=""
+.IF "$(WINVERSIONNAMES)"!=""
+SHL9TARGET!:=$(SHL9TARGET)$($(WINVERSIONNAMES)_MAJOR)
+.ENDIF # "$(WINVERSIONNAMES)"!=""
+SHL9DLLPRE*=$(DLLPRE)
+SHL9TARGETN=$(DLLDEST)/$(SHL9DLLPRE)$(SHL9TARGET)$(DLLPOST)
+.IF "$(BASE)" != ""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(SHL9BASE)"==""
+SHL9BASE=$(BASE)
+.ENDIF
+SHL9BASEX=/BASE:$(SHL9BASE)
+.ENDIF
+.ENDIF
+.ENDIF
+
+.IF "$(COMP1TYPELIST)$(COMP2TYPELIST)$(COMP3TYPELIST)$(COMP4TYPELIST)$(COMP5TYPELIST)$(COMP6TYPELIST)$(COMP7TYPELIST)$(COMP8TYPELIST)$(COMP9TYPELIST)"!=""
+.IF "$(UNOUCRRDB)"!=""
+COMPRDB*:=$(UNOUCRRDB)
+.ELSE # "$(UNOUCRRDB)"!=""
+COMPRDB*:=$(SOLARBINDIR)/types.rdb
+.ENDIF # "$(UNOUCRRDB)"!=""
+.ENDIF # "$(COMP1TYPELIST)$(COMP2TYPELIST)$(COMP3TYPELIST)$(COMP4TYPELIST)$(COMP5TYPELIST)$(COMP6TYPELIST)$(COMP7TYPELIST)$(COMP8TYPELIST)$(COMP9TYPELIST)"!=""
+.IF "$(COMP1TYPELIST)"!=""
+UNOTYPES+=$($(COMP1TYPELIST)_XML2CMPTYPES)
+COMP1RDBTARGETN:=$(BIN)/$(COMP1TYPELIST).rdb
+#COMP1TYPELISTN:=$(MISC)/$(COMP1TYPELIST).xml
+.ENDIF
+
+.IF "$(COMP2TYPELIST)"!=""
+UNOTYPES+=$($(COMP2TYPELIST)_XML2CMPTYPES)
+COMP2RDBTARGETN:=$(BIN)/$(COMP2TYPELIST).rdb
+#COMP2TYPELISTN:=$(MISC)/$(COMP2TYPELIST).xml
+.ENDIF
+
+.IF "$(COMP3TYPELIST)"!=""
+UNOTYPES+=$($(COMP3TYPELIST)_XML2CMPTYPES)
+COMP3RDBTARGETN:=$(BIN)/$(COMP3TYPELIST).rdb
+#COMP3TYPELISTN:=$(MISC)/$(COMP3TYPELIST).xml
+.ENDIF
+
+.IF "$(COMP4TYPELIST)"!=""
+UNOTYPES+=$($(COMP4TYPELIST)_XML2CMPTYPES)
+COMP4RDBTARGETN:=$(BIN)/$(COMP4TYPELIST).rdb
+#COMP4TYPELISTN:=$(MISC)/$(COMP4TYPELIST).xml
+.ENDIF
+
+.IF "$(COMP5TYPELIST)"!=""
+UNOTYPES+=$($(COMP5TYPELIST)_XML2CMPTYPES)
+COMP5RDBTARGETN:=$(BIN)/$(COMP5TYPELIST).rdb
+#COMP5TYPELISTN:=$(MISC)/$(COMP5TYPELIST).xml
+.ENDIF
+
+.IF "$(COMP6TYPELIST)"!=""
+UNOTYPES+=$($(COMP6TYPELIST)_XML2CMPTYPES)
+COMP6RDBTARGETN:=$(BIN)/$(COMP6TYPELIST).rdb
+#COMP6TYPELISTN:=$(MISC)/$(COMP6TYPELIST).xml
+.ENDIF
+
+.IF "$(COMP7TYPELIST)"!=""
+UNOTYPES+=$($(COMP7TYPELIST)_XML2CMPTYPES)
+COMP7RDBTARGETN:=$(BIN)/$(COMP7TYPELIST).rdb
+#COMP7TYPELISTN:=$(MISC)/$(COMP7TYPELIST).xml
+.ENDIF
+
+.IF "$(COMP8TYPELIST)"!=""
+UNOTYPES+=$($(COMP8TYPELIST)_XML2CMPTYPES)
+COMP8RDBTARGETN:=$(BIN)/$(COMP8TYPELIST).rdb
+#COMP8TYPELISTN:=$(MISC)/$(COMP8TYPELIST).xml
+.ENDIF
+
+.IF "$(COMP9TYPELIST)"!=""
+UNOTYPES+=$($(COMP9TYPELIST)_XML2CMPTYPES)
+COMP9RDBTARGETN:=$(BIN)/$(COMP9TYPELIST).rdb
+#COMP9TYPELISTN:=$(MISC)/$(COMP9TYPELIST).xml
+.ENDIF
+
+UNOTYPES!:=$(strip $(UNOTYPES))
+
+#moved here to get UNOTYPES from COMPxTYPELIST
+.IF "$(UNOTYPES)" != ""
+UNOUCRHEADER=$(foreach,j,$(subst,.,/ $(UNOTYPES)) $(UNOUCROUT)/$(j:+".hpp"))
+UNOUCRTARGET:=$(INCCOM)/$(TARGET)_headergen.done
+.ENDIF # "$(UNOTYPES)" != ""
+
+.IF "$(HELPIDFILES)"!=""
+MAKE_HELPIDS=$(MISC)/helpids.don
+.ENDIF
+
+.IF "$(HXXCOPYFILES)" != ""
+HXXCOPYTARGET= copy_hxxcopyfiles
+.ENDIF
+
+.IF "$(LIB1TARGET)" != ""
+LIB1TARGETN=$(LIB1TARGET)
+.ENDIF
+
+.IF "$(LIB2TARGET)" != ""
+LIB2TARGETN=$(LIB2TARGET)
+.ENDIF
+
+.IF "$(LIB3TARGET)" != ""
+LIB3TARGETN=$(LIB3TARGET)
+.ENDIF
+
+.IF "$(LIB4TARGET)" != ""
+LIB4TARGETN=$(LIB4TARGET)
+.ENDIF
+
+.IF "$(LIB5TARGET)" != ""
+LIB5TARGETN=$(LIB5TARGET)
+.ENDIF
+
+.IF "$(LIB6TARGET)" != ""
+LIB6TARGETN=$(LIB6TARGET)
+.ENDIF
+
+.IF "$(LIB7TARGET)" != ""
+LIB7TARGETN=$(LIB7TARGET)
+.ENDIF
+
+.IF "$(LIB8TARGET)" != ""
+LIB8TARGETN=$(LIB8TARGET)
+.ENDIF
+
+.IF "$(LIB9TARGET)" != ""
+LIB9TARGETN=$(LIB9TARGET)
+.ENDIF
+
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(COM)"!="GCC"
+LIB1ARCHIV=
+LIB2ARCHIV=
+LIB3ARCHIV=
+LIB4ARCHIV=
+LIB5ARCHIV=
+LIB6ARCHIV=
+LIB7ARCHIV=
+LIB8ARCHIV=
+LIB9ARCHIV=
+.ENDIF
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(RESLIB1NAME)" != ""
+.IF "$(RESLIB1NOVERSION)"==""
+.ENDIF # "$(RESLIB1NOVERSION)"==""
+.IF "$(common_build_reslib)"!=""
+RESLIB1TARGETN=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB1NAME)LANGEXT.res
+RSC_MULTI1=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/rsc_$(RESLIB1NAME)
+.ELSE # "$(common_build_reslib)"!=""
+RESLIB1TARGETN=$(BIN)/$(RESLIB1NAME)LANGEXT.res
+RSC_MULTI1=$(MISC)/rsc_$(RESLIB1NAME)
+.ENDIF # "$(common_build_reslib)"!=""
+# change to iso if resmgr is changed
+RESLIB1TARGETN!:=$(foreach,i,$(alllangiso) $(subst,LANGEXT,$i $(RESLIB1TARGETN)))
+.ENDIF
+
+.IF "$(RESLIB2NAME)" != ""
+.IF "$(RESLIB2NOVERSION)"==""
+.ENDIF # "$(RESLIB2NOVERSION)"==""
+.IF "$(common_build_reslib)"!=""
+RESLIB2TARGETN=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB2NAME)LANGEXT.res
+RSC_MULTI2=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/rsc_$(RESLIB2NAME)
+.ELSE # "$(common_build_reslib)"!=""
+RESLIB2TARGETN=$(BIN)/$(RESLIB2NAME)LANGEXT.res
+RSC_MULTI2=$(MISC)/rsc_$(RESLIB2NAME)
+.ENDIF # "$(common_build_reslib)"!=""
+RESLIB2TARGETN!:=$(foreach,i,$(alllangiso) $(subst,LANGEXT,$i $(RESLIB2TARGETN)))
+.ENDIF
+
+.IF "$(RESLIB3NAME)" != ""
+.IF "$(RESLIB3NOVERSION)"==""
+.ENDIF # "$(RESLIB3NOVERSION)"==""
+.IF "$(common_build_reslib)"!=""
+RESLIB3TARGETN=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB3NAME)LANGEXT.res
+RSC_MULTI3=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/rsc_$(RESLIB3NAME)
+.ELSE # "$(common_build_reslib)"!=""
+RESLIB3TARGETN=$(BIN)/$(RESLIB3NAME)LANGEXT.res
+RSC_MULTI3=$(MISC)/rsc_$(RESLIB3NAME)
+.ENDIF # "$(common_build_reslib)"!=""
+RESLIB3TARGETN!:=$(foreach,i,$(alllangiso) $(subst,LANGEXT,$i $(RESLIB3TARGETN)))
+.ENDIF
+
+.IF "$(RESLIB4NAME)" != ""
+.IF "$(RESLIB4NOVERSION)"==""
+.ENDIF # "$(RESLIB4NOVERSION)"==""
+.IF "$(common_build_reslib)"!=""
+RESLIB4TARGETN=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB4NAME)LANGEXT.res
+RSC_MULTI4=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/rsc_$(RESLIB4NAME)
+.ELSE # "$(common_build_reslib)"!=""
+RESLIB4TARGETN=$(BIN)/$(RESLIB4NAME)LANGEXT.res
+RSC_MULTI4=$(MISC)/rsc_$(RESLIB4NAME)
+.ENDIF # "$(common_build_reslib)"!=""
+RESLIB4TARGETN!:=$(foreach,i,$(alllangiso) $(subst,LANGEXT,$i $(RESLIB4TARGETN)))
+.ENDIF
+
+.IF "$(RESLIB5NAME)" != ""
+.IF "$(RESLIB5NOVERSION)"==""
+.ENDIF # "$(RESLIB5NOVERSION)"==""
+.IF "$(common_build_reslib)"!=""
+RESLIB5TARGETN=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB5NAME)LANGEXT.res
+RSC_MULTI5=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/rsc_$(RESLIB5NAME)
+.ELSE # "$(common_build_reslib)"!=""
+RESLIB5TARGETN=$(BIN)/$(RESLIB5NAME)LANGEXT.res
+RSC_MULTI5=$(MISC)/rsc_$(RESLIB5NAME)
+.ENDIF # "$(common_build_reslib)"!=""
+RESLIB5TARGETN!:=$(foreach,i,$(alllangiso) $(subst,LANGEXT,$i $(RESLIB5TARGETN)))
+.ENDIF
+
+.IF "$(RESLIB6NAME)" != ""
+.IF "$(RESLIB6NOVERSION)"==""
+.ENDIF # "$(RESLIB6NOVERSION)"==""
+.IF "$(common_build_reslib)"!=""
+RESLIB6TARGETN=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB6NAME)LANGEXT.res
+RSC_MULTI6=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/rsc_$(RESLIB6NAME)
+.ELSE # "$(common_build_reslib)"!=""
+RESLIB6TARGETN=$(BIN)/$(RESLIB6NAME)LANGEXT.res
+RSC_MULTI6=$(MISC)/rsc_$(RESLIB6NAME)
+.ENDIF # "$(common_build_reslib)"!=""
+RESLIB6TARGETN!:=$(foreach,i,$(alllangiso) $(subst,LANGEXT,$i $(RESLIB6TARGETN)))
+.ENDIF
+
+.IF "$(RESLIB7NAME)" != ""
+.IF "$(RESLIB7NOVERSION)"==""
+.ENDIF # "$(RESLIB7NOVERSION)"==""
+.IF "$(common_build_reslib)"!=""
+RESLIB7TARGETN=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB7NAME)LANGEXT.res
+RSC_MULTI7=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/rsc_$(RESLIB7NAME)
+.ELSE # "$(common_build_reslib)"!=""
+RESLIB7TARGETN=$(BIN)/$(RESLIB7NAME)LANGEXT.res
+RSC_MULTI7=$(MISC)/rsc_$(RESLIB7NAME)
+.ENDIF # "$(common_build_reslib)"!=""
+RESLIB7TARGETN!:=$(foreach,i,$(alllangiso) $(subst,LANGEXT,$i $(RESLIB7TARGETN)))
+.ENDIF
+
+.IF "$(RESLIB8NAME)" != ""
+.IF "$(RESLIB8NOVERSION)"==""
+.ENDIF # "$(RESLIB8NOVERSION)"==""
+.IF "$(common_build_reslib)"!=""
+RESLIB8TARGETN=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB8NAME)LANGEXT.res
+RSC_MULTI8=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/rsc_$(RESLIB8NAME)
+.ELSE # "$(common_build_reslib)"!=""
+RESLIB8TARGETN=$(BIN)/$(RESLIB8NAME)LANGEXT.res
+RSC_MULTI8=$(MISC)/rsc_$(RESLIB8NAME)
+.ENDIF # "$(common_build_reslib)"!=""
+RESLIB8TARGETN!:=$(foreach,i,$(alllangiso) $(subst,LANGEXT,$i $(RESLIB8TARGETN)))
+.ENDIF
+
+.IF "$(RESLIB9NAME)" != ""
+.IF "$(RESLIB9NOVERSION)"==""
+.ENDIF # "$(RESLIB9NOVERSION)"==""
+.IF "$(common_build_reslib)"!=""
+RESLIB9TARGETN=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB9NAME)LANGEXT.res
+RSC_MULTI9=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/rsc_$(RESLIB9NAME)
+.ELSE # "$(common_build_reslib)"!=""
+RESLIB9TARGETN=$(BIN)/$(RESLIB9NAME)LANGEXT.res
+RSC_MULTI9=$(MISC)/rsc_$(RESLIB9NAME)
+.ENDIF # "$(common_build_reslib)"!=""
+RESLIB9TARGETN!:=$(foreach,i,$(alllangiso) $(subst,LANGEXT,$i $(RESLIB9TARGETN)))
+.ENDIF
+
+.IF "$(INDPRESLIB1NAME)"!=""
+INDPRESLIB1TARGETN=$(BIN)/$(INDPRESLIB1NAME).dll
+.ENDIF
+
+.IF "$(DEF1NAME)"!=""
+DEF1TARGETN=$(MISC)/$(DEF1NAME).def
+.ENDIF
+
+.IF "$(DEF2NAME)"!=""
+DEF2TARGETN=$(MISC)/$(DEF2NAME).def
+.ENDIF
+
+.IF "$(DEF3NAME)"!=""
+DEF3TARGETN=$(MISC)/$(DEF3NAME).def
+.ENDIF
+
+.IF "$(DEF4NAME)"!=""
+DEF4TARGETN=$(MISC)/$(DEF4NAME).def
+.ENDIF
+
+.IF "$(DEF5NAME)"!=""
+DEF5TARGETN=$(MISC)/$(DEF5NAME).def
+.ENDIF
+
+.IF "$(DEF6NAME)"!=""
+DEF6TARGETN=$(MISC)/$(DEF6NAME).def
+.ENDIF
+
+.IF "$(DEF7NAME)"!=""
+DEF7TARGETN=$(MISC)/$(DEF7NAME).def
+.ENDIF
+
+.IF "$(DEF8NAME)"!=""
+DEF8TARGETN=$(MISC)/$(DEF8NAME).def
+.ENDIF
+
+.IF "$(DEF9NAME)"!=""
+DEF9TARGETN=$(MISC)/$(DEF9NAME).def
+.ENDIF
+
+# IZ65415 - catch obsolete macro. Can be removed later.
+.IF "$(SDINAME)"!=""
+.ERROR : ; @echo Forced error: SDINAME was used! Change your project to use SDIxNAME instead!
+NO_SDINAME_allowed
+.ENDIF
+
+.IF "$(SDI1NAME)"!=""
+.DIRCACHE=no
+SDI1TARGET=$(MISC)/$(SDI1NAME).don
+HIDSID1PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(SDI1NAME)_sid.hid
+.ENDIF
+
+.IF "$(SDI2NAME)"!=""
+.DIRCACHE=no
+SDI2TARGET=$(MISC)/$(SDI2NAME).don
+HIDSID2PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(SDI2NAME)_sid.hid
+.ENDIF
+
+.IF "$(SDI3NAME)"!=""
+.DIRCACHE=no
+SDI3TARGET=$(MISC)/$(SDI3NAME).don
+HIDSID3PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(SDI3NAME)_sid.hid
+.ENDIF
+
+.IF "$(SDI4NAME)"!=""
+.DIRCACHE=no
+SDI4TARGET=$(MISC)/$(SDI4NAME).don
+HIDSID4PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(SDI4NAME)_sid.hid
+.ENDIF
+
+.IF "$(SDI5NAME)"!=""
+.DIRCACHE=no
+SDI5TARGET=$(MISC)/$(SDI5NAME).don
+HIDSID5PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(SDI5NAME)_sid.hid
+.ENDIF
+
+.IF "$(XMLPROPERTIES)"!=""
+XMLPROPERTIESN:=$(foreach,i,$(XMLPROPERTIES) $(MISC)/$(TARGET)_$(i:s/.xrb/.done/))
+.ENDIF # "$(XMLPROPERTIES)"!=""
+
+.IF "$(UNIXTEXT)"!=""
+.IF "$(GUI)"=="UNX"
+CONVERTUNIXTEXT:=$(UNIXTEXT)
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(UNIXTEXT)"!=""
+
+.IF "$(EXTUPDATEINFO_NAME)"!=""
+EXTUPDATEINFO_DEST:=$(MISC)/$(EXTUPDATEINFO_NAME)
+EXTUPDATEINFO_SOURCE*=description.xml
+.ENDIF # "$(EXTUPDATEINFO_NAME)"!=""
+
+.IF "$(JAVACLASSFILES:s/DEFINED//)"!="" || "$(javauno)"!=""
+.IF "$(L10N_framework)"==""
+TARGETDPJ=$(MISC)/$(TARGET).dpj
+.ENDIF # "$(L10N_framework)"==""
+.ENDIF
+
+.IF "$(no_hids)$(NO_HIDS)"==""
+BUILDHIDS:=TRUE
+.IF "$(GEN_HID_OTHER)"!=""
+PRJHIDOTHERTARGET=$(SRS)/hidother.hid
+COMMONPRJHIDOTHERTARGET=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC)/$(TARGET)_othr.hid)
+.ENDIF
+.IF "$(GEN_HID2)"!=""
+PRJHID2TARGET=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/hid.lst
+.ENDIF
+.ENDIF # "$(no_hids)$(NO_HIDS)"==""
+
+.IF "$(make_srs_deps)"==""
+.IF "$(SRCFILES)" != "" || "$(SRC1FILES)" != "" || "$(SRC2FILES)" != ""
+DPRTARGET= $(MISC)/$(TARGET).dpr
+.ENDIF
+.ENDIF
+
+.IF "$(make_zip_deps)"==""
+.IF "$(ZIP1TARGET)" != "" || "$(ZIP2TARGET)" != "" || "$(ZIP3TARGET)" != ""
+DPZTARGET= $(MISC)/$(TARGET).dpz
+.ENDIF # "$(ZIP1TARGET)" != "" || "$(ZIP2TARGET)" != "" || "$(ZIP3TARGET)" != ""
+.ENDIF # "$(make_zip_deps)"==""
+
+.IF "$(SOLAR_JAVA)"!=""
+ALL_JAVA_TARGETS= \
+ $(GENJAVAFILES) \
+ $(JAVACLASSFILES) $(JAVA1CLASSFILES) \
+ $(JAVA2CLASSFILES) $(JAVA3CLASSFILES) $(JAVA4CLASSFILES)\
+ $(JAVA5CLASSFILES) $(JAVA6CLASSFILES) $(JAVA7CLASSFILES)\
+ $(JAVA8CLASSFILES) $(JAVA9CLASSFILES) $(JAVA10CLASSFILES)\
+ $(JAVA11CLASSFILES) \
+ $(JAVATARGET) \
+ $(TARGETDPJ)
+.ENDIF # "$(SOLAR_JAVA)"!=""
+# -------
+# - DEF -
+# -------
+
+# bei MAKE...DIR die gleiche Reihenfolge wie in settings.mak einhalten!
+
+.IF "$(lintit)"==""
+.IF "$(L10N_framework)"!=""
+ALLTAR: \
+ "$(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/$(UPD)minor.mk" \
+ $(SUBDIRS) \
+ $(DPRTARGET) \
+ $(DPZTARGET) \
+ $(ZIPALL) \
+ $(HIDSID1PARTICLE) $(HIDSID2PARTICLE) \
+ $(HIDSID3PARTICLE) $(HIDSID4PARTICLE) $(HIDSID5PARTICLE) \
+ $(SDITARGET) $(SDI1TARGET) $(SDI2TARGET) \
+ $(SDI3TARGET) $(SDI4TARGET) $(SDI5TARGET) \
+ $(XMLPROPERTIESN) \
+ $(RCTARGET) \
+ $(SCP_PRODUCT_TYPE) \
+ $(ALLPARFILES) \
+ $(SCP1TARGETN) \
+ $(SCP2TARGETN) \
+ $(SCP3TARGETN) \
+ $(SCP4TARGETN) \
+ $(SCP5TARGETN) \
+ $(SCP6TARGETN) \
+ $(SCP7TARGETN) \
+ $(SCP8TARGETN) \
+ $(SCP9TARGETN) \
+ $(SRC1TARGET) \
+ $(SRC2TARGET) \
+ $(SRC3TARGET) \
+ $(SRC4TARGET) $(SRC5TARGET) $(SRC6TARGET) \
+ $(SRC7TARGET) $(SRC8TARGET) $(SRC9TARGET) \
+ $(SRC10TARGET) $(SRC11TARGET) $(SRC12TARGET) \
+ $(SRC13TARGET) $(SRC14TARGET) $(SRC15TARGET) \
+ $(SRC16TARGET) \
+ $(RSC_MULTI1) \
+ $(RSC_MULTI2) \
+ $(RSC_MULTI3) \
+ $(RSC_MULTI4) \
+ $(RSC_MULTI5) \
+ $(RSC_MULTI6) \
+ $(RSC_MULTI7) \
+ $(RSC_MULTI8) \
+ $(RSC_MULTI9) \
+ $(INDPRESLIB1TARGETN) \
+ $(RESLIB1TARGETN) $(RESLIB2TARGETN) \
+ $(RESLIB3TARGETN) $(RESLIB4TARGETN) \
+ $(RESLIB5TARGETN) $(RESLIB6TARGETN) \
+ $(RESLIB7TARGETN) $(RESLIB8TARGETN) \
+ $(COMMONPRJHIDOTHERTARGET) \
+ $(PRJHID2TARGET) \
+ $(LOCALIZE_ME_DEST)\
+ last_target
+
+.ELSE # "$(L10N_framework)"!=""
+
+ALLTAR: \
+ "$(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/$(UPD)minor.mk" \
+ $(MAKEDEMODIR) $(MAKECOMPDIR) $(MAKEXLDIR) \
+ $(COMPVERMK) \
+ $(JAVAVERMK) \
+ $(target_empty) \
+ $(SUBDIRS) \
+ $(ALLMOZ) \
+ $(DELDEFS) \
+ $(YACCTARGET) \
+ $(UNOUCRTARGET) \
+ $(UNOIDLDEPTARGETS) \
+ $(DEPFILES) \
+ $(DPRTARGET) \
+ $(DPZTARGET) \
+ $(ZIPALL) \
+ $(SDITARGET) \
+ $(LOCALDBTARGET) \
+ $(LOCALDOCDBTARGET) \
+ $(UNOIDLDBTARGET) \
+ $(UNOIDLDBDOCTARGET) \
+ $(COMP1RDBTARGETN) \
+ $(COMP2RDBTARGETN) \
+ $(COMP3RDBTARGETN) \
+ $(COMP4RDBTARGETN) \
+ $(COMP5RDBTARGETN) \
+ $(COMP6RDBTARGETN) \
+ $(COMP7RDBTARGETN) \
+ $(COMP8RDBTARGETN) \
+ $(COMP9RDBTARGETN) \
+ $(IDL1TARGET) $(IDL2TARGET) $(IDL3TARGET) \
+ $(IDL4TARGET) $(IDL5TARGET) \
+ $(HIDSID1PARTICLE) $(HIDSID2PARTICLE) \
+ $(HIDSID3PARTICLE) $(HIDSID4PARTICLE) $(HIDSID5PARTICLE) \
+ $(SDI1TARGET) $(SDI2TARGET) $(SDI3TARGET) \
+ $(SDI4TARGET) $(SDI5TARGET) \
+ $(HXXCOPYTARGET) \
+ $(NOLIBOBJTARGET) \
+ $(NOLIBSLOTARGET) \
+ $(OTHERTARRGET) \
+ $(XMLPROPERTIESN) \
+ $(ALL_JAVA_TARGETS) \
+ $(OBJTARGET) $(SLOTARGET) $(SMRSLOTARGET) \
+ $($(SECOND_BUILD)SLOTARGET) \
+ $($(SECOND_BUILD)OBJTARGET) \
+ $(LIB1TARGET) $(LIB2TARGET) $(LIB3TARGET) \
+ $(LIB4TARGET) $(LIB5TARGET) $(LIB6TARGET) \
+ $(LIB7TARGET) $(LIB8TARGET) $(LIB9TARGET) \
+ $(LIB1ARCHIV) $(LIB2ARCHIV) $(LIB3ARCHIV) \
+ $(LIB4ARCHIV) $(LIB5ARCHIV) $(LIB6ARCHIV) \
+ $(LIB7ARCHIV) $(LIB8ARCHIV) $(LIB9ARCHIV) \
+ $(DEF1TARGETN) $(DEF2TARGETN) $(DEF3TARGETN) \
+ $(DEF4TARGETN) $(DEF5TARGETN) $(DEF6TARGETN) \
+ $(RCTARGET) \
+ $(SHL1TARGETN) \
+ $(SHL2TARGETN) \
+ $(SHL3TARGETN) \
+ $(SHL4TARGETN) \
+ $(SHL5TARGETN) \
+ $(SHL6TARGETN) \
+ $(SHL7TARGETN) \
+ $(SHL8TARGETN) \
+ $(SHL9TARGETN) \
+ $(SCP_PRODUCT_TYPE) \
+ $(ALLPARFILES) \
+ $(SCP1TARGETN) \
+ $(SCP2TARGETN) \
+ $(SCP3TARGETN) \
+ $(SCP4TARGETN) \
+ $(SCP5TARGETN) \
+ $(SCP6TARGETN) \
+ $(SCP7TARGETN) \
+ $(SCP8TARGETN) \
+ $(SCP9TARGETN) \
+ $(APP1TARGETN) $(APP2TARGETN) $(APP3TARGETN) \
+ $(APP4TARGETN) $(APP5TARGETN) $(APP6TARGETN) \
+ $(APP7TARGETN) $(APP8TARGETN) $(APP9TARGETN) \
+ $(JARTARGETN) \
+ $(JARTARGETDEPN) \
+ $(SRC1TARGET) \
+ $(SRC2TARGET) \
+ $(SRC3TARGET) \
+ $(SRC4TARGET) $(SRC5TARGET) $(SRC6TARGET) \
+ $(SRC7TARGET) $(SRC8TARGET) $(SRC9TARGET) \
+ $(SRC10TARGET) $(SRC11TARGET) $(SRC12TARGET) \
+ $(SRC13TARGET) $(SRC14TARGET) $(SRC15TARGET) \
+ $(SRC16TARGET) \
+ $(RSC_MULTI1) \
+ $(RSC_MULTI2) \
+ $(RSC_MULTI3) \
+ $(RSC_MULTI4) \
+ $(RSC_MULTI5) \
+ $(RSC_MULTI6) \
+ $(RSC_MULTI7) \
+ $(RSC_MULTI8) \
+ $(RSC_MULTI9) \
+ $(INDPRESLIB1TARGETN) \
+ $(RESLIB1TARGETN) $(RESLIB2TARGETN) \
+ $(RESLIB3TARGETN) $(RESLIB4TARGETN) \
+ $(RESLIB5TARGETN) $(RESLIB6TARGETN) \
+ $(RESLIB7TARGETN) $(RESLIB8TARGETN) \
+ $(RESLIB9TARGETN) \
+ $(COMMONPRJHIDOTHERTARGET) \
+ $(PRJHID2TARGET) \
+ $(SIGNFORNETSCAPE) \
+ $(SIGNFOREXPLORER) \
+ $(SIGNFORJARSIGNER) \
+ $(CONVERTUNIXTEXT) \
+ $(LOCALIZE_ME_DEST)\
+ $(EXTUPDATEINFO_DEST) \
+ last_target
+
+.IF "$(BUILD_X64)"!=""
+ALLTAR : \
+ $(NOLIBOBJTARGET_X64) \
+ $(NOLIBSLOTARGET_X64) \
+ $(OBJTARGET_X64) $(SLOTARGET_X64) \
+ $(LIB1TARGET_X64) $(LIB2TARGET_X64) \
+ $(DEF1TARGETN_X64) $(DEF2TARGETN_X64) \
+ $(SHL1TARGETN_X64) $(SHL2TARGETN_X64)
+.ENDIF # "$(BUILD_X64)"!=""
+
+ALLTAR : "$(SOLARINCDIR)/$(UPD)minor.mk"
+
+.IF "$(EXCEPTIONSNOOPT_FLAG)"==""
+TARGETDEPS+=$(EXCEPTIONSNOOPTTARGET)
+.ENDIF
+
+.IF "$(NOOPT_FLAG)"==""
+TARGETDEPS+=$(NOOPTTARGET)
+.ENDIF
+
+#don't override .TARGETS when called with targets
+.IF "$(MAKETARGETS)$(TNR)$(EXCEPTIONSNOOPT_FLAG)$(EXCEPTIONS_FLAG)$(NOOPT_FLAG)"==""
+.IF "$(TARGETDEPS)"!=""
+#.TARGETS .SEQUENTIAL :- $(TARGETDEPS) ALLTAR
+.INIT .SEQUENTIAL : $(TARGETDEPS) $(NULLPRQ)
+.ENDIF
+.ENDIF
+
+# -Gc breaks the dependency chain and causes indefinite nummbers of $(CPPUMAKER)
+.IF "$(BOOTSTRAP_SERVICE)"!="TRUE"
+CPPUMAKERFLAGS*=-L
+.ENDIF # "$(BOOTSTRAP_SERVICE)"!="TRUE"
+
+.IF "$(UNOTYPES)" != ""
+# makeing all in one
+.DIRCACHE=no
+.IF "$(OBJFILES)"!=""
+$(OBJFILES) : $(UNOUCRTARGET)
+.ENDIF # "$(OBJFILES)"!=""
+.IF "$(SLOFILES)"!=""
+$(SLOFILES) : $(UNOUCRTARGET)
+.ENDIF # "$(SLOFILES)"!=""
+.IF "$(DEPOBJFILES)"!=""
+$(DEPOBJFILES) : $(UNOUCRTARGET)
+.ENDIF # "$(SLOFILES)"!=""
+.IF "$(NOOPTTARGET)"!=""
+$(NOOPTTARGET) : $(UNOUCRTARGET)
+.ENDIF # "$(SLOFILES)"!=""
+.IF "$(NOOPTFILES)"!=""
+$(NOOPTFILES) : $(UNOUCRTARGET)
+.ENDIF # "$(SLOFILES)"!=""
+.IF "$(EXCEPTIONSFILES)"!=""
+$(EXCEPTIONSFILES) : $(UNOUCRTARGET)
+.ENDIF # "$(SLOFILES)"!=""
+.IF "$(EXCEPTIONSNOOPTTARGET)"!=""
+$(EXCEPTIONSNOOPTTARGET) : $(UNOUCRTARGET)
+.ENDIF # "$(SLOFILES)"!=""
+.IF "$(EXCEPTIONSNOOPTFILES)"!=""
+$(EXCEPTIONSNOOPTFILES) : $(UNOUCRTARGET)
+.ENDIF # "$(SLOFILES)"!=""
+
+$(UNOUCRTARGET) : $(UNOUCRHEADER)
+
+# keep that one to rebuild single misses
+$(UNOUCRHEADER):
+ @noop
+
+$(UNOUCRTARGET) : $(UNOUCRDEP)
+.IF "$(XML2MK_FILES)"!=""
+ @@-$(RM) $(foreach,i,$(XML2MK_FILES) $(MISC)/$(i).mk)
+.ENDIF # "$(XML2MK_FILES)"!=""
+ @@-$(MKDIRHIER) $(UNOUCROUT)
+ $(COMMAND_ECHO)$(CPPUMAKER) @$(mktmp $(CPPUMAKERFLAGS) -B$(UNOUCRBASE) -O$(UNOUCROUT) $(UNOTYPES:^"-T") $(UNOUCRRDB)) && $(TOUCH) $@
+.ENDIF # "$(UNOTYPES)" != ""
+
+.IF "$(COMP1RDBTARGETN)"!=""
+$(COMP1RDBTARGETN) : $(COMPRDB)
+.ENDIF # "$(COMP1RDBTARGETN)"!=""
+
+.IF "$(COMP2RDBTARGETN)"!=""
+$(COMP2RDBTARGETN) : $(COMPRDB)
+.ENDIF # "$(COMP2RDBTARGETN)"!=""
+
+.IF "$(COMP3RDBTARGETN)"!=""
+$(COMP3RDBTARGETN) : $(COMPRDB)
+.ENDIF # "$(COMP3RDBTARGETN)"!=""
+
+.IF "$(COMP4RDBTARGETN)"!=""
+$(COMP4RDBTARGETN) : $(COMPRDB)
+.ENDIF # "$(COMP4RDBTARGETN)"!=""
+
+.IF "$(COMP5RDBTARGETN)"!=""
+$(COMP5RDBTARGETN) : $(COMPRDB)
+.ENDIF # "$(COMP5RDBTARGETN)"!=""
+
+.IF "$(COMP6RDBTARGETN)"!=""
+$(COMP6RDBTARGETN) : $(COMPRDB)
+.ENDIF # "$(COMP6RDBTARGETN)"!=""
+
+.IF "$(COMP7RDBTARGETN)"!=""
+$(COMP7RDBTARGETN) : $(COMPRDB)
+.ENDIF # "$(COMP7RDBTARGETN)"!=""
+
+.IF "$(COMP8RDBTARGETN)"!=""
+$(COMP8RDBTARGETN) : $(COMPRDB)
+.ENDIF # "$(COMP8RDBTARGETN)"!=""
+
+.IF "$(COMP9RDBTARGETN)"!=""
+$(COMP9RDBTARGETN) : $(COMPRDB)
+.ENDIF # "$(COMP9RDBTARGETN)"!=""
+
+.ENDIF # "$(L10N_framework)"!=""
+.ELSE # "$(lintit)"==""
+
+ALLTAR: $(OBJFILES) $(SLOFILES)
+
+.ENDIF # "$(lintit)"==""
+
+.IF "$(SDINAME)"!=""
+$(OBJ)/$(CINTERNAME).obj : $(SDITARGET)
+.ENDIF
+
+.IF "$(SDI1NAME)"!=""
+$(OBJ)/$(CINTER1NAME).obj : $(SDI1TARGET)
+.ENDIF
+
+.IF "$(SDI2NAME)"!=""
+$(OBJ)/$(CINTER2NAME).obj : $(SDI2TARGET)
+.ENDIF
+
+.IF "$(SDI3NAME)"!=""
+$(OBJ)/$(CINTER3NAME).obj : $(SDI3TARGET)
+.ENDIF
+
+.IF "$(SDI4NAME)"!=""
+$(OBJ)/$(CINTER4NAME).obj : $(SDI4TARGET)
+.ENDIF
+
+.IF "$(SDI5NAME)"!=""
+$(OBJ)/$(CINTER5NAME).obj : $(SDI5TARGET)
+.ENDIF
+
+.IF "$(SOLAR_JAVA)"!=""
+.IF "$(GENJAVAFILES)"!=""
+$(GENJAVAFILES) : $(RDB)
+$(JAVATARGET) : $(GENJAVAFILES)
+.ENDIF # "$(GENJAVAFILES)"!=""
+.ENDIF # "$(SOLAR_JAVA)"!=""
+
+.IF "$(HXXCOPYFILES)" != ""
+$(HXXCOPYTARGET): $(HXXCOPYFILES)
+ $(COMMAND_ECHO)$(COPY) $(COPYUPDATE) $(HXXCOPYFILES) $(INCCOM) $(CHECKCOPYURESULT)
+.ENDIF
+
+.IF "$(UNIXTEXT)"!=""
+$(UNIXTEXT) : $(UNIXTEXT:f)
+ @echo "Making: " $@
+ @@-$(RM) -f $@
+ @tr -d "\015" < $(@:f) > $@
+
+.ENDIF # "$(UNIXTEXT)"!=""
+
+.IF "$(WITH_LANG)"!=""
+.IF "$(LOCALIZESDF)"!=""
+
+# dummy target to keep the build happy if not even the .zip exists. localization tools deal with not existing
+# localize.sdf themself
+"$(LOCALIZESDF)%":
+ @echo $(LOCALIZESDF)
+ @@-$(MKDIRHIER) $(@:d)
+ $(TOUCH) $@
+
+.IF "$(LOCALIZATION_FOUND)"==""
+.IF "$(LOCALSDFFILE)"!=""
+"$(LOCALIZESDF)" : $(SOLARCOMMONSDFDIR)/$(PRJNAME).zip
+ @@-$(MKDIRHIER) $(@:d)
+ @@-$(MKDIRHIER) $(COMMONMISC)/$(PRJNAME)_$(TARGET)
+ @-unzip -o -d $(COMMONMISC)/$(PRJNAME) $(SOLARCOMMONSDFDIR)/$(PRJNAME).zip $(subst,$(COMMONMISC)/$(PRJNAME)/, $@)
+ @@$(TOUCH) $@
+.ENDIF # "$(LOCALSDFFILE)"!=""
+.ENDIF # "$(LOCALIZATION_FOUND)"==""
+.ENDIF # "$(LOCALIZESDF)"!=""
+.ENDIF # "$(WITH_LANG)"!=""
+
+.IF "$(EXTUPDATEINFO_NAME)"!=""
+$(EXTUPDATEINFO_DEST) : $(EXTUPDATEINFO_SOURCE)
+ $(PERL) $(SOLARENV)/bin/make_ext_update_info.pl --out $(EXTUPDATEINFO_DEST) $(foreach,i,$(EXTUPDATEINFO_URLS) --update-url "$i") $(EXTUPDATEINFO_SOURCE)
+.ENDIF # "$(EXTUPDATEINFO_NAME)"!=""
+
+makedoc:
+ @@-mkdir $(OUT)/ucrdoc
+ $(COMMAND_ECHO)$(IDLC) $(VERBOSITY) @$(mktmp $(IDLCFLAGS) $(UNOIDLDEFS) $(UNOIDLINCEXTRA) $(UNOIDLINC) -C -O$(OUT)/ucrdoc/$(IDLPACKAGE) $(DEPIDLFILES:+"\n"))
+
+.IF "$(LOCALDBTARGET)"!=""
+$(LOCALDBTARGET) : $(URDFILES) $(DEPIDLFILES)
+ $(COMMAND_ECHO)$(IDLC) $(VERBOSITY) @$(mktmp $(IDLCFLAGS) $(UNOIDLDEFS) $(UNOIDLINCEXTRA) $(UNOIDLINC) -O$(OUT)/ucr/$(IDLPACKAGE) $(all_outdated_idl))
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(REGMERGE) $@ UCR @$(mktmp $(URDFILES))
+.ENDIF
+
+.IF "$(LOCALDOCDBTARGET)"!=""
+$(LOCALDOCDBTARGET) : $(URDDOCFILES) $(DEPIDLFILES)
+ $(COMMAND_ECHO)$(IDLC) $(VERBOSITY) @$(mktmp $(IDLCFLAGS) $(UNOIDLDEFS) $(UNOIDLINCEXTRA) $(UNOIDLINC) -C -O$(OUT)/ucrdoc/$(IDLPACKAGE) $(all_outdated_idl))
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(REGMERGE) $@ UCR @$(mktmp $(URDDOCFILES))
+.ENDIF
+
+.IF "$(UNOIDLDBTARGET)"!=""
+$(UNOIDLDBTARGET) : $(UNOIDLDBFILES) $(UNOIDLDBREGS)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(REGMERGE) $@ / @$(mktmp $(UNOIDLDBFILES) $(UNOIDLDBREGS))
+.IF "$(LOCALREGDB)"!=""
+ $(COMMAND_ECHO)$(REGMERGE) $(LOCALREGDB) / $@
+.ENDIF
+.ENDIF # "$(UNOIDLDBTARGET)"!=""
+
+.IF "$(UNOIDLDBDOCTARGET)"!=""
+$(UNOIDLDBDOCTARGET) : $(UNOIDLDBDOCFILES) $(UNOIDLDBDOCREGS)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(REGMERGE) $@ / @$(mktmp $(UNOIDLDBDOCFILES) $(UNOIDLDBDOCREGS))
+.IF "$(LOCALREGDB)"!=""
+ $(COMMAND_ECHO)$(REGMERGE) $(LOCALREGDB) / $@
+.ENDIF
+.ENDIF # "$(UNOIDLDBDOCTARGET)"!=""
+
+.IF "$(SCP_PRODUCT_TYPE)"!=""
+$(SCP_PRODUCT_TYPE):
+ @@-$(MKDIRHIER) $(PAR)/$@
+ @@-$(MKDIRHIER) $(BIN)/$@
+
+.ENDIF # "$(PARFILES)"!=""
+
+"$(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/minormkchanged.flg" :
+ $(TOUCH) $@
+
+.IF "$(COMPVERMK)"!=""
+.IF "$(UPDATER)"!="" || "$(CWS_WORK_STAMP)"!=""
+.IF "$(COMPATH:s!\!/!)"!="$(COMPATH_STORED)"
+COMPVERMK_PHONY:=.PHONY
+.ENDIF # "$(COMPATH:s!\!/!)"!="$(COMPATH_STORED)"
+COMPVTMP:=$(mktmp iii)
+"$(COMPVERMK)" $(COMPVERMK_PHONY): $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/minormkchanged.flg
+.IF "$(CCNUMVER)"!=""
+ @echo COMNAME:=$(COMNAME) > $(COMPVTMP)
+ @echo COMID:=$(COMID) >> $(COMPVTMP)
+.IF "$(COM)"=="GCC"
+ @echo SHORTSTDCPP3:=$(SHORTSTDCPP3) >> $(COMPVTMP)
+ @echo SHORTSTDC3:=$(SHORTSTDC3) >> $(COMPVTMP)
+.ENDIF
+ @echo CCNUMVER:=$(CCNUMVER) >> $(COMPVTMP)
+ @echo CCVER:=$(CCVER:s/-/ /:1) >> $(COMPVTMP)
+ @echo CDEFS+=-DCPPU_ENV=$(COMNAME) >> $(COMPVTMP)
+ @echo COMPATH_STORED:=$(COMPATH:s!\!/!) >> $(COMPVTMP)
+ @@-$(RM) $(@)_$(COMPVTMP:b)
+ @$(TYPE) $(COMPVTMP) | tr -d "\015" > $(@)_$(COMPVTMP:b)
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ >& $(NULLDEV) $(FI)
+ @-$(RENAME) $(@)_$(COMPVTMP:b) $@
+ @@-$(RM) $(@)_$(COMPVTMP:b)
+.ELSE # "$(CCNUMVER)"!=""
+ @@-$(RM) $@
+.ENDIF # "$(CCNUMVER)"!=""
+
+.ENDIF # "$(COMPVERMK)"!=""
+.ENDIF # "$(UPDATER)"!="" || "$(CWS_WORK_STAMP)"!=""
+
+.IF "$(JAVAVERMK)"!=""
+.IF "$(JAVALOCATION)"!="$(JAVA_HOME)"
+"$(JAVAVERMK)" .PHONY :
+.ELSE # "$(JAVALOCATION)"!="$(JAVA_HOME)"
+"$(JAVAVERMK)" : $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/minormkchanged.flg
+.ENDIF # "$(JAVALOCATION)"!="$(JAVA_HOME)"
+ @-$(RM) $@
+ @echo JAVAVER:=$(JAVAVER) > $@
+ @echo JAVANUMVER:=$(JAVANUMVER) >> $@
+ @echo JAVALOCATION:=$(JAVA_HOME) >> $@
+
+.ENDIF # "$(JAVAVERMK)"!=""
+
+# on recursive call there seems to be one blank in TARGETDEP
+# which makes it not empty :-(
+.IF "$(TARGETDEPS:s/ //)"!=""
+$(TARGETDEPS) : $(LOCALIZE_ME_DEST)
+.ENDIF # "$(TARGETDEPS)"!=""
+
+.IF "$(LOCALIZE_ME_DEST)"!=""
+
+.IF "$(WITH_LANG)"==""
+$(LOCALIZE_ME_DEST) : $(LOCALIZE_ME)
+ $(COMMAND_ECHO)-$(RM) $(INCCOM)/$(TARGET)_lastrun.mk
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(COPY) $(@:b:+"_tmpl")$(@:e) $@
+
+.ELSE # "$(WITH_LANG)"==""
+# LASTRUN_MERGED
+.INCLUDE .IGNORE : $(INCCOM)/$(TARGET)_lastrun.mk
+.IF "$(LASTRUN_MERGED)"=="TRUE"
+$(LOCALIZE_ME_DEST) : $(LOCALIZE_ME) $(LOCALIZESDF)
+.ELSE # "$(LASTRUN_MERGED)"=="TRUE"
+$(LOCALIZE_ME_DEST) .PHONY : $(LOCALIZE_ME) $(LOCALIZESDF)
+ echo LASTRUN_MERGED:=TRUE > $(INCCOM)/$(TARGET)_lastrun.mk
+.ENDIF # "$(LASTRUN_MERGED)"=="TRUE"
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(TRANSEX) -p $(PRJNAME) -i $(@:b:+"_tmpl")$(@:e) -o $(@:d)/$(@:b:+"_tmpl")$(@:e).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $(@:d)$(@:b:+"_tmpl")$(@:e).$(INPATH) $@
+
+.ENDIF # "$(WITH_LANG)"==""
+.ENDIF # "$(LOCALIZE_ME_DEST)"!=""
+
+.IF "$(XMLPROPERTIES)"!=""
+.IF "$(L10N_framework)"!=""
+XML_ISO_CODE*=-ISO99 $(L10N_framework)
+.ENDIF
+.IF "$(WITH_LANG)"!=""
+$(MISC)/$(TARGET)_%.done : $(COMMONMISC)/$(TARGET)/%.xrb
+.ELSE # "$(WITH_LANG)"!=""
+$(MISC)/$(TARGET)_%.done : %.xrb
+.ENDIF # "$(WITH_LANG)"!=""
+ @@-$(RM) $(MISC)/$(<:b).interm$(TARGET)
+ native2ascii -encoding UTF8 $< $(MISC)/$(<:b).interm$(TARGET) && $(XMLEX) -i $(MISC)/$(<:b).interm$(TARGET) -o $(CLASSDIR) $(XML_ISO_CODE) -g -d $@
+ @@$(RM) $(MISC)/$(<:b).interm$(TARGET)
+.ENDIF # "$(XMLPROPERTIES)"!=""
+
+.IF "$(HIDSID1PARTICLE)$(SDI1TARGET)$(HIDSID2PARTICLE)$(SDI2TARGET)$(HIDSID3PARTICLE)$(SDI3TARGET)$(HIDSID4PARTICLE)$(SDI4TARGET)$(HIDSID5PARTICLE)$(SDI5TARGET)$(HIDSID6PARTICLE)$(SDI6TARGET)$(HIDSID7PARTICLE)$(SDI7TARGET)$(HIDSID8PARTICLE)$(SDI8TARGET)$(HIDSID9PARTICLE)$(SDI9TARGET)"!=""
+.INCLUDE : _tg_sdi.mk
+.ENDIF # "$(HIDSID1PARTICLE)$(SDI1TARGET)$(HIDSID2PARTICLE)$(SDI2TARGET)$(HIDSID3PARTICLE)$(SDI3TARGET)$(HIDSID4PARTICLE)$(SDI4TARGET)$(HIDSID5PARTICLE)$(SDI5TARGET)$(HIDSID6PARTICLE)$(SDI6TARGET)$(HIDSID7PARTICLE)$(SDI7TARGET)$(HIDSID8PARTICLE)$(SDI8TARGET)$(HIDSID9PARTICLE)$(SDI9TARGET)"!=""
+
+.IF "$(DEF1NAME)$(DEF2NAME)$(DEF3NAME)$(DEF4NAME)$(DEF5NAME)$(DEF6NAME)$(DEF7NAME)$(DEF8NAME)$(DEF9NAME)"!=""
+.INCLUDE : _tg_def.mk
+.ENDIF
+
+.IF "$(COMMONPRJHIDOTHERTARGET)"!=""
+$(COMMONPRJHIDOTHERTARGET) : $(PRJHIDOTHERTARGET)
+ @echo "Making: " $@
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+ $(COMMAND_ECHO)$(TYPE) $(PRJHIDOTHERTARGET) > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+.ENDIF
+
+# -------
+# - LIB -
+# -------
+
+.IF "$(OBJTARGET)$($(SECOND_BUILD)OBJTARGET)"!=""
+.INCLUDE : tg_obj.mk
+.ENDIF # "$(OBJTARGET)$($(SECOND_BUILD)OBJTARGET)"!=""
+
+# -------
+# - SLB -
+# -------
+
+.IF "$(SLOTARGET)$($(SECOND_BUILD)SLOTARGET)"!=""
+.INCLUDE : tg_slo.mk
+.ENDIF # "$(SLOTARGET)$($(SECOND_BUILD)SLOTARGET)"!=""
+
+# --------
+# - LIBS -
+# --------
+
+.IF "$(LIB1TARGET)$(LIB2TARGET)$(LIB3TARGET)$(LIB4TARGET)$(LIB5TARGET)$(LIB6TARGET)$(LIB7TARGET)$(LIB8TARGET)$(LIB9TARGET)" != ""
+.INCLUDE : _tg_lib.mk
+.ENDIF # "$(LIB1TARGET)$(LIB2TARGET)$(LIB3TARGET)$(LIB4TARGET)$(LIB5TARGET)$(LIB6TARGET)$(LIB7TARGET)$(LIB8TARGET)$(LIB9TARGET)" != ""
+
+# -------
+# - SRS -
+# -------
+
+.IF "$(SRS1NAME)$(SRS2NAME)$(SRS3NAME)$(SRS4NAME)$(SRS5NAME)$(SRS6NAME)$(SRS7NAME)$(SRS8NAME)$(SRS9NAME)"!=""
+.INCLUDE : _tg_srs.mk
+.ENDIF # "$(SRS1NAME)$(SRS2NAME)$(SRS3NAME)$(SRS4NAME)$(SRS5NAME)$(SRS6NAME)$(SRS7NAME)$(SRS8NAME)$(SRS9NAME)"!=""
+
+# -------
+# - RES -
+# -------
+
+.IF "$(RCTARGET)"!=""
+.INCLUDE : tg_res.mk
+.ENDIF # "$(RCTARGET)"!=""
+
+# -------
+# - SHL -
+# -------
+
+.IF "$(SHL1TARGETN)$(SHL2TARGETN)$(SHL3TARGETN)$(SHL4TARGETN)$(SHL5TARGETN)$(SHL6TARGETN)$(SHL7TARGETN)$(SHL8TARGETN)$(SHL9TARGETN)"!=""
+.INCLUDE : _tg_shl.mk
+.ENDIF # "$(SHL1TARGETN)$(SHL2TARGETN)$(SHL3TARGETN)$(SHL4TARGETN)$(SHL5TARGETN)$(SHL6TARGETN)$(SHL7TARGETN)$(SHL8TARGETN)$(SHL9TARGETN)"!=""
+
+.IF "$(USE_VERSIONH)"!=""
+.INIT .SEQUENTIAL : $(USE_VERSIONH) $(NULLPRQ)
+.ENDIF # "$(USE_VERSIONH)"!=""
+
+# -------
+# - APP -
+# -------
+
+.IF "$(APP1TARGETN)$(APP2TARGETN)$(APP3TARGETN)$(APP4TARGETN)$(APP5TARGETN)$(APP6TARGETN)$(APP7TARGETN)$(APP8TARGETN)$(APP9TARGETN)"!=""
+.INCLUDE : _tg_app.mk
+.ENDIF
+
+# -------
+# - SCP -
+# -------
+
+.IF "$(SCP1TARGETN)$(SCP2TARGETN)$(SCP3TARGETN)$(SCP4TARGETN)$(SCP5TARGETN)$(SCP6TARGETN)$(SCP7TARGETN)$(SCP8TARGETN)$(SCP9TARGETN)"!=""
+.INCLUDE : _tg_scp.mk
+.ENDIF
+
+# -------
+# - ZIP -
+# -------
+
+.IF "$(ZIP1TARGET)$(ZIP2TARGET)$(ZIP3TARGET)$(ZIP4TARGET)$(ZIP5TARGET)$(ZIP6TARGET)$(ZIP7TARGET)$(ZIP8TARGET)$(ZIP9TARGET)"!=""
+.INCLUDE : _tg_zip.mk
+.ENDIF
+
+# -------
+# - RESLIBTARGET -
+# -------
+
+.IF "$(RESLIB1TARGETN)$(RESLIB2TARGETN)$(RESLIB3TARGETN)$(RESLIB4TARGETN)$(RESLIB5TARGETN)$(RESLIB6TARGETN)$(RESLIB7TARGETN)$(RESLIB8TARGETN)$(RESLIB9TARGETN)"!=""
+.INCLUDE : _tg_rslb.mk
+.ENDIF
+
+# -------
+# - processing config -
+# -------
+
+.IF "$(XCSFILES)$(XCUFILES)"!=""
+.INCLUDE : tg_config.mk
+.ENDIF # "$(XCSFILES)$(XCUFILES)"!=""
+
+
+# ------------------
+# - INCLUDE DEPEND -
+# ------------------
+
+# same block as in depend build
+.IF "$(MAKEFILERC)"==""
+.IF "$(RCFILES)$(SLOFILES)$(OBJFILES)$(DEPOBJFILES)$(PARFILES)" != ""
+.IF "$(DEPFILES)" != ""
+.INCLUDE : $(DEPFILES)
+.ENDIF # "$(DEPFILES)" != ""
+.IF "$(nodep)"==""
+.IF "$(DEPCOLLECT_SLO)" != ""
+.PHONY : $(DEPCOLLECT_SLO)
+.INCLUDE .IGNORE : $(DEPCOLLECT_SLO)
+.INCLUDE : $(DEPFILE_SLO)
+.ENDIF # "$(DEPCOLLECT_SLO)" != ""
+.IF "$(DEPCOLLECT_OBJ)" != ""
+.PHONY : $(DEPCOLLECT_OBJ)
+.INCLUDE .IGNORE : $(DEPCOLLECT_OBJ)
+.INCLUDE : $(DEPFILE_OBJ)
+.ENDIF # "$(DEPCOLLECT_OBJ)" != ""
+.ENDIF # "$(nodep)"==""
+.ENDIF # "$(RCFILES)$(SLOFILES)$(OBJFILES)$(DEPOBJFILES)$(PARFILES)" != ""
+.ELSE # MAKEFILERC
+.ENDIF # MAKEFILERC
+
+.IF "$(make_srs_deps)"==""
+.IF "$(SRCFILES)" != "" || "$(SRC1FILES)" != "" || "$(SRC2FILES)" != ""
+.IF "$(nodep)"==""
+.INCLUDE : $(MISC)/$(TARGET).dpr
+.ENDIF # "$(nodep)"==""
+.ENDIF
+.ENDIF
+
+.IF "$(make_zip_deps)"==""
+.IF "$(ZIP1TARGET)" != "" || "$(ZIP2TARGET)" != "" || "$(ZIP3TARGET)" != ""
+.IF "$(nodep)"==""
+.INCLUDE : $(MISC)/$(TARGET).dpz
+# introduce separation char
+missing_zipdep_langs=$(alllangiso:^"+":+"+")
+some_dummy_var:=$(foreach,i,$(zipdep_langs) $(assign missing_zipdep_langs:=$(strip $(subst,+$(i)+, $(missing_zipdep_langs)))))
+.IF "$(missing_zipdep_langs)"!=""
+ZIPDEPPHONY=.PHONY
+.ENDIF # "$(missing_zipdep_langs)"!=""
+.ENDIF # "$(nodep)"==""
+.ENDIF
+.ENDIF
+
+last_target:
+ $(NULL)
+
+$(MISC)/$(TARGET)genjava.mk: $(IDLFILES)
+
+.IF "$(JAVACLASSFILES:s/DEFINED//)"!=""
+.IF "$(L10N_framework)"==""
+.INCLUDE .IGNORE : $(MISC)/$(TARGET).dpj
+$(TARGETDPJ) : $(JAVAFILES) $(JAVATARGET)
+.ENDIF # "$(L10N_framework)"==""
+.ENDIF
+
+.IF "$(JARTARGETN)"!=""
+.INCLUDE : tg_jar.mk
+.ENDIF # "$(JARTARGETN)"!=""
+
+# ----------------------------------
+# - NOOPT - files ohne optimierung -
+# ----------------------------------
+
+.IF "$(NOOPTTARGET)" != ""
+.IF "$(NOOPT_FLAG)" == ""
+
+$(NOOPTTARGET):
+.IF "$(VERBOSE)" == "TRUE"
+ @echo --- NOOPTFILES ---
+.ENDIF
+ @dmake $(MFLAGS) $(MAKEFILE) nopt=true $(NOOPTFILES) NOOPT_FLAG=TRUE $(CALLMACROS)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo --- NOOPTFILES OVER ---
+.ENDIF
+
+$(NOOPTFILES):
+.IF "$(VERBOSE)" == "TRUE"
+ @echo --- NOOPT ---
+.ENDIF
+ @dmake $(MFLAGS) $(MAKEFILE) nopt=true NOOPT_FLAG=TRUE $(CALLMACROS) $@
+.IF "$(VERBOSE)" == "TRUE"
+ @echo --- NOOPT OVER ---
+.ENDIF
+.ENDIF
+.ENDIF
+
+
+# ----------------------------------
+# - EXCEPTIONSNOOPT - files with exceptions, without optimization -
+# ----------------------------------
+
+.IF "$(EXCEPTIONSNOOPTTARGET)" != ""
+.IF "$(EXCEPTIONSNOOPT_FLAG)" == ""
+
+$(EXCEPTIONSNOOPTTARGET):
+.IF "$(VERBOSE)" == "TRUE"
+ @echo --- EXCEPTIONSNOOPTFILES ---
+.ENDIF
+ @dmake $(MFLAGS) $(MAKEFILE) ENABLE_EXCEPTIONS=true $(EXCEPTIONSNOOPTFILES) EXCEPTIONSNOOPT_FLAG=TRUE nopt=true $(CALLMACROS)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo --- EXCEPTIONSNOOPTFILES OVER ---
+.ENDIF
+
+$(EXCEPTIONSNOOPTFILES):
+.IF "$(VERBOSE)" == "TRUE"
+ @echo --- EXCEPTIONSNOOPT ---
+.ENDIF
+ @dmake $(MFLAGS) $(MAKEFILE) ENABLE_EXCEPTIONS=true EXCEPTIONSNOOPT_FLAG=TRUE nopt=true $(CALLMACROS) $@
+.IF "$(VERBOSE)" == "TRUE"
+ @echo --- EXCEPTIONSNOOPT OVER ---
+.ENDIF
+
+
+.ENDIF
+.ENDIF
+
+.IF "$(nodep)"==""
+# recreate dependency files that were removed manually or vanished otherwise...
+forcedeps: $(DEPFILE_SLO) $(DEPFILE_OBJ)
+ @$(null,$(DEPS_MISSING) noop $(eq,$(sort $(DEPS_MISSING)),$(sort $(DEPS_MADE)) noop dmake depend=t $(MFLAGS) $(MAKEMACROS) ALLDEP))
+ @noop $(foreach,i,$($(TARGET)_known_dpcc) $(assign DEPS_MADE:=$(subst,$i, $(DEPS_MADE))))
+ @$(null,$(DEPS_MADE) noop $(null,$(DEPFILE_SLO) noop $(RM) $(DEPFILE_SLO)))
+ @$(null,$(DEPS_MADE) noop $(null,$(DEPFILE_OBJ) noop $(RM) $(DEPFILE_OBJ)))
+
+ALLTAR : forcedeps
+
+.ENDIF # "$(nodep)"==""
+
+# -------------------------
+# - several kill targets -
+# -------------------------
+
+"$(TMP)/makedt.don":
+ @$(TOUCH) $(TMP)/makedt.don
+
+killbin:
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+ @$(IFEXIST) $(BIN)/$(SHL1TARGET).dll $(THEN) $(RM:s/+//) $(BIN)/$(SHL1TARGET).dll $(FI)
+ @$(IFEXIST) $(BIN)/$(SHL2TARGET).dll $(THEN) $(RM:s/+//) $(BIN)/$(SHL2TARGET).dll $(FI)
+ @$(IFEXIST) $(BIN)/$(SHL3TARGET).dll $(THEN) $(RM:s/+//) $(BIN)/$(SHL3TARGET).dll $(FI)
+ @$(IFEXIST) $(BIN)/$(SHL4TARGET).dll $(THEN) $(RM:s/+//) $(BIN)/$(SHL4TARGET).dll $(FI)
+ @$(IFEXIST) $(BIN)/$(SHL5TARGET).dll $(THEN) $(RM:s/+//) $(BIN)/$(SHL5TARGET).dll $(FI)
+ @$(IFEXIST) $(BIN)/$(SHL6TARGET).dll $(THEN) $(RM:s/+//) $(BIN)/$(SHL6TARGET).dll $(FI)
+ @$(IFEXIST) $(BIN)/$(SHL7TARGET).dll $(THEN) $(RM:s/+//) $(BIN)/$(SHL7TARGET).dll $(FI)
+ @$(IFEXIST) $(BIN)/$(SHL8TARGET).dll $(THEN) $(RM:s/+//) $(BIN)/$(SHL8TARGET).dll $(FI)
+ @$(IFEXIST) $(BIN)/$(SHL9TARGET).dll $(THEN) $(RM:s/+//) $(BIN)/$(SHL9TARGET).dll $(FI)
+ @$(IFEXIST) $(BIN)/$(APP1TARGET)$(EXECPOST) $(THEN) $(RM:s/+//) $(BIN)/$(APP1TARGET)$(EXECPOST) $(FI)
+ @$(IFEXIST) $(BIN)/$(APP2TARGET)$(EXECPOST) $(THEN) $(RM:s/+//) $(BIN)/$(APP2TARGET)$(EXECPOST) $(FI)
+ @$(IFEXIST) $(BIN)/$(APP3TARGET)$(EXECPOST) $(THEN) $(RM:s/+//) $(BIN)/$(APP3TARGET)$(EXECPOST) $(FI)
+ @$(IFEXIST) $(BIN)/$(APP4TARGET)$(EXECPOST) $(THEN) $(RM:s/+//) $(BIN)/$(APP4TARGET)$(EXECPOST) $(FI)
+ @$(IFEXIST) $(BIN)/$(APP5TARGET)$(EXECPOST) $(THEN) $(RM:s/+//) $(BIN)/$(APP5TARGET)$(EXECPOST) $(FI)
+ @$(IFEXIST) $(BIN)/$(APP6TARGET)$(EXECPOST) $(THEN) $(RM:s/+//) $(BIN)/$(APP6TARGET)$(EXECPOST) $(FI)
+ @$(IFEXIST) $(BIN)/$(APP7TARGET)$(EXECPOST) $(THEN) $(RM:s/+//) $(BIN)/$(APP7TARGET)$(EXECPOST) $(FI)
+ @$(IFEXIST) $(BIN)/$(APP8TARGET)$(EXECPOST) $(THEN) $(RM:s/+//) $(BIN)/$(APP8TARGET)$(EXECPOST) $(FI)
+ @$(IFEXIST) $(BIN)/$(APP9TARGET)$(EXECPOST) $(THEN) $(RM:s/+//) $(BIN)/$(APP9TARGET)$(EXECPOST) $(FI)
+
+.ELSE # "$(GUI)"=="WNT"
+.IF "$(SHL1TARGET)"!=""
+ @-$(RM) $(LB)/$(SHL1DLLPRE)$(SHL1TARGET)$(DLLPOST)
+.ENDIF
+.IF "$(SHL2TARGET)"!=""
+ @-$(RM) $(LB)/$(SHL2DLLPRE)$(SHL2TARGET)$(DLLPOST)
+.ENDIF
+.IF "$(SHL3TARGET)"!=""
+ @-$(RM) $(LB)/$(SHL3DLLPRE)$(SHL3TARGET)$(DLLPOST)
+.ENDIF
+.IF "$(SHL4TARGET)"!=""
+ @-$(RM) $(LB)/$(SHL4DLLPRE)$(SHL4TARGET)$(DLLPOST)
+.ENDIF
+.IF "$(SHL5TARGET)"!=""
+ @-$(RM) $(LB)/$(SHL5DLLPRE)$(SHL5TARGET)$(DLLPOST)
+.ENDIF
+.IF "$(SHL6TARGET)"!=""
+ @-$(RM) $(LB)/$(SHL6DLLPRE)$(SHL6TARGET)$(DLLPOST)
+.ENDIF
+.IF "$(SHL7TARGET)"!=""
+ @-$(RM) $(LB)/$(SHL7DLLPRE)$(SHL7TARGET)$(DLLPOST)
+.ENDIF
+.IF "$(SHL8TARGET)"!=""
+ @-$(RM) $(LB)/$(SHL8DLLPRE)$(SHL8TARGET)$(DLLPOST)
+.ENDIF
+.IF "$(SHL9TARGET)"!=""
+ @-$(RM) $(LB)/$(SHL9DLLPRE)$(SHL9TARGET)$(DLLPOST)
+.ENDIF
+.IF "$(APP1TARGET)"!=""
+ @-$(RM) $(BIN)/$(APP1TARGET)$(EXECPOST)
+.ENDIF
+.IF "$(APP2TARGET)"!=""
+ @-$(RM) $(BIN)/$(APP2TARGET)$(EXECPOST)
+.ENDIF
+.IF "$(APP3TARGET)"!=""
+ @-$(RM) $(BIN)/$(APP3TARGET)$(EXECPOST)
+.ENDIF
+.IF "$(APP4TARGET)"!=""
+ @-$(RM) $(BIN)/$(APP4TARGET)$(EXECPOST)
+.ENDIF
+.IF "$(APP5TARGET)"!=""
+ @-$(RM) $(BIN)/$(APP5TARGET)$(EXECPOST)
+.ENDIF
+.IF "$(APP6TARGET)"!=""
+ @-$(RM) $(BIN)/$(APP6TARGET)$(EXECPOST)
+.ENDIF
+.IF "$(APP7TARGET)"!=""
+ @-$(RM) $(BIN)/$(APP7TARGET)$(EXECPOST)
+.ENDIF
+.IF "$(APP8TARGET)"!=""
+ @-$(RM) $(BIN)/$(APP8TARGET)$(EXECPOST)
+.ENDIF
+.IF "$(APP9TARGET)"!=""
+ @-$(RM) $(BIN)/$(APP9TARGET)$(EXECPOST)
+.ENDIF
+.ENDIF # "$(GUI)"=="WNT"
+
+killobj:
+.IF "$(SLOFILES)" != ""
+ -cd $(SLO) && $(TYPE:s/+//) $(mktmp $(SLOFILES:f)) | xargs -n 20 rm
+ -cd $(SLO) && $(TYPE:s/+//) $(mktmp $(SLOFILES:s/.obj/.o/:f)) | xargs -n 20 rm
+.ENDIF
+.IF "$(OBJFILES)" != ""
+ -cd $(OBJ) && $(TYPE:s/+//) $(mktmp $(OBJFILES:f)) | xargs -n 20 rm
+ -cd $(OBJ) && $(TYPE:s/+//) $(mktmp $(OBJFILES:s/.obj/.o/:f)) | xargs -n 20 rm
+.ENDIF
+
+.IF "$(REAL_$(SECOND_BUILD)_SLOFILES)" != ""
+ -cd $(REAL_$(SECOND_BUILD)_SLO) && $(TYPE:s/+//) $(mktmp $(REAL_$(SECOND_BUILD)_SLOFILES:f)) | xargs -n 20 rm
+ -cd $(REAL_$(SECOND_BUILD)_SLO) && $(TYPE:s/+//) $(mktmp $(REAL_$(SECOND_BUILD)_SLOFILES:s/.obj/.o/:f)) | xargs -n 20 rm
+.ENDIF
+.IF "$(REAL_$(SECOND_BUILD)_OBJFILES)" != ""
+ -cd $(REAL_$(SECOND_BUILD)_OBJ) && $(TYPE:s/+//) $(mktmp $(REAL_$(SECOND_BUILD)_OBJFILES:f)) | xargs -n 20 rm
+ -cd $(REAL_$(SECOND_BUILD)_OBJ) && $(TYPE:s/+//) $(mktmp $(REAL_$(SECOND_BUILD)_OBJFILES:s/.obj/.o/:f)) | xargs -n 20 rm
+.ENDIF
+.IF "$(DEPOBJFILES)" != ""
+ -cd $(SLO) && $(TYPE:s/+//) $(mktmp $(DEPOBJFILES:f)) | xargs -n 20 rm
+ -cd $(SLO) && $(TYPE:s/+//) $(mktmp $(DEPOBJFILES:s/.obj/.o/:f)) | xargs -n 20 rm
+ -cd $(OBJ) && $(TYPE:s/+//) $(mktmp $(DEPOBJFILES:f)) | xargs -n 20 rm
+ -cd $(OBJ) && $(TYPE:s/+//) $(mktmp $(DEPOBJFILES:s/.obj/.o/:f)) | xargs -n 20 rm
+.ENDIF
+ @echo objects weg!
+
+killsrs:
+# doesn't work - fix me!
+.IF "$(SRSFILES)" != ""
+ $(RM) $(SRSFILES)
+.ENDIF
+ @echo srsfiles weg!
+
+killres:
+.IF "$(RESLIB1TARGETN)$(RESLIB2TARGETN)$(RESLIB3TARGETN)$(RESLIB4TARGETN)$(RESLIB5TARGETN)$(RESLIB6TARGETN)$(RESLIB7TARGETN)$(RESLIB8TARGETN)$(RESLIB9TARGETN)"!=""
+ @(COMMAND_ECHO)$(RM) $(RESLIB1TARGETN) $(RESLIB2TARGETN) $(RESLIB3TARGETN) $(RESLIB4TARGETN) $(RESLIB5TARGETN) $(RESLIB6TARGETN) $(RESLIB7TARGETN) $(RESLIB8TARGETN) $(RESLIB9TARGETN)
+ @echo resource files removed!
+.ELSE # "$(RESLIB1TARGETN)$(RESLIB2TARGETN)$(RESLIB3TARGETN)$(RESLIB4TARGETN)$(RESLIB5TARGETN)$(RESLIB6TARGETN)$(RESLIB7TARGETN)$(RESLIB8TARGETN)$(RESLIB9TARGETN)"!=""
+ @echo no resource files defined!
+.ENDIF # "$(RESLIB1TARGETN)$(RESLIB2TARGETN)$(RESLIB3TARGETN)$(RESLIB4TARGETN)$(RESLIB5TARGETN)$(RESLIB6TARGETN)$(RESLIB7TARGETN)$(RESLIB8TARGETN)$(RESLIB9TARGETN)"!=""
+
+killdef:
+.IF "$(DEFTARGETN)" != ""
+ @(COMMAND_ECHO)$(RM) $(DEFTARGETN)
+.ENDIF
+ @echo deffiles weg!
+
+killlib:
+.IF "$(LIB1TARGETN)$(LIB2TARGETN)$(LIB3TARGETN)$(LIB4TARGETN)$(LIB5TARGETN)$(LIB6TARGETN)$(LIB7TARGETN)$(LIB8TARGETN)$(LIB9TARGETN)"!=""
+ @(COMMAND_ECHO)$(RM) $(LIB1TARGETN) $(LIB2TARGETN) $(LIB3TARGETN) $(LIB4TARGETN) $(LIB5TARGETN) $(LIB6TARGETN) $(LIB7TARGETN) $(LIB8TARGETN) $(LIB9TARGETN)
+.IF "$(LIB1ARCHIV)$(LIB2ARCHIV)$(LIB3ARCHIV)$(LIB4ARCHIV)$(LIB5ARCHIV)$(LIB6ARCHIV)$(LIB7ARCHIV)$(LIB8ARCHIV)$(LIB9ARCHIV)"!=""
+ @(COMMAND_ECHO)$(RM) $(LIB1ARCHIV) $(LIB2ARCHIV) $(LIB3ARCHIV) $(LIB4ARCHIV) $(LIB5ARCHIV) $(LIB6ARCHIV) $(LIB7ARCHIV) $(LIB8ARCHIV) $(LIB9ARCHIV)
+.ENDIF # "$(LIB1ARCHIV)$(LIB2ARCHIV)$(LIB3ARCHIV)$(LIB4ARCHIV)$(LIB5ARCHIV)$(LIB6ARCHIV)$(LIB7ARCHIV)$(LIB8ARCHIV)$(LIB9ARCHIV)"!=""
+ @echo lib/archive files removed!
+.ENDIF # "$(LIB1TARGETN)$(LIB2TARGETN)$(LIB3TARGETN)$(LIB4TARGETN)$(LIB5TARGETN)$(LIB6TARGETN)$(LIB7TARGETN)$(LIB8TARGETN)$(LIB9TARGETN)"!=""
+.IF "$(SLOTARGET)$(OBJTARGET)"!=""
+ @(COMMAND_ECHO)$(RM) $(SLOTARGET) $(OBJTARGET)
+ @echo default lib files removed!
+.ENDIF # "$(SLOTARGET)$(OBJTARGET)"!=""
+ @echo done!
+
+clean_misc :
+.IF "$(MISC)"!=""
+ rm -rf $(MISC)/*
+ @echo misc is gone!
+.ELSE # "$(MISC)"!=""
+ @echo can\'t be done! $$(MISC) not defined.
+.ENDIF # "$(MISC)"!=""
+
+clean_all :
+.IF "$(OUT)"!=""
+ test -f $(PRJ)/prj/build.lst && rm -rf $(OUT)
+ @echo local output tree is gone!
+.ELSE # "$(OUT)"!=""
+ @echo can\'t be done! $$(OUT) not defined.
+.ENDIF # "$(OUT)"!=""
+
+
+SRCALLTARGET: \
+ $(SDITARGET) $(SDI1TARGET) $(SDI2TARGET) \
+ $(SDI3TARGET) $(SDI4TARGET) $(SDI5TARGET) \
+ $(SRC1TARGET) \
+ $(SRC2TARGET) \
+ $(SRC3TARGET) $(RCTARGET) \
+ $(SRC4TARGET) $(SRC5TARGET) $(SRC6TARGET) \
+ $(SRC7TARGET) $(SRC8TARGET) $(SRC9TARGET) \
+ $(SRC10TARGET) $(SRC11TARGET) $(SRC12TARGET) \
+ $(SRC13TARGET) $(SRC14TARGET) $(SRC15TARGET) \
+ $(SRC16TARGET)
+
+.IF "$(ZIP1TARGETN)$(ZIP2TARGETN)$(ZIP3TARGETN)$(ZIP4TARGETN)$(ZIP5TARGETN)$(ZIP6TARGETN)$(ZIP7TARGETN)$(ZIP8TARGETN)$(ZIP9TARGETN)"!=""
+ZIPALLTARGET: \
+ $(ZIP1TARGETN) \
+ $(ZIP2TARGETN) \
+ $(ZIP3TARGETN) \
+ $(ZIP4TARGETN) \
+ $(ZIP5TARGETN) \
+ $(ZIP6TARGETN) \
+ $(ZIP7TARGETN) \
+ $(ZIP8TARGETN) \
+ $(ZIP9TARGETN)
+.ELSE
+ZIPALLTARGET:
+.IF "$(VERBOSE)" != "FALSE"
+ @echo ---------------------------------------
+.ENDIF
+ @echo nothing to zip for activated languages!
+.IF "$(VERBOSE)" != "FALSE"
+ @echo ---------------------------------------
+.ENDIF
+.ENDIF
+
+
+#temporary workaround for non-existing delzip in extras
+delzip:
+ @echo
+ @echo ERROR: ZIPnTARGETS need a file named "delzip" to exist beside their makefile.mk
+ @echo ERROR: Create an empty file named delzip and commit it
+ @echo ERROR: for details see #i78434#
+ force_dmake_to_error
+
+.IF "$(make_srs_deps)"==""
+$(MISC)/$(TARGET).dpr : $(SRCFILES) $(SRC1FILES) $(SRC2FILES) $(SRC3FILES)
+.ENDIF
+
+.IF "$(make_zip_deps)"==""
+$(MISC)/$(TARGET).dpz $(ZIPDEPPHONY) : $(ZIP1TARGETN) $(ZIP2TARGETN) $(ZIP3TARGETN) $(ZIP4TARGETN) $(ZIP5TARGETN) $(ZIP6TARGETN) $(ZIP7TARGETN) $(ZIP8TARGETN) $(ZIP9TARGETN)
+.ENDIF
+
+VERSIONTMP:=$(mktmp iii)
+$(INCCOM)/%_version.h : $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/minormkchanged.flg
+ @echo $(EMQ)#define _BUILD $(EMQ)"$(BUILD)$(EMQ)" > $(VERSIONTMP)
+ @echo $(EMQ)#define _UPD $(EMQ)"$(UPD)$(EMQ)" >> $(VERSIONTMP)
+ @echo $(EMQ)#define _LAST_MINOR $(EMQ)"$(LAST_MINOR)$(EMQ)" >> $(VERSIONTMP)
+ @echo $(EMQ)#define _RSCREVISION $(EMQ)"$(USQ)$(RSCREVISION)$(USQ)$(EMQ)" >> $(VERSIONTMP)
+ @echo $(EMQ)#define _INPATH $(EMQ)"$(INPATH)$(EMQ)" >> $(VERSIONTMP)
+ @@-$(RM) $(@)_$(VERSIONTMP:b)
+ @$(TYPE) $(VERSIONTMP) > $(@)_$(VERSIONTMP:b)
+ @@-$(RM) $@
+ @-$(RENAME) $(@)_$(VERSIONTMP:b) $@
+
+.IF "$(MAKEFILERC)"==""
+warn_target_empty:
+ @echo '*'
+ @echo '* error $$(TARGET) is empty - this will cause problems'
+ @echo '*'
+ force_dmake_to_error
+.ELSE
+warn_target_empty:
+ @echo generated makefile.rc detected
+.ENDIF
+
+.IF "$(UNOTYPES)" != ""
+UNOUCRDEPxxx : $(UNOUCRDEP);
+.ENDIF # "$(UNOTYPES)" != ""
+
+
+#new hid.lst trigger with GEN_HID2=TRUE
+$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/hid.lst .PHONY :
+ @echo "Making: " $@
+ @echo $(WORK_STAMP).$(LAST_MINOR) 010101010101010 > $@.$(ROUT).tmp
+ $(COMMAND_ECHO)$(TYPE) $(SOLARCOMMONBINDIR)/hid/*.hid | tr -d "\015" | $(SORT) -u >> $@.$(ROUT).tmp
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+ @-$(RENAME) $@.$(ROUT).tmp $@
+ @-mkdir $(@:d)hid
+ $(COMMAND_ECHO)$(PERL) $(SOLARENV)/bin/gen_userfeedback_VCL_names.pl $@ $(SOLARCOMMONBINDIR)/win $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/hid/userfeedback_VCL_names.csv.$(ROUT).tmp
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/hid/userfeedback_VCL_names.csv $(FI)
+ @-$(RENAME) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/hid/userfeedback_VCL_names.csv.$(ROUT).tmp $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/hid/userfeedback_VCL_names.csv
+
+
+.IF "$(SOLAR_JAVA)"!=""
+.IF "$(JAVACLASSFILES:s/DEFINED//)$(javauno)"!=""
+.INCLUDE : tg_java.mk
+.ENDIF # "$(JAVACLASSFILES:s/DEFINED//)$(javauno)"!=""
+.ENDIF # "$(SOLAR_JAVA)"!=""
+
+.INCLUDE : tg_merge.mk
+.INCLUDE : tg_propmerge.mk
+.INCLUDE : tg_xmerge.mk
+
+wordcount:
+ wc *.* >> $(TMP)/wc.lst
+
+testt:
+ @echo test
+
+.ELSE # "$(depend)" == ""
+
+# ----------
+# - DEPEND -
+# ----------
+
+ALLTAR : ALLDEP \
+ $(SUBDIRS)
+
+# same block as in regular build
+.IF "$(MAKEFILERC)"==""
+.IF "$(RCFILES)$(SLOFILES)$(OBJFILES)$(DEPOBJFILES)$(PARFILES)" != ""
+.IF "$(DEPFILES)" != ""
+.INCLUDE : $(DEPFILES)
+.ENDIF # "$(DEPFILES)" != ""
+.IF "$(nodep)"==""
+.IF "$(DEPCOLLECT_SLO)" != ""
+.PHONY : $(DEPCOLLECT_SLO)
+.INCLUDE .IGNORE : $(DEPCOLLECT_SLO)
+.INCLUDE : $(DEPFILE_SLO)
+.ENDIF # "$(DEPCOLLECT_SLO)" != ""
+.IF "$(DEPCOLLECT_OBJ)" != ""
+.PHONY : $(DEPCOLLECT_OBJ)
+.INCLUDE .IGNORE : $(DEPCOLLECT_OBJ)
+.INCLUDE : $(DEPFILE_OBJ)
+.ENDIF # "$(DEPCOLLECT_OBJ)" != ""
+.ENDIF # "$(nodep)"==""
+.ENDIF # "$(RCFILES)$(SLOFILES)$(OBJFILES)$(DEPOBJFILES)$(PARFILES)" != ""
+.ELSE # MAKEFILERC
+.ENDIF # MAKEFILERC
+
+.INCLUDE : tg_dep.mk
+
+.ENDIF # "$(depend)" == ""
+
+.IF "$(SUBDIRS)"!=""
+
+$(SUBDIRS) : $(SUBDIRSDEPS)
+
+.IF "$(mk_tmp)$(BSCLIENT)"!=""
+$(SUBDIRS) .PHONY :
+ @echo ignoring SUBDIRS
+
+.ELSE # "$(mk_tmp)$(BSCLIENT)"!=""
+#.IF "$(PRJNAME)"!="sw"
+.IF "$(GUI)"!="UNX"
+$(SUBDIRS) .PHONY :
+ @[
+ cd $@
+ cd
+ @$(MAKECMD) subdmake=true $(MFLAGS) $(CALLMACROS)
+ ]
+.ELSE # "$(GUI)"!="UNX"
+$(SUBDIRS) .PHONY :
+ cd $@; $(MAKECMD) subdmake=true $(MFLAGS) $(CALLMACROS)
+.ENDIF # "$(GUI)"!="UNX"
+#.ENDIF
+.ENDIF # "$(mk_tmp)$(BSCLIENT)"!=""
+.ENDIF # "$(SUBDIRS)"!=""
+
+# workaround for strange dmake bug:
+# if the previous block was a rule or a target, "\#" isn't recognized
+# as an escaped "#". if it was an assignment, escaping works...
+some_unique_variable_name:=1
diff --git a/solenv/inc/templates/extension_tmpl.mk b/solenv/inc/templates/extension_tmpl.mk
new file mode 100644
index 000000000000..b9ea7db7ee76
--- /dev/null
+++ b/solenv/inc/templates/extension_tmpl.mk
@@ -0,0 +1,153 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+############################################
+#
+# sample makefile for extension packing
+#
+# NOTE: not all of this is required or useful
+# for every specific case
+#
+############################################
+
+PRJ=..$/..
+
+PRJNAME=my_project
+TARGET=some_unique_target
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE: settings.mk
+# it might be useful to have an extension wide include to set things
+# like the EXTNAME variable (used for configuration processing)
+# .INCLUDE : $(PRJ)$/source$/<extension name>$/<extension_name>.pmk
+
+# --- Files --------------------------------------------------------
+
+# name for uniq directory
+EXTENSIONNAME:=MyExtension
+EXTENSION_ZIPNAME:=MyExtension
+
+.IF "$(ENABLE_MYEXTENSION)" != "YES"
+@all:
+ @echo "$(EXTENSIONNAME) - extension disabled."
+.ENDIF
+.IF "$(SOLAR_JAVA)"==""
+@all:
+ @echo "$(EXTENSIONNAME) - extension requires java."
+.ENDIF
+
+
+# some other targets to be done
+
+
+
+# --- Extension packaging ------------------------------------------
+
+# these variables are optional and defaulted to the current directory
+
+DESCRIPTION_SRC:=config$/description.xml
+MANIFEST_SRC:=config$/manifest.xml
+COMPONENT_CONFIGDIR:=config
+
+# ------------------------------------------------------------------
+
+# optional: generated list of .xcu files contained in the extension
+COMPONENT_MANIFEST_GENERIC:=TRUE
+COMPONENT_MANIFEST_SEARCHDIR:=registry
+
+
+# variables to trigger predifined targets
+# just copy:
+COMPONENT_FILES= \
+ $(EXTENSIONDIR)$/xMyExtension$(EXECPOST) \
+ $(EXTENSIONDIR)$/some_local.html
+
+# localized configuration files
+COMPONENT_MERGED_XCU= \
+ $(EXTENSIONDIR)$/registry$/data$/org$/openoffice$/Office$/Addons.xcu \
+ $(EXTENSIONDIR)$/registry$/data$/org$/openoffice$/Office$/extension$/MyExtension.xcu
+
+# other configuration files
+COMPONENT_XCU= \
+ $(EXTENSIONDIR)$/registry$/data$/org$/openoffice$/Office$/Data.xcu
+
+# location of configurationfiles inside extension,
+# "." for flat .xcu files
+#COMPONENT_CONFIGDEST=.
+
+# native libraries
+COMPONENT_LIBRARIES= \
+ $(EXTENSIONDIR)$/$(SHL1TARGET)$(DLLPOST)
+
+# jar files
+COMPONENT_JARFILES = \
+ $(EXTENSIONDIR)$/MyExtension.jar
+
+# disable fetching default OOo license text
+#CUSTOM_LICENSE=my_license.txt
+# override default license destination
+#PACKLICS= $(EXTENSIONDIR)$/registration$/$(CUSTOM_LICENSE)
+
+# -------------------------------
+# variables for own targets specific to this extension; no common
+# target available...
+#
+CONVERTER_FILE= \
+ $(EXTENSIONDIR)$/xMyExtension$(EXECPOST) \
+
+COMPONENT_DIALOGS= \
+ $(EXTENSIONDIR)$/basic$/Module1.xba \
+ $(EXTENSIONDIR)$/basic$/TargetChooser.xdl \
+ $(EXTENSIONDIR)$/basic$/dialog.xlb \
+ $(EXTENSIONDIR)$/basic$/impress.png \
+ $(EXTENSIONDIR)$/basic$/script.xlb \
+ $(EXTENSIONDIR)$/basic$/writer.png
+
+# add own targets to packing dependencies (need to be done before
+# packing the xtension
+EXTENSION_PACKDEPS=$(CONVERTER_FILE) $(COMPONENT_DIALOGS) makefile.mk $(CUSTOM_LICENSE)
+
+# global settings for extension packing
+.INCLUDE : extension_pre.mk
+.INCLUDE : target.mk
+# global targets for extension packing
+.INCLUDE : extension_post.mk
+
+# own targets
+$(CONVERTER_FILE) : $(SOLARBINDIR)$/$$(@:f)
+ @@-$(MKDIRHIER) $(@:d)
+ $(COPY) $< $@
+
+$(COMPONENT_DIALOGS) : dialogs$/$$(@:f)
+ @@-$(MKDIRHIER) $(@:d)
+ $(COPY) $< $@
+
+$(CUSTOM_LICENSE) : my_license.txt
+ @@-$(MKDIRHIER) $(@:d)
+ $(COPY) $< $@
+
diff --git a/solenv/inc/tg_app.mk b/solenv/inc/tg_app.mk
new file mode 100644
index 000000000000..cefdf14db033
--- /dev/null
+++ b/solenv/inc/tg_app.mk
@@ -0,0 +1,316 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#######################################################
+# instructions for linking
+# unroll begin
+
+.IF "$(GUI)" == "OS2" && "$(TARGETTYPE)" == "GUI"
+APP$(TNR)DEF = $(MISC)/$(APP$(TNR)TARGET).def
+.ENDIF
+
+.IF "$(APP$(TNR)LINKTYPE)" != ""
+#must be either STATIC or SHARED
+APP$(TNR)LINKTYPEFLAG=$(APPLINK$(APP$(TNR)LINKTYPE))
+.ENDIF
+
+# decide how to link
+.IF "$(APP$(TNR)CODETYPE)"=="C"
+APP$(TNR)LINKER=$(LINKC)
+APP$(TNR)STDLIB=$(subst,CPPRUNTIME, $(STDLIB))
+APP$(TNR)LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(APP$(TNR)CODETYPE)"=="C"
+APP$(TNR)LINKER=$(LINK)
+APP$(TNR)STDLIB=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDLIB))
+APP$(TNR)LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(APP$(TNR)CODETYPE)"=="C"
+
+APP$(TNR)RPATH*=OOO
+LINKFLAGSRUNPATH_$(APP$(TNR)RPATH)*=/ERROR:/Bad_APP$(TNR)RPATH_value
+.IF "$(OS)" != "MACOSX"
+APP$(TNR)LINKFLAGS+=$(LINKFLAGSRUNPATH_$(APP$(TNR)RPATH))
+.ENDIF
+
+.IF "$(APP$(TNR)STACK)" != ""
+.IF "$(LINKFLAGSTACK)" != ""
+APP$(TNR)STACKN=$(LINKFLAGSTACK)$(APP$(TNR)STACK)
+.ENDIF
+.ELSE
+APP$(TNR)STACKN=
+.ENDIF
+
+.IF "$(APP$(TNR)NOSAL)"==""
+.IF "$(TARGETTYPE)" == "GUI"
+APP$(TNR)OBJS+= $(STDOBJVCL)
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)$(COM)" == "WNTGCC"
+APP$(TNR)RESO=
+.IF "$(APP$(TNR)LINKRES)" != "" || "$(APP$(TNR)RES)" != ""
+APP$(TNR)RESO=$(MISC)/$(APP$(TNR)TARGET:b)_res.o
+.ENDIF
+.ENDIF
+
+.IF "$(GUI)" == "UNX"
+APP$(TNR)DEPN+:=$(APP$(TNR)DEPNU)
+USE_APP$(TNR)DEF=
+.ENDIF
+
+.IF "$(APP$(TNR)TARGETN)"!=""
+
+.IF "$(APP$(TNR)PRODUCTNAME)"!=""
+APP$(TNR)PRODUCTDEF+:=-DPRODUCT_NAME=\"$(APP$(TNR)PRODUCTNAME)\"
+.ENDIF # "$(APP$(TNR)PRODUCTNAME)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2"
+.IF "$(APP$(TNR)LIBS)"!=""
+$(MISC)/$(APP$(TNR)TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ sed -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(APP$(TNR)LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF #"$(APP$(TNR)LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(APP$(TNR)TARGETN:b)_linkinc.ls
+$(APP$(TNR)TARGETN) : $(LINKINCTARGETS)
+.ENDIF # "$(linkinc)"!=""
+
+# Allow for target specific LIBSALCPPRT override
+APP$(TNR)LIBSALCPPRT*=$(LIBSALCPPRT)
+
+.IF "$(GUI)" == "OS2"
+_APP$(TNR)IMP_ORD = $(APP$(TNR)STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(APP$(TNR)STDLIBS:^"$(LB)/")
+APP$(TNR)IMP_ORD = $(foreach,i,$(_APP$(TNR)IMP_ORD) $(shell @-ls $i))
+.ELSE
+APP$(TNR)IMP_ORD =
+.ENDIF
+
+$(APP$(TNR)TARGETN): $(APP$(TNR)OBJS) $(APP$(TNR)LIBS) \
+ $(APP$(TNR)RES) \
+ $(APP$(TNR)IMP_ORD) \
+ $(APP$(TNR)ICON) $(APP$(TNR)DEPN) $(USE_APP$(TNR)DEF)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ @-$(RM) $(MISC)/$(@:b).strip
+ @echo $(STDSLO) $(APP$(TNR)OBJS:s/.obj/.o/) \
+ `cat /dev/null $(APP$(TNR)LIBS) | sed s\#$(ROUT)\#$(OUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(APP$(TNR)LINKER) $(APP$(TNR)LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) -o $@ \
+ $(APP$(TNR)LINKTYPEFLAG) $(APP$(TNR)STDLIBS) $(APP$(TNR)STDLIB) $(STDLIB$(TNR)) -filelist $(MISC)/$(@:b).list > $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+# Need to strip __objcInit symbol to avoid duplicate symbols when loading
+# libraries at runtime
+ @-nm $@ | grep -v ' U ' | $(AWK) '{ print $$NF }' | grep -F -x '__objcInit' > $(MISC)/$(@:b).strip
+ @strip -i -R $(MISC)/$(@:b).strip -X $@
+ @ls -l $@
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ app $(APP$(TNR)RPATH) $@
+.IF "$(TARGETTYPE)"=="GUI"
+ @echo "Making: " $(@:f).app
+ @macosx-create-bundle $@
+.ENDIF # "$(TARGETTYPE)"=="GUI"
+.ELSE # "$(OS)"=="MACOSX"
+ @echo unx
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ @echo $(APP$(TNR)LINKER) $(APP$(TNR)LINKFLAGS) $(LINKFLAGSAPP) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP$(TNR)OBJS:s/.obj/.o/) '\' > $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ @cat $(mktmp /dev/null $(APP$(TNR)LIBS)) | xargs -n 1 cat | sed s\#$(ROUT)\#$(OUT)\#g | sed 's#$$# \\#' >> $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ @echo $(APP$(TNR)LINKTYPEFLAG) $(APP$(TNR)LIBSALCPPRT) $(APP$(TNR)STDLIBS) $(APP$(TNR)STDLIB) $(STDLIB$(TNR)) -o $@ >> $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+ .ENDIF
+.ENDIF # "$(OS)"=="MACOSX"
+.ENDIF
+.IF "$(GUI)" == "WNT"
+ @@-$(MKDIR) $(@:d:d)
+.IF "$(APP$(TNR)LINKRES)" != ""
+ @@-$(RM) $(MISC)/$(APP$(TNR)LINKRES:b).rc
+.IF "$(APP$(TNR)ICON)" != ""
+ @-echo 1 ICON $(EMQ)"$(APP$(TNR)ICON:s/\/\\/)$(EMQ)" >> $(MISC)/$(APP$(TNR)LINKRES:b).rc
+.ENDIF # "$(APP$(TNR)ICON)" != ""
+.IF "$(APP$(TNR)VERINFO)" != ""
+ @-echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP$(TNR)LINKRES:b).rc
+ @-echo $(EMQ)#include $(EMQ)"$(APP$(TNR)VERINFO)$(EMQ)" >> $(MISC)/$(APP$(TNR)LINKRES:b).rc
+.ENDIF # "$(APP$(TNR)VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(APP$(TNR)PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP$(TNR)LINKRES:b).rc
+.ENDIF # "$(APP$(TNR)LINKRES)" != ""
+.IF "$(COM)" == "GCC"
+ @echo mingw
+.IF "$(APP$(TNR)LINKRES)" != "" || "$(APP$(TNR)RES)" != ""
+ @cat $(APP$(TNR)LINKRES) $(subst,/res/,/res{$(subst,$(BIN), $(@:d))} $(APP$(TNR)RES)) > $(MISC)/$(@:b)_all.res
+ windres $(MISC)/$(@:b)_all.res $(APP$(TNR)RESO)
+.ENDIF
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSAPP) $(MINGWSSTDOBJ) -L$(PRJ)/$(INPATH)/lib $(SOLARLIB) $(STDSLO) \
+ $(APP$(TNR)BASEX) $(APP$(TNR)STACKN) -o $@ $(APP$(TNR)OBJS) \
+ -Wl,-Map,$(MISC)/$(@:b).map $(STDOBJ) $(APP$(TNR)RESO) \
+ `$(TYPE) /dev/null $(APP$(TNR)LIBS) | sed s#$(ROUT)#$(OUT)#g` \
+ $(APP_LINKTYPE) $(APP$(TNR)LIBSALCPPRT) \
+ -Wl,--start-group $(APP$(TNR)STDLIBS) -Wl,--end-group $(APP$(TNR)STDLIB) \
+ $(STDLIB$(TNR)) $(MINGWSSTDENDOBJ) > $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ # need this empty line, else dmake somehow gets confused by the .IFs and .ENDIFs
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ @ls -l $@
+.ELSE # "$(COM)" == "GCC"
+.IF "$(linkinc)" == ""
+ $(COMMAND_ECHO)$(APP$(TNR)LINKER) @$(mktmp \
+ $(APP$(TNR)LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP$(TNR)BASEX) \
+ $(APP$(TNR)STACKN) \
+ -out:$@ \
+ -map:$(MISC)/{$(subst,/,_ $(APP$(TNR)TARGET)).map} \
+ $(STDOBJ) \
+ $(APP$(TNR)LINKRES) \
+ $(APP$(TNR)RES) \
+ $(APP$(TNR)OBJS) \
+ $(APP$(TNR)LIBS) \
+ $(APP$(TNR)STDLIBS) \
+ $(APP$(TNR)STDLIB) $(STDLIB$(TNR)) \
+ )
+ @-echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);1 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);1 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP$(TNR)TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)\$(APP$(TNR)TARGET).lst
+ $(COMMAND_ECHO)-$(RM) $(MISC)\linkobj.lst
+ for %_i in ($(MISC)\*.obj) do type %_i >> $(MISC)\linkobj.lst
+ type $(mktmp,$(MISC)\$(APP$(TNR)TARGET).lst
+ $(APP$(TNR)LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP$(TNR)BASEX) \
+ $(APP$(TNR)STACKN) \
+ -out:$@ \
+ $(STDOBJ) \
+ $(APP$(TNR)LINKRES) \
+ $(APP$(TNR)RES) \
+ $(APP$(TNR)OBJS) \
+ $(APP$(TNR)LIBS) \
+ $(APP$(TNR)STDLIBS) \
+ $(APP$(TNR)STDLIB) $(STDLIB$(TNR)))
+ $(COMMAND_ECHO)$(SED)$(SED) -e 's/\(\.\.\\\)\{2,4\}/..\\/g' $(MISC)\$(APP$(TNR)TARGETN:b)_linkobj.lst >> $(MISC)\$(APP$(TNR)TARGET).lst
+ $(COMMAND_ECHO)$(SED)$(IFEXIST) $(MISC)/$(APP$(TNR)TARGET).lst $(THEN) type $(MISC)/$(APP$(TNR)TARGET).lst >> $(MISC)/$(APP$(TNR)TARGET).lnk $(FI)
+ $(COMMAND_ECHO)$(SED)$(APP$(TNR)LINKER) @$(MISC)\$(APP$(TNR)TARGET).lnk
+.ENDIF # "$(linkinc)" == ""
+.ENDIF # "$(COM)" == "GCC"
+.IF "$(APP$(TNR)TARGET)" == "loader"
+ $(COMMAND_ECHO)$(PERL) loader.pl $@
+ $(COMMAND_ECHO)$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "WNT"
+
+.IF "$(GUI)" == "OS2"
+ @+-$(MKDIR) $(@:d:d) >& $(NULLDEV)
+.IF "$(APP$(TNR)LINKRES)" != ""
+ @+-$(RM) $(MISC)/$(APP$(TNR)LINKRES:b).rc >& $(NULLDEV)
+.IF "$(APP$(TNR)ICON)" != ""
+ @-+$(WRAPCMD) echo 1 ICON $(EMQ)"$(APP$(TNR)ICON)$(EMQ)" | $(SED) 'sX\\X\\\\Xg' >> $(MISC)/$(APP$(TNR)LINKRES:b).rc
+.ENDIF # "$(APP$(TNR)ICON)" != ""
+.IF "$(APP$(TNR)VERINFO)" != ""
+ @-+echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(APP$(TNR)LINKRES:b).rc
+ @-+echo $(EMQ)#include $(EMQ)"$(APP$(TNR)VERINFO)$(EMQ)" >> $(MISC)/$(APP$(TNR)LINKRES:b).rc
+.ENDIF # "$(APP$(TNR)VERINFO)" != ""
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(APP$(TNR)PRODUCTDEF) -I$(SOLARRESDIR) $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(APP$(TNR)LINKRES:b).rc
+.ENDIF # "$(APP$(TNR)LINKRES)" != ""
+
+.IF "$(TARGETTYPE)" == "GUI"
+ @echo NAME $(APP$(TNR)TARGET) WINDOWAPI > $(MISC)/$(APP$(TNR)TARGET).def
+.ENDIF
+
+ .IF "$(VERBOSE)" == "TRUE"
+ @+echo $(APP$(TNR)LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP$(TNR)BASEX) \
+ $(APP$(TNR)STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP$(TNR)LINKRES) \
+ $(APP$(TNR)RES) \
+ $(APP$(TNR)DEF) \
+ $(APP$(TNR)OBJS) \
+ $(APP$(TNR)LIBS) \
+ $(APP$(TNR)STDLIBS:^"-l") \
+ $(APP$(TNR)STDLIB:^"-l") $(STDLIB$(TNR):^"-l")
+ .ENDIF
+ $(COMMAND_ECHO)$(APP$(TNR)LINKER) -v \
+ $(APP$(TNR)LINKFLAGS) \
+ $(LINKFLAGSAPP) $(APP$(TNR)BASEX) \
+ $(APP$(TNR)STACKN) \
+ -o $@ \
+ -Zmap -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(STDOBJ) \
+ $(APP$(TNR)LINKRES) \
+ $(APP$(TNR)RES) \
+ $(APP$(TNR)DEF) \
+ $(APP$(TNR)OBJS) \
+ $(APP$(TNR)LIBS) \
+ $(APP$(TNR)STDLIBS:^"-l") \
+ $(APP$(TNR)STDLIB:^"-l") $(STDLIB$(TNR):^"-l")
+
+
+.IF "$(APP$(TNR)TARGET)" == "loader"
+ $(COMMAND_ECHO)+$(PERL) loader.pl $@
+ $(COMMAND_ECHO)+$(TYPE) $(@) $(@:d)unloader.exe > $(@:d)_new.exe
+ $(COMMAND_ECHO)+$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $(@:d)_new.exe $(@:d)loader.exe
+.ENDIF # "$(TARGET)" == "setup"
+
+.ENDIF # "$(GUI)" == "OS2"
+
+.ENDIF # "$(APP$(TNR)TARGETN)"!=""
+
+
+# Instruction for linking
+# unroll end
+#######################################################
+
diff --git a/solenv/inc/tg_compv.mk b/solenv/inc/tg_compv.mk
new file mode 100644
index 000000000000..c68ae5af430e
--- /dev/null
+++ b/solenv/inc/tg_compv.mk
@@ -0,0 +1,158 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+COMPVERMK:=$(SOLARINCDIR)/comp_ver.mk
+
+.INCLUDE .IGNORE : $(COMPVERMK)
+
+.IF "$(COMNAME)"=="" || "$(COMPATH:s!\!/!)"!="$(COMPATH_STORED)"
+.IF "$(L10N_framework)"==""
+
+COMNAME:=
+
+.IF "$(COM)"=="GCC"
+CFLAGSVERSION=-dumpversion
+CFLAGSVERSION_CMD=-dumpversion
+CFLAGSNUMVERSION_CMD=-dumpversion $(PIPEERROR) $(AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk
+#CFLAGSNUMVERSION_CMD=-dumpversion | 2>&1 $(AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk
+.ENDIF
+
+.IF "$(COM)"=="MSC"
+CFLAGSVERSION=
+CFLAGSVERSION_CMD= $(PIPEERROR) $(AWK) -f $(SOLARENV)/bin/getcompver.awk
+CFLAGSNUMVERSION_CMD= $(PIPEERROR) $(AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk
+.ENDIF
+
+.IF "$(COM)"=="C55" || "$(COM)"=="C54" || "$(COM)"=="C52" || "$(COM)"=="C40" || "$(COM)"=="sunpro"
+CFLAGSVERSION= -V
+CFLAGSVERSION_CMD= -V $(PIPEERROR) $(AWK) -f $(SOLARENV)/bin/getcompver.awk
+CFLAGSNUMVERSION_CMD= -V $(PIPEERROR) $(AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk
+.ENDIF
+
+.IF "$(COM)"=="C730"
+CFLAGSVERSION= -version
+CFLAGSVERSION_CMD= -version |& cut -d" " -f4-
+CFLAGSNUMVERSION_CMD= -version |& cut -d" " -f4-
+.ENDIF
+
+# that's the version known by the specific
+# compiler
+CCVER:=$(shell @-$(CXX) $(CFLAGSVERSION_CMD))
+
+# and a computed integer for comparing
+# each point seperated token blown up to 4 digits
+CCNUMVER:=$(shell @-$(CXX) $(CFLAGSNUMVERSION_CMD))
+
+.IF "$(COM)"=="MSC"
+.IF "$(CCNUMVER)">="001200000000"
+COMID=MSC
+COMNAME=msci
+.ENDIF
+.ENDIF
+
+.IF "$(COM)"=="GCC"
+
+SHORTSTDCPP3:=
+SHORTSTDC3:="1"
+
+.IF "$(CCNUMVER)">="000200910000"
+COMID=GCC
+COMNAME=gcc2
+.ENDIF
+
+.IF "$(CCNUMVER)">="000300000001"
+
+COMID=gcc3
+COMNAME=gcc3
+
+.IF "$(CCNUMVER)">="000300000001"
+SHORTSTDCPP3="3"
+.ENDIF
+
+.IF "$(CCNUMVER)">="000300010000"
+SHORTSTDCPP3="4"
+.ENDIF
+
+.IF "$(CCNUMVER)">="000300020000"
+SHORTSTDCPP3="5"
+.ENDIF
+
+.IF "$(CCNUMVER)">="000300040000"
+.IF "$(OS)$(CPU)" == "LINUX6" || "$(OS)$(CPU)" == "LINUXH"
+#for gcc >= 3.4.0 on m68k-linux this is libgcc_s.so.2.
+#for gcc >= 3.4.0 < 4.2.0 on hppa-linux this is libgcc_s.so.2.
+SHORTSTDC3:="2"
+.ENDIF
+SHORTSTDCPP3="6"
+.ENDIF
+
+.IF "$(CCNUMVER)">="000400020000"
+.IF "$(OS)$(CPU)" == "LINUXH"
+#for gcc >= 4.2.0 on hppa-linux this is libgcc_s.so.4.
+SHORTSTDC3:="4"
+.ENDIF
+SHORTSTDCPP3="6"
+.ENDIF
+
+.ENDIF
+.ENDIF
+
+.IF "$(COM)"=="C55" || "$(COM)" == "C54" || "$(COM)"=="C52" || "$(COM)"=="C40" || "$(COM)"=="sunpro"
+.IF "$(CCNUMVER)">="00050002"
+COMID=C52
+COMNAME=sunpro5
+.ENDIF
+.ENDIF
+
+.IF "$(COM)"=="C730"
+COMID=C730
+COMNAME=MipsPro
+.ENDIF
+
+.IF "$(COMNAME)"==""
+
+# "EXCEPTIONSFILES" get compiled before this, but shouldn't
+# appear in the first n modules.
+
+compiler_version_error:
+ @echo ++++++++++++++++++++++++++++++++++++
+ @echo ERROR!
+ @echo Could not detect compiler version!
+ @echo Please extend tg_compv.mk in
+ @echo "solenv/inc".
+ @echo ++++++++++++++++++++++++++++++++++++
+ @echo "$(CXX) $(CFLAGSVERSION)" returns
+ @$(CXX) $(CFLAGSVERSION)
+ @echo ++++++++++++++++++++++++++++++++++++
+ force_dmake_to_error
+
+.ENDIF # "$(COMNAME)"==""
+
+CDEFS+=-DCPPU_ENV=$(COMNAME)
+
+.ENDIF # "$(L10N_framework)"==""
+.ENDIF # "$(COMNAME)"==""
diff --git a/solenv/inc/tg_config.mk b/solenv/inc/tg_config.mk
new file mode 100644
index 000000000000..cfe2fe147ebe
--- /dev/null
+++ b/solenv/inc/tg_config.mk
@@ -0,0 +1,203 @@
+#************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PACKAGEDIR*:=$(subst,.,/ $(PACKAGE))
+XSLTPACKAGEDIR*:=$(subst,.,/ $(PACKAGE))
+XCSROOTURL!:=$(ABSXCSROOT)
+.IF $(GUI)==WNT
+XCSROOTURL!:=file:///$(subst,\,/ $(XCSROOTURL))
+.ENDIF
+SYSXSLDIR*:=$(XSLDIR)/
+.IF $(GUI)==OS2
+XCSROOTURL!:=$(subst,\,/ $(XCSROOTURL))
+SYSXSLDIR!:=$(subst,\,/ $(SYSXSLDIR))/
+.ENDIF
+
+#
+# --- XCS ---
+#
+
+.IF "$(XCSFILES)"!=""
+# remove unnecessary info from the component schemas
+XCS_TRIM=$(PROCESSOUT)/registry/schema/$(PACKAGEDIR)/{$(XCSFILES)}
+
+# transform xcs format to properties format
+# XCS_RESOURCES=$(foreach,i,$(XCSFILES) $(MISC)/registry/res/{$(alllangiso)}/$(PACKAGEDIR)/$(i:b).properties)
+
+ALLTAR: \
+ $(XCS_TRIM)
+.ENDIF # "$(XCSFILES)"!=""
+
+.IF "$(XCS_TRIM)" != ""
+$(XCS_TRIM) : $(DTDDIR)/registry/component-schema.dtd \
+ $(XSLDIR)/schema_val.xsl \
+ $(XSLDIR)/sanity.xsl \
+ $(XSLDIR)/schema_trim.xsl
+.ENDIF
+
+$(PROCESSOUT)/registry/schema/$(PACKAGEDIR)/%.xcs : %.xcs
+ @echo "Making: " $(@:f)
+.IF "$(VERBOSE)" != "FALSE"
+ @echo --- validating and stripping schema files
+.ENDIF
+ @-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)$(XSLTPROC) --nonet -o $(normpath $(subst,$(PATH_IN_MODULE), $(PWD))/$(subst,$(PRJ), $(@:d))$*.val) \
+ --stringparam componentName $(PACKAGE).$* \
+ $(SYSXSLDIR)schema_val.xsl $<
+ $(COMMAND_ECHO)$(XSLTPROC) --nonet -o $(normpath $(subst,$(PATH_IN_MODULE), $(PWD))/$(subst,$(PRJ), $(@:d))$*.san) \
+ $(SYSXSLDIR)sanity.xsl $<
+ $(COMMAND_ECHO)$(XSLTPROC) --nonet -o $(normpath $(subst,$(PATH_IN_MODULE), $(PWD))/$(subst,$(PRJ), $@)) \
+ $(SYSXSLDIR)schema_trim.xsl $<
+ @+-$(RM) $(@:d)$*.val > $(NULLDEV)
+ @+-$(RM) $(@:d)$*.san > $(NULLDEV)
+
+$(PROCESSOUT)/merge/$(PACKAGEDIR)/%.xcs : %.xcs
+# just a copy for now - insert "cfgex" commandline when required
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+# Create properties files for localized <info> contents (Currently not built)
+.IF "$(XCS_RESOURCES)" != ""
+$(XCS_RESOURCES) : $(XSLDIR)/resource.xsl
+.ENDIF
+
+$(PROCESSOUT)/registry/res/{$(alllangiso)}/$(PACKAGEDIR)/%.properties :| $(PROCESSOUT)/merge/$(PACKAGEDIR)/%.xcs
+ @echo "Making: " $(@:f)
+.IF "$(VERBOSE)" != "FALSE"
+ @echo --- creating locale dependent resource bundles
+.ENDIF
+ @-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)$(XSLTPROC) --nonet -o $(normpath $(subst,$(PATH_IN_MODULE), $(PWD))/$(subst,$(PRJ), $@)) \
+ --stringparam locale {$(subst,/$(PACKAGEDIR)/$(@:f), $(subst,$(PROCESSOUT)/registry/res/, $@))} \
+ $(SYSXSLDIR)resource.xsl $<
+
+#
+# --- XCU ---
+#
+
+.IF "$(XCUFILES)"!=""
+XCU_DEFAULT =$(PROCESSOUT)/registry/data/$(PACKAGEDIR)/{$(XCUFILES)}
+XCU_MODULES =$(foreach,i,$(MODULEFILES) $(PROCESSOUT)/registry/spool/$(PACKAGEDIR)/$(i))
+XCU_LANG =$(foreach,i,$(LOCALIZEDFILES) $(PROCESSOUT)/registry/res/{$(alllangiso)}/$(PACKAGEDIR)/$(i))
+.ENDIF # "$(XCUFILES)"!=""
+
+.IF "$(XCU_DEFAULT)" != ""
+$(XCU_DEFAULT) : $(DTDDIR)/registry/component-update.dtd \
+ $(XSLDIR)/data_val.xsl \
+ $(XSLDIR)/alllang.xsl
+.ENDIF
+
+$(PROCESSOUT)/registry/data/$(PACKAGEDIR)/%.xcu : %.xcu
+ @echo "Making: " $(@:f)
+.IF "$(VERBOSE)" != "FALSE"
+ @echo --- validating and creating a locale independent file
+.ENDIF
+ @-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)$(XSLTPROC) --nonet -o $(normpath $(subst,$(PATH_IN_MODULE), $(PWD))/$(subst,$(PRJ), $(@:d))$*.val) \
+ --stringparam xcs $(XCSROOTURL)/registry/schema/$(XSLTPACKAGEDIR)/$*.xcs \
+ --stringparam schemaRoot $(XCSROOTURL)/registry/schema \
+ --path $(DTDDIR)/registry \
+ $(SYSXSLDIR)data_val.xsl $<
+ $(COMMAND_ECHO)$(XSLTPROC) --nonet -o $(normpath $(subst,$(PATH_IN_MODULE), $(PWD))/$(subst,$(PRJ), $@)) \
+ --stringparam xcs $(XCSROOTURL)/registry/schema/$(XSLTPACKAGEDIR)/$*.xcs \
+ --stringparam schemaRoot $(XCSROOTURL)/registry/schema \
+ --path $(DTDDIR)/registry \
+ $(SYSXSLDIR)alllang.xsl $<
+ @+-$(RM) $(@:d)$*.val > $(NULLDEV)
+
+# --- localizations ---
+.IF "$(WITH_LANG)"!=""
+.IF "$(XCU_LANG)"!=""
+$(XCU_LANG) : $(LOCALIZESDF)
+.ENDIF # "$(XCU_LANG)"!=""
+
+$(PROCESSOUT)/merge/$(PACKAGEDIR)/%.xcu : %.xcu
+ @-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)$(CFGEX) -p $(PRJNAME) -i $(@:f) -o $@ -m $(LOCALIZESDF) -l all
+
+.IF "$(XCU_LANG)" != ""
+$(XCU_LANG) : $(XSLDIR)/alllang.xsl
+.ENDIF
+
+$(PROCESSOUT)/registry/res/{$(alllangiso)}/$(PACKAGEDIR)/%.xcu :| $(PROCESSOUT)/merge/$(PACKAGEDIR)/%.xcu
+.ELSE # "$(WITH_LANG)"!=""
+$(PROCESSOUT)/registry/res/{$(alllangiso)}/$(PACKAGEDIR)/%.xcu :| %.xcu
+.ENDIF # "$(WITH_LANG)"!=""
+ @echo "Making: " $(@:f)
+.IF "$(VERBOSE)" != "FALSE"
+ @echo --- creating locale dependent entries
+.ENDIF
+ @-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)$(XSLTPROC) --nonet -o $(normpath $(subst,$(PATH_IN_MODULE), $(PWD))/$(subst,$(PRJ), $@)) \
+ --stringparam xcs $(XCSROOTURL)/registry/schema/$(XSLTPACKAGEDIR)/$*.xcs \
+ --stringparam schemaRoot $(XCSROOTURL)/registry/schema \
+ --stringparam locale {$(subst,/$(PACKAGEDIR)/$(@:f), $(subst,$(PROCESSOUT)/registry/res/, $@))} \
+ --path $(DTDDIR)/registry \
+ $(SYSXSLDIR)alllang.xsl $<
+
+# --- languagepack tag modules ---
+.IF "$(LANGUAGEPACKS)" != ""
+$(LANGUAGEPACKS) : $(XSLDIR)/delcomment.sed
+.ENDIF
+
+
+$(PROCESSOUT)/registry/spool/Langpack-%.xcu : Langpack.xcu.tmpl
+.IF "$(VERBOSE)" != "FALSE"
+ @echo --- creating a Langpack module for locale $*
+.ENDIF
+ -$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)$(SED) -e "s/__LANGUAGE__/$*/" -f $(XSLDIR)/delcomment.sed $< > $@
+
+
+# --- modules ---
+.IF "$(XCU_MODULES)" != ""
+$(XCU_MODULES) : $(XSLDIR)/alllang.xsl
+.ENDIF
+
+
+$(PROCESSOUT)/registry/spool/$(PACKAGEDIR)/%.xcu :| $$(@:b:s/-/./:b).xcu
+ @echo "Making: " $(@:f)
+.IF "$(VERBOSE)" != "FALSE"
+ @echo --- creating a module file
+.ENDIF
+ @-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)$(XSLTPROC) --nonet -o $(normpath $(subst,$(PATH_IN_MODULE), $(PWD))/$(subst,$(PRJ), $@)) \
+ --stringparam xcs $(XCSROOTURL)/registry/schema/$(XSLTPACKAGEDIR)/$(<:b).xcs \
+ --stringparam schemaRoot $(XCSROOTURL)/registry/schema \
+ --stringparam module $(subst,$(<:b)-, $(*)) \
+ $(SYSXSLDIR)alllang.xsl $<
+
+.IF "$(XCUFILES)"!=""
+ALLTAR: \
+ $(XCU_DEFAULT) \
+ $(XCU_MODULES) \
+ $(XCU_LANG)
+
+$(XCU_DEFAULT) : $$(@:d:s!$(PROCESSOUT)/registry/data/!$(ABSXCSROOT)/registry/schema/!)$$(@:f:s/.xcu/.xcs/)
+
+.ENDIF # "$(XCUFILES)"!=""
+
diff --git a/solenv/inc/tg_def.mk b/solenv/inc/tg_def.mk
new file mode 100644
index 000000000000..0bbd1f6b1ab1
--- /dev/null
+++ b/solenv/inc/tg_def.mk
@@ -0,0 +1,313 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#######################################################
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(DEF$(TNR)TARGETN)"!=""
+
+#to make intuitiv naming work
+.IF "$(DEF$(TNR)LIBNAME)"!=""
+DEFLIB$(TNR)NAME*=$(DEF$(TNR)LIBNAME)
+.ENDIF # "$(DEF$(TNR)LIBNAME)"!=""
+
+.IF "$(DEFLIB$(TNR)NAME)"!=""
+DEF$(TNR)DEPN+=$(foreach,i,$(DEFLIB$(TNR)NAME) $(SLB)/$(i).lib)
+.ENDIF
+
+.IF "$(SHL$(TNR)VERSIONMAP)"!=""
+.IF "$(DEF$(TNR)EXPORTFILE)"==""
+.IF "$(GUI)"=="WNT"
+DEF$(TNR)EXPORTFILE=$(MISC)/$(SHL$(TNR)VERSIONMAP:b)_$(SHL$(TNR)TARGET).dxp
+.IF "$(COM)"=="GCC"
+$(DEF$(TNR)EXPORTFILE) : $(SHL$(TNR)OBJS) $(SHL$(TNR)LIBS)
+.ENDIF # .IF "$(COM)"=="GCC"
+
+$(DEF$(TNR)EXPORTFILE) : $(SHL$(TNR)VERSIONMAP)
+ $(COMMAND_ECHO)$(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)-$(GREP) -v "\*\|?" $@ | $(SED) -e 's@#.*@@' > $@.exported-symbols
+ $(COMMAND_ECHO)-$(GREP) "\*\|?" $@ > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+ $(COMMAND_ECHO)nm -gP $(SHL$(TNR)OBJS) \
+ `$(TYPE) /dev/null $(foreach,j,$(SHL$(TNR)LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)$/$(ROUT)\#g` \
+ | $(SOLARENV)/bin/addsym-mingw.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ $(COMMAND_ECHO)$(RENAME) $@.exported-symbols $@
+.ENDIF # .IF "$(COM)"=="GCC"
+
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+DEF$(TNR)EXPORTFILE=$(MISC)/$(SHL$(TNR)VERSIONMAP:b)_$(SHL$(TNR)TARGET).dxp
+$(DEF$(TNR)EXPORTFILE) : $(SHL$(TNR)VERSIONMAP)
+ $(TYPE) $< | $(AWK) -f $(SOLARENV)/bin/getcsym.awk > $@
+.ENDIF # "$(GUI)"=="OS2"
+
+.ENDIF # "$(DEF$(TNR)EXPORTFILE)"==""
+.ENDIF # "$(SHL$(TNR)VERSIONMAP)"!=""
+
+.IF "$(GUI)"=="WNT"
+
+DEF$(TNR)FILTER=$(SOLARENV)/inc/dummy.flt
+
+RMHACK$(TNR):=$(RM)
+
+.IF "$(DEF$(TNR)CEXP)"!=""
+EXPORT_ALL_SWITCH=-A $(DEF$(TNR)CEXP)
+.ENDIF
+
+.IF "$(link_always)"==""
+$(DEF$(TNR)TARGETN) : \
+ $(DEF$(TNR)DEPN) \
+ $(DEF$(TNR)EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF$(TNR)TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(EMQ)"$(SHL$(TNR)TARGETN:f)$(EMQ)" >$@.tmpfile
+.IF "$(COM)"!="GCC"
+ @echo HEAPSIZE 0 >>$@.tmpfile
+.ENDIF
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.ENDIF
+.IF "$(DEFLIB$(TNR)NAME)"!=""
+.IF "$(COM)"=="GCC"
+ @-$(RM) $(MISC)/$(SHL$(TNR)TARGET).exp
+ $(COMMAND_ECHO)dlltool --output-def $(MISC)/$(SHL$(TNR)TARGET).exp --export-all-symbols \
+ `$(TYPE) $(foreach,i,$(DEFLIB$(TNR)NAME) $(SLB)/$(i).lib) | sed s#$(ROUT)#$(PRJ)/$(ROUT)#g`
+ $(COMMAND_ECHO)tail --lines +3 $(MISC)/$(SHL$(TNR)TARGET).exp | sed '/^;/d' >>$@.tmpfile
+ @-$(RM) $(MISC)/$(SHL$(TNR)TARGET).exp
+.ELSE
+.IF "$(SHL$(TNR)USE_EXPORTS)"==""
+ @-$(RMHACK$(TNR)) $(MISC)/$(SHL$(TNR)TARGET).exp
+ @$(LIBMGR) -EXTRACT:/ /OUT:$(MISC)/$(SHL$(TNR)TARGET).exp $(SLB)/$(DEFLIB$(TNR)NAME).lib
+ @$(LDUMP2) -N $(EXPORT_ALL_SWITCH) -F $(MISC)/$(SHL$(TNR)TARGET).flt $(MISC)/$(SHL$(TNR)TARGET).exp >>$@.tmpfile
+ $(COMMAND_ECHO)$(RMHACK$(TNR)) $(MISC)/$(SHL$(TNR)TARGET).exp
+.ELSE # "$(SHL$(TNR)USE_EXPORTS)"==""
+ @$(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB$(TNR)NAME) $(SLB)/$(i).lib) | $(GREP) EXPORT: > $(MISC)/$(SHL$(TNR)TARGET).direct
+ @$(LDUMP2) -N -D $(EXPORT_ALL_SWITCH) -F $(DEF$(TNR)FILTER) $(MISC)/$(SHL$(TNR)TARGET).direct >>$@.tmpfile
+.ENDIF # "$(SHL$(TNR)USE_EXPORTS)"==""
+.ENDIF
+.ENDIF # "$(DEFLIB$(TNR)NAME)"!=""
+.IF "$(DEF$(TNR)EXPORT1)"!=""
+ @echo $(DEF$(TNR)EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT2)"!=""
+ @echo $(DEF$(TNR)EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT3)"!=""
+ @echo $(DEF$(TNR)EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT4)"!=""
+ @echo $(DEF$(TNR)EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT5)"!=""
+ @echo $(DEF$(TNR)EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT6)"!=""
+ @echo $(DEF$(TNR)EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT7)"!=""
+ @echo $(DEF$(TNR)EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT8)"!=""
+ @echo $(DEF$(TNR)EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT9)"!=""
+ @echo $(DEF$(TNR)EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT10)"!=""
+ @echo $(DEF$(TNR)EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT11)"!=""
+ @echo $(DEF$(TNR)EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT12)"!=""
+ @echo $(DEF$(TNR)EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT13)"!=""
+ @echo $(DEF$(TNR)EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT14)"!=""
+ @echo $(DEF$(TNR)EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT15)"!=""
+ @echo $(DEF$(TNR)EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT16)"!=""
+ @echo $(DEF$(TNR)EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT17)"!=""
+ @echo $(DEF$(TNR)EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT18)"!=""
+ @echo $(DEF$(TNR)EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT19)"!=""
+ @echo $(DEF$(TNR)EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT20)"!=""
+ @echo $(DEF$(TNR)EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORTFILE)"!=""
+.IF "$(COM)"=="GCC"
+ $(COMMAND_ECHO)$(TYPE) $(DEF$(TNR)EXPORTFILE) | sed -e s:PRIVATE:: >> $@.tmpfile
+.ELSE
+ $(COMMAND_ECHO)$(TYPE) $(DEF$(TNR)EXPORTFILE) >> $@.tmpfile
+.ENDIF
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL$(TNR)TARGET8=$(shell @fix_shl $(SHL$(TNR)TARGETN:f))
+
+DEF$(TNR)FILTER=$(SOLARENV)/inc/dummy.flt
+DEF$(TNR)NAMELIST=$(foreach,i,$(DEFLIB$(TNR)NAME) $(SLB)/$(i).lib)
+
+.IF "$(link_always)"==""
+$(DEF$(TNR)TARGETN) : \
+ $(DEF$(TNR)DEPN) \
+ $(DEF$(TNR)EXPORTFILE)
+.ELSE # "$(link_always)"==""
+$(DEF$(TNR)TARGETN) .PHONY :
+.ENDIF # "$(link_always)"==""
+ @+-$(RM) $@.tmpfile
+ @echo "Making: module definition file" $(@:f)
+ @echo LIBRARY $(SHL$(TNR)TARGET8) INITINSTANCE TERMINSTANCE >$@.tmpfile
+ @echo DATA MULTIPLE >>$@.tmpfile
+ @echo DESCRIPTION 'StarView 3.00 $(DEF$(TNR)DES) $(UPD) $(UPDMINOR)' >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+.IF "$(VERSIONOBJ)"!=""
+# getversioninfo fuer alle!!
+ @echo _GetVersionInfo >$@.tmp_ord
+.ENDIF
+
+.IF "$(DEFLIB$(TNR)NAME)"!=""
+ @+echo $(SLB)/$(DEFLIB$(TNR)NAME).lib
+ @+emxexpr $(DEF$(TNR)NAMELIST) | fix_exp_file >> $@.tmp_ord
+.ENDIF # "$(DEFLIB$(TNR)NAME)"!=""
+
+.IF "$(DEF$(TNR)EXPORT1)"!=""
+ @echo $(DEF$(TNR)EXPORT1) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT2)"!=""
+ @echo $(DEF$(TNR)EXPORT2) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT3)"!=""
+ @echo $(DEF$(TNR)EXPORT3) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT4)"!=""
+ @echo $(DEF$(TNR)EXPORT4) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT5)"!=""
+ @echo $(DEF$(TNR)EXPORT5) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT6)"!=""
+ @echo $(DEF$(TNR)EXPORT6) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT7)"!=""
+ @echo $(DEF$(TNR)EXPORT7) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT8)"!=""
+ @echo $(DEF$(TNR)EXPORT8) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT9)"!=""
+ @echo $(DEF$(TNR)EXPORT9) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT10)"!=""
+ @echo $(DEF$(TNR)EXPORT10) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT11)"!=""
+ @echo $(DEF$(TNR)EXPORT11) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT12)"!=""
+ @echo $(DEF$(TNR)EXPORT12) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT13)"!=""
+ @echo $(DEF$(TNR)EXPORT13) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT14)"!=""
+ @echo $(DEF$(TNR)EXPORT14) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT15)"!=""
+ @echo $(DEF$(TNR)EXPORT15) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT16)"!=""
+ @echo $(DEF$(TNR)EXPORT16) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT17)"!=""
+ @echo $(DEF$(TNR)EXPORT17) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT18)"!=""
+ @echo $(DEF$(TNR)EXPORT18) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT19)"!=""
+ @echo $(DEF$(TNR)EXPORT19) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORT20)"!=""
+ @echo $(DEF$(TNR)EXPORT20) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF$(TNR)EXPORTFILE)"!=""
+ @fix_def_file < $(DEF$(TNR)EXPORTFILE) >> $@.tmp_ord
+.ENDIF
+ @sort < $@.tmp_ord | uniq > $@.exptmpfile
+ @fix_def_ord < $@.exptmpfile >> $@.tmpfile
+ @+-$(RM) $@
+ $(COMMAND_ECHO)+$(RENAME) $@.tmpfile $@
+ @+-$(RM) $@.tmp_ord
+ @+-$(RM) $@.exptmpfile
+ $(COMMAND_ECHO)+$(IMPLIB) $(IMPLIBFLAGS) $(SHL$(TNR)IMPLIBN:s/.lib/.a/) $@
+ $(COMMAND_ECHO)+emxomf -o $(SHL$(TNR)IMPLIBN) $(SHL$(TNR)IMPLIBN:s/.lib/.a/)
+
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="UNX"
+$(DEF$(TNR)TARGETN): \
+ $(DEF$(TNR)DEPN) \
+ $(DEF$(TNR)EXPORTFILE)
+ @echo just a dummy for UNIX > $@
+.ENDIF
+.ENDIF # "$(DEF$(TNR)TARGETN)"!=""
+
+
+# Anweisungen fuer das Linken
+# unroll end
+#######################################################
+
diff --git a/solenv/inc/tg_dep.mk b/solenv/inc/tg_dep.mk
new file mode 100644
index 000000000000..37517e2f14b8
--- /dev/null
+++ b/solenv/inc/tg_dep.mk
@@ -0,0 +1,96 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+.IF "$(SLOFILES)$(OBJFILES)$(DEPOBJFILES)$(SRCFILES)$(SRC1FILES)$(SRC2FILES)$(SRC3FILES)$(RCFILES)$(HDBDEPNTARGET)$(IDLFILES)$(PARFILES)$(ZIP1TARGET)$(ZIP2TARGET)$(ZIP3TARGET)$(ZIP4TARGET)$(ZIP5TARGET)$(ZIP6TARGET)$(ZIP7TARGET)$(ZIP8TARGET)$(ZIP9TARGET)$(COMP1TYPELIST)$(COMP2TYPELIST)$(COMP3TYPELIST)$(COMP4TYPELIST)$(COMP5TYPELIST)$(COMP6TYPELIST)$(COMP7TYPELIST)$(COMP8TYPELIST)$(COMP9TYPELIST)"!=""
+ALLDEP .PHONY:
+ @-$(IFEXIST) $(SRS)/$(TARGET).*.dpr $(THEN) $(RM:s/+//) $(SRS)/$(TARGET).*.dpr >& $(NULLDEV) $(FI)
+ @@-$(RM) $(MISC)/$(TARGET).dpr
+ @@-$(RM) $(MISC)/$(TARGET).*.dprr
+ @@-$(RM) $(MISC)/$(TARGET).dpj
+ @@-$(RM) $(MISC)/$(TARGET).dpz
+ @@-$(RM) $(MISC)/$(COMP1TYPELIST).mk $(MISC)/$(COMP2TYPELIST).mk $(MISC)/$(COMP3TYPELIST).mk $(MISC)/$(COMP4TYPELIST).mk $(MISC)/$(COMP5TYPELIST).mk $(MISC)/$(COMP6TYPELIST).mk $(MISC)/$(COMP7TYPELIST).mk $(MISC)/$(COMP8TYPELIST).mk $(MISC)/$(COMP9TYPELIST).mk
+.IF "$(nodep)"==""
+.IF "$(DEPFILE_SLO)"!=""
+ @@-$(RM) $(DEPFILE_SLO)
+ $(foreach,i,$(all_local_slo) $(shell @$(MAKEDEPEND) @$(mktmp -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $i ) > $(MISC)/s_$(i:b).dpcc ))
+ $(foreach,i,$(all_misc_slo) $(shell @$(MAKEDEPEND) @$(mktmp -f - -p$(SLO) $(MKDEPFLAGS) $(CDEFS) $(CDEFSSLO) $(CDEFSMT) $i ) > $(MISC)/s_$(i:b).dpcc ))
+.ENDIF # "$(DEPFILE_SLO)"!=""
+.IF "$(DEPFILE_OBJ)"!=""
+ @@-$(RM) $(DEPFILE_OBJ)
+ $(foreach,i,$(all_local_obj) $(shell @$(MAKEDEPEND) @$(mktmp -f - -p$(OBJ) $(MKDEPFLAGS) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $i ) > $(MISC)/o_$(i:b).dpcc ))
+ $(foreach,i,$(all_misc_obj) $(shell @$(MAKEDEPEND) @$(mktmp -f - -p$(OBJ) $(MKDEPFLAGS) $(CDEFS) $(CDEFSOBJ) $(CDEFSMT) $i ) > $(MISC)/o_$(i:b).dpcc ))
+.ENDIF # "$(DEPFILE_OBJ)"!=""
+.ENDIF # "$(nodep)"==""
+.IF "$(DEPFILES)" != ""
+ echo xxx$(DEPFILES)xxx
+ @@-$(RM) $(DEPFILES)
+.ENDIF # "$(DEPFILES)" != ""
+
+
+ALLDPC: \
+ $(DEPFILES) \
+ $(RCFILES) \
+ $(IDLFILES) \
+ $(HDBDEPNTARGET)
+.IF "$(nodep)"!=""
+ @echo NOT-Making: Depend-Lists
+ @echo ttt: ppp > $(MISC)/$(TARGET).dpc
+.ELSE
+ @echo Making : Dependencies
+.IF "$(CFILES)$(CXXFILES)"!=""
+.IF "$(SLOFILES)$(OBJFILES)$(DEPOBJFILES)"==""
+ @echo ++++++++++++++++++++++++++++++++++++++++++++++++
+ @echo something is wrong!!
+ @echo source files but no obj
+ @echo ++++++++++++++++++++++++++++++++++++++++++++++++
+ force_dmake_to_error
+.ENDIF
+.ENDIF
+.IF "$(HDBDEPNTARGET)$(OBJFILES)$(SLOFILES)$(DEPOBJFILES)$(RCFILES)$(PARFILES)"!=""
+ @$(IFEXIST) $(MISC)/$(TARGET).dpj $(THEN) $(RM:s/+//) $(MISC)/$(TARGET).dpj >& $(NULLDEV) $(FI)
+ @$(IFEXIST) $(MISC)/genjava.mk $(THEN) $(RM:s/+//) $(MISC)/genjava.mk >& $(NULLDEV) $(FI)
+ $(TOUCH) $(MISC)/$(TARGET).dpc
+.IF "$($(SECOND_BUILD)_SLOFILES)"!=""
+ @$(TYPE) $(mktmp $(foreach,i,$($(SECOND_BUILD)_SLOFILES) $(i:d:^"\n")$(SECOND_BUILD)_$(i:f) : $i )) >> $(MISC)/$(TARGET).dpc
+.ENDIF
+.IF "$($(SECOND_BUILD)_OBJFILES)"!=""
+ @$(TYPE) $(mktmp $(foreach,i,$($(SECOND_BUILD)_OBJFILES) $(i:d:^"\n")$(SECOND_BUILD)_$(i:f) : $(i:d:s/obj/slo/)$(i:b).obj )) >> $(MISC)/$(TARGET).dpc
+.ENDIF
+.ELSE # "$(HDBDEPNTARGET)$(OBJFILES)$(SLOFILES)$(DEPOBJFILES)$(RCFILES)"!=""
+ @echo ttt: ppp > $(MISC)/$(TARGET).dpc
+.ENDIF # "$(HDBDEPNTARGET)$(OBJFILES)$(SLOFILES)$(DEPOBJFILES)$(RCFILES)"!=""
+.ENDIF # "$(nodep)"!=""
+.ELSE # anything requiring dependencies
+
+ALLDPC:
+ @echo $(EMQ)# > $(MISC)/$(TARGET).dpc
+
+ALLDEP:
+ @echo nothing to do here...
+
+.ENDIF
+
diff --git a/solenv/inc/tg_ext.mk b/solenv/inc/tg_ext.mk
new file mode 100644
index 000000000000..e19c7124d4a7
--- /dev/null
+++ b/solenv/inc/tg_ext.mk
@@ -0,0 +1,362 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+.EXPORT : CC CXX
+
+# setup INCLUDE variable for use by VC++
+.IF "$(GUI)$(COM)"=="WNTMSC"
+.IF "$(EXT_USE_STLPORT)"==""
+INCLUDE!:=. $(subst,/stl, $(SOLARINC))
+.ELSE # "$(EXT_USE_STLPORT)"==""
+INCLUDE!:=. $(SOLARINC)
+.ENDIF # "$(EXT_USE_STLPORT)"==""
+INCLUDE!:=$(INCLUDE:s/ -I/;/)
+.EXPORT : INCLUDE
+.ENDIF # "$(GUI)$(COM)"=="WNTMSC"
+
+.IF "$(OS)"=="MACOSX"
+LDFLAGS!:=$(EXTRA_LINKFLAGS) $(LDFLAGS)
+.EXPORT : LDFLAGS
+.ENDIF
+
+.IF "$(GUI)"=="WNT"
+PATH!:=.:$(SOLARBINDIR:^"/cygdrive/":s/://):$(PATH)
+.ELSE # "$(GUI)"=="WNT"
+PATH!:=.$(PATH_SEPERATOR)$(SOLARBINDIR)$(PATH_SEPERATOR)$(PATH)
+.ENDIF # "$(GUI)"=="WNT"
+.EXPORT : PATH
+
+#override
+PACKAGE_DIR=$(MISC)/build
+ABS_PACKAGE_DIR:=$(MAKEDIR)/$(MISC)/build
+
+#MUST match with PACKAGE_DIR
+BACK_PATH=../../../
+#MUST match with reference (currently MISC)
+MBACK_PATH=../../
+.IF "$(TARFILE_IS_FLAT)" != ""
+fake_root_dir=/$(TARFILE_NAME)
+#MUST match fake_root_dir in directory levels
+fake_back=../
+.ENDIF "$(TARFILE_IS_FLAT)" != ""
+
+TARFILE_LOCATION*=$(BACK_PATH)$(fake_back)download
+TARFILE_LOCATION2=$(eq,$(BACK_PATH)$(fake_back)download,$(TARFILE_LOCATION) $(PRJ)/download $(TARFILE_LOCATION))
+
+P_CONFIGURE_DIR=$(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$(CONFIGURE_DIR)
+P_BUILD_DIR=$(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$(BUILD_DIR)
+P_INSTALL_DIR=$(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$(BUILD_DIR)
+P_INSTALL_TARGET_DIR=$(MISC)/install
+
+.IF "$(PATCH_FILES)"=="none" || "$(PATCH_FILES)"==""
+NEW_PATCH_FILE_NAME:=$(TARFILE_NAME)
+.ELSE # "$(PATCH_FILES)"=="none" || "$(PATCH_FILES)"==""
+NEW_PATCH_FILE_NAME:=$(TARFILE_NAME)-newpatch-rename_me.patch
+PATCH_FILE_DEP:=$(PRJ)/$(PATH_IN_MODULE)/{$(PATCH_FILES)}
+.ENDIF # "$(PATCH_FILES)"=="none" || "$(PATCH_FILES)"==""
+
+unzip_quiet_switch:=-qq
+.IF "$(VERBOSE)"=="TRUE"
+tar_verbose_switch=v
+unzip_quiet_switch:=
+.ENDIF # "$(VERBOSE)"=="TRUE"
+
+.IF "$(ADDITIONAL_FILES)"!=""
+P_ADDITIONAL_FILES=$(foreach,i,$(ADDITIONAL_FILES) $(MISC)/$(TARFILE_ROOTDIR)/$i)
+T_ADDITIONAL_FILES=$(foreach,i,$(ADDITIONAL_FILES) $(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$i)
+.ENDIF # "$(ADDITIONAL_FILES)"!=""
+
+EXTRPATH*=OOO
+
+.IF "$(L10N_framework)"==""
+
+ALLTAR : \
+ $(PACKAGE_DIR)/$(UNTAR_FLAG_FILE) \
+ $(PACKAGE_DIR)/$(BUILD_FLAG_FILE) \
+ $(PACKAGE_DIR)/$(INSTALL_FLAG_FILE) \
+ $(PACKAGE_DIR)/$(CONFIGURE_FLAG_FILE) \
+ $(PACKAGE_DIR)/$(ADD_FILES_FLAG_FILE) \
+ $(PACKAGE_DIR)/$(PATCH_FLAG_FILE) \
+ $(PACKAGE_DIR)/$(PREDELIVER_FLAG_FILE)
+
+clean:
+ $(COMMAND_ECHO)cd $(P_BUILD_DIR) && $(BUILD_ACTION) $(BUILD_FLAGS) clean
+ $(COMMAND_ECHO)$(RM) $(PACKAGE_DIR)/$(BUILD_FLAG_FILE)
+
+$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.tar.bz2
+ @-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @noop $(assign UNPACKCMD := sh -c "bzip2 -cd $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.bz2 $(TARFILE_FILTER) | $(GNUTAR) -x$(tar_verbose_switch)f - ")
+.ELSE # "$(GUI)"=="UNX"
+ @noop $(assign UNPACKCMD := bzip2 -cd $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.bz2 $(TARFILE_FILTER) | $(GNUTAR) -x$(tar_verbose_switch)f - )
+.ENDIF # "$(GUI)"=="UNX"
+ @$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
+ @$(RENAME) $@.$(INPATH) $@
+
+$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.tar.Z
+ @-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @noop $(assign UNPACKCMD := sh -c "uncompress -c $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.Z | $(GNUTAR) -x$(tar_verbose_switch)f - ")
+.ELSE # "$(GUI)"=="UNX"
+ @noop $(assign UNPACKCMD := uncompress -c $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.Z | $(GNUTAR) -x$(tar_verbose_switch)f - )
+.ENDIF # "$(GUI)"=="UNX"
+ @$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
+ @$(RENAME) $@.$(INPATH) $@
+
+$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.tar.gz
+ @-$(RM) $@
+ @noop $(assign UNPACKCMD := gzip -d -c $(subst,\,/ $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.gz) $(TARFILE_FILTER) | $(GNUTAR) -x$(tar_verbose_switch)f - )
+ @$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
+ @$(RENAME) $@.$(INPATH) $@
+
+$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.tgz
+ @-$(RM) $@
+ @noop $(assign UNPACKCMD := gzip -d -c $(subst,\,/ $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tgz) $(TARFILE_FILTER) | $(GNUTAR) -x$(tar_verbose_switch)f - )
+ @$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
+ @$(RENAME) $@.$(INPATH) $@
+
+$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.tar
+ @-$(RM) $@
+ @noop $(assign UNPACKCMD := $(GNUTAR) -x$(tar_verbose_switch)f $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar)
+ @$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
+ @$(RENAME) $@.$(INPATH) $@
+
+$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.zip
+ @-$(RM) $@
+ @noop $(assign UNPACKCMD := unzip $(unzip_quiet_switch) -o $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).zip)
+ @$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
+ @$(RENAME) $@.$(INPATH) $@
+
+$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.jar
+ @-$(RM) $@
+.IF "$(OS)"=="SOLARIS"
+ @noop $(assign UNPACKCMD := jar xf $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).jar)
+.ELSE # "$(OS)"=="SOLARIS"
+ @noop $(assign UNPACKCMD := unzip $(unzip_quiet_switch) -o $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).jar)
+.ENDIF # "$(OS)"=="SOLARIS"
+ @$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
+ @$(RENAME) $@.$(INPATH) $@
+
+#do unpack
+$(PACKAGE_DIR)/$(UNTAR_FLAG_FILE) : $(PRJ)/$(ROUT)/misc/$(TARFILE_MD5)-$(TARFILE_NAME).unpack $(PATCH_FILE_DEP)
+ $(IFEXIST) $(PACKAGE_DIR)/$(TARFILE_ROOTDIR) $(THEN) $(RENAME:s/+//) $(PACKAGE_DIR)/$(TARFILE_ROOTDIR) $(PACKAGE_DIR)/$(TARFILE_ROOTDIR)_removeme $(FI)
+ $(COMMAND_ECHO)-rm -rf $(PACKAGE_DIR)/$(TARFILE_ROOTDIR)_removeme
+ @-$(MKDIRHIER) $(PACKAGE_DIR)$(fake_root_dir)
+ $(COMMAND_ECHO)cd $(PACKAGE_DIR)$(fake_root_dir) && ( $(shell @$(TYPE) $(PRJ)/$(ROUT)/misc/$(TARFILE_MD5)-$(TARFILE_NAME).unpack)) && $(TOUCH) $(UNTAR_FLAG_FILE)
+ @echo make writeable...
+ @cd $(PACKAGE_DIR) && chmod -R +rw $(TARFILE_ROOTDIR) && $(TOUCH) $(UNTAR_FLAG_FILE)
+ @cd $(PACKAGE_DIR) && find $(TARFILE_ROOTDIR) -type d -exec chmod a+x {{}} \;
+
+#add new files to patch
+$(PACKAGE_DIR)/$(ADD_FILES_FLAG_FILE) : $(PACKAGE_DIR)/$(UNTAR_FLAG_FILE) $(T_ADDITIONAL_FILES:+".dummy")
+.IF "$(GUI)"=="WNT"
+ @$(TOUCH) $@
+.ELSE # "$(GUI)"=="WNT"
+ @$(TOUCH) $@
+.ENDIF # "$(GUI)"=="WNT"
+
+#patch
+$(PACKAGE_DIR)/$(PATCH_FLAG_FILE) : $(PACKAGE_DIR)/$(ADD_FILES_FLAG_FILE)
+.IF "$(PATCH_FILES)"=="none" || "$(PATCH_FILES)"==""
+ @echo no patch needed...
+ $(COMMAND_ECHO)$(TOUCH) $@
+.ELSE # "$(PATCH_FILES)"=="none" || "$(PATCH_FILES)"==""
+.IF "$(GUI)"=="WNT"
+# hack to make 4nt version 4,01 work and still get propper
+# errorcodes for versions < 3,00
+#.IF "$(my4ver:s/.//:s/,//)" >= "300"
+# $(COMMAND_ECHO)cd $(PACKAGE_DIR) && ( $(TYPE:s/+//) $(BACK_PATH)$(PATH_IN_MODULE)/{$(PATCH_FILES)} | tr -d "\015" | patch $(PATCHFLAGS) -p2 ) && $(TOUCH) $(PATCH_FLAG_FILE)
+#.ELSE # "$(my4ver:s/.//:s/,//)" >= "300"
+ $(COMMAND_ECHO)cd $(PACKAGE_DIR) && $(TYPE:s/+//) $(BACK_PATH)$(PATH_IN_MODULE)/{$(PATCH_FILES)} | tr -d "\015" | patch $(PATCHFLAGS) -p2 && $(TOUCH) $(PATCH_FLAG_FILE)
+#.ENDIF # "$(my4ver:s/.//:s/,//)" >= "300"
+.ELSE # "$(GUI)"=="WNT"
+.IF "$(BSCLIENT)"=="TRUE"
+ $(COMMAND_ECHO)cd $(PACKAGE_DIR) && $(TYPE) $(BACK_PATH)$(PATH_IN_MODULE)/{$(PATCH_FILES)} | $(GNUPATCH) -f $(PATCHFLAGS) -p2 && $(TOUCH) $(PATCH_FLAG_FILE)
+.ELSE # "$(BSCLIENT)"!=""
+ $(COMMAND_ECHO)cd $(PACKAGE_DIR) && $(TYPE) $(BACK_PATH)$(PATH_IN_MODULE)/{$(PATCH_FILES)} | $(GNUPATCH) $(PATCHFLAGS) -p2 && $(TOUCH) $(PATCH_FLAG_FILE)
+.ENDIF # "$(BSCLIENT)"!=""
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(PATCH_FILES)"=="none" || "$(PATCH_FILES)"==""
+.IF "$(T_ADDITIONAL_FILES)"!=""
+.IF "$(GUI)"=="WNT"
+# Native W32 tools generate only filedates with even seconds, cygwin also with odd seconds
+ $(DELAY) 2
+.ENDIF # "$(GUI)"=="WNT"
+ $(COMMAND_ECHO)$(TOUCH) $(PACKAGE_DIR)/$(PATCH_FLAG_FILE)
+.ENDIF # "$(T_ADDITIONAL_FILES)"!=""
+
+.IF "$(CONVERTFILES)"!=""
+$(MISC)/$(TARGET)_convert_unx_flag : $(PACKAGE_DIR)/$(UNTAR_FLAG_FILE)
+ $(COMMAND_ECHO)$(CONVERT) unix $(foreach,i,$(CONVERTFILES) $(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$i) && $(TOUCH) $(MISC)/$(TARGET)_convert_unx_flag
+
+$(PACKAGE_DIR)/$(PATCH_FLAG_FILE) : $(MISC)/$(TARGET)_convert_unx_flag
+
+$(MISC)/$(TARGET)_convert_dos_flag : $(PACKAGE_DIR)/$(PATCH_FLAG_FILE)
+ $(COMMAND_ECHO)$(CONVERT) dos $(foreach,i,$(CONVERTFILES) $(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$i) && $(TOUCH) $(MISC)/$(TARGET)_convert_dos_flag
+
+$(PACKAGE_DIR)/$(CONFIGURE_FLAG_FILE) : $(MISC)/$(TARGET)_convert_dos_flag
+
+patch : $(MISC)/$(TARGET)_convert_dos_flag
+
+.ENDIF # "$(CONVERTFILES)"!=""
+
+$(PACKAGE_DIR)/$(CONFIGURE_FLAG_FILE) : $(PACKAGE_DIR)/$(PATCH_FLAG_FILE)
+ @@-$(RM) $@
+.IF "$(CONFIGURE_ACTION)" == "none" || "$(CONFIGURE_ACTION)"==""
+ $(COMMAND_ECHO)$(TOUCH) $(PACKAGE_DIR)/$(CONFIGURE_FLAG_FILE)
+.ELSE # "$(CONFIGURE_ACTION)"=="none" || "$(CONFIGURE_ACTION)"==""
+ $(COMMAND_ECHO)-$(MKDIR) $(P_CONFIGURE_DIR)
+.IF "$(OS)"=="OS2"
+ $(COMMAND_ECHO)cd $(P_CONFIGURE_DIR) && sh -c "$(CONFIGURE_ACTION:s!\!/!) $(CONFIGURE_FLAGS:s!\!/!)" && $(TOUCH) $(CONFIGURE_FLAG_FILE)
+.ELSE
+ $(COMMAND_ECHO)cd $(P_CONFIGURE_DIR) && $(CONFIGURE_ACTION) $(CONFIGURE_FLAGS) && $(TOUCH) $(CONFIGURE_FLAG_FILE)
+.ENDIF
+ $(COMMAND_ECHO)mv $(P_CONFIGURE_DIR)/$(CONFIGURE_FLAG_FILE) $(PACKAGE_DIR)/$(CONFIGURE_FLAG_FILE)
+.ENDIF # "$(CONFIGURE_ACTION)"=="none" || "$(CONFIGURE_ACTION)"==""
+
+
+$(PACKAGE_DIR)/$(BUILD_FLAG_FILE) : $(PACKAGE_DIR)/$(CONFIGURE_FLAG_FILE)
+ @@-$(RM) $@
+.IF "$(eq,x$(BUILD_ACTION:s/none//)x,xx true false)"=="true"
+ $(COMMAND_ECHO)$(TOUCH) $(PACKAGE_DIR)/$(BUILD_FLAG_FILE)
+.ELSE # "$(eq,x$(BUILD_ACTION:s/none//)x,xx true false)"=="true"
+ $(COMMAND_ECHO)-$(MKDIR) $(P_BUILD_DIR)
+ $(COMMAND_ECHO)cd $(P_BUILD_DIR) && $(BUILD_ACTION) $(BUILD_FLAGS) && $(TOUCH) $(ABS_PACKAGE_DIR)/$(BUILD_FLAG_FILE)
+.ENDIF # "$(eq,x$(BUILD_ACTION:s/none//)x,xx true false)"=="true"
+
+$(PACKAGE_DIR)/$(INSTALL_FLAG_FILE) : $(PACKAGE_DIR)/$(BUILD_FLAG_FILE)
+ @@-$(RM) $@
+.IF "$(INSTALL_ACTION)"=="none" || "$(INSTALL_ACTION)"==""
+ $(COMMAND_ECHO)$(TOUCH) $(PACKAGE_DIR)/$(INSTALL_FLAG_FILE)
+.ELSE # "$(INSTALL_ACTION)"=="none" || "$(INSTALL_ACTION)"==""
+ $(COMMAND_ECHO)-$(MKDIR) $(P_INSTALL_DIR)
+ $(COMMAND_ECHO)-$(MKDIR) $(P_INSTALL_TARGET_DIR)
+ $(COMMAND_ECHO)cd $(P_INSTALL_DIR) && $(INSTALL_ACTION) $(INSTALL_FLAGS) && $(TOUCH) $(INSTALL_FLAG_FILE)
+ $(COMMAND_ECHO)mv $(P_INSTALL_DIR)/$(INSTALL_FLAG_FILE) $(PACKAGE_DIR)/$(INSTALL_FLAG_FILE)
+.ENDIF # "$(INSTALL_ACTION)"=="none" || "$(INSTALL_ACTION)"==""
+
+$(PACKAGE_DIR)/$(PREDELIVER_FLAG_FILE) : $(PACKAGE_DIR)/$(INSTALL_FLAG_FILE)
+.IF "$(OUT2LIB)"!=""
+ $(COMMAND_ECHO)$(COPY) $(foreach,i,$(OUT2LIB) $(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$i) $(LB)
+.IF "$(OS)"=="MACOSX"
+ $(COMMAND_ECHO)$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl extshl \
+ $(EXTRPATH) \
+ $(shell ls $(foreach,j,$(OUT2LIB) $(LB)/$(j:f)) | \
+ (grep -v '\.a$$' || test $$? = 1))
+.ENDIF
+.ENDIF # "$(OUT2LIB)"!=""
+.IF "$(OUT2INC)"!=""
+.IF "$(OUT2INC_SUBDIR)"!=""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(INCCOM)/$(OUT2INC_SUBDIR)
+ $(COMMAND_ECHO)$(COPY) $(foreach,i,$(OUT2INC) $(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$i) $(INCCOM)/$(OUT2INC_SUBDIR)
+.ELSE # "$(OUT2INC_SUBDIR)"!=""
+ $(COMMAND_ECHO)$(COPY) $(foreach,i,$(OUT2INC) $(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$i) $(INCCOM)
+.ENDIF # "$(OUT2INC_SUBDIR)"!=""
+.ENDIF # "$(OUT2INC)"!=""
+.IF "$(OUTDIR2INC)"!=""
+ $(COMMAND_ECHO)$(COPY) $(DEREFERENCE) $(COPYRECURSE) $(foreach,i,$(OUTDIR2INC) $(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$i) $(INCCOM)
+.ENDIF # "$(OUTDIR2INC)"!=""
+.IF "$(OUT2BIN)"!=""
+ $(COMMAND_ECHO)$(COPY) $(foreach,i,$(OUT2BIN) $(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$i) $(BIN)
+.IF "$(GUI)$(COM)$(COMEX)"=="WNTMSC12"
+ @noop $(foreach,j,$(foreach,k,$(OUT2BIN) \
+ $(shell -ls -1 $(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$k | $(GREP) .dll)) \
+ $(shell @$(IFEXIST) $(j).manifest $(THEN) mt.exe \
+ -manifest $(j).manifest -outputresource:$(BIN)/$(j:f)$(EMQ);2 $(FI)))
+.ENDIF # "$(GUI)$(COM)$(COMEX)"=="WNTMSC12"
+.ENDIF # "$(OUT2BIN)"!=""
+.IF "$(OUT2CLASS)"!=""
+ $(COMMAND_ECHO)$(COPY) $(foreach,i,$(OUT2CLASS) $(PACKAGE_DIR)/$(TARFILE_ROOTDIR)/$i) $(CLASSDIR)
+.ENDIF # "$(OUT2BIN)"!=""
+ $(COMMAND_ECHO)$(TOUCH) $(PACKAGE_DIR)/$(PREDELIVER_FLAG_FILE)
+
+$(MISC)/$(TARFILE_ROOTDIR).done : $(MISC)/$(TARFILE_MD5)-$(TARFILE_NAME).unpack $(PATCH_FILES)
+ @-mv $(MISC)/$(TARFILE_ROOTDIR) $(MISC)/$(TARFILE_ROOTDIR).old
+ @-rm -rf $(MISC)/$(TARFILE_ROOTDIR).old
+ @-$(MKDIRHIER) $(MISC)$(fake_root_dir)
+ $(COMMAND_ECHO)cd $(MISC)$(fake_root_dir) && $(subst,$(BACK_PATH),$(MBACK_PATH) $(shell @$(TYPE) $(PRJ)/$(ROUT)/misc/$(TARFILE_MD5)-$(TARFILE_NAME).unpack))
+.IF "$(P_ADDITIONAL_FILES)"!=""
+ noop $(foreach,i,$(P_ADDITIONAL_FILES) $(shell echo dummy > $i))
+.ENDIF "$(P_ADDITIONAL_FILES)"!=""
+.IF "$(PATCH_FILES)"!="none" && "$(PATCH_FILES)"!=""
+.IF "$(CONVERTFILES)"!=""
+ $(CONVERT) unix $(foreach,i,$(CONVERTFILES) $(MISC)/$(TARFILE_ROOTDIR)/$i)
+.ENDIF # "$(CONVERTFILES)"!=""
+.IF "$(GUI)"=="WNT"
+# hack to make 4nt version 4,01 work and still get propper
+# errorcodes for versions < 3,00
+#.IF "$(my4ver:s/.//:s/,//)" >= "300"
+# $(COMMAND_ECHO)cd $(MISC) && ( $(TYPE:s/+//) $(BACK_PATH)$(PATH_IN_MODULE)/{$(PATCH_FILES)} | tr -d "\015" | patch $(PATCHFLAGS) -p2 )
+#.ELSE # "$(my4ver:s/.//:s/,//)" >= "300"
+ $(COMMAND_ECHO)cd $(MISC) && $(TYPE:s/+//) $(BACK_PATH)$(PATH_IN_MODULE)/{$(PATCH_FILES)} | tr -d "\015" | patch $(PATCHFLAGS) -p2
+#.ENDIF # "$(my4ver:s/.//:s/,//)" >= "300"
+.ELSE # "$(GUI)"=="WNT"
+.IF "$(BSCLIENT)"=="TRUE"
+ $(COMMAND_ECHO)cd $(MISC) && $(TYPE) $(BACK_PATH)$(PATH_IN_MODULE)/{$(PATCH_FILES)} | $(GNUPATCH) -f $(PATCHFLAGS) -p2
+.ELSE # "$(BSCLIENT)"!=""
+ $(COMMAND_ECHO)cd $(MISC) && $(TYPE) $(MBACK_PATH)$(PATH_IN_MODULE)/{$(PATCH_FILES)} | $(GNUPATCH) $(PATCHFLAGS) -p2
+.ENDIF # "$(BSCLIENT)"!=""
+.ENDIF # "$(GUI)"=="WNT"
+.IF "$(CONVERTFILES)"!=""
+ $(COMMAND_ECHO)$(CONVERT) dos $(foreach,i,$(CONVERTFILES) $(MISC)/$(TARFILE_ROOTDIR)/$i)
+.ENDIF # "$(CONVERTFILES)"!=""
+.ENDIF # "$(PATCH_FILES)"!="none" && "$(PATCH_FILES)"!="
+.IF "$(GUI)"=="UNX"
+ $(COMMAND_ECHO)$(TOUCH) $@
+.ENDIF # "$(GUI)"=="UNX"
+
+.IF "$(T_ADDITIONAL_FILES)"!=""
+$(T_ADDITIONAL_FILES:+".dummy") : $(PACKAGE_DIR)/$(UNTAR_FLAG_FILE)
+ @-$(MKDIRHIER) $(@:d)
+ $(COMMAND_ECHO)-echo dummy > $@
+ $(COMMAND_ECHO)-$(TOUCH) $@
+ $(COMMAND_ECHO)-echo dummy > $(@:d)$(@:b)
+ $(COMMAND_ECHO)-$(TOUCH) $(@:d)$(@:b)
+.ENDIF "$(T_ADDITIONAL_FILES)"!=""
+
+create_patch : $(MISC)/$(TARFILE_ROOTDIR).done $(PACKAGE_DIR)/$(PATCH_FLAG_FILE)
+ @@-$(MKDIRHIER) $(PRJ)/$(NEW_PATCH_FILE_NAME:d)
+ @@-$(RM) $(MISC)/$(NEW_PATCH_FILE_NAME:f).tmp
+ @@-$(RM) $(PRJ)/$(PATH_IN_MODULE)/$(NEW_PATCH_FILE_NAME).bak
+#ignore returncode of 1 (indicates differences...)
+# hard coded again to get the same directory level as before. quite ugly...
+ $(COMMAND_ECHO)-cd $(PRJ)/$(ROUT) && diff -ru misc/$(TARFILE_ROOTDIR) misc/build/$(TARFILE_ROOTDIR) | $(PERL) $(SOLARENV)/bin/cleandiff.pl | tr -d "\015" > misc/$(NEW_PATCH_FILE_NAME:f).tmp
+ $(COMMAND_ECHO)-mv $(PRJ)/$(PATH_IN_MODULE)/$(NEW_PATCH_FILE_NAME) $(PRJ)/$(PATH_IN_MODULE)/$(NEW_PATCH_FILE_NAME).bak
+ $(COMMAND_ECHO)-$(TOUCH) $(PRJ)/$(PATH_IN_MODULE)/$(NEW_PATCH_FILE_NAME).bak
+ $(COMMAND_ECHO)$(PERL) $(SOLARENV)/bin/patch_sanitizer.pl $(PRJ)/$(PATH_IN_MODULE)/$(NEW_PATCH_FILE_NAME).bak $(MISC)/$(NEW_PATCH_FILE_NAME:f).tmp $(PRJ)/$(PATH_IN_MODULE)/$(NEW_PATCH_FILE_NAME)
+ @@-$(RM) $(MISC)/$(NEW_PATCH_FILE_NAME:f).tmp $(PRJ)/$(PATH_IN_MODULE)/$(NEW_PATCH_FILE_NAME).bak
+ $(COMMAND_ECHO)$(MAKECMD) $(MAKEMACROS) patch
+ @echo still some problems with win32 generated patches...
+ @echo $(USQ)find your new changes in $(NEW_PATCH_FILE_NAME). don't forget to move/rename that patch and insert it in your makefiles PATCH_FILES to activate.$(USQ)
+
+create_clean : $(PACKAGE_DIR)/$(UNTAR_FLAG_FILE)
+ @echo done
+
+patch : $(PACKAGE_DIR)/$(PATCH_FLAG_FILE)
+ @echo done
+
+.ENDIF # "$(L10N_framework)"==""
diff --git a/solenv/inc/tg_help.mk b/solenv/inc/tg_help.mk
new file mode 100644
index 000000000000..cce5b9ee62b2
--- /dev/null
+++ b/solenv/inc/tg_help.mk
@@ -0,0 +1,90 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# to make it usable with special lang selection of
+# helpcontent2
+
+aux_alllangiso*:=$(alllangiso)
+
+SHELL_PACKAGE:=$(subst,/,$/ $(PACKAGE))
+
+.IF "$(XHPDEST)"==""
+XHPDEST*:=$(COMMONMISC)
+HELP_OUT:=$(COMMONMISC)
+.ELSE # "$(XHPDEST)"==""
+HELP_OUT:=$(MISC)
+.ENDIF # "$(XHPDEST)"==""
+
+HLANGXHPFILES*:=$(foreach,i,$(XHPFILES) $(foreach,j,$(aux_alllangiso) $(XHPDEST)$/$j$/$(SHELL_PACKAGE)$/$(i:f)))
+
+ALLTAR : $(HELP_OUT)$/$(TARGET).done $(HELP_OUT)$/xhp_changed.flag optix
+
+$(HLANGXHPFILES) : $$(@:d)thisdir.created
+
+$(XHPDEST)$/{$(aux_alllangiso)}$/$(SHELL_PACKAGE)$/%.xhp :| %.xhp
+ @$(TOUCH) $@
+# internal dependencies not sufficient to trigger merge?
+# @$(NULL)
+
+
+$(HELP_OUT)$/$(TARGET).done : $(HLANGXHPFILES)
+.IF "$(WITH_LANG)"!=""
+ $(AUGMENT_LIBRARY_PATH) $(HELPEX) -p $(PRJNAME) -r $(PRJ) -i @$(mktmp $(uniq $(foreach,i,$? $(!eq,$(i:f),$(i:f:s/.xhp//) $(i:f) $(XHPFILES))))) -x $(XHPDEST) -y $(SHELL_PACKAGE) -l all -lf $(aux_alllangiso:t",") -m $(LOCALIZESDF) && $(TOUCH) $@
+.ELSE # "$(WITH_LANG)"!=""
+ cp $(uniq $(foreach,i,$? $(!eq,$(i:f),$(i:f:s/.xhp//) $(i:f) $(XHPFILES)))) $(XHPDEST)$/en-US$/$(SHELL_PACKAGE) && $(TOUCH) $@
+.ENDIF # "$(WITH_LANG)"!=""
+.IF "$(OS)"=="SOLARIS"
+ @$(ECHONL) " "
+.ELSE # "$(OS)"=="SOLARIS"
+ @$(ECHONL)
+.ENDIF # "$(OS)"=="SOLARIS"
+
+$(HELP_OUT)$/xhp_changed.flag : $(HLANGXHPFILES)
+ @$(TOUCH) $@
+
+# urks - dmake mixes up operators and strings :-(
+.IF "$(HLANGXHPFILES:s/defined/xxx/)"!=""
+
+.IF "$(HELPTRANSPHONY)"!=""
+$(HELP_OUT)$/$(TARGET).done .PHONY :
+.ELSE # "$(HELPTRANSPHONY)"!=""
+
+$(HELP_OUT)$/$(TARGET).done : makefile.mk
+.IF "$(WITH_LANG)"!=""
+$(HELP_OUT)$/$(TARGET).done : $(LOCALIZESDF)
+.ENDIF # "$(WITH_LANG)"!=""
+.ENDIF # "$(HELPTRANSPHONY)"!=""
+.ENDIF # "$(HLANGXHPFILES)"!=""
+
+optix: $(HELP_OUT)$/$(TARGET).done
+ @echo done
+
+%.created :
+ @@-$(MKDIRHIER) $(@:d)
+ @$(TOUCH) $@
+
+
diff --git a/solenv/inc/tg_jar.mk b/solenv/inc/tg_jar.mk
new file mode 100644
index 000000000000..d1109ec4e8f1
--- /dev/null
+++ b/solenv/inc/tg_jar.mk
@@ -0,0 +1,89 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+.IF "$(VERBOSE)"=="FALSE"
+ZIP_VERBOSITY=-q
+.ENDIF
+
+.IF "$(JARTARGETN)"!=""
+
+.IF "$(JARCOMPRESS)"==""
+JARCOMPRESS_FLAG=0
+.ENDIF
+
+.IF "$(NEW_JAR_PACK)"!=""
+$(JARTARGETN) : $(JARMANIFEST) $(JAVACLASSFILES) $(JAVATARGET)
+.ENDIF # "$(NEW_JAR_PACK)"!=""
+
+.IF "$(NEW_JAR_PACK)"!=""
+.IF "$(JARMANIFEST)"!=""
+
+.IF "$(CUSTOMMANIFESTFILE)"!=""
+
+CUSTOMMANIFESTFILEDEP:=$(MISC)/$(TARGET)_$(CUSTOMMANIFESTFILE:f)
+
+$(MISC)/$(TARGET)_$(CUSTOMMANIFESTFILE:f) : $(subst,/,/ $(DMAKE_WORK_DIR))/$(CUSTOMMANIFESTFILE)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(COPY) $< $@
+.ENDIF # "$(CUSTOMMANIFESTFILE)"!=""
+
+$(JARMANIFEST) .PHONY : $(CUSTOMMANIFESTFILEDEP)
+ @@-$(MKDIRHIER) $(@:d)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)echo Manifest-Version: 1.0 > $@
+.IF "$(JARCLASSPATH)" != ""
+ echo $(USQ)Class-Path: $(JARCLASSPATH)$(USQ) >> $@
+.ENDIF
+# $(RSCREVISION) contains chars that must be quoted (for *NIX shells)
+ $(COMMAND_ECHO)echo $(USQ)Solar-Version: $(RSCREVISION)$(USQ) >> $@
+.IF "$(CUSTOMMANIFESTFILE)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(MISC)/$(TARGET)_$(CUSTOMMANIFESTFILE:f) >> $@
+.ENDIF # "$(CUSTOMMANIFESTFILE)"!=""
+.ENDIF # "$(JARMANIFEST)"!=""
+.ENDIF # "$(NEW_JAR_PACK)"!=""
+
+#
+# build jar
+#
+.IF "$(NOJARDEP)"!="" || "$(NEW_JAR_PACK)"!=""
+$(JARTARGETN) .PHONY :
+# $(JARMANIFEST)
+.ELSE # "$(NOJARDEP)"!="" || "$(NEW_JAR_PACK)"!=""
+.DIRCACHE = no
+$(JARTARGETN) :
+#$(JARTARGETN) .SETDIR=$(CLASSDIR) .SEQUENTIAL : $(JARTARGETDEP) $(shell @-cat -s $(MISC)/$(JARTARGETN).dep )
+.ENDIF # "$(NOJARDEP)"!="" || "$(NEW_JAR_PACK)"!=""
+.IF "$(OS)$(CPU)"=="SOLARISS"
+ @-find . -type d -user $(USER) ! -perm -5 -print | xargs test "$$1" != "" && chmod +r $$1
+.ENDIF
+.IF "$(JARMANIFEST)"!=""
+ $(COMMAND_ECHO)cd $(CLASSDIR)/$(TARGET) && zip $(ZIP_VERBOSITY) -u -rX ../$(@:f) $(subst,$(CLASSDIR)/$(TARGET)/, $(JARMANIFEST)) $(CHECKZIPRESULT)
+.ENDIF # "$(JARMANIFEST)"!=""
+ $(COMMAND_ECHO)cd $(CLASSDIR) && zip $(ZIP_VERBOSITY) -u -rX $(@:f) $(subst,\,/ $(JARCLASSDIRS)) $(CHECKZIPRESULT)
+.ENDIF
+
diff --git a/solenv/inc/tg_java.mk b/solenv/inc/tg_java.mk
new file mode 100644
index 000000000000..5c00f2bbf7f5
--- /dev/null
+++ b/solenv/inc/tg_java.mk
@@ -0,0 +1,84 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+
+$(CLASSDIR)/com/sun/star/upd/$(VERSIONINFOFILE)_updversion.class .PHONY: $(MISC)/java/com/sun/star/upd/$(VERSIONINFOFILE)_updversion.java
+
+$(MISC)/java/com/sun/star/upd/$(VERSIONINFOFILE)_updversion.java .PHONY:
+ @echo "Making: " $(@:f)
+ @-$(MKDIRHIER) $(MISC)/java/com/sun/star/upd
+.IF "$(GUI)"=="UNX"
+ @echo package com.sun.star.upd\; > $@
+ @echo 'public class $(VERSIONINFOFILE)_updversion { public static String Version = "$(RSCREVISION)";}' >> $@
+.ELSE # "$(GUI)"=="UNX"
+ @echo package com.sun.star.upd; > $@
+ @echo public class $(VERSIONINFOFILE)_updversion { public static String Version = "$(RSCREVISION)";} >> $@
+.ENDIF # "$(GUI)"=="UNX"
+
+.IF "$(JAVATARGET)"!=""
+.IF "$(PACKAGE)"!=""
+$(CLASSDIR)/$(IDLPACKAGE)/%.class .NOINFER .IGNORE : %.java
+# echo $@
+ @@-$(RM) $(JAVATARGET)
+.ELSE # "$(PACKAGE)"!=""
+$(CLASSDIR)/%.class .NOINFER .IGNORE : %.java
+# echo $@
+ @@-$(RM) $(JAVATARGET)
+.ENDIF # "$(PACKAGE)"!=""
+
+$(JAVATARGET) : $(JAVAFILES) $(JAVACLASSFILES)
+.IF "$(JAVARESPONSE)"!=""
+ $(JAVAC) @<<
+ $(JAVACPS) $(CLASSPATH) -d $(CLASSDIR) $(JAVAFLAGS) $(JAVAFILES)
+ <<keep
+.ELSE # "$(JAVARESPONSE)"!=""
+.IF "$(use_jdep)"!=""
+ $(JAVAC) -depend $(JAVACPS) $(CLASSPATH) -d $(CLASSDIR) $(JAVAFLAGS) $(JAVAFILES)
+.ELSE # "$(use_jdep)"!=""
+.IF "$(javauno)"!=""
+.IF "$(JAVAFILES:d)"==""
+ $(JAVAC) $(JAVACPS) $(CLASSPATH) -d $(CLASSDIR) $(JAVAFLAGS) $(JAVAFILES)
+.ELSE # "$(JAVAFILES:d)"==""
+ @@$(TOUCH) $(INPATH)_$(VCSID)_a_dummy.java
+ $(JAVAC) $(JAVACPS) $(CLASSPATH) -d $(CLASSDIR) $(JAVAFLAGS) ./*.java $(uniq $(JAVAFILES:d:+"*.java"))
+ @@-$(RM) $(INPATH)_$(VCSID)_a_dummy.java
+.ENDIF # "$(JAVAFILES:d)"==""
+.ELSE # "$(javauno)"!=""
+ $(JAVAC) $(JAVACPS) "$(CLASSPATH)" -d $(CLASSDIR) $(JAVAFLAGS) @$(mktmp $(strip $(JAVAFILES)))
+.ENDIF # "$(javauno)"!=""
+.ENDIF # "$(use_jdep)"!=""
+.ENDIF # "$(JAVARESPONSE)"!=""
+.IF "$(UPDATER)"!=""
+.IF "$(OS)$(CPU)"=="SOLARISS"
+ @@-find $(CLASSDIR) -type d -user $(USER) \! -perm -5 -print | xargs chmod a+r $$1
+.ENDIF
+.ENDIF
+ @echo > $@
+
+.ENDIF # "$(JAVATARGET)"!=""
+
diff --git a/solenv/inc/tg_javav.mk b/solenv/inc/tg_javav.mk
new file mode 100644
index 000000000000..fe5f7fe17e81
--- /dev/null
+++ b/solenv/inc/tg_javav.mk
@@ -0,0 +1,53 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+JAVAVERMK:=$(INCCOM)/java_ver.mk
+
+.INCLUDE .IGNORE : $(JAVAVERMK)
+
+.IF "$(JAVAVER)"=="" || "$(JAVALOCATION)"!="$(JAVA_HOME)"
+.IF "$(L10N_framework)"==""
+
+.IF "$(SOLAR_JAVA)"!=""
+JFLAGSVERSION=-version
+JFLAGSVERSION_CMD=-version $(PIPEERROR) $(AWK) -f $(SOLARENV)/bin/getcompver.awk
+JFLAGSNUMVERSION_CMD=-version $(PIPEERROR) $(AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk
+
+# that's the version known by the specific
+# java version
+JAVAVER:=$(shell @-$(JAVA_HOME)/bin/java $(JFLAGSVERSION_CMD))
+
+# and a computed integer for comparing
+# each point seperated token blown up to 4 digits
+JAVANUMVER:=$(shell @-$(JAVA_HOME)/bin/java $(JFLAGSNUMVERSION_CMD))
+
+.ELSE # "$(SOLAR_JAVA)"!=""
+JAVAVER=0.0.0
+JAVANUMVER=000000000000
+.ENDIF # "$(SOLAR_JAVA)"!=""
+.ENDIF # "$(L10N_framework)"==""
+.ENDIF # "$(JAVAVER)"=="" || "$(JAVALOCATION)"!="$(JAVA_HOME)"
diff --git a/solenv/inc/tg_lib.mk b/solenv/inc/tg_lib.mk
new file mode 100644
index 000000000000..08909156b729
--- /dev/null
+++ b/solenv/inc/tg_lib.mk
@@ -0,0 +1,134 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#######################################################
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(LIB$(TNR)TARGET)" != ""
+.IF "$(LIB$(TNR)ARCHIV)" != ""
+
+$(LIB$(TNR)ARCHIV) : $(LIB$(TNR)TARGET)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @-$(RM) $(MISC)/$(LIB$(TNR)ARCHIV:b).cmd
+.IF "$(OS)" =="HPUX_FRAG_HR"
+ @-$(RM) $(MISC)/$(LIB$(TNR)ARCHIV:b)_closetempl.cmd
+ @echo $(LINK) +inst_close -c `cat $(LIB$(TNR)TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB$(TNR)ARCHIV:b)_closetempl.cmd
+ @cat $(MISC)/$(LIB$(TNR)ARCHIV:b)_closetempl.cmd
+ @+source $(MISC)/$(LIB$(TNR)ARCHIV:b)_closetempl.cmd
+.ENDIF
+ @echo $(LIBMGR) $(LIB$(TNR)FLAGS) $(LIBFLAGS) $(LIB$(TNR)ARCHIV) `cat $(LIB$(TNR)TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(MISC)/$(LIB$(TNR)ARCHIV:b).cmd
+.IF "$(OS)$(COM)"=="NETBSDGCC"
+ @echo ranlib $(LIB$(TNR)ARCHIV) >> $(MISC)/$(LIB$(TNR)ARCHIV:b).cmd
+.ENDIF
+.IF "$(OS)" == "MACOSX"
+ @echo ranlib $(LIB$(TNR)ARCHIV) >> $(MISC)/$(LIB$(TNR)ARCHIV:b).cmd
+.ENDIF
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB$(TNR)ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB$(TNR)ARCHIV:b).cmd
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)$(COM)"=="WNTGCC"
+ @+-$(RM) $(MISC)/$(LIB$(TNR)ARCHIV:b).cmd
+ @+echo $(LIBMGR) $(LIB$(TNR)FLAGS) $(LIBFLAGS) $(LIB$(TNR)ARCHIV) `cat $(LIB$(TNR)TARGET) | sed s#'^'$(ROUT)#$(PRJ)/$(ROUT)#g` > $(MISC)/$(LIB$(TNR)ARCHIV:b).cmd
+ @+echo ranlib $(LIB$(TNR)ARCHIV) >> $(MISC)/$(LIB$(TNR)ARCHIV:b).cmd
+.IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(LIB$(TNR)ARCHIV:b).cmd
+.ENDIF
+ @+source $(MISC)/$(LIB$(TNR)ARCHIV:b).cmd
+.ELSE
+ @echo just a dummy > $@
+.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
+.ENDIF # "$(GUI)"=="UNX"
+
+.ENDIF # "$(LIB$(TNR)ARCHIV)" != ""
+
+$(LIB$(TNR)TARGET) : $(LIB$(TNR)FILES) \
+ $(LIB$(TNR)OBJFILES) \
+ $(LIB$(TNR)DEPN)
+.IF "$(VERBOSE)" == "TRUE"
+ @echo ------------------------------
+ @echo using: $(LIB$(TNR)FILES)
+ @echo using: $(LIB$(TNR)TARGET)
+ @echo ------------------------------
+.ENDIF
+ @echo "Making: " $(@:f)
+ @@-$(RM) $@
+.IF "$(GUI)"=="UNX"
+ @echo $(LIB$(TNR)OBJFILES:s/.obj/.o/) | sed "s#$(PRJ:s/./\./)/$(ROUT)#$(ROUT)#g" | xargs -n 1 > $@
+ @cat /dev/null $(LIB$(TNR)FILES:s/.obj/.o/) | xargs -n 1 >> $@
+ @$(RM) $(@:d)$(@:b).dump
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(LIB$(TNR)TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(LIB$(TNR)TARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+
+.ELIF "$(GUI)"=="OS2"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(LIB$(TNR)FILES) $(LIB$(TNR)OBJFILES)
+ @+-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB$(TNR)OBJFILES)"!=""
+ @+$(TYPE) $(mktmp $(LIB$(TNR)OBJFILES)) > $(null,$(LIB$(TNR)OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB$(TNR)OBJFILES)"!=""
+.IF "$(LIB$(TNR)FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB$(TNR)FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB$(TNR)FILES)"!=""
+ @+$(ECHONL)
+
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(LIB$(TNR)OBJFILES) | sed "s#$(PRJ:s/././)/$(ROUT)#$(ROUT)#g" | xargs -n1 > $@
+ @+cat /dev/null $(LIB$(TNR)FILES) | xargs -n1 >> $@
+.ELSE
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(LIB$(TNR)FILES) $(LIB$(TNR)OBJFILES))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB$(TNR)OBJFILES)"!=""
+ @$(TYPE) $(mktmp $(LIB$(TNR)OBJFILES)) > $(null,$(LIB$(TNR)OBJFILES) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB$(TNR)OBJFILES)"!=""
+.IF "$(LIB$(TNR)FILES)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB$(TNR)FILES) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB$(TNR)FILES)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB$(TNR)FILES)"!=""
+.ELSE # "$(GUI)"=="WNT"
+ @-$(RM) $@
+ .IF "$(VERBOSE)" == "TRUE"
+ @echo $(LIBMGR) r $@ $(LIB$(TNR)OBJFILES)
+ .ENDIF
+ $(COMMAND_ECHO)$(LIBMGR) r $@ $(LIB$(TNR)OBJFILES) $(LIB$(TNR)FILES) bla.lib
+.ENDIF # "$(GUI)"=="WNT"
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(LIB$(TNR)TARGET)" != ""
+
+# Anweisungen fuer das LIBTARGETs
+# unroll end
+#######################################################
+
diff --git a/solenv/inc/tg_merge.mk b/solenv/inc/tg_merge.mk
new file mode 100644
index 000000000000..a40d48a81c66
--- /dev/null
+++ b/solenv/inc/tg_merge.mk
@@ -0,0 +1,66 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+MKFILENAME:=tg_merge.mk
+
+# look for the according rules in "rules.mk"
+
+.IF "$(WITH_LANG)"!=""
+.IF "$(ULFFILES)"!=""
+$(foreach,i,$(ULFFILES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+.ENDIF # "$(ULFFILES)"!=""
+
+# *.xrb merge
+.IF "$(XMLPROPERTIES)"!=""
+$(foreach,i,$(XMLPROPERTIES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+.ENDIF # "$(ULFFILES)"!=""
+
+# *.xrm merge
+.IF "$(READMEFILES)"!=""
+$(foreach,i,$(READMEFILES) $(COMMONMISC)/$(TARGET)/$(i:b).xrm) : $$(@:f) $(LOCALIZESDF)
+.ENDIF # "$(ULFFILES)"!=""
+
+# *.xrm merge
+#.IF "$(APOCHELPFILES)"!=""
+#$(foreach,i,$(APOCHELPFILES) $(COMMONMISC)/$(MYPATH)/$(i:b).xrm) : $$(@:f) $(LOCALIZESDF)
+#.ENDIF # "$(ULFFILES)"!=""
+# *.xcu merge
+.IF "$(LOCALIZEDFILES)"!=""
+$(foreach,i,$(LOCALIZEDFILES) $(PROCESSOUT)/merge/{$(subst,.,/ $(PACKAGE))}/$(i:b).xcu) : $$(@:f) $(LOCALIZESDF)
+.ENDIF # "$(ULFFILES)"!=""
+.ENDIF # "$(WITH_LANG)"!=""
+
+# dependencies from *.ulf to par-files
+.IF "$(ULFPARFILES)"!=""
+$(ULFPARFILES) : $(COMMONMISC)/$(TARGET)/$$(@:b).$(LANGFILEEXT)
+.ENDIF # "$(ULFPARFILES)"!=""
+
+# *.xrm merge
+#.IF "$(READMEFILES)"!=""
+#$(uniq $(foreach,i,$(READMEFILES) $(COMMONMISC)/$(TARGET)/$(i:b).xrm)) : $$(@:f) $(LOCALIZESDF)
+#.ENDIF # "$(ULFFILES)"!=""
+
diff --git a/solenv/inc/tg_moz.mk b/solenv/inc/tg_moz.mk
new file mode 100644
index 000000000000..8c1c0dfa39d4
--- /dev/null
+++ b/solenv/inc/tg_moz.mk
@@ -0,0 +1,89 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+.IF "$(EXPORTS)"!=""
+EXPORT_HEADER=export_mozilla_header
+.ENDIF
+
+.IF "$(XPIDLSRCS)"!=""
+XPIDL_TYPELIB_MODULE=$(MISC)/$(XPIDL_MODULE).xpt
+XPIDLHDR:=$(XPIDLSRCS:s/.idl/.h/)
+XPIDLXPT:=$(XPIDLSRCS:s/.idl/.xpt/)
+EXTRA_MOZ_TARGET+= $(foreach,i,$(XPIDLHDR) $(INCCOM)/$i)
+EXTRA_MOZ_TARGET+= $(foreach,i,$(XPIDLXPT) $(MISC)/$i)
+
+EXTRA_MOZ_TARGET+= $(XPIDL_TYPELIB_MODULE)
+.ENDIF
+
+ALLMOZ:=$(EXTRA_MOZ_TARGET) $(DO_XPIDL) $(GEN_PRCPUCFG) $(EXPORT_HEADER)
+
+$(INCCOM)/%.h : %.idl
+ $(COMMAND_ECHO)$(COPY) $< $(INCCOM)
+ $(COMMAND_ECHO)$(XPIDL) -m header -w -I $(SOLARIDLDIR)/mozilla -I$(INCCOM) -I . -o $(INCCOM)/$* $<
+
+$(MISC)/%.xpt : %.idl
+ $(COMMAND_ECHO)$(XPIDL) -m typelib -w -I $(SOLARIDLDIR)/mozilla -I$(INCCOM) -I . -o $(MISC)/$* $<
+
+.INCLUDE : target.mk
+
+.IF "$(GUI)"=="WNT"
+CPUCFG=_winnt.cfg
+.ENDIF
+
+.IF "$(OS)"=="SOLARIS"
+CPUCFG=_solaris32.cfg
+.ENDIF
+
+.IF "$(OS)"=="LINUX"
+CPUCFG=_linux.cfg
+.ENDIF
+
+.IF "$(OS)"=="FREEBSD"
+CPUCFG=_freebsd.cfg
+.ENDIF
+
+.IF "$(OS)"=="NETBSD"
+CPUCFG=_netbsd.cfg
+.ENDIF
+
+.IF "$(GEN_PRCPUCFG)"!=""
+$(GEN_PRCPUCFG): $(PRJ)/pr/include/md/$(CPUCFG)
+ @$(COPY) $(PRJ)/pr/include/md/$(CPUCFG) $@
+.ENDIF
+
+.IF "$(EXPORTS)"!=""
+$(EXPORT_HEADER):
+ @$(COPY) $(EXPORTS) $(INCCOM)
+.ENDIF
+
+.IF "$(XPIDLSRCS)"!=""
+$(XPIDL_TYPELIB_MODULE): $(foreach,i,$(XPIDLXPT) $(MISC)/$i)
+ $(COMMAND_ECHO)$(XPIDL_LINK) $(MISC)/$(XPIDL_MODULE).xpt $^
+ @-mkdir $(BIN)/components
+ @$(COPY) $@ $(BIN)/components
+.ENDIF
diff --git a/solenv/inc/tg_obj.mk b/solenv/inc/tg_obj.mk
new file mode 100644
index 000000000000..3a597c2409b3
--- /dev/null
+++ b/solenv/inc/tg_obj.mk
@@ -0,0 +1,94 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+MKFILENAME:=TG_OBJ.MK
+
+.IF "$(OBJTARGET)"!=""
+$(OBJTARGET): $(OBJFILES) $(IDLOBJFILES)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="OS2"
+.IF "$(LIBTARGET)"!="NO"
+ @-$(TYPE) $(mktmp $(&:+"\n")) > $(@:s/.lib/.lin/)
+.ENDIF # "$(LIBTARGET)"!="NO"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(&)
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ $(ECHONL) $(foreach,i,$(OBJFILES:f) $(ROBJ)/$(i)) > $@
+.ELSE # "$(COM)"=="GCC"
+.IF "$(LIBTARGET)"!="NO"
+ @-$(TYPE) $(mktmp $(&:+"\n")) > $(@:s/.lib/.lin/)
+.ENDIF # "$(LIBTARGET)"!="NO"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(&:+"\n"))
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)"=="WNT"
+.IF "$(GUI)"=="UNX"
+ @echo $(foreach,i,$(OBJFILES:f) $(ROBJ)/$(i:s/.obj/.o/)) | xargs -n1 > $@
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(OBJTARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(OBJTARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(OBJTARGET)"!=""
+
+
+.IF "$(SECOND_BUILD)"!=""
+.IF "$($(SECOND_BUILD)OBJTARGET)"!=""
+$($(SECOND_BUILD)OBJTARGET): $(REAL_$(SECOND_BUILD)_OBJFILES)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="OS2"
+.IF "$(LIBTARGET)"!="NO"
+ @-$(TYPE) $(mktmp $(&:+"\n")) > $(@:s/.lib/.lin/)
+.ENDIF # "$(LIBTARGET)"!="NO"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(&)
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+# $(LIBMGR) $(LIBFLAGS) $@ $(OBJFILES)
+ $(ECHONL) $(foreach,i,$(REAL_$(SECOND_BUILD)_OBJFILES:f) $(ROBJ)/$(i)) > $@
+.ELSE
+.IF "$(LIBTARGET)"!="NO"
+ @-$(TYPE) $(mktmp $(&:+"\n")) > $(@:s/.lib/.lin/)
+.ENDIF # "$(LIBTARGET)"!="NO"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(&:+"\n"))
+.ENDIF
+.ENDIF # "$(GUI)"=="WNT"
+.IF "$(GUI)"=="UNX"
+ @echo $(foreach,i,$(REAL_$(SECOND_BUILD)_OBJFILES:f) $(ROBJ)/$(i:s/.obj/.o/)) | xargs -n1 >> $@
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$($(SECOND_BUILD)OBJTARGET)"!=""
+.ENDIF # "$(SECOND_BUILD)"!=""
+
+.IF "$(GUI)"=="OS2"
+.IF "$(LIBTARGET)"!="NO"
+ @-$(TYPE) $(mktmp $(&:+"\n")) > $(@:s/.lib/.lin/)
+.ENDIF # "$(LIBTARGET)"!="NO"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(&)
+.ENDIF # "$(GUI)"=="OS2"
diff --git a/solenv/inc/tg_propmerge.mk b/solenv/inc/tg_propmerge.mk
new file mode 100755
index 000000000000..796bca982815
--- /dev/null
+++ b/solenv/inc/tg_propmerge.mk
@@ -0,0 +1,66 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+.IF "$(L10NPROPERTYFILES)"!=""
+ALLTAR : $(MISC)/$(TARGET).pmerge.mk $(L10NPROPERTYFILES)
+
+$(MISC)/$(TARGET).pmerge.mk : $(L10NPROPERTYFILES)
+
+$(L10NPROPERTYFILES) : $(LOCALIZESDF)
+
+.INCLUDE .IGNORE : $(MISC)/$(TARGET).pmerge.mk
+
+.IF "$(alllangiso)"!="$(last_merge)"
+MERGEPHONY:=.PHONY
+.ENDIF # "$(alllangiso)" != "$(last_merge)"
+
+$(CLASSDIR)/$(PACKAGE)/%.properties $(MERGEPHONY) : %.properties
+ @@-$(MKDIRHIER) $(@:d)
+.IF "$(WITH_LANG)"==""
+ $(COMMAND_ECHO)$(COPY) $< $@
+.ELSE # "$(WITH_LANG)"==""
+ @@-$(RM) $@
+ $(COMMAND_ECHO)@noop $(assign PMERGELIST+:=$(<:f))
+ $(COMMAND_ECHO)@noop $(assign PDESTDIR:=$(@:d))
+.ENDIF # "$(WITH_LANG)"==""
+
+$(MISC)/$(TARGET).pmerge.mk : $(PMERGELIST)
+.IF "$(WITH_LANG)"!=""
+# jpropex command file requirements:
+# - one file per line
+# - no spaces
+# - no empty lines
+# $(uniq ...) to workaround $assign adding the value twice...
+ @noop $(assign PMERGEFILELIST:=$(uniq $(PMERGELIST)))
+ $(COMMAND_ECHO)$(SOLARBINDIR)/jpropex -p $(PRJNAME) -r $(PRJ) -o $(PDESTDIR) -i @$(mktmp $(PMERGEFILELIST:t"\n":s/ //)) -l all -lf $(alllangiso:s/ /,/) -m $(LOCALIZESDF)
+.ENDIF # "$(WITH_LANG)"!=""
+ @-$(RM) $@
+ $(COMMAND_ECHO)echo last_merge=$(alllangiso) > $@
+
+.ENDIF # "$(L10NPROPERTYFILES)"!=""
+
+
diff --git a/solenv/inc/tg_res.mk b/solenv/inc/tg_res.mk
new file mode 100644
index 000000000000..cad40533e7b8
--- /dev/null
+++ b/solenv/inc/tg_res.mk
@@ -0,0 +1,43 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+.IF "$(RCTARGET)"!=""
+$(RCTARGET): $(RCFILES) \
+ $(RCDEPN)
+ @echo "Making: " $(@:f)
+.IF "$(CCNUMVER)" > "001300000000"
+.IF "$(MFC_INCLUDE)"!=""
+ $(COMMAND_ECHO)$(RC) $(INCLUDE) -I$(SOLARRESDIR) $(foreach,i,$(ATL_INCLUDE) -I$(i)) -I$(MFC_INCLUDE) $(RCLANGFLAGS_$(@:d:d:b)) $(RCFLAGS)
+.ELSE
+ $(COMMAND_ECHO)$(RC) $(INCLUDE) -I$(SOLARRESDIR) $(foreach,i,$(ATL_INCLUDE) -I$(i)) $(RCLANGFLAGS_$(@:d:d:b)) $(RCFLAGS)
+.ENDIF
+.ELSE
+ $(COMMAND_ECHO)$(RC) $(INCLUDE) -I$(SOLARRESDIR) $(RCLANGFLAGS_$(@:d:d:b)) $(RCFLAGS)
+.ENDIF
+.ENDIF
+
diff --git a/solenv/inc/tg_rslb.mk b/solenv/inc/tg_rslb.mk
new file mode 100644
index 000000000000..40096386c436
--- /dev/null
+++ b/solenv/inc/tg_rslb.mk
@@ -0,0 +1,108 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#######################################################
+# unroll begin
+
+.IF "$(RESLIB$(TNR)TARGETN)"!=""
+
+.IF "$(BUILDHIDS)"!=""
+HIDRES$(TNR)PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))/$(RESLIB$(TNR)NAME)_res.hid
+
+#HACK cut off the dirty srs files which are included from solver
+RESLIB$(TNR)HIDFILES:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,.srs,_srs.hid $(RESLIB$(TNR)SRSFILES)))
+$(HIDRES$(TNR)PARTICLE): $(RESLIB$(TNR)HIDFILES)
+ @echo "Making: " $(@:f)
+ @$(IFEXIST) $@ $(THEN) $(RM:s/+//) $@ $(FI)
+# need to strip since solaris cannot handle tab-only whitespace here
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(strip, $(subst,/,/ $(RESLIB$(TNR)HIDFILES))) )| xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDRES$(TNR)PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(RSC_MULTI$(TNR)) : \
+ $(RESLIB$(TNR)SRSFILES) \
+ $(RESLIB$(TNR)TARGETN) \
+ $(RESLIB$(TNR)BMPS)
+ @echo Compiling: $(@:f)
+.IF "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))/$(RESLIB$(TNR)NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB$(TNR)IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(BIN))} \
+ -ft=$@ \
+ $(RSC$(TNR)HEADER) $(RESLIB$(TNR)SRSFILES) \
+ ) > $(NULLDEV)
+.ELSE # "$(common_build_reslib)"!=""
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ -r -p \
+ $(foreach,i,$(alllangiso) -lg$i \
+ $(null,$(rescharset_{$i}) $(default$(LANG_GUI)) $(rescharset_{$i})) \
+ -fs={$(BIN)/$(RESLIB$(TNR)NAME)$i.res} \
+ $(foreach,j,$(subst,$(PRJ),$(SOLARSRC)/$(RSCDEFIMG)/$(PRJNAME) $(RESLIB$(TNR)IMAGES)) -lip={$j}/$i \
+ -lip={$j} ) \
+ -lip=$(SOLARSRC)/$(RSCDEFIMG)/res/$i -lip=$(SOLARSRC)/$(RSCDEFIMG)/res ) \
+ -subMODULE=$(SOLARSRC)/$(RSCDEFIMG) \
+ -subGLOBALRES=$(SOLARSRC)/$(RSCDEFIMG)/res \
+ -oil=$(BIN) \
+ -ft=$@ \
+ $(RSC$(TNR)HEADER) $(RESLIB$(TNR)SRSFILES) \
+ ) > $(NULLDEV)
+.ENDIF # "$(common_build_reslib)"!=""
+
+$(RESLIB$(TNR)TARGETN): \
+ $(RESLIB$(TNR)SRSFILES) \
+ $(RESLIB$(TNR)BMPS)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI$(TNR))
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI$(TNR))
+.ENDIF # "$(common_build_reslib)"!=""
+.ELSE # "$(GUI)"=="UNX"
+.IF "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI$(TNR))
+.ELSE # "$(common_build_reslib)"!=""
+ @@-$(RM) $(RSC_MULTI$(TNR))
+.ENDIF # "$(common_build_reslib)"!=""
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(RESLIB$(TNR)TARGETN)"!=""
+
+
+# unroll end
+#######################################################
+
diff --git a/solenv/inc/tg_scp.mk b/solenv/inc/tg_scp.mk
new file mode 100644
index 000000000000..fd970deaae18
--- /dev/null
+++ b/solenv/inc/tg_scp.mk
@@ -0,0 +1,50 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#######################################################
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(SCP$(TNR)TARGETN)"!=""
+
+# try to get missing parfiles
+$(PAR)/%.par : $(SOLARPARDIR)/%.par
+ @@-$(MKDIRHIER) $(@:d:d)
+ $(COMMAND_ECHO)$(COPY) $< $@
+
+LOCALSCP$(TNR)FILES=$(foreach,i,$(SCP$(TNR)FILES) $(foreach,j,$(SCP$(TNR)LINK_PRODUCT_TYPE) $(PAR)/$j/$i ))
+
+$(SCP$(TNR)TARGETN): $(LOCALSCP$(TNR)FILES)
+ @echo "Making: " $(@:f)
+ @@-$(MKDIRHIER) $(BIN)/$(SCP$(TNR)LINK_PRODUCT_TYPE)
+ $(COMMAND_ECHO)$(SCPLINK) $(SCPLINKFLAGS) @@$(mktmp $(foreach,i,$(SCP$(TNR)FILES) $(subst,$(@:d:d:d), $(@:d:d))/$(i:+","))) -o $@
+.ENDIF
+
+# Anweisungen fuer das Linken
+# unroll end
+#######################################################
+
diff --git a/solenv/inc/tg_sdi.mk b/solenv/inc/tg_sdi.mk
new file mode 100644
index 000000000000..a515fc1ed13a
--- /dev/null
+++ b/solenv/inc/tg_sdi.mk
@@ -0,0 +1,59 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#######################################################
+# instructions for ???
+# unroll begin
+
+.IF "$(HIDSID$(TNR)PARTICLE)"!=""
+$(HIDSID$(TNR)PARTICLE): $(SDI$(TNR)TARGET)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@.$(ROUT).tmp $@
+ @$(TYPE) $(MISC)/$(SDI$(TNR)NAME).sid | $(AWK) '$$1=="#define" { print $$2, $$3 }' > $@.$(ROUT).tmp
+ @-$(RM) $@
+ @$(RENAME) $@.$(ROUT).tmp $@
+.ENDIF # "$(HIDSID$(TNR)PARTICLE)"!=""
+
+.IF "$(SDI$(TNR)TARGET)"!=""
+$(SDI$(TNR)TARGET): $(SVSDI$(TNR)DEPEND) $(SDI$(TNR)NAME).sdi
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(SVIDL) @$(mktmp \
+ $(VERBOSITY) \
+ -fs$(INCCOMX)/$(SDI$(TNR)NAME).hxx \
+ -fd$(INCCOMX)/$(SDI$(TNR)NAME).ilb \
+ -fm$(MISC)/$(SDI$(TNR)NAME).don \
+ -fl$(MISC)/$(SDI$(TNR)NAME).lst \
+ -fx$(SDI$(TNR)EXPORT).sdi \
+ -fz$(MISC)/$(SDI$(TNR)NAME).sid \
+ $(SDI$(TNR)NAME).sdi -I$(MISC) -I$(SVSDIINC) -I$(INC) $(INCLUDE))
+.ENDIF # "$(SDI$(TNR)TARGET)"!=""
+
+# Instruction for ???
+# unroll end
+#######################################################
+
diff --git a/solenv/inc/tg_shl.mk b/solenv/inc/tg_shl.mk
new file mode 100644
index 000000000000..170947c21c4a
--- /dev/null
+++ b/solenv/inc/tg_shl.mk
@@ -0,0 +1,645 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#######################################################
+# targets for linking
+# unroll begin
+
+.IF "$(SHL$(TNR)TARGETN)"!=""
+
+.IF "$(OS)"=="AIX"
+SHL$(TNR)STDLIBS=
+.ENDIF
+
+.IF "$(SHLLINKARCONLY)" != ""
+SHL$(TNR)STDLIBS=
+STDSHL=
+.ELSE
+SHL$(TNR)ARCHIVES=
+.ENDIF
+
+# decide how to link
+.IF "$(SHL$(TNR)CODETYPE)"=="C"
+SHL$(TNR)LINKER=$(LINKC)
+SHL$(TNR)STDSHL=$(subst,CPPRUNTIME, $(STDSHL))
+SHL$(TNR)LINKFLAGS+=$(LINKCFLAGS)
+.ELSE # "$(SHL$(TNR)CODETYPE)"=="C"
+SHL$(TNR)LINKER=$(LINK)
+SHL$(TNR)STDSHL=$(subst,CPPRUNTIME,$(STDLIBCPP) $(STDSHL))
+SHL$(TNR)LINKFLAGS+=$(LINKFLAGS)
+.ENDIF # "$(SHL$(TNR)CODETYPE)"=="C"
+
+SHL$(TNR)RPATH*=OOO
+LINKFLAGSRUNPATH_$(SHL$(TNR)RPATH)*=/ERROR:/Bad_SHL$(TNR)RPATH_value
+SHL$(TNR)LINKFLAGS+=$(LINKFLAGSRUNPATH_$(SHL$(TNR)RPATH))
+
+.IF "$(SHL$(TNR)USE_EXPORTS)"==""
+SHL$(TNR)DEF*=$(MISC)/$(SHL$(TNR)TARGET).def
+.ENDIF # "$(SHL$(TNR)USE_EXPORTS)"==""
+
+EXTRALIBPATHS$(TNR)=$(EXTRALIBPATHS)
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL$(TNR)NOCHECK)"==""
+.IF "$(SOLAR_STLLIBPATH)"!=""
+EXTRALIBPATHS$(TNR)+=-L$(SOLAR_STLLIBPATH)
+.ENDIF
+.ENDIF # "$(SHL$(TNR)NOCHECK)"!=""
+.ENDIF
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#+++++++++++ version object ++++++++++++++++++++++++++++++++++++++++
+#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+.IF "$(L10N_framework)"==""
+.IF "$(VERSIONOBJ)"!=""
+SHL$(TNR)VERSIONOBJ:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}$(VERSIONOBJ:f)
+USE_VERSIONH:=$(INCCOM)/$(SHL$(TNR)VERSIONOBJ:b).h
+.IF "$(GUI)" == "UNX"
+SHL$(TNR)VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}$(VERSIONOBJ:f:s/.o/.obj/)
+.ELSE # "$(GUI)" == "UNX"
+SHL$(TNR)VERSIONOBJDEP:=$(VERSIONOBJ:d){$(subst,$(DLLPOSTFIX),_dflt $(SHL$(TNR)TARGET))}$(VERSIONOBJ:f)
+.ENDIF # "$(GUI)" == "UNX"
+$(MISC)/$(SHL$(TNR)VERSIONOBJ:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL$(TNR)VERSIONOBJ:b).h
+# $(COPY) $(SOLARENV)/src/version.c $@
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL$(TNR)VERSIONOBJ:b).h/ > $@
+
+.INIT : $(SHL$(TNR)VERSIONOBJDEP)
+.ENDIF # "$(VERSIONOBJ)"!=""
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+.IF "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL$(TNR)IMPLIB)" == ""
+SHL$(TNR)IMPLIB=i$(TARGET)_t$(TNR)
+.ENDIF # "$(SHL$(TNR)IMPLIB)" == ""
+.IF "$(COM)" != "GCC"
+USE_$(TNR)IMPLIB=-implib:$(LB)/$(SHL$(TNR)IMPLIB).lib
+.ENDIF # "$(COM)" != "GCC"
+SHL$(TNR)IMPLIBN=$(LB)/$(SHL$(TNR)IMPLIB).lib
+ALLTAR : $(SHL$(TNR)IMPLIBN)
+
+.IF "$(USE_DEFFILE)"==""
+USE_$(TNR)IMPLIB_DEPS=$(LB)/$(SHL$(TNR)IMPLIB).lib
+.ENDIF # "$(USE_DEFFILE)"==""
+.ENDIF # "$(GUI)" == "WNT" || "$(GUI)" == "OS2"
+USE_SHL$(TNR)DEF=$(SHL$(TNR)DEF)
+.ELSE # "$(GUI)" != "UNX"
+USE_SHL$(TNR)DEF=
+SHL$(TNR)DEPN+:=$(SHL$(TNR)DEPNU)
+
+.IF "$(SHL$(TNR)VERSIONMAP)"==""
+# to activate vmaps remove "#"
+USE_SHL$(TNR)VERSIONMAP=$(MISC)/$(SHL$(TNR)TARGET).vmap
+.ENDIF # "$(SHL$(TNR)VERSIONMAP)"==""
+
+.IF "$(USE_SHL$(TNR)VERSIONMAP)"!=""
+
+.IF "$(SHL$(TNR)FILTERFILE)"!=""
+.IF "$(SHL$(TNR)VERSIONMAP)"!=""
+#eine von beiden ist zuviel
+USE_SHL$(TNR)VERSIONMAP=$(MISC)/$(SHL$(TNR)TARGET).vmap
+$(USE_SHL$(TNR)VERSIONMAP) .PHONY:
+ @echo -----------------------------
+ @echo you should only use versionmap OR exportfile
+ @echo -----------------------------
+# force_dmake_to_error
+
+.ENDIF # "$(SHL$(TNR)VERSIONMAP)"!=""
+
+SHL$(TNR)VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL$(TNR)VERSIONMAP)
+
+$(USE_SHL$(TNR)VERSIONMAP): \
+ $(SHL$(TNR)OBJS)\
+ $(SHL$(TNR)LIBS)\
+ $(SHL$(TNR)FILTERFILE)
+ @$(RM) $@.dump
+.IF "$(SHL$(TNR)OBJS)"!=""
+# dump remaining objects on the fly
+.IF "$(OS)"=="MACOSX"
+ @-nm $(SHL$(TNR)OBJS:s/.obj/.o/) > $@.dump
+.ELSE
+ @nm $(SHL$(TNR)OBJS:s/.obj/.o/) > $@.dump
+.ENDIF
+.ENDIF # "$(SHL$(TNR)OBJS)!"=""
+ @$(TYPE) /dev/null $(SHL$(TNR)LIBS:s/.lib/.dump/) >> $@.dump
+ $(COMMAND_ECHO) $(PERL) $(SOLARENV)/bin/mapgen.pl -d $@.dump -s $(SHL$(TNR)INTERFACE) -f $(SHL$(TNR)FILTERFILE) -m $@
+
+.ELSE # "$(SHL$(TNR)FILTERFILE)"!=""
+USE_SHL$(TNR)VERSIONMAP=$(MISC)/$(SHL$(TNR)TARGET).vmap
+$(USE_SHL$(TNR)VERSIONMAP) :
+.IF "$(VERBOSE)" == "TRUE"
+ @echo -----------------------------
+ @echo SHL$(TNR)FILTERFILE not set!
+ @echo -----------------------------
+ @$(TOUCH) $@
+ @echo dummy file to keep the dependencies for later use.
+.ELSE
+ @$(TOUCH) $@
+.ENDIF
+# force_dmake_to_error
+.ENDIF # "$(SHL$(TNR)FILTERFILE)"!=""
+.ELSE # "$(USE_SHL$(TNR)VERSIONMAP)"!=""
+
+#and now for the plain non-generic way...
+.IF "$(SHL$(TNR)VERSIONMAP)"!=""
+USE_SHL$(TNR)VERSIONMAP=$(MISC)/$(SHL$(TNR)VERSIONMAP:b)_$(SHL$(TNR)TARGET)$(SHL$(TNR)VERSIONMAP:e)
+SHL$(TNR)VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL$(TNR)VERSIONMAP)
+
+.IF "$(OS)"=="MACOSX"
+$(USE_SHL$(TNR)VERSIONMAP): $(SHL$(TNR)OBJS) $(SHL$(TNR)LIBS)
+.ENDIF
+
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL$(TNR)VERSIONMAP) .ERRREMOVE: $(SHL$(TNR)VERSIONMAP)
+ @@-$(RM) -f $@
+# The following files will only be generated and needed on Mac OS X as temporary files
+# in order to generate exported symbols list out of Linux/Solaris map files
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) -f $@.symregexp >& $(NULLDEV)
+ @-$(RM) -f $@.expsymlist >& $(NULLDEV)
+.ENDIF
+# Its questionable if the following condition '.IF "$(COMID)"=="gcc3"' makes sense and what
+# happens if somebody will change it in the future
+.IF "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL$(TNR)VERSIONMAP) | $(AWK) -f $(SOLARENV)/bin/addsym.awk > $@
+.ELIF "$(COMNAME)"=="sunpro5"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL$(TNR)VERSIONMAP) | $(GREP) -v $(IGNORE_SYMBOLS) > $@
+.ELSE # "$(COMID)"=="gcc3"
+ $(COMMAND_ECHO) tr -d "\015" < $(SHL$(TNR)VERSIONMAP) > $@
+.ENDIF # "$(COMID)"=="gcc3"
+ @chmod a+w $@
+# Mac OS X post-processing generate an exported symbols list from the generated map file
+# for details on exported symbols list see man ld on Mac OS X
+.IF "$(OS)"=="MACOSX"
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep -v "\*\|?" > $@.exported-symbols
+ @-cat $@ | $(AWK) -f $(SOLARENV)/bin/unxmap-to-macosx-explist.awk | grep "\*\|?" > $@.symbols-regexp
+# Shared libraries will be build out of the *.obj files specified in SHL?OBJS and SHL?LIBS
+# Extract RTTI symbols from all the objects that will be used to build a shared library
+.IF "$(SHL$(TNR)OBJS)"!=""
+ -echo $(foreach,i,$(SHL$(TNR)OBJS:s/.obj/.o/) $i) | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+.IF "$(SHL$(TNR)LIBS)"!=""
+ $(COMMAND_ECHO)-$(TYPE) $(foreach,j,$(SHL$(TNR)LIBS) $j) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g | xargs -n1 nm -gx | $(SOLARENV)/bin/addsym-macosx.sh $@.symbols-regexp $@.symbols-regexp.tmp >> $@.exported-symbols
+.ENDIF
+# overwrite the map file generate into the local output tree with the generated
+# exported symbols list
+ cp $@.exported-symbols $@
+.ENDIF # .IF "$(OS)"=="MACOSX"
+.ENDIF # "$(SHL$(TNR)VERSIONMAP)"!=""
+.ENDIF # "$(USE_SHL$(TNR)VERSIONMAP)"!=""
+.ENDIF # "$(GUI)" != "UNX"
+
+.IF "$(UNIXVERSIONNAMES)"!=""
+.IF "$(OS)"!="MACOSX"
+.IF "$(GUI)"=="UNX"
+SHL$(TNR)SONAME=\"$(SONAME_SWITCH)$(SHL$(TNR)TARGETN:f)\"
+.ENDIF # "$(GUI)"!="UNX"
+.ENDIF # "$(OS)"!="MACOSX"
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+
+.IF "$(SHL$(TNR)RES)"!=""
+SHL$(TNR)ALLRES+=$(SHL$(TNR)RES)
+SHL$(TNR)LINKRES*=$(MISC)/$(SHL$(TNR)TARGET).res
+SHL$(TNR)LINKRESO*=$(MISC)/$(SHL$(TNR)TARGET)_res.o
+.ENDIF # "$(SHL$(TNR)RES)"!=""
+
+.IF "$(SHL$(TNR)DEFAULTRES)$(use_shl_versions)"!=""
+SHL$(TNR)DEFAULTRES*=$(MISC)/$(SHL$(TNR)TARGET)_def.res
+SHL$(TNR)ALLRES+=$(SHL$(TNR)DEFAULTRES)
+SHL$(TNR)LINKRES*=$(MISC)/$(SHL$(TNR)TARGET).res
+SHL$(TNR)LINKRESO*=$(MISC)/$(SHL$(TNR)TARGET)_res.o
+.ENDIF # "$(SHL$(TNR)DEFAULTRES)$(use_shl_versions)"!=""
+
+#.IF "$(SHL$(TNR)TARGETN)"!=""
+
+.IF "$(linkinc)"!=""
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(SHL$(TNR)LIBS)"!=""
+$(MISC)/$(SHL$(TNR)TARGET)_linkinc.ls .PHONY:
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL$(TNR)LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL$(TNR)LIBS)"!=""
+.ENDIF
+
+LINKINCTARGETS+=$(MISC)/$(SHL$(TNR)TARGETN:b)_linkinc.ls
+$(SHL$(TNR)TARGETN) : $(LINKINCTARGETS)
+
+.ELSE
+.IF "$(SHL$(TNR)USE_EXPORTS)"=="name"
+.IF "$(GUI)"=="WNT" || "$(GUI)" == "OS2"
+.IF "$(COM)"!="GCC"
+.IF "$(SHL$(TNR)LIBS)"!=""
+SHL$(TNR)LINKLIST=$(MISC)/$(SHL$(TNR)TARGET)_link.lst
+SHL$(TNR)LINKLISTPARAM=@$(SHL$(TNR)LINKLIST)
+$(SHL$(TNR)LINKLIST) : $(SHL$(TNR)LIBS)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(SED) -f $(SOLARENV)/bin/chrel.sed $(foreach,i,$(SHL$(TNR)LIBS) $(i:s/.lib/.lin/)) >> $@
+.ENDIF # "$(SHL$(TNR)LIBS)"!=""
+.ENDIF # "$(COM)"!="GCC"
+.ENDIF
+.ENDIF # "$(SHL$(TNR)USE_EXPORTS)"=="name"
+
+$(MISC)/%linkinc.ls:
+ @echo . > $@
+.ENDIF # "$(linkinc)"!=""
+
+.IF "$(GUI)" == "OS2"
+#21/02/2006 YD dll names must be 8.3, invoke fix script
+#check osl/os2/module.c/osl_loadModule()
+SHL$(TNR)TARGET8=$(shell @fix_shl $(SHL$(TNR)TARGET))
+.ENDIF
+
+.IF "$(GUI)" == "OS2"
+_SHL$(TNR)IMP_ORD = $(SHL$(TNR)STDLIBS:^"$(SOLARVERSION)/$(INPATH)/lib/") $(SHL$(TNR)STDLIBS:^"$(LB)/")
+SHL$(TNR)IMP_ORD = $(foreach,i,$(_SHL$(TNR)IMP_ORD) $(shell @-ls $i))
+.ELSE
+SHL$(TNR)IMP_ORD =
+.ENDIF
+
+
+$(SHL$(TNR)TARGETN) : \
+ $(SHL$(TNR)OBJS)\
+ $(SHL$(TNR)LIBS)\
+ $(USE_$(TNR)IMPLIB_DEPS)\
+ $(USE_SHL$(TNR)DEF)\
+ $(USE_SHL$(TNR)VERSIONMAP)\
+ $(SHL$(TNR)RES)\
+ $(SHL$(TNR)DEPN) \
+ $(SHL$(TNR)IMP_ORD) \
+ $(SHL$(TNR)LINKLIST)
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(SHL$(TNR)DEFAULTRES)"!=""
+ @@-$(RM) $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+.IF "$(SHL$(TNR)ICON)" != ""
+ @echo 1 ICON $(SHL$(TNR)ICON) >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL$(TNR)ADD_VERINFO)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL$(TNR)ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+.ELSE # "$(SHL$(TNR)ADD_VERINFO)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+.ENDIF # "$(SHL$(TNR)ADD_VERINFO)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL$(TNR)TARGET)$(DLLPOST) >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL$(TNR)TARGET:b) >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+.ENDIF # "$(SHL$(TNR)DEFAULTRES)"!=""
+.IF "$(SHL$(TNR)ALLRES)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL$(TNR)ALLRES) > $(SHL$(TNR)LINKRES)
+.IF "$(COM)"=="GCC"
+ windres $(SHL$(TNR)LINKRES) $(SHL$(TNR)LINKRESO)
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(SHL$(TNR)ALLRES)"!=""
+.IF "$(COM)"=="GCC" # always have to call dlltool explicitly as ld cannot handle # comment in .def
+ @echo dlltool --dllname $(SHL$(TNR)TARGET)$(DLLPOST) \
+ --kill-at \\ > $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ @noop $(assign ALL$(TNR)OBJLIST:=$(STDOBJ) $(SHL$(TNR)OBJS) $(SHL$(TNR)LINKRESO) $(shell $(TYPE) /dev/null $(SHL$(TNR)LIBS) | $(SED) s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+.IF "$(DEFLIB$(TNR)NAME)"!="" # do not have to include objs
+ @noop $(assign DEF$(TNR)OBJLIST:=$(shell $(TYPE) $(foreach,i,$(DEFLIB$(TNR)NAME) $(SLB)/$(i).lib) | sed s?$(ROUT)?$(PRJ)/$(ROUT)?g))
+ @noop $(foreach,i,$(DEF$(TNR)OBJLIST) $(assign ALL$(TNR)OBJLIST:=$(ALL$(TNR)OBJLIST:s?$i??)))
+.ENDIF # "$(DEFLIB$(TNR)NAME)"!=""
+ @echo --output-exp $(MISC)/$(@:b)_exp.o \\ >> $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+.IF "$(SHL$(TNR)DEF)"!=""
+ @echo --input-def $(SHL$(TNR)DEF) \\ >> $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+.ELSE
+ @echo $(SHL$(TNR)VERSIONOBJ) $(SHL$(TNR)DESCRIPTIONOBJ) \\ >> $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+.ENDIF
+ @echo $(ALL$(TNR)OBJLIST) >> $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ @echo $(LINK) $(LINKFLAGS) $(LINKFLAGSSHL) $(MINGWSSTDOBJ) -o $@ \
+ $(STDOBJ) $(SHL$(TNR)VERSIONOBJ) $(SHL$(TNR)DESCRIPTIONOBJ) $(SHL$(TNR)OBJS) $(SHL$(TNR)LINKRESO) \
+ `$(TYPE) /dev/null $(SHL$(TNR)LIBS) | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ -Wl,--exclude-libs,ALL,--start-group $(SHL$(TNR)STDLIBS) -Wl,--end-group \
+ $(SHL$(TNR)STDSHL) $(STDSHL$(TNR)) $(MISC)/$(@:b)_exp.o $(MINGWSSTDENDOBJ) \
+ -Wl,-Map,$(MISC)/$(@:b).map >> $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @$(TYPE) $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+.ELSE
+.IF "$(linkinc)"==""
+.IF "$(SHL$(TNR)USE_EXPORTS)"!="name"
+.IF "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL$(TNR)LINKER) @$(mktmp \
+ $(SHL$(TNR)LINKFLAGS) \
+ $(LINKFLAGSSHL) \
+ $(SHL$(TNR)STACK) $(SHL$(TNR)BASEX) \
+ -out:$@ \
+ -map:$(MISC)/$(@:b).map \
+ -def:$(SHL$(TNR)DEF) \
+ $(USE_$(TNR)IMPLIB) \
+ $(STDOBJ) \
+ $(SHL$(TNR)VERSIONOBJ) $(SHL$(TNR)OBJS) \
+ $(SHL$(TNR)LIBS) \
+ $(SHL$(TNR)STDLIBS) \
+ $(SHL$(TNR)STDSHL) $(STDSHL$(TNR)) \
+ $(SHL$(TNR)LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(COMMAND_ECHO)$(SHL$(TNR)LINKER) @$(mktmp $(SHL$(TNR)LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL$(TNR)BASEX) \
+ $(SHL$(TNR)STACK) -out:$(SHL$(TNR)TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(LB)/$(SHL$(TNR)IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL$(TNR)OBJS) $(SHL$(TNR)VERSIONOBJ) \
+ $(SHL$(TNR)LIBS) \
+ $(SHL$(TNR)STDLIBS) \
+ $(SHL$(TNR)STDSHL) $(STDSHL$(TNR)) \
+ $(SHL$(TNR)LINKRES) \
+ ) $(LINKOUTPUTFILTER)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+.ELSE # "$(SHL$(TNR)USE_EXPORTS)"!="name"
+ $(COMMAND_ECHO)$(SHL$(TNR)LINKER) @$(mktmp $(SHL$(TNR)LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL$(TNR)BASEX) \
+ $(SHL$(TNR)STACK) -out:$(SHL$(TNR)TARGETN) \
+ -map:$(MISC)/$(@:B).map \
+ $(USE_$(TNR)IMPLIB) \
+ $(STDOBJ) \
+ $(SHL$(TNR)OBJS) $(SHL$(TNR)VERSIONOBJ)) \
+ $(SHL$(TNR)LINKLISTPARAM) \
+ @$(mktmp $(SHL$(TNR)STDLIBS) \
+ $(SHL$(TNR)STDSHL) $(STDSHL$(TNR)) \
+ $(SHL$(TNR)LINKRES) \
+ )
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(SHL$(TNR)USE_EXPORTS)"!="name"
+.ELSE # "$(linkinc)"==""
+ $(COMMAND_ECHO)-$(RM) del $(MISC)/$(SHL$(TNR)TARGET).lnk
+ $(COMMAND_ECHO)-$(RM) $(MISC)/$(SHL$(TNR)TARGET).lst
+ $(COMMAND_ECHO)$(TYPE) $(mktmp \
+ $(SHL$(TNR)LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL$(TNR)BASEX) \
+ $(SHL$(TNR)STACK) $(MAPFILE) \
+ -out:$@ \
+ $(LB)/$(SHL$(TNR)IMPLIB).exp \
+ $(STDOBJ) \
+ $(SHL$(TNR)OBJS) \
+ $(SHL$(TNR)STDLIBS) \
+ $(SHL$(TNR)STDSHL) $(STDSHL$(TNR)) \
+ $(SHL$(TNR)LINKRES) \
+ ) >> $(MISC)/$(SHL$(TNR)TARGET).lnk
+ $(COMMAND_ECHO)$(TYPE) $(MISC)/$(SHL$(TNR)TARGETN:b)_linkinc.ls >> $(MISC)/$(SHL$(TNR)TARGET).lnk
+ $(COMMAND_ECHO)$(SHL$(TNR)LINKER) @$(MISC)/$(SHL$(TNR)TARGET).lnk
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(linkinc)"==""
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)" == "WNT"
+.IF "$(GUI)"=="UNX"
+.IF "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(@:b).list
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ @echo $(STDSLO) $(SHL$(TNR)OBJS:s/.obj/.o/) \
+ $(SHL$(TNR)VERSIONOBJ) \
+ `cat /dev/null $(SHL$(TNR)LIBS) | sed s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` | tr -s " " "\n" > $(MISC)/$(@:b).list
+ @echo -n $(SHL$(TNR)LINKER) $(SHL$(TNR)LINKFLAGS) $(SHL$(TNR)VERSIONMAPPARA) $(LINKFLAGSSHL) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) -o $@ \
+ $(SHL$(TNR)STDLIBS) $(SHL$(TNR)ARCHIVES) $(SHL$(TNR)STDSHL) $(STDSHL$(TNR)) -filelist $(MISC)/$(@:b).list $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-dylib-link-list.pl \
+ `cat $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd` \
+ >> $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ @$(PERL) $(SOLARENV)/bin/macosx-change-install-names.pl \
+ shl $(SHL$(TNR)RPATH) $@
+ @echo "Making: " $(@:f).jnilib
+ @macosx-create-bundle $@
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL$(TNR)NOCHECK)"==""
+ $(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS$(TNR)) $(SHL$(TNR)TARGETN)
+.ENDIF # "$(SHL$(TNR)NOCHECK)"!=""
+.ENDIF
+.ELSE # "$(OS)"=="MACOSX"
+ @-$(RM) $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ @echo $(SHL$(TNR)LINKER) $(SHL$(TNR)LINKFLAGS) $(SHL$(TNR)SONAME) $(LINKFLAGSSHL) $(SHL$(TNR)VERSIONMAPPARA) -L$(PRJ)/$(ROUT)/lib $(SOLARLIB) $(STDSLO) $(SHL$(TNR)OBJS:s/.obj/.o/) \
+ $(SHL$(TNR)VERSIONOBJ) -o $@ \
+ `cat /dev/null $(SHL$(TNR)LIBS) | tr -s " " "\n" | $(SED) s\#$(ROUT)\#$(PRJ)/$(ROUT)\#g` \
+ $(SHL$(TNR)STDLIBS) $(SHL$(TNR)ARCHIVES) $(SHL$(TNR)STDSHL) $(STDSHL$(TNR)) $(LINKOUTPUT_FILTER) > $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ .IF "$(VERBOSE)" == "TRUE"
+ @cat $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+ .ENDIF
+ @+source $(MISC)/$(TARGET).$(@:b)_$(TNR).cmd
+.IF "$(UPDATER)"=="YES"
+.IF "$(SHL$(TNR)NOCHECK)"==""
+ $(COMMAND_ECHO)-$(RM) $(SHL$(TNR)TARGETN:d)check_$(SHL$(TNR)TARGETN:f)
+ $(COMMAND_ECHO)$(RENAME) $(SHL$(TNR)TARGETN) $(SHL$(TNR)TARGETN:d)check_$(SHL$(TNR)TARGETN:f)
+.IF "$(VERBOSE)"=="TRUE"
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS$(TNR)) $(SHL$(TNR)TARGETN:d)check_$(SHL$(TNR)TARGETN:f)
+.ELSE
+ $(COMMAND_ECHO)$(SOLARENV)/bin/checkdll.sh -L$(LB) -L$(SOLARLIBDIR) $(EXTRALIBPATHS$(TNR)) -- -s $(SHL$(TNR)TARGETN:d)check_$(SHL$(TNR)TARGETN:f)
+.ENDIF
+.ENDIF # "$(SHL$(TNR)NOCHECK)"!=""
+.ENDIF # "$(UPDATER)"=="YES"
+.ENDIF # "$(OS)"=="MACOSX"
+.IF "$(UNIXVERSIONNAMES)"!=""
+ $(COMMAND_ECHO)$(RM) $(LB)/$(SHL$(TNR)TARGETN:b)
+ $(COMMAND_ECHO)cd $(LB) && ln -s $(SHL$(TNR)TARGETN:f) $(SHL$(TNR)TARGETN:b)
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+.IF "$(VERBOSE)" == "TRUE"
+ @ls -l $@
+.ENDIF
+.ENDIF # "$(GUI)" == "UNX"
+
+.IF "$(GUI)" == "OS2"
+
+.IF "$(SHL$(TNR)DEFAULTRES)"!=""
+ @+-$(RM) $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc >& $(NULLDEV)
+.IF "$(SHL$(TNR)ICON)" != ""
+ @-+echo 1 ICON $(SHL$(TNR)ICON) >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+.ENDIF
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL$(TNR)ADD_VERINFO)"!=""
+ @-+echo $(EMQ)#include $(EMQ)"$(SHL$(TNR)ADD_VERINFO)$(EMQ)" >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+.ENDIF # "$(SHL$(TNR)ADD_VERINFO)"!=""
+ @-+echo MENU 1 BEGIN END >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+# @-+echo $(EMQ)RCDATA 1 { "Build string here" }$(EMQ) >> $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+# YD 04/07/06 seems null, confuses rc cli: -i $(SOLARTESDIR)
+ $(COMMAND_ECHO)$(RC) -r -DOS2 $(INCLUDE) $(RCLINKFLAGS) $(MISC)/$(SHL$(TNR)DEFAULTRES:b).rc
+.ENDIF # "$(SHL$(TNR)DEFAULTRES)"!=""
+
+.IF "$(SHL$(TNR)ALLRES)"!=""
+ $(COMMAND_ECHO)+$(TYPE) $(SHL$(TNR)ALLRES) > $(SHL$(TNR)LINKRES)
+.ENDIF # "$(SHL$(TNR)ALLRES)"!=""
+
+.IF "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL$(TNR)LINKER) $(SHL$(TNR)LINKFLAGS) $(LINKFLAGSSHL) -o $@ \
+ $(SHL$(TNR)DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL$(TNR)OBJS) $(SHL$(TNR)VERSIONOBJ) \
+ $(SHL$(TNR)LIBS) \
+ $(SHL$(TNR)STDLIBS:^"-l") \
+ $(SHL$(TNR)LINKRES) \
+ $(SHL$(TNR)STDSHL:^"-l") $(STDSHL$(TNR):^"-l")
+
+.ELSE # "$(USE_DEFFILE)"!=""
+
+ $(COMMAND_ECHO)$(SHL$(TNR)LINKER) -v $(SHL$(TNR)LINKFLAGS) \
+ $(LINKFLAGSSHL) $(SHL$(TNR)BASEX) \
+ $(SHL$(TNR)STACK) -o $(SHL$(TNR)TARGETN) \
+ $(SHL$(TNR)DEF) \
+ $(STDOBJ) \
+ -L$(LB) \
+ -L$(SOLARVERSION)/$(INPATH)/lib \
+ $(SHL$(TNR)OBJS) $(SHL$(TNR)VERSIONOBJ) \
+ $(SHL$(TNR)LIBS) \
+ $(SHL$(TNR)STDLIBS:^"-l") \
+ $(SHL$(TNR)LINKRES) \
+ $(SHL$(TNR)STDSHL:^"-l") $(STDSHL$(TNR):^"-l") \
+ $(LINKOUTPUTFILTER)
+ @$(LS) $@ >& $(NULLDEV)
+
+.ENDIF # "$(USE_DEFFILE)"!=""
+
+.IF "$(SHL$(TNR)TARGET8)" != "$(SHL$(TNR)TARGET)"
+ $(COMMAND_ECHO)+$(COPY) $@ $(@:d)$(SHL$(TNR)TARGET8).dll
+.ENDIF
+
+.ENDIF # "$(GUI)" == "OS2"
+
+
+.IF "$(TESTDIR)"!=""
+.IF "$(NO_TESTS)"==""
+
+ALLTAR : runtest_$(SHL$(TNR)TARGET)
+
+runtest_$(SHL$(TNR)TARGET) : $(SHL$(TNR)TARGETN)
+ testshl $(SHL$(TNR)TARGETN) sce/$(SHL$(TNR)TARGET).sce -msg -skip
+.ENDIF # "$(NO_TESTS)"==""
+.ENDIF # "$(TESTDIR)"!=""
+.ENDIF # "$(SHL$(TNR)TARGETN)"!=""
+
+# unroll end
+#######################################################
+
+#-------------------------------------------------------------------------
+
+#######################################################
+# Anweisungen fuer das Linken
+# unroll begin
+
+.IF "$(SHL$(TNR)IMPLIBN)" != ""
+
+.IF "$(UPDATER)"=="YES"
+USELIB$(TNR)DEPN+=$(SHL$(TNR)LIBS)
+.ELSE
+.ENDIF
+
+.IF "$(USE_DEFFILE)"!=""
+USE_SHL$(TNR)TARGET=$(SHL$(TNR)TARGETN)
+.ENDIF
+
+.IF "$(GUI)" != "UNX"
+$(SHL$(TNR)IMPLIBN): \
+ $(SHL$(TNR)DEF) \
+ $(USE_SHL$(TNR)TARGET) \
+ $(USELIB$(TNR)DEPN) \
+ $(USELIBDEPN)
+.ELSE
+$(SHL$(TNR)IMPLIBN): \
+ $(SHL$(TNR)LIBS)
+.ENDIF
+ @echo "Making: " $(@:f)
+.IF "$(GUI)" == "WNT"
+.IF "$(COM)"=="GCC"
+ @echo no ImportLibs on mingw
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ELSE # "$(COM)=="GCC"
+# bei use_deffile implib von linker erstellt
+.IF "$(USE_DEFFILE)"==""
+ $(IMPLIB) $(IMPLIBFLAGS) @$(mktmp -out:$(SHL$(TNR)IMPLIBN) \
+ -def:$(SHL$(TNR)DEF) )
+.ELSE # "$(USE_DEFFILE)==""
+ @echo build of $(SHL$(TNR)TARGETN) creates $@
+ @$(TOUCH) $@
+.ENDIF # "$(USE_DEFFILE)==""
+.ENDIF # "$(COM)"=="GCC"
+
+.ELIF "$(GUI)" == "OS2"
+
+# touch creates an empty file, but this is not good for emxomfar, so
+# create a dummy lib here
+ $(COMMAND_ECHO)-$(LIBMGR) $(LIBFLAGS) $@ $(SHL$(TNR)VERSIONOBJ)
+ +@echo build of $(SHL$(TNR)TARGETN) creates $@
+
+.ELSE
+ @echo no ImportLibs on Mac and *ix
+ @-$(RM) $@
+ @$(TOUCH) $@
+.ENDIF
+.ENDIF
+
+# unroll end
+#######################################################
+
diff --git a/solenv/inc/tg_slo.mk b/solenv/inc/tg_slo.mk
new file mode 100644
index 000000000000..0a0ae789a8c7
--- /dev/null
+++ b/solenv/inc/tg_slo.mk
@@ -0,0 +1,98 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+MKFILENAME:=TG_SLO.MK
+
+.IF "$(SLOTARGET)"!=""
+$(SLOTARGET): $(SLOFILES) $(IDLSLOFILES)
+.IF "$(MDB)" != ""
+ @echo $(SLOTARGET)
+ @echo $(&:+"\n")
+.ENDIF
+ @echo "Making: " $(@:f)
+# @$(RM) $@
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(foreach,i,$(SLOFILES:f) $(RSLO)/$(i)) | xargs -n1 > $@
+.ELSE
+.IF "$(LIBTARGET)"!="NO"
+ @-$(TYPE) $(mktmp $(&:+"\n")) > $(@:s/.lib/.lin/)
+.ENDIF # "$(LIBTARGET)"!="NO"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(&:+"\n"))
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="OS2"
+.IF "$(LIBTARGET)"!="NO"
+ @-$(TYPE) $(mktmp $(&:+"\n")) > $(@:s/.lib/.lin/)
+.ENDIF # "$(LIBTARGET)"!="NO"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(&)
+.ENDIF # "$(GUI)"=="OS2"
+
+.IF "$(GUI)"=="UNX"
+ @echo $(foreach,i,$(SLOFILES:f) $(RSLO)/$(i:s/.obj/.o/)) | xargs -n1 > $@
+.IF "$(OS)"=="MACOSX"
+ @-nm `cat $(SLOTARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ELSE
+ @nm `cat $(SLOTARGET) | sed s\#'^'$(ROUT)\#$(PRJ)/$(ROUT)\#g` > $(@:d)$(@:b).dump
+.ENDIF
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$(SLOTARGET)"!=""
+
+.IF "$(SECOND_BUILD)"!=""
+.IF "$($(SECOND_BUILD)SLOTARGET)"!=""
+$($(SECOND_BUILD)SLOTARGET): $(REAL_$(SECOND_BUILD)_SLOFILES)
+.IF "$(MDB)" != ""
+ @echo $(REAL_$(SECOND_BUILD)SLOTARGET)
+ @echo $(&:+"\n")
+.ENDIF
+ @echo "Making: " $(@:f)
+.IF "$(GUI)"=="WNT"
+.IF "$(COM)"=="GCC"
+ +$(ECHONL) $(foreach,i,$(REAL_$(SECOND_BUILD)_SLOFILES:f) $(RSLO)/$(i)) | xargs -n1 > $@
+.ELSE
+.IF "$(LIBTARGET)"!="NO"
+ @-$(TYPE) $(mktmp $(&:+"\n")) > $(@:s/.lib/.lin/)
+.ENDIF # "$(LIBTARGET)"!="NO"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) /OUT:$@ @$(mktmp $(&:+"\n"))
+
+.IF "$(GUI)"=="OS2"
+.IF "$(LIBTARGET)"!="NO"
+ @-$(TYPE) $(mktmp $(&:+"\n")) > $(@:s/.lib/.lin/)
+.ENDIF # "$(LIBTARGET)"!="NO"
+ $(COMMAND_ECHO)$(LIBMGR) $(LIBFLAGS) $@ $(&)
+.ENDIF # "$(GUI)"=="OS2"
+
+.ENDIF # "$(COM)"=="GCC"
+.ENDIF # "$(GUI)"=="WNT"
+
+.IF "$(GUI)"=="UNX"
+ @echo $(foreach,i,$(REAL_$(SECOND_BUILD)_SLOFILES:f) $(RSLO)/$(i:s/.obj/.o/)) | xargs -n1 > $@
+.ENDIF # "$(GUI)"=="UNX"
+.ENDIF # "$($(SECOND_BUILD)SLOTARGET)"!=""
+.ENDIF # "$(SECOND_BUILD)"!=""
diff --git a/solenv/inc/tg_srs.mk b/solenv/inc/tg_srs.mk
new file mode 100644
index 000000000000..4e70eb06b1b4
--- /dev/null
+++ b/solenv/inc/tg_srs.mk
@@ -0,0 +1,85 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#######################################################
+# unroll begin
+
+.IF "$(SRS$(TNR)NAME)"!=""
+.IF "$(BUILDHIDS)"!=""
+HID$(TNR)FILES=$(foreach,i,$(SRC$(TNR)FILES:f) $(SRS)/$(i:s/.src/.hid/))
+HIDSRS$(TNR)PARTICLE=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(SRS))/$(SRS$(TNR)NAME)_srs.hid
+$(HIDSRS$(TNR)PARTICLE) : $(HID$(TNR)FILES)
+ @echo "Making: " $(@:f)
+ @-$(RM) $@
+ $(COMMAND_ECHO)$(TYPE) $(mktmp $(subst,/,/ $(HID$(TNR)FILES))) | xargs -s 1000 cat > $@.$(ROUT).tmp
+ @$(RENAME) $@.$(ROUT).tmp $@
+
+ALLTAR : $(HIDSRS$(TNR)PARTICLE)
+
+.ENDIF # "$(BUILDHIDS)"!=""
+
+$(MISC)/$(TARGET).$(SRS$(TNR)NAME).dprr: $(LOCALIZE_ME_DEST)
+
+$(MISC)/$(TARGET).$(SRS$(TNR)NAME).dprr: $(SRC$(TNR)FILES) $(HIDSRS$(TNR)PARTICLE) $(HID$(TNR)FILES)
+ @echo "Making: " $(@:f)
+ @@-$(RM) $(MISC)/$(TARGET).$(SRS$(TNR)NAME).dprr
+ $(COMMAND_ECHO)$(RSC) $(VERBOSITY) $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) -I$(INCLOCPRJ) -I$(INCLOCAL) -I$(INC) -I$(INCCOM) $(RSCDEFS) $(RSCUPDVERDEF) -fp={$(SRS)/$(SRS$(TNR)NAME).srs} -fo=$@ -p=$(TARGET) $(SRC$(TNR)FILES)
+
+.IF "$(WITH_LANG)"!=""
+
+$(foreach,i,$(SRC$(TNR)FILES) $(COMMONMISC)/$(TARGET)/$i) : $$(@:f) $(LOCALIZESDF)
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(COMMONMISC)$/$(PRJNAME)
+ $(COMMAND_ECHO)$(WRAPCMD) $(TRANSEX) -p $(PRJNAME) -i $(@:f) -o $(@).$(INPATH) -m $(LOCALIZESDF) -l all
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+$(SRS)/$(SRS$(TNR)NAME).srs: $(LOCALIZE_ME_DEST)
+
+$(SRS)/$(SRS$(TNR)NAME).srs: $(foreach,i,$(SRC$(TNR)FILES) $(COMMONMISC)/$(TARGET)/$i)
+.ELSE # "$(WITH_LANG)"!=""
+$(SRS)/$(SRS$(TNR)NAME).srs: $(SRC$(TNR)FILES)
+.ENDIF # "$(WITH_LANG)"!=""
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)$(RSC) -presponse $(VERBOSITY) @$(mktmp \
+ $(SRSDEFAULT) $(RSC_SRS_CHARSET) $(RSCFLAGS) -I$(RSCEXTINC) \
+ $(INCLUDE) $(RSCDEFS) $(RSCUPDVERDEF) \
+ -fp=$@.$(INPATH) \
+ $< \
+ )
+ $(COMMAND_ECHO)-$(RM) $@
+ $(COMMAND_ECHO)$(RENAME) $@.$(INPATH) $@
+ $(COMMAND_ECHO)-$(RM) $@.$(INPATH)
+
+.ENDIF # "$(SRS$(TNR)NAME)"!=""
+
+# unroll end
+#######################################################
+
+
diff --git a/solenv/inc/tg_wntx64.mk b/solenv/inc/tg_wntx64.mk
new file mode 100644
index 000000000000..12e049763a84
--- /dev/null
+++ b/solenv/inc/tg_wntx64.mk
@@ -0,0 +1,514 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+###############################################
+# Windows 64 bit special
+# only used for 64 bit shell extension
+# ( Windows Vista )
+# ---------------------------------------------
+# THIS FILE WILL BE DELETED when a fully ported
+# Windows 64 bit version is available
+###############################################
+
+.IF "$(BUILD_X64)"!=""
+
+.IF "$(SLOTARGET_X64)"!=""
+$(SLOTARGET_X64): $(SLOFILES_X64) $(IDLSLOFILES_X64)
+.IF "$(MDB)" != ""
+ @echo $(SLOTARGET_X64)
+ @echo $(&:+"\n")
+.ENDIF
+ @echo ------------------------------
+ @echo Making: $@
+ @-$(MKDIR) $(SLB_X64)
+.IF "$(LIBTARGET)"!="NO"
+ @-$(TYPE) $(mktmp $(&:+"\n")) > $(@:s/.lib/.lin/)
+.ENDIF # "$(LIBTARGET)"!="NO"
+ $(LIBMGR_X64) $(LIBFLAGS_X64) /OUT:$@ @$(mktmp $(&:+"\n"))
+.ENDIF # "$(SLOTARGET_X64)"!=""
+
+
+# decide how to link
+.IF "$(SHL1CODETYPE)"=="C"
+SHL1LINKFLAGS_X64+=$(LINKCFLAGS_X64)
+.ELSE # "$(SHL1CODETYPE)"=="C"
+SHL1LINKFLAGS_X64+=$(LINKFLAGS_X64)
+.ENDIF # "$(SHL1CODETYPE)"=="C"
+
+.IF "$(SHL2CODETYPE)"=="C"
+SHL2LINKFLAGS_X64+=$(LINKCFLAGS_X64)
+.ELSE # "$(SHL2CODETYPE)"=="C"
+SHL2LINKFLAGS_X64+=$(LINKFLAGS_X64)
+.ENDIF # "$(SHL2CODETYPE)"=="C"
+
+.IF "$(SHL1IMPLIB_X64)" == ""
+SHL1IMPLIB_X64=i$(TARGET)_t1
+.ENDIF # "$(SHL1IMPLIB_X64)" == ""
+USE_1IMPLIB_X64=-implib:$(LB_X64)/$(SHL1IMPLIB_X64).lib
+.IF "$(SHL1TARGET_X64)"!=""
+SHL1IMPLIBN_X64=$(LB_X64)/$(SHL1IMPLIB_X64).lib
+.ENDIF # "$(SLOFILES_X64)$(OBJFILES_X64)"!=""
+
+make_x64_dirs :
+ -$(MKDIR) $(BIN_X64)
+ -$(MKDIR) $(MISC_X64)
+ -$(MKDIR) $(LB_X64)
+ -$(MKDIR) $(SLB_X64)
+
+
+.IF "$(LIBTARGET)" == ""
+ALLTAR : $(SHL1IMPLIBN_X64)
+.ENDIF "$(LIBTARGET)" == ""
+
+# ----------------------------- lib ------------------------------------------
+.IF "$(LIB1TARGET_X64)" != ""
+$(LIB1TARGET_X64) : $(LIB1FILES_X64) \
+ $(LIB1OBJFILES_X64) \
+ $(LIB1DEPN_X64)
+ @echo using: $(LIB1FILES_X64)
+ @echo using: $(LIB1TARGET_X64)
+ @echo ------------------------------
+ @echo Making: $@
+ -$(MKDIR) $(SLB_X64)
+ @@-$(RM) $@
+ $(LIBMGR_X64) $(LIBFLAGS_X64) /OUT:$@ @$(mktmp $(LIB1FILES_X64) $(LIB1OBJFILES_X64))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB1OBJFILES_X64)"!=""
+ @$(TYPE) $(mktmp $(LIB1OBJFILES_X64)) > $(null,$(LIB1OBJFILES_X64) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB1OBJFILES_X64)"!=""
+.IF "$(LIB1FILES_X64)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB1FILES_X64) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB1FILES_X64)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB1TARGET_X64)" != ""
+
+.IF "$(LIB2TARGET_X64)" != ""
+$(LIB2TARGET_X64) : $(LIB2FILES_X64) \
+ $(LIB2OBJFILES_X64) \
+ $(LIB2DEPN_X64)
+ @echo using: $(LIB2FILES_X64)
+ @echo using: $(LIB2TARGET_X64)
+ @echo ------------------------------
+ @echo Making: $@
+ -$(MKDIR) $(SLB_X64)
+ @@-$(RM) $@
+ $(LIBMGR_X64) $(LIBFLAGS_X64) /OUT:$@ @$(mktmp $(LIB2FILES_X64) $(LIB2OBJFILES_X64))
+ @-$(RM) $(@:s/.lib/.lin/)
+.IF "$(LIB2OBJFILES_X64)"!=""
+ @$(TYPE) $(mktmp $(LIB2OBJFILES_X64)) > $(null,$(LIB2OBJFILES_X64) $(NULLDEV) $(@:s/.lib/.lin/))
+.ENDIF # "$(LIB2OBJFILES_X64)"!=""
+.IF "$(LIB2FILES_X64)"!=""
+ @-$(TYPE) $(foreach,i,$(LIB2FILES_X64) $(i:s/.lib/.lin/)) >> $(@:s/.lib/.lin/)
+.ENDIF # "$(LIB2FILES_X64)"!=""
+ @$(ECHONL)
+.ENDIF # "$(LIB2TARGET_X64)" != ""
+
+# -------------- def ----------------------
+.IF "$(DEF1TARGETN_X64)"!=""
+$(DEF1TARGETN_X64) : \
+ $(DEF1DEPN_X64) \
+ $(DEF1EXPORTFILE_X64)
+ @-$(MKDIR) $(MISC_X64)
+ @-$(RM) $@.tmpfile
+ @echo ------------------------------
+ @echo Making Module-Definitionfile : $@
+ @echo LIBRARY $(EMQ)"$(SHL1TARGETN:f)$(EMQ)" >$@.tmpfile
+ @echo HEAPSIZE 0 >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.IF "$(DEFLIB1NAME_X64)"!=""
+.IF "$(SHL1USE_EXPORTS_X64)"==""
+ @-$(EXPORT1_PROTECT) $(RMHACK1) $(MISC_X64)/$(SHL1TARGET_X64).exp
+ @$(EXPORT1_PROTECT) $(LIBMGR_X64) -EXTRACT:/ /OUT:$(MISC_X64)/$(SHL1TARGET_X64).exp $(SLB_X64)/$(DEFLIB1NAME_X64).lib
+ @$(EXPORT1_PROTECT) $(LDUMP2) -E 20 -F $(MISC_X64)/$(SHL1TARGET_X64).flt $(MISC_X64)/$(SHL1TARGET_X64).exp >>$@.tmpfile
+ $(EXPORT1_PROTECT) $(RMHACK1) $(MISC_X64)/$(SHL1TARGET_X64).exp
+.ELSE # "$(SHL1USE_EXPORTS_X64)"==""
+ @$(EXPORT1_PROTECT) $(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB1NAME_X64) $(SLB_X64)/$(i).lib) | $(GREP) EXPORT: > $(MISC_X64)/$(SHL1TARGET_X64).direct
+.IF "$(SHL1USE_EXPORTS_X64)"!="name"
+ @$(EXPORT1_PROTECT) $(LDUMP2) -D -E 20 -F $(DEF1FILTER_X64) $(MISC_X64)/$(SHL1TARGET_X64).direct >>$@.tmpfile
+.ELSE # "$(SHL1USE_EXPORTS_X64)"!="name"
+ @$(EXPORT1_PROTECT) $(LDUMP2) -N -D -E 20 -F $(DEF1FILTER_X64) $(MISC_X64)/$(SHL1TARGET_X64).direct >>$@.tmpfile
+.ENDIF # "$(SHL1USE_EXPORTS_X64)"!="name"
+.ENDIF # "$(SHL1USE_EXPORTS)"==""
+.ENDIF # "$(DEFLIB1NAME)"!=""
+.IF "$(DEF1EXPORT1_X64)"!=""
+ @echo $(DEF1EXPORT1_X64) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF1EXPORTFILE_X64)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(DEF1EXPORTFILE_X64) >> $@.tmpfile
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(DEF1TARGETN_X64)"!=""
+
+.IF "$(DEF2TARGETN_X64)"!=""
+$(DEF2TARGETN_X64) : \
+ $(DEF2DEPN_X64) \
+ $(DEF2EXPORTFILE_X64)
+ @-$(MKDIR) $(MISC_X64)
+ @-$(RM) $@.tmpfile
+ @echo Making Module-Definitionfile : $@
+ @echo LIBRARY $(EMQ)"$(SHL2TARGETN:f)$(EMQ)" >$@.tmpfile
+ @echo HEAPSIZE 0 >>$@.tmpfile
+ @echo EXPORTS >>$@.tmpfile
+# getversioninfo fuer alle!!
+ @echo GetVersionInfo >>$@.tmpfile
+.IF "$(DEFLIB2NAME_X64)"!=""
+.IF "$(SHL2USE_EXPORTS_X64)"==""
+ @-$(EXPORT2_PROTECT) $(RMHACK1) $(MISC_X64)/$(SHL2TARGET_X64).exp
+ @$(EXPORT2_PROTECT) $(LIBMGR_X64) -EXTRACT:/ /OUT:$(MISC_X64)/$(SHL2TARGET_X64).exp $(SLB_X64)/$(DEFLIB2NAME_X64).lib
+ @$(EXPORT2_PROTECT) $(LDUMP2) -E 20 -F $(MISC_X64)/$(SHL2TARGET_X64).flt $(MISC_X64)/$(SHL2TARGET_X64).exp >>$@.tmpfile
+ $(EXPORT2_PROTECT) $(RMHACK1) $(MISC_X64)/$(SHL2TARGET_X64).exp
+.ELSE # "$(SHL2USE_EXPORTS_X64)"==""
+ @$(EXPORT2_PROTECT) $(DUMPBIN) -DIRECTIVES $(foreach,i,$(DEFLIB2NAME_X64) $(SLB_X64)/$(i).lib) | $(GREP) EXPORT: > $(MISC_X64)/$(SHL2TARGET_X64).direct
+.IF "$(SHL2USE_EXPORTS_X64)"!="name"
+ @$(EXPORT2_PROTECT) $(LDUMP2) -D -E 20 -F $(DEF2FILTER_X64) $(MISC_X64)/$(SHL2TARGET_X64).direct >>$@.tmpfile
+.ELSE # "$(SHL2USE_EXPORTS_X64)"!="name"
+ @$(EXPORT2_PROTECT) $(LDUMP2) -N -D -E 20 -F $(DEF2FILTER_X64) $(MISC_X64)/$(SHL2TARGET_X64).direct >>$@.tmpfile
+.ENDIF # "$(SHL2USE_EXPORTS_X64)"!="name"
+.ENDIF # "$(SHL2USE_EXPORTS)"==""
+.ENDIF # "$(DEFLIB1NAME)"!=""
+.IF "$(DEF2EXPORT2_X64)"!=""
+ @echo $(DEF2EXPORT2_X64) >>$@.tmpfile
+.ENDIF
+.IF "$(DEF2EXPORTFILE_X64)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(DEF2EXPORTFILE_X64) >> $@.tmpfile
+.ENDIF
+ @-$(RM) $@
+ @$(RENAME) $@.tmpfile $@
+.ENDIF # "$(DEF2TARGETN_X64)"!=""
+#-----------------------------------------------------------------------------
+
+# -------------------------------- shl -----------------------------------------
+
+.IF "$(SHL1TARGET_X64)"!=""
+.IF "$(VERSIONOBJ_X64)"!=""
+SHL1VERSIONOBJ_X64:=$(VERSIONOBJ_X64:d){$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL1TARGET_X64))}$(VERSIONOBJ_X64:f)
+USE_VERSIONH_X64:=$(INCCOM)/$(SHL1VERSIONOBJ_X64:b).h
+SHL1VERSIONOBJDEP_X64:=$(VERSIONOBJ_X64:d){$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL1TARGET_X64))}$(VERSIONOBJ_X64:f)
+$(MISC_X64)/$(SHL1VERSIONOBJ_X64:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL1VERSIONOBJ_X64:b).h
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL1VERSIONOBJ_X64:b).h/ > $@
+.INIT : $(SHL1VERSIONOBJDEP_X64)
+.ENDIF
+
+.IF "$(USE_DEFFILE_X64)"==""
+USE_1IMPLIB_DEPS_X64=$(LB_X64)/$(SHL1IMPLIB_X64).lib
+.ENDIF # "$(USE_DEFFILE_X64)"==""
+
+.IF "$(SHL1RES_X64)"!=""
+SHL1ALLRES_X64+=$(SHL1RES_X64)
+SHL1LINKRES_X64*=$(MISC_X64)/$(SHL1TARGET_X64).res
+SHL1LINKRESO_X64*=$(MISC_X64)/$(SHL1TARGET_X64)_res.o
+.ENDIF # "$(SHL1RES_X64)"!=""
+
+.IF "$(SHL1DEFAULTRES_X64)$(use_shl_versions)"!=""
+SHL1DEFAULTRES_X64*=$(MISC_X64)/$(SHL1TARGET_X64)_def.res
+SHL1ALLRES_X64+=$(SHL1DEFAULTRES_X64)
+SHL1LINKRES_X64*=$(MISC_X64)/$(SHL1TARGET_X64).res
+SHL1LINKRESO_X64*=$(MISC_X64)/$(SHL1TARGET_X64)_res.o
+.ENDIF # "$(SHL1DEFAULTRES)$(use_shl_versions)"!=""
+.ENDIF # "$(SHL1TARGET_X64)"=!""
+
+.IF "$(SHL1TARGETN_X64)"!=""
+$(SHL1TARGETN_X64) : \
+ make_x64_dirs \
+ $(SHL1OBJS_X64)\
+ $(SHL1LIBS_X64)\
+ $(USE_1IMPLIB_DEPS_X64)\
+ $(USE_SHL1DEF_X64)\
+ $(USE_SHL1VERSIONMAP_X64)\
+ $(SHL1RES)\
+ $(SHL1DEPN_X64) \
+ $(SHL1LINKLIST_X64)
+ @echo Making: $(SHL1TARGETN_X64)
+.IF "$(SHL1DEFAULTRES_X64)"!=""
+ @@-$(RM) $(MISC_X64)/$(SHL1DEFAULTRES_X64:b).rc
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL1ADD_VERINFO_X64)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL1ADD_VERINFO)$(EMQ)" >> $(MISC_X64)/$(SHL1DEFAULTRES_X64:b).rc
+.ELSE # "$(SHL1ADD_VERINFO_X64)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC_X64)/$(SHL1DEFAULTRES_X64:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC_X64)/$(SHL1DEFAULTRES_X64:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC_X64)/$(SHL1DEFAULTRES_X64:b).rc
+.ENDIF # "$(SHL1ADD_VERINFO_X64)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC_X64)/$(SHL1DEFAULTRES_X64:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL1TARGET_X64)$(DLLPOST) >> $(MISC_X64)/$(SHL1DEFAULTRES_X64:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL1TARGET_X64:b) >> $(MISC_X64)/$(SHL1DEFAULTRES_X64:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC_X64)/$(SHL1DEFAULTRES_X64:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS_X64) $(MISC_X64)/$(SHL1DEFAULTRES_X64:b).rc
+.ENDIF # "$(SHL1DEFAULTRES_X64)"!=""
+.IF "$(SHL1ALLRES_X64)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL1ALLRES_X64) > $(SHL1LINKRES_X64)
+.ENDIF # "$(SHL1ALLRES)"!=""
+.IF "$(USE_DEFFILE_X64)"!=""
+ $(LINK_X64) @$(mktmp \
+ $(SHL1LINKFLAGS_X64) \
+ $(LINKFLAGSSHL_X64) \
+ $(SHL1STACK_X64) $(SHL1BASEX_X64) \
+ -out:$@ \
+ -map:$(MISC_X64)/$(@:b).map \
+ -def:$(SHL1DEF_X64) \
+ $(USE_1IMPLIB_X64) \
+ $(STDOBJ_X64) \
+ $(SHL1VERSIONOBJ_X64) $(SHL1OBJS_X64) \
+ $(SHL1LIBS_X64) \
+ $(SHL1STDLIBS_X64) \
+ $(SHL1STDSHL_X64) $(STDSHL1_X64) \
+ $(SHL1LINKRES_X64) \
+ ) $(LINKOUTPUTFILTER_X64)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(LINK_X64) @$(mktmp $(SHL1LINKFLAGS_X64) \
+ $(LINKFLAGSSHL_X64) $(SHL1BASEX_X64) \
+ $(SHL1STACK_X64) -out:$(SHL1TARGETN_X64) \
+ -map:$(MISC_X64)/$(@:B).map \
+ $(LB_X64)/$(SHL1IMPLIB_X64).exp \
+ $(STDOBJ_X64) \
+ $(SHL1OBJS_X64) $(SHL1VERSIONOBJ_X64) \
+ $(SHL1LIBS_X64) \
+ $(SHL1STDLIBS_X64) \
+ $(SHL1STDSHL_X64) $(STDSHL1_X64) \
+ $(SHL1LINKRES_X64) \
+ ) $(LINKOUTPUTFILTER_X64)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+# ------------------------------------------------------------------------------
+$(SHL1IMPLIBN_X64): \
+ $(SHL1DEF_X64) \
+ $(USE_SHL1TARGET_X64) \
+ $(USELIB1DEPN_X64) \
+ $(USELIBDEPN_X64)
+ @echo Making: $(SHL1IMPLIBN_X64)
+# bei use_deffile implib von linker erstellt
+ @-mkdir $(LB_X64)
+.IF "$(USE_DEFFILE_X64)"==""
+ $(IMPLIB_X64) $(IMPLIBFLAGS_X64) @$(mktmp -out:$(SHL1IMPLIBN_X64) \
+ -def:$(SHL1DEF_X64) )
+.ELSE # "$(USE_DEFFILE_X64)==""
+ @echo build of $(SHL1TARGETN_X64) creates $@
+.ENDIF # "$(USE_DEFFILE_X64)==""
+
+.ENDIF # "$(SHL1TARGETN_X64)"!=""
+
+.IF "$(SHL2IMPLIB_X64)" == ""
+SHL2IMPLIB_X64=i$(TARGET)_t2
+.ENDIF # "$(SHL2IMPLIB_X64)" == ""
+.IF "$(COM)" != "GCC"
+USE_2IMPLIB_X64=-implib:$(LB_X64)/$(SHL2IMPLIB_X64).lib
+.ENDIF # "$(COM)" != "GCC"
+.IF "$(SHL2TARGET_X64)"!=""
+SHL2IMPLIBN_X64=$(LB_X64)/$(SHL2IMPLIB_X64).lib
+.ENDIF # "$(SLOFILES_X64)$(OBJFILES_X64)"!=""
+
+.IF "$(LIBTARGET)" == ""
+ALLTAR : $(SHL2IMPLIBN_X64)
+.ENDIF # "$(LIBTARGET)" == ""
+
+.IF "$(SHL2TARGET_X64)"!=""
+.IF "$(VERSIONOBJ_X64)"!=""
+SHL2VERSIONOBJ_X64:=$(VERSIONOBJ_X64:d){$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL2TARGET_X64))}$(VERSIONOBJ_X64:f)
+USE_VERSIONH_X64:=$(INCCOM)/$(SHL2VERSIONOBJ_X64:b).h
+SHL2VERSIONOBJDEP_X64:=$(VERSIONOBJ_X64:d){$(subst,$(UPD)$(DLLPOSTFIX),_dflt $(SHL2TARGET_X64))}$(VERSIONOBJ_X64:f)
+$(MISC_X64)/$(SHL2VERSIONOBJ_X64:b).c : $(SOLARENV)/src/version.c $(INCCOM)/$(SHL2VERSIONOBJ_X64:b).h
+ $(COMMAND_ECHO)$(TYPE) $(SOLARENV)/src/version.c | $(SED) s/_version.h/$(SHL2VERSIONOBJ_X64:b).h/ > $@
+.INIT : $(SHL2VERSIONOBJDEP_X64)
+.ENDIF
+
+.IF "$(USE_DEFFILE_X64)"==""
+USE_2IMPLIB_DEPS_X64=$(LB_X64)/$(SHL2IMPLIB_X64).lib
+.ENDIF # "$(USE_DEFFILE_X64)"==""
+
+.IF "$(SHL2RES_X64)"!=""
+SHL2ALLRES_X64+=$(SHL2RES_X64)
+SHL2LINKRES_X64*=$(MISC_X64)/$(SHL2TARGET_X64).res
+SHL2LINKRESO_X64*=$(MISC_X64)/$(SHL2TARGET_X64)_res.o
+.ENDIF # "$(SHL2RES_X64)"!=""
+
+.IF "$(SHL2DEFAULTRES_X64)$(use_shl_versions)"!=""
+SHL2DEFAULTRES_X64*=$(MISC_X64)/$(SHL2TARGET_X64)_def.res
+SHL2ALLRES_X64+=$(SHL2DEFAULTRES_X64)
+SHL2LINKRES_X64*=$(MISC_X64)/$(SHL2TARGET_X64).res
+SHL2LINKRESO_X64*=$(MISC_X64)/$(SHL2TARGET_X64)_res.o
+.ENDIF # "$(SHL2DEFAULTRES)$(use_shl_versions)"!=""
+.ENDIF # "$(SHL2TARGET_X64)"=!""
+
+.IF "$(SHL2TARGETN_X64)"!=""
+$(SHL2TARGETN_X64) : \
+ make_x64_dirs \
+ $(SHL2OBJS_X64)\
+ $(SHL2LIBS_X64)\
+ $(USE_2IMPLIB_DEPS_X64)\
+ $(USE_SHL2DEF_X64)\
+ $(USE_SHL2VERSIONMAP_X64)\
+ $(SHL2RES)\
+ $(SHL2DEPN_X64) \
+ $(SHL2LINKLIST_X64)
+ @echo Making: $(SHL2TARGETN_X64)
+.IF "$(SHL2DEFAULTRES_X64)"!=""
+ @@-$(RM) $(MISC_X64)/$(SHL2DEFAULTRES_X64:b).rc
+.IF "$(use_shl_versions)" != ""
+.IF "$(SHL2ADD_VERINFO_X64)"!=""
+ @echo $(EMQ)#include $(EMQ)"$(SHL2ADD_VERINFO)$(EMQ)" >> $(MISC_X64)/$(SHL2DEFAULTRES_X64:b).rc
+.ELSE # "$(SHL2ADD_VERINFO_X64)"!=""
+ @echo $(EMQ)#define ADDITIONAL_VERINFO1 >> $(MISC_X64)/$(SHL2DEFAULTRES_X64:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO2 >> $(MISC_X64)/$(SHL2DEFAULTRES_X64:b).rc
+ @echo $(EMQ)#define ADDITIONAL_VERINFO3 >> $(MISC_X64)/$(SHL2DEFAULTRES_X64:b).rc
+.ENDIF # "$(SHL1ADD_VERINFO_X64)"!=""
+ @echo $(EMQ)#define VERVARIANT $(BUILD) >> $(MISC_X64)/$(SHL2DEFAULTRES_X64:b).rc
+ @echo $(EMQ)#define ORG_NAME $(SHL2TARGET_X64)$(DLLPOST) >> $(MISC_X64)/$(SHL2DEFAULTRES_X64:b).rc
+ @echo $(EMQ)#define INTERNAL_NAME $(SHL1TARGET_X64:b) >> $(MISC_X64)/$(SHL2DEFAULTRES_X64:b).rc
+ @echo $(EMQ)#include $(EMQ)"shlinfo.rc$(EMQ)" >> $(MISC_X64)/$(SHL2DEFAULTRES_X64:b).rc
+.ENDIF # "$(use_shl_versions)" != ""
+ $(COMMAND_ECHO)$(RC) -DWIN32 $(INCLUDE) $(RCLINKFLAGS_X64) $(MISC_X64)/$(SHL2DEFAULTRES_X64:b).rc
+.ENDIF # "$(SHL2DEFAULTRES_X64)"!=""
+.IF "$(SHL2ALLRES_X64)"!=""
+ $(COMMAND_ECHO)$(TYPE) $(SHL2ALLRES_X64) > $(SHL2LINKRES_X64)
+.ENDIF # "$(SHL2ALLRES)"!=""
+.IF "$(USE_DEFFILE_X64)"!=""
+ $(LINK_X64) @$(mktmp \
+ $(SHL2LINKFLAGS_X64) \
+ $(LINKFLAGSSHL_X64) \
+ $(SHL2STACK_X64) $(SHL2BASEX_X64) \
+ -out:$@ \
+ -map:$(MISC_X64)/$(@:b).map \
+ -def:$(SHL2DEF_X64) \
+ $(USE_2IMPLIB_X64) \
+ $(STDOBJ_X64) \
+ $(SHL2VERSIONOBJ_X64) $(SHL2OBJS_X64) \
+ $(SHL2LIBS_X64) \
+ $(SHL2STDLIBS_X64) \
+ $(SHL2STDSHL_X64) $(STDSHL2_X64) \
+ $(SHL2LINKRES_X64) \
+ ) $(LINKOUTPUTFILTER_X64)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ELSE # "$(USE_DEFFILE)"!=""
+ $(LINK_X64) @$(mktmp $(SHL2LINKFLAGS_X64) \
+ $(LINKFLAGSSHL_X64) $(SHL2BASEX_X64) \
+ $(SHL2STACK_X64) -out:$(SHL2TARGETN_X64) \
+ -map:$(MISC_X64)/$(@:B).map \
+ $(LB_X64)/$(SHL2IMPLIB_X64).exp \
+ $(STDOBJ_X64) \
+ $(SHL2OBJS_X64) $(SHL2VERSIONOBJ_X64) \
+ $(SHL2LIBS_X64) \
+ $(SHL2STDLIBS_X64) \
+ $(SHL2STDSHL_X64) $(STDSHL2_X64) \
+ $(SHL2LINKRES_X64) \
+ ) $(LINKOUTPUTFILTER_X64)
+# double check if target was really written... still making sense?
+ @@$(LS) $@
+ @echo linking $@.manifest ...
+.IF "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -manifest $(TRUSTED_MANIFEST_LOCATION)/trustedinfo.manifest -out:$@.tmanifest$(EMQ) $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.tmanifest -outputresource:$@$(EMQ);2 $(FI)
+.ELSE
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(MT) $(MTFLAGS) -manifest $@.manifest -outputresource:$@$(EMQ);2 $(FI)
+.ENDIF # "$(VISTA_MANIFEST)"!=""
+ $(COMMAND_ECHO)$(IFEXIST) $@.manifest $(THEN) $(RM:s/+//) $@.manifest $(FI)
+ $(COMMAND_ECHO)$(IFEXIST) $@.tmanifest $(THEN) $(RM:s/+//) $@.tmanifest $(FI)
+.ENDIF # "$(USE_DEFFILE)"!=""
+
+$(SHL2IMPLIBN_X64): \
+ $(SHL2DEF_X64) \
+ $(USE_SHL2TARGET_X64) \
+ $(USELIB2DEPN_X64) \
+ $(USELIBDEPN_X64)
+ @echo Making: $(SHL2IMPLIBN_X64)
+# bei use_deffile implib von linker erstellt
+ @-mkdir $(LB_X64)
+.IF "$(USE_DEFFILE_X64)"==""
+ $(IMPLIB_X64) $(IMPLIBFLAGS_X64) @$(mktmp -out:$(SHL2IMPLIBN_X64) \
+ -def:$(SHL2DEF_X64) )
+.ELSE # "$(USE_DEFFILE_X64)==""
+ @echo build of $(SHL2TARGETN_X64) creates $@
+.ENDIF # "$(USE_DEFFILE_X64)==""
+
+.ENDIF # "$(SHL2TARGETN_X64)"!=""
+
+
+$(SLO_X64)/%.obj : %.cpp
+ @echo ------------------------------
+ @echo Making: $@
+ @@-$(RM) $@ >& $(NULLDEV)
+ -$(MKDIR) $(@:d)
+ @-$(MKDIR) $(MISC_X64)
+ $(CAPTURE_COMMAND) $(CXX_X64) $(USE_CFLAGS_X64) $(INCLUDE_X64) $(CFLAGSCXX_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CDEFSMT_X64) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cpp $(CAPTURE_OUTPUT)
+
+$(SLO_X64)/%.obj : %.cxx
+ @echo Making: $@
+ @@-$(RM) $@ >& $(NULLDEV)
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)@-$(MKDIR) $(MISC_X64)
+ $(COMMAND_ECHO)$(CAPTURE_COMMAND) $(CXX_X64) $(USE_CFLAGS_X64) $(INCLUDE_X64) $(CFLAGSCXX_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CDEFSMT_X64) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx $(CAPTURE_OUTPUT)
+
+$(SLO_X64)/%.obj : $(MISC)/%.c
+ @echo Making: $@
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)@-$(MKDIR) $(MISC_X64)
+ @@-$(RM) $@
+ @$(TYPE) $(mktmp $(CC_X64) $(USE_CFLAGS_X64) $(INCLUDE_C) $(CFLAGSCC_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CFLAGSAPPEND_X64) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(MISC)/$*.c )
+ @$(ECHONL)
+ $(COMMAND_ECHO)$(CC_X64) @$(mktmp $(USE_CFLAGS_X64) $(INCLUDE_C) $(CFLAGSCC_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CFLAGSAPPEND_X64) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(MISC)/$*.c )
+
+$(SLO_X64)/%.obj : %.c
+ @echo Making: $@
+ $(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)@-$(MKDIR) $(MISC_X64)
+ @@-$(RM) $@
+ $(COMMAND_ECHO)$(CC_X64) @$(mktmp $(USE_CFLAGS_X64) $(INCLUDE_C) $(CFLAGSCC_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CDEFSMT_X64) $(CFLAGSAPPEND_X64) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $*.c )
+
+.ENDIF # "$(BUILD_X64)"!=""
diff --git a/solenv/inc/tg_xmerge.mk b/solenv/inc/tg_xmerge.mk
new file mode 100755
index 000000000000..6ff412bb022f
--- /dev/null
+++ b/solenv/inc/tg_xmerge.mk
@@ -0,0 +1,108 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+.IF "$(XTXFILES)"!=""
+
+L10NEXT*=.txt
+XTX_TARGET_PATH*=$(MISC)/$(TARGET)
+
+ALLTAR : $(XTX_TARGET_PATH).xtx.pmerge.mk $(XTXFILES)
+
+$(XTX_TARGET_PATH).xtx.pmerge.mk : $(XTXFILES)
+
+$(XTXFILES) : $(LOCALIZESDF)
+
+.INCLUDE .IGNORE : $(XTX_TARGET_PATH).xtx.pmerge.mk
+
+.IF "$(alllangiso)"!="$(last_merge)"
+XTXMERGEPHONY:=.PHONY
+.ENDIF # "$(alllangiso)" != "$(last_merge)"
+
+$(XTX_TARGET_PATH)/%$(L10NEXT) $(XTXMERGEPHONY) : %.xtx
+ @@-$(MKDIRHIER) $(@:d)
+.IF "$(WITH_LANG)"==""
+ $(COMMAND_ECHO)$(COPY) $< $(@:d)$(@:b)_en-US$(L10NEXT)
+.ELSE # "$(WITH_LANG)"==""
+ @@-$(RM) $@
+ $(COMMAND_ECHO)@noop $(assign XTXMERGELIST+:=$(<:f))
+ $(COMMAND_ECHO)@noop $(assign XTXDESTDIR:=$(@:d))
+.ENDIF # "$(WITH_LANG)"==""
+
+$(XTX_TARGET_PATH).xtx.pmerge.mk : $(XTXMERGELIST)
+.IF "$(WITH_LANG)"!=""
+# xtxex command file requirements:
+# - one file per line
+# - no spaces
+# - no empty lines
+# $(uniq ...) to workaround $assign adding the value twice...
+ @noop $(assign XTXMERGEFILELIST:=$(uniq $(XTXMERGELIST)))
+ $(COMMAND_ECHO) $(SOLARBINDIR)/xtxex -p $(PRJNAME) -r $(PRJ) -o $(XTXDESTDIR) -i @$(mktmp $(XTXMERGEFILELIST:t"\n":s/ //)) -l $(alllangiso:s/ /,/) -f $(alllangiso:s/ /,/) -m $(LOCALIZESDF) -s"[path]/[fileNoExt]_[language]$(L10NEXT)"
+.ENDIF # "$(WITH_LANG)"!=""
+
+ @-$(RM) $@
+ $(COMMAND_ECHO)echo last_merge=$(alllangiso) > $@
+.ENDIF # "$(XTXFILES)"!=""
+
+.IF "$(TREEFILE)"!=""
+ALLTAR : $(MISC)/$(TARGET).tree.pmerge.mk $(TREEFILE)
+
+$(MISC)/$(TARGET).tree.pmerge.mk : $(TREEFILE)
+
+$(TREEFILE) : $(LOCALIZESDF)
+
+.INCLUDE .IGNORE : $(MISC)/$(TARGET).tree.pmerge.mk
+
+.IF "$(alllangiso)"!="$(last_merge)"
+TREEMERGEPHONY:=.PHONY
+.ENDIF # "$(alllangiso)" != "$(last_merge)"
+
+$(OUT_HELP)/en-US/help.tree $(TREEMERGEPHONY) : help.tree
+ @@-$(MKDIRHIER) $(@:d)
+.IF "$(WITH_LANG)"==""
+ $(COMMAND_ECHO)$(COPY) $< $@
+.ELSE # "$(WITH_LANG)"==""
+ @@-$(RM) $@
+ $(COMMAND_ECHO)@noop $(assign TREEMERGELIST+:=$(<:f))
+ $(COMMAND_ECHO)@noop $(assign TREEDESTDIR:=$(@:d:d:d))
+.ENDIF # "$(WITH_LANG)"==""
+
+$(MISC)/$(TARGET).tree.pmerge.mk : $(TREEMERGELIST)
+.IF "$(WITH_LANG)"!=""
+# xtxex command file requirements:
+# - one file per line
+# - no spaces
+# - no empty lines
+# $(uniq ...) to workaround $assign adding the value twice...
+ @noop $(assign TREEMERGEFILELIST:=$(uniq $(TREEMERGELIST)))
+# Variables for the pattern filename,fileNoExt,language,extension,pathPrefix,pathPostFix,path
+ $(COMMAND_ECHO) $(SOLARBINDIR)/xhtex -p $(PRJNAME) -r $(PRJ) -o $(TREEDESTDIR) -i @$(mktmp $(TREEMERGEFILELIST:t"\n":s/ //)) -l $(alllangiso:s/ /,/) -f $(alllangiso:s/ /,/) -m $(LOCALIZESDF) -s"[path]/[language]/[fileNoExt].tree"
+.ENDIF # "$(WITH_LANG)"!=""
+ @-$(RM) $@
+ $(COMMAND_ECHO)echo last_merge=$(alllangiso) > $@
+.ENDIF # "$(TREEFILE)"!=""
+
+
diff --git a/solenv/inc/tg_yxx.mk b/solenv/inc/tg_yxx.mk
new file mode 100644
index 000000000000..5dfb95e07eec
--- /dev/null
+++ b/solenv/inc/tg_yxx.mk
@@ -0,0 +1,48 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+$(MISC)/%.cxx : %.y
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)tr -d "\015" < $< > $(MISC)/stripped_$<
+ $(BISON) $(YACCFLAGS) -o $(YACCTARGET) $(MISC)/stripped_$<
+# removing -f switch - avoid getting nothing when copying a file to itself
+ @@-$(COPY:s/-f//) $@.h $(INCCOM)/$(@:b).hxx
+ @@-$(COPY:s/-f//) $(@:d)/$(@:b).hxx $(INCCOM)/$(@:b).hxx
+# fail on not existing .hxx
+ $(COMMAND_ECHO)$(TYPE) $(INCCOM)/$(@:b).hxx >& $(NULLDEV)
+
+$(INCCOM)/yy%.cxx : %.y
+ @echo "Making: " $(@:f)
+ $(COMMAND_ECHO)tr -d "\015" < $< > $(MISC)/stripped_$<
+ $(COMMAND_ECHO)$(BISON) $(YACCFLAGS) -o $(YACCTARGET) $(MISC)/stripped_$<
+# removing -f switch - avoid getting nothing when copying a file to itself
+ @@-$(COPY:s/-f//) $@.h $(INCCOM)/$(@:b).hxx
+ @@-$(COPY:s/-f//) $(@:d)/$(@:b).hxx $(INCCOM)/$(@:b).hxx
+# fail on not existing .hxx
+ $(COMMAND_ECHO)$(TYPE) $(INCCOM)/$(@:b).hxx >& $(NULLDEV)
+
diff --git a/solenv/inc/tg_zip.mk b/solenv/inc/tg_zip.mk
new file mode 100644
index 000000000000..0a0364e02ab3
--- /dev/null
+++ b/solenv/inc/tg_zip.mk
@@ -0,0 +1,154 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#######################################################
+# unroll begin
+
+.IF "$(GUI)"=="WNT"
+command_seperator=&&
+#command_seperator=^
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+.ELIF "$(GUI)"=="OS2"
+command_seperator=&&
+.ELSE
+command_seperator=;
+avoid_cvs_dir=-x "*CVS*" -x "*.svn*"
+
+.ENDIF
+
+.IF "$(ZIP$(TNR)TARGET)"!=""
+
+ZIP$(TNR)EXT*=.zip
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP$(TNR)LIST:s/LANGDIR//)" == "$(ZIP$(TNR)LIST)"
+ZIP$(TNR)TARGETN=$(COMMONBIN)/$(ZIP$(TNR)TARGET)$(ZIP$(TNR)EXT)
+.ELSE
+ZIP$(TNR)TARGETN=$(foreach,i,$(zip$(TNR)alllangiso) $(COMMONBIN)/$(ZIP$(TNR)TARGET)_$i$(ZIP$(TNR)EXT) )
+.ENDIF
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP$(TNR)LIST:s/LANGDIR//)" == "$(ZIP$(TNR)LIST)"
+ZIP$(TNR)TARGETN=$(BIN)/$(ZIP$(TNR)TARGET)$(ZIP$(TNR)EXT)
+.ELSE
+ZIP$(TNR)TARGETN=$(foreach,i,$(zip$(TNR)alllangiso) $(BIN)/$(ZIP$(TNR)TARGET)_$i$(ZIP$(TNR)EXT) )
+.ENDIF
+.ENDIF # "$(common_build_zip)"!=""
+ZIP$(TNR)DEPFILE=$(subst,$(COMMON_OUTDIR),$(OUTPATH) $(subst,/bin/,/misc/ $(ZIP$(TNR)TARGETN:s/$(ZIP$(TNR)EXT)/.dpzz/)))
+ZIPDEPFILES+=$(ZIP$(TNR)DEPFILE)
+
+ZIP$(TNR)DIR*=$(ZIPDIR)
+ZIP$(TNR)FLAGS*=$(ZIPFLAGS)
+.IF "$(zip$(TNR)generatedlangs)"!=""
+zip$(TNR)langdirs*=$(alllangiso)
+.ELSE # "$(zip$(TNR)generatedlangs)"!=""
+zip$(TNR)langdirs:=$(shell @-test -d {$(subst,/$(LANGDIR), $(null,$(ZIP$(TNR)DIR) . $(ZIP$(TNR)DIR)))}/ && find {$(subst,/$(LANGDIR), $(null,$(ZIP$(TNR)DIR) . $(ZIP$(TNR)DIR)))}/ -type d ! -name CVS ! -name ".svn" ! -name "." | sed "s/\.\/\///" | sed "s/\.\///" )
+.ENDIF # "$(zip$(TNR)generatedlangs)"!=""
+.IF "$(ZIP$(TNR)FORCEALLLANG)"!=""
+zip$(TNR)alllangiso:=$(foreach,i,$(completelangiso) $(foreach,j,$(zip$(TNR)langdirs) $(eq,$i,$j $i $(NULL))))
+.ELSE # "$(ZIP$(TNR)ALLLANG)" != ""
+zip$(TNR)alllangiso*:=$(foreach,i,$(alllangiso) $(foreach,j,$(zip$(TNR)langdirs) $(eq,$i,$j $i $(NULL))))
+.ENDIF # "$(ZIP$(TNR)ALLLANG)" != ""
+.ENDIF # "$(ZIP$(TNR)TARGET)"!=""
+
+.IF "$(ZIP$(TNR)TARGETN)"!=""
+
+ZIP$(TNR)TMP:=$(mktmp iii)
+
+$(MISC)/$(TARGET).$(PWD:f).$(ZIP$(TNR)TARGET).dpzz : $(ZIP$(TNR)TARGETN)
+
+.IF "$(common_build_zip)"!=""
+ZIP$(TNR)HELPVAR=$(COMMONBIN)/$(ZIP$(TNR)TARGET)
+.ELSE # "$(common_build_zip)"!=""
+ZIP$(TNR)HELPVAR=$(BIN)/$(ZIP$(TNR)TARGET)
+.ENDIF # "$(common_build_zip)"!=""
+
+$(ZIP$(TNR)DEPFILE) :
+ @echo # > $(MISC)/$(@:f)
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP$(TNR)DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP$(TNR)DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP$(TNR)DIR))) $(command_seperator) $(ZIPDEP) $(ZIP$(TNR)FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP$(TNR)DIR)))/ $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP$(TNR)EXT)/))) $(foreach,j,$(ZIP$(TNR)LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP$(TNR)TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP$(TNR)DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP$(TNR)FLAGS) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP$(TNR)EXT)/))) $(foreach,j,$(ZIP$(TNR)LIST) "{$(subst,LANGDIR,{$(subst,$(ZIP$(TNR)TARGET)_, $(@:f:b))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP$(TNR)DIR)" != ""
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP$(TNR)DIR)" != ""
+ $(COMMAND_ECHO)-$(MKDIRHIER) $(ZIP$(TNR)DIR)
+ $(COMMAND_ECHO)$(CDD) $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP$(TNR)DIR))) $(command_seperator) $(ZIPDEP) $(ZIP$(TNR)FLAGS) -prefix $(subst,LANGDIR,. $(subst,/LANGDIR, $(ZIP$(TNR)DIR)))/ $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP$(TNR)EXT)/)) $(foreach,j,$(ZIP$(TNR)LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP$(TNR)TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(PWD)/$(PRJ)/$(ROUT)/misc/$(@:f)
+.ELSE # "$(ZIP$(TNR)DIR)" != ""
+ $(COMMAND_ECHO)-$(ZIPDEP) $(ZIP$(TNR)FLAGS) $(subst,/misc/,/bin/ $(@:s/.dpzz/$(ZIP$(TNR)EXT)/)) $(foreach,j,$(ZIP$(TNR)LIST) "{$(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP$(TNR)TARGET)_, $(subst,/misc/,/bin/ $(@:db)))} $j )}") $(avoid_cvs_dir) >> $(MISC)/$(@:f)
+.ENDIF # "$(ZIP$(TNR)DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+ @echo $(@:n:s#\#/#) : makefile.mk >> $(MISC)/$(@:f)
+
+
+$(ZIP$(TNR)TARGETN) : delzip $(ZIP$(TNR)DEPS)
+ @echo "Making: " $(@:f)
+ @@$(!eq,$?,$(?:s/delzip/zzz/) -$(RM) echo) $(uniq $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@))
+ @$(eq,$?,$(?:s/delzip/zzz/) noop echo ) rebuilding zipfiles
+ @echo ------------------------------ $(eq,$?,$(?:s/delzip/zzz/) >&$(NULLDEV) )
+.IF "$(common_build_zip)"!=""
+.IF "$(ZIP$(TNR)DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP$(TNR)HELPVAR)_, $(@:db))} $(ZIP$(TNR)DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP$(TNR)FLAGS) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) $(subst,LANGDIR_away/, $(ZIP$(TNR)LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) $@.$(INPATH)
+ $(COMMAND_ECHO)$(RM) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT)
+.ELSE # "$(ZIP$(TNR)DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP$(TNR)FLAGS) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(foreach,j,$(ZIP$(TNR)LIST) $(subst,LANGDIR,{$(subst,$(ZIP$(TNR)HELPVAR)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) \
+ $(FI)
+ @@-$(GNUCOPY) -p $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@) $@.$(INPATH)
+ @-$(RM) $(subst,$(COMMON_OUTDIR),$(OUTPATH) $@)
+.ENDIF # "$(ZIP$(TNR)DIR)" != ""
+ @@-$(RM) $@
+ @$(IFEXIST) $@.$(INPATH) $(THEN) $(RENAME:s/+//) $@.$(INPATH) $@ $(FI)
+# @$(IFEXIST) $@ $(THEN) $(TOUCH) $@ $(FI) # even if it's not used...
+.ELSE # "$(common_build_zip)"!=""
+.IF "$(ZIP$(TNR)DIR)" != ""
+ @@-$(GNUCOPY) -p $@ $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT)
+ $(COMMAND_ECHO)-$(CDD) $(subst,LANGDIR,{$(subst,$(ZIP$(TNR)HELPVAR)_, $(@:db))} $(ZIP$(TNR)DIR)) $(command_seperator) zip $(ZIP_VERBOSITY) $(ZIP$(TNR)FLAGS) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) $(subst,LANGDIR_away/, $(ZIP$(TNR)LIST:s/LANGDIR/LANGDIR_away/)) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) \
+ $(FI)
+ $(COMMAND_ECHO)$(COPY) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT) $@
+ $(COMMAND_ECHO)$(RM) $(ZIP$(TNR)TMP).$(ZIP$(TNR)TARGET){$(subst,$(ZIP$(TNR)HELPVAR),_ $(@:db))}$(ZIP$(TNR)EXT)
+.ELSE # "$(ZIP$(TNR)DIR)" != ""
+ $(COMMAND_ECHO)zip $(ZIP_VERBOSITY) $(ZIP$(TNR)FLAGS) $@ $(foreach,j,$(ZIP$(TNR)LIST) $(subst,LANGDIR,{$(subst,$(BIN)/$(ZIP$(TNR)TARGET)_, $(@:db))} $j )) -x delzip $(avoid_cvs_dir) $(CHECKZIPRESULT)
+ $(COMMAND_ECHO)$(IFEXIST) $@ $(THEN) \
+ $(PERL) -w $(SOLARENV)/bin/cleanzip.pl $@ \
+ $(FI)
+.ENDIF # "$(ZIP$(TNR)DIR)" != ""
+.ENDIF # "$(common_build_zip)"!=""
+.ENDIF
+
+# unroll end
+#######################################################
+
diff --git a/solenv/inc/trustedinfo.manifest b/solenv/inc/trustedinfo.manifest
new file mode 100644
index 000000000000..292ed2a30b3c
--- /dev/null
+++ b/solenv/inc/trustedinfo.manifest
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
+ <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
+ <security>
+ <requestedPrivileges>
+ <requestedExecutionLevel level="asInvoker" uiAccess="false">
+ </requestedExecutionLevel>
+ </requestedPrivileges>
+ </security>
+</trustInfo>
+</assembly> \ No newline at end of file
diff --git a/solenv/inc/udkversion.mk b/solenv/inc/udkversion.mk
new file mode 100644
index 000000000000..18fa3cf45d77
--- /dev/null
+++ b/solenv/inc/udkversion.mk
@@ -0,0 +1,33 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# major
+UDK_MAJOR=3
+# minor
+UDK_MINOR=2
+# micro
+UDK_MICRO=7
diff --git a/solenv/inc/unitools.mk b/solenv/inc/unitools.mk
new file mode 100644
index 000000000000..7e12a9e2b225
--- /dev/null
+++ b/solenv/inc/unitools.mk
@@ -0,0 +1,186 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# Common tools - move this to the end / consolidate
+TRANSEX*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/transex3
+ULFEX*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/ulfex
+XMLEX*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xmlex
+XRMEX*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xrmex
+CFGEX*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/cfgex
+AUTODOC*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/autodoc
+LOCALIZE_SL*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/localize_sl
+GSICHECK*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/gsicheck
+
+.IF "$(SYSTEM_LIBXSLT)"!="YES"
+XSLTPROC*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xsltproc
+.ELSE # "$(SYSTEM_LIBXSLT)"!="YES"
+XSLTPROC*=$(AUGMENT_LIBRARY_PATH) xsltproc
+.ENDIF # "$(SYSTEM_LIBXSLT)"!="YES"
+
+ULFCONV*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/ulfconv
+
+MAKEDEPEND*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/makedepend
+
+SCP_CHECK_TOOL:=checkscp$E
+
+# iz32110: Calling a cygwin application from a non-cygwin shell requires
+# backslashes to be escaped by another backslash: EES .. extra escape slash
+EES:=
+
+# iz29675: 4nt must not quote special characters, but tcsh has to.
+# *NIX shells needs to use " quotes, but 4nt must not.
+# EMQ .. extra meta quote (\\ at line end is \)
+# USQ .. unix shell quote
+EMQ:=\\
+USQ:="
+
+NULLDEV:=/dev/null
+
+
+# iz29609 helpmacro to check if file exists
+IFEXIST:=if [ -f
+IFNOTEXIST:= if ! test -f
+THEN:= ] ; then
+FI:= ; fi
+PIPEERROR=2>&1 |
+
+# iz31658
+CHECKZIPRESULT:=|| ret=$$?; if [[ "$$ret" != "12" && "$$ret" != "1" ]] ; then exit $$ret ; fi && echo "Nothing to update for zip"
+
+# Platform specific
+.IF "$(GUI)"=="WNT"
+AWK*=awk
+SORT*=sort
+SED*=sed
+GNUPATCH*=patch
+# change drive and directory
+CDD=cd
+# expect cygwin tools to exist
+COPY*=cp
+COPYRECURSE=-r
+DEREFERENCE=-L
+COPYUPDATE=-u
+ECHON=echo -n
+ECHONL=echo
+FIND*=find
+FLIPCMD*=$(PERL) $(SOLARENV)/bin/slfl.pl
+GNUCOPY*=cp
+GNUMAKE*=make
+GREP*=grep
+LS*=ls
+PERL*:=perl
+.EXPORT : PERL
+RENAME*=mv
+TOUCH*=touch
+TYPE*=cat
+DUMPBIN*=dumpbin
+
+.ELIF "$(GUI)"=="UNX" # "$(GUI)"=="WNT"
+SED*=sed
+SORT*=sort
+PERL*=perl
+.EXPORT : PERL
+TYPE=cat
+CDD=cd
+COPY=cp -f
+.IF "$(OS)"=="MACOSX"
+COPYRECURSE=-R
+.ELSE #"$(OS)"=="MACOSX"
+COPYRECURSE=-r
+.ENDIF
+.IF "$(OS)"=="SOLARIS"
+AWK*=nawk
+GNUCOPY*=gnucp
+GNUPATCH*=gnupatch
+GNUTAR*=/usr/sfw/bin/gtar
+DEREFERENCE=
+.ELSE # "$(OS)"=="SOLARIS"
+AWK*=awk
+GNUCOPY*=cp
+GNUPATCH*=patch
+DEREFERENCE=-L
+.ENDIF # "$(OS)"=="SOLARIS"
+.IF "$(OS)"=="LINUX" || "$(OS)"=="MACOSX"
+GNUMAKE*=make
+.ELSE # "$(OS)"=="LINUX" || "$(OS)"=="MACOSX"
+GNUMAKE*=gmake
+.ENDIF # "$(OS)"=="LINUX" || "$(OS)"=="MACOSX"
+TOUCH=touch
+RENAME=mv
+GREP=grep
+FIND=find
+LS=ls
+ECHON=echo -n
+ECHONL=echo
+.ELIF "$(GUI)"=="OS2"
+SED*=sed
+SORT*=sort
+PERL*=perl
+TYPE=cat
+CDD=@cd
+COPY*=$(SHELL) /c copy /b
+COPYRECURSE=/s
+COPYUPDATE=/u
+DELAY=sleep
+ECHON*=echos
+ECHONL=+echo.
+AWK*=awk
+GNUCOPY*=cp
+GNUPATCH*=gnupatch
+GNUMAKE*=make
+TOUCH=touch /c
+#YD rename doesn't work across different drives!
+RENAME=mv
+MKDIR=+md
+MKDIRHIER=+md /s
+GREP=grep
+FIND=find
+LS=ls
+DUMPBIN=echo
+4nt_force_shell:=+
+
+.ENDIF # "$(GUI)"=="UNX"
+
+# (Global) Set if not set before
+DELAY*=sleep
+MKDIR*=mkdir$E
+MKDIRHIER*=mkdir$E -p
+RMDIR*=rmdir
+XARGS*=xargs
+GNUTAR*:=tar
+
+RM+=$(RMFLAGS)
+ADJUSTVISIBILITY*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/adjustvisibility
+CONVERT*:=$(PERL) $(SOLARENV)/bin/leconvert.pl
+EXECTEST := $(PERL) -w $(SOLARENV)/bin/exectest.pl
+GCCINSTLIB:=$(PERL) -w $(SOLARENV)/bin/gccinstlib.pl
+
+# The dmake $(PWD) apparantly produces paths with symlinks resolved, while the
+# bash pwd command by default produces paths with unresolved symlinks, so that
+# computing PATH_IN_MODULE in settings.mk would fail without the -P flag to the
+# bash pwd command:
+PWDFLAGS = -P
diff --git a/solenv/inc/unx.mk b/solenv/inc/unx.mk
new file mode 100644
index 000000000000..a05b4629755e
--- /dev/null
+++ b/solenv/inc/unx.mk
@@ -0,0 +1,205 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# --- Unix-Environment ---------------------------------------
+# Used if "$(GUI)" == "UNX"
+
+
+# Dieses Define gilt fuer alle WNT- Plattformen
+# fuer Compiler, wo kein Java unterstuetzt wird, muss dies ge'undeft werden
+#JAVADEF=-DSOLAR_JAVA
+
+# --- Compiler ---
+
+.IF "$(COM)$(OS)$(CPU)" == "C50SOLARISS"
+.INCLUDE : unxsols2.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "C50SOLARISI"
+.INCLUDE : unxsoli2.mk
+.ENDIF
+
+.IF "$(OS)$(CPU)$(COMEX)" == "SOLARISS3"
+.INCLUDE : unxsols3.mk
+.ENDIF
+
+.IF "$(OS)$(CPU)$(COMEX)" == "SOLARISI3"
+.INCLUDE : unxsoli3.mk
+.ENDIF
+
+.IF "$(OS)$(CPU)$(COMEX)" == "SOLARISS4"
+.INCLUDE : unxsols4.mk
+.ENDIF
+
+.IF "$(OS)$(CPU)$(COMEX)" == "SOLARISI4"
+.INCLUDE : unxsoli4.mk
+.ENDIF
+
+.IF "$(OS)$(CPU)$(COMEX)" == "SOLARISU4"
+.INCLUDE : unxsolu4.mk
+.ENDIF
+
+.IF "$(OS)$(CPU)$(COMEX)" == "SOLARISX4"
+.INCLUDE : unxsolx4.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCSOLARISS"
+.INCLUDE : unxsogs.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCSOLARISI"
+.INCLUDE : unxsogi.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCSCOI"
+.INCLUDE : unxscoi.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCLINUXS"
+.INCLUDE : unxlngs.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCLINUXI"
+.INCLUDE : unxlngi.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCLINUXX"
+.INCLUDE : unxlngx.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)$(CPUNAME)" == "GCCLINUXPPOWERPC"
+.INCLUDE : unxlngppc.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)$(CPUNAME)" == "GCCLINUXPPOWERPC64"
+.INCLUDE : unxlngppc64.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)$(CPUNAME)" == "GCCLINUX3S390"
+.INCLUDE : unxlngs390.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)$(CPUNAME)" == "GCCLINUX3S390X"
+.INCLUDE : unxlngs390x.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCLINUXR"
+.INCLUDE : unxlngr.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCLINUXA"
+.INCLUDE : unxlnga.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "ACCHPUXR"
+.INCLUDE : unxhpxr.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCHPUXR"
+.INCLUDE : unxhpgr.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCNETBSDA"
+.INCLUDE : unxbsda.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "ICCAIXP"
+.INCLUDE : unxaixp.mk
+.ENDIF
+
+.IF "$(COM)$(CVER)$(OS)$(CPU)" == "GCCC295NETBSDI"
+.INCLUDE : unxbsdi.mk
+.ENDIF
+
+.IF "$(COM)$(CVER)$(OS)$(CPU)" == "GCCC300NETBSDI"
+.INCLUDE : unxbsdi2.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCNETBSDS"
+.INCLUDE : unxbsds.mk
+.ENDIF
+
+.IF "$(COM)$(OS)" == "GCCFREEBSD"
+.INCLUDE : unxfbsd.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCMACOSXP"
+.INCLUDE : unxmacxp.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCMACOSXI"
+.INCLUDE : unxmacxi.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCLINUXM"
+.INCLUDE : unxlngmips.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCLINUX6"
+.INCLUDE : unxlngm68k.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCLINUXH"
+.INCLUDE : unxlnghppa.mk
+.ENDIF
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCLINUXL"
+.INCLUDE : unxlngaxp.mk
+.ENDIF
+
+# --- general *ix settings ---
+HC=hc
+HCFLAGS=
+PATH_SEPERATOR*=:
+CDEFS+=-D__DMAKE
+
+CDEFS+=-DUNIX
+
+# fuer linux: bison -y -d
+YACC*=yacc
+YACCFLAGS*=-d -t
+
+EXECPOST=
+SCPPOST=.ins
+DLLDEST=$(LB)
+SOLARSHAREDBIN=$(SOLARLIBDIR)
+SONAME_SWITCH*=-h
+
+.IF "$(UNIXVERSIONNAMES)"!=""
+DLLPOST!:=$(DLLPOST).$($(UNIXVERSIONNAMES)_MAJOR)
+.ENDIF # "$(UNIXVERSIONNAMES)"!=""
+
+# enable building/linking KDE-dependent code in both OOo and SO build environment
+.IF "$(ENABLE_KDE)" != ""
+.IF "$(KDE_ROOT)"!=""
+KDE_CFLAGS:=-I$(KDE_ROOT)/include -DQT_CLEAN_NAMESPACE
+KDE_LIBS:=-lkdeui -lkdecore -lqt-mt
+SOLARLIB+=-L$(KDE_ROOT)/lib
+.ENDIF # "$(KDE_ROOT)"!=""
+.ENDIF # "$(ENABLE_KDE)" != ""
+
+OOO_LIBRARY_PATH_VAR *= LD_LIBRARY_PATH
diff --git a/solenv/inc/unxaixp.mk b/solenv/inc/unxaixp.mk
new file mode 100644
index 000000000000..571cee1053c6
--- /dev/null
+++ b/solenv/inc/unxaixp.mk
@@ -0,0 +1,113 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mak file fuer unxaixp
+ASM=
+AFLAGS=
+
+ARCH_FLAGS*=
+
+CXX= xlC_r
+CC= xlc_r
+CFLAGS= -c -qlanglvl=extended -qchars=signed
+CDEFS+= -D_PTHREADS
+CDEFS+= -D_STD_NO_NAMESPACE -D_VOS_NO_NAMESPACE -D_UNO_NO_NAMESPACE
+CFLAGSCC=$(ARCH_FLAGS)
+CFLAGSCXX=$(ARCH_FLAGS)
+CFLAGSOBJGUIMT=
+CFLAGSOBJCUIMT=
+CFLAGSSLOGUIMT=
+CFLAGSSLOCUIMT=
+CFLAGSPROF=
+CFLAGSDEBUG=
+CFLAGSDBGUTIL=
+CFLAGSOPT= -O
+CFLAGSNOOPT=
+CFLAGSOUTOBJ= -o
+
+STATIC= # -Bstatic
+DYNAMIC= # -Bdynamic
+
+#
+# Zu den Linkflags von shared Libraries:
+#
+# -G Erzeugen eines Shared-Objects
+# -brtl aktiviert Runtime-Linking, wird von -G mitgesetzt
+# -bsymbolc loest Symbole innerhalb einer Library zur Linkzeit auf
+# -p0 ??? (ENOMANPAGESINSTALLABLEFROMCD)
+# -bnoquiet verbose
+#
+LINK=
+LINKFLAGS=
+LINKFLAGSAPPCUI= xlC_r -qlanglvl=extended -qchars=signed -brtl -bnolibpath
+LINKFLAGSAPPGUI= xlC_r -qlanglvl=extended -qchars=signed -brtl -bnolibpath
+LINKFLAGSSHLCUI= makeC++SharedLib_r -G -bsymbolic -bdynamic -bnolibpath -p0
+LINKFLAGSSHLGUI= makeC++SharedLib_r -G -bsymbolic -bdynamic -bnolibpath -p0
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=
+LINKFLAGSOPT=
+
+# Reihenfolge der libs NICHT egal!
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+# application
+STDLIBGUIMT= # -lX11 -ldl
+STDLIBCUIMT= # -lX11 -ldl
+# shared library
+STDSHLGUIMT= -lX11 -ldl
+STDSHLCUIMT= -lX11 -ldl
+THREADLIB=
+
+LIBMGR= ar
+LIBFLAGS= -r
+# LIBEXT= .so
+
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=irc
+RCFLAGS= -fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX= ap
+.IF "$(WORK_STAMP)"=="MIX364"
+DLLPOSTFIX=
+.ENDIF
+DLLPRE= lib
+DLLPOST= .so
+
+
+LDUMP= cppfilt /b /n /o /p
+
diff --git a/solenv/inc/unxbsda.mk b/solenv/inc/unxbsda.mk
new file mode 100644
index 000000000000..fefaa1f02bd7
--- /dev/null
+++ b/solenv/inc/unxbsda.mk
@@ -0,0 +1,99 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mak file fuer unxbsda
+
+ASM=
+AFLAGS=
+
+ARCH_FLAGS*=
+
+CC= gcc -c
+CXX= g++ -c
+CDEFS+= -D_STD_NO_NAMESPACE -D_VOS_NO_NAMESPACE -D_UNO_NO_NAMESPACE
+CDEFS+= -D_REENTRANT # -D_PTHREADS -DPOSIX_PTHREAD_SEMANTICS
+CDEFS+= -DPRINTER_DUMMY
+CFLAGSCC= -fsigned-char $(ARCH_FLAGS)
+CFLAGSCXX= -fsigned-char $(ARCH_FLAGS)
+PICSWITCH:=-fPIC
+CFLAGSOBJGUIMT=
+CFLAGSOBJCUIMT=
+CFLAGSSLOGUIMT=$(PICSWITCH)
+CFLAGSSLOCUIMT=$(PICSWITCH)
+CFLAGSPROF=
+CFLAGSDEBUG= -g
+CFLAGSDBGUTIL=
+CFLAGSOPT= -O2
+CFLAGSNOOPT=
+CFLAGSOUTOBJ= -o
+
+STATIC= -Bstatic
+DYNAMIC= -Bdynamic
+
+THREADLIB= pthread
+LINK= ld -e start -dc -dp
+LINKFLAGS=
+LINKFLAGSAPPGUI=
+LINKFLAGSSHLGUI=
+LINKFLAGSAPPCUI=
+LINKFLAGSSHLCUI=
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=
+LINKFLAGSOPT=
+
+STDOBJGUI= /usr/lib/crt0.o
+STDSLOGUI= /usr/lib/crt0.o
+STDOBJCUI= /usr/lib/crt0.o
+STDSLOCUI= /usr/lib/crt0.o
+STDLIBGUIMT= -Bdynamic -lc -Bstatic -lg++ -lstdc++ -Bdynamic -lm -lgcc -lc -lgcc
+STDLIBCUIMT= -Bdynamic -lc -Bstatic -lg++ -lstdc++ -Bdynamic -lm -lgcc -lc -lgcc
+STDSHLGUIMT= -Bdynamic -lc -Bstatic -lg++ -lstdc++ -Bdynamic -lm -lgcc -lc -lgcc
+STDSHLCUIMT= -Bdynamic -lc -Bstatic -lg++ -lstdc++ -Bdynamic -lm -lgcc -lc -lgcc
+
+LIBMGR= ar
+LIBFLAGS= -r
+LIBEXT= .a
+
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=irc
+RCFLAGS= -fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX= ba
+DLLPRE= lib
+DLLPOST= .so
+
+LDUMP=
+
diff --git a/solenv/inc/unxbsdi.mk b/solenv/inc/unxbsdi.mk
new file mode 100644
index 000000000000..5e9c06605940
--- /dev/null
+++ b/solenv/inc/unxbsdi.mk
@@ -0,0 +1,179 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for unxbsdi
+ASM=
+AFLAGS=
+
+SOLAR_JAVA=TRUE
+JAVAFLAGSDEBUG=-g
+
+# filter for supressing verbose messages from linker
+#not needed at the moment
+#LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
+
+# _PTHREADS is needed for the stl
+CDEFS+=-DX86 -D_PTHREADS -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1 -DSTLPORT_VERSION=$(STLPORT_VER)
+
+# this is a platform with JAVA support
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+.IF "$(debug)"==""
+JAVA_RUNTIME=-ljava
+.ELSE
+JAVA_RUNTIME=-ljava_g
+.ENDIF
+.ENDIF
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=-mpentiumpro
+
+# name of C++ Compiler
+CXX*=g++
+# name of C Compiler
+CC*=gcc
+# flags for C and C++ Compiler
+CFLAGS+=-c
+# flags for the C++ Compiler
+CFLAGSCC= -pipe $(ARCH_FLAGS)
+# Flags for enabling exception handling
+CFLAGSEXCEPTIONS=-fexceptions
+# Flags for disabling exception handling
+CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+
+CFLAGSCXX= -pipe -frtti $(ARCH_FLAGS)
+PICSWITCH:=-fpic
+
+# Compiler flags for compiling static object in multi threaded environment with graphical user interface
+CFLAGSOBJGUIMT=
+# Compiler flags for compiling static object in multi threaded environment with character user interface
+CFLAGSOBJCUIMT=
+# Compiler flags for compiling shared object in multi threaded environment with graphical user interface
+CFLAGSSLOGUIMT=$(PICSWITCH)
+# Compiler flags for compiling shared object in multi threaded environment with character user interface
+CFLAGSSLOCUIMT=$(PICSWITCH)
+# Compiler flags for profiling
+CFLAGSPROF=
+# Compiler flags for debugging
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+# Compiler flags for enabling optimizations
+CFLAGSOPT=-O2
+# Compiler flags for disabling optimizations
+CFLAGSNOOPT=-O
+# Compiler flags for describing the output path
+CFLAGSOUTOBJ=-o
+
+CFLAGSWARNCC=
+CFLAGSWARNCXX=$(CFLAGSWARNCC) -Wno-ctor-dtor-privacy
+# -Wshadow does not work for C with nested uses of pthread_cleanup_push:
+CFLAGSWALLCC=-Wall -Wextra -Wendif-labels
+CFLAGSWALLCXX=$(CFLAGSWALLCC) -Wshadow -Wno-ctor-dtor-privacy
+CFLAGSWERRCC=-Werror
+
+# switches for dynamic and static linking
+STATIC = -Wl,-Bstatic
+DYNAMIC = -Wl,-Bdynamic
+
+# name of linker
+LINK*=gcc
+# default linker flags
+LINKFLAGS=
+
+# linker flags for linking applications
+LINKFLAGSAPPGUI= -Wl,-export-dynamic
+LINKFLAGSAPPCUI= -Wl,-export-dynamic
+
+# linker flags for linking shared libraries
+LINKFLAGSSHLGUI= -shared
+LINKFLAGSSHLCUI= -shared
+
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=-g
+LINKFLAGSOPT=
+
+.IF "$(NO_BSYMBOLIC)"==""
+.IF "$(PRJNAME)" != "envtest"
+LINKFLAGSSHLGUI+=-Wl,-Bsymbolic
+LINKFLAGSSHLCUI+=-Wl,-Bsymbolic
+.ENDIF
+.ENDIF # "$(NO_BSYMBOLIC)"==""
+
+LINKVERSIONMAPFLAG=-Wl,--version-script
+
+SONAME_SWITCH=-Wl,-h
+
+# Sequence of libs does matter !
+
+STDLIBCPP=-lstdc++
+
+# default objectfilenames to link
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+
+# libraries for linking applications
+STDLIBGUIMT=-lX11 -lpthread -lm
+STDLIBCUIMT=-lpthread -lm
+# libraries for linking shared libraries
+STDSHLGUIMT=-lX11 -lXext -lpthread -lm
+STDSHLCUIMT=-lpthread -lm
+
+.IF "$(STLPORT_VER)" >= "500"
+LIBSTLPORT=$(DYNAMIC) -lstlport
+LIBSTLPORTST=$(STATIC) -lstlport $(DYNAMIC)
+.ELSE
+LIBSTLPORT=$(DYNAMIC) -lstlport_gcc
+LIBSTLPORTST=$(STATIC) -lstlport_gcc $(DYNAMIC)
+.ENDIF
+
+
+# name of library manager
+LIBMGR=ar
+LIBFLAGS=-r
+
+# tool for generating import libraries
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=irc
+RCFLAGS=-fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+# platform specific identifier for shared libs
+DLLPOSTFIX=bi
+DLLPRE=lib
+DLLPOST=.so
+
diff --git a/solenv/inc/unxbsdi2.mk b/solenv/inc/unxbsdi2.mk
new file mode 100644
index 000000000000..f4206304501b
--- /dev/null
+++ b/solenv/inc/unxbsdi2.mk
@@ -0,0 +1,198 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for unxbsdi2
+ASM=
+AFLAGS=
+
+SOLAR_JAVA=TRUE
+JAVAFLAGSDEBUG=-g
+
+# filter for supressing verbose messages from linker
+#not needed at the moment
+#LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
+
+# _PTHREADS is needed for the stl
+CDEFS+= -DX86 -D_PTHREADS -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1 -DSTLPORT_VERSION=$(STLPORT_VER)
+
+# this is a platform with JAVA support
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+.IF "$(debug)"==""
+JAVA_RUNTIME=-ljava
+.ELSE
+JAVA_RUNTIME=-ljava_g
+.ENDIF
+.ENDIF
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+
+# name of C++ Compiler
+CXX*=g++
+# name of C Compiler
+CC*=gcc
+# flags for C and C++ Compiler
+CFLAGS+=-fmessage-length=0 -c
+
+# flags to enable build with symbols; required for crashdump feature
+.IF "$(ENABLE_SYMBOLS)"=="SMALL"
+CFLAGSENABLESYMBOLS=-g1
+.ELSE
+CFLAGSENABLESYMBOLS=-g
+.ENDIF
+
+# flags for the C++ Compiler
+CFLAGSCC= -pipe $(ARCH_FLAGS)
+# Flags for enabling exception handling
+CFLAGSEXCEPTIONS=-fexceptions -fno-enforce-eh-specs
+# Flags for disabling exception handling
+CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+
+CFLAGSCXX= -pipe -frtti $(ARCH_FLAGS)
+PICSWITCH:=-fpic
+
+# Compiler flags for compiling static object in multi threaded environment with graphical user interface
+CFLAGSOBJGUIMT=
+# Compiler flags for compiling static object in multi threaded environment with character user interface
+CFLAGSOBJCUIMT=
+# Compiler flags for compiling shared object in multi threaded environment with graphical user interface
+CFLAGSSLOGUIMT=$(PICSWITCH)
+# Compiler flags for compiling shared object in multi threaded environment with character user interface
+CFLAGSSLOCUIMT=$(PICSWITCH)
+# Compiler flags for profiling
+CFLAGSPROF=
+# Compiler flags for debugging
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+# Compiler flags for enabling optimizations
+# CFLAGSOPT=-O2
+# reduce to -O1 to avoid optimization problems
+CFLAGSOPT=-O1
+# Compiler flags for disabling optimizations
+CFLAGSNOOPT=-O
+# Compiler flags for describing the output path
+CFLAGSOUTOBJ=-o
+
+CFLAGSWARNCC=
+CFLAGSWARNCXX=$(CFLAGSWARNCC) -Wno-ctor-dtor-privacy
+# -Wshadow does not work for C with nested uses of pthread_cleanup_push:
+CFLAGSWALLCC=-Wall -Wextra -Wendif-labels
+CFLAGSWALLCXX=$(CFLAGSWALLCC) -Wshadow -Wno-ctor-dtor-privacy
+CFLAGSWERRCC=-Werror
+
+# switches for dynamic and static linking
+STATIC = -Wl,-Bstatic
+DYNAMIC = -Wl,-Bdynamic
+
+# name of linker
+LINK*=$(CC)
+
+# default linker flags
+LINKFLAGSDEFS*=-z defs
+LINKFLAGSRUNPATH_URELIB=-Wl,-rpath,\''$$ORIGIN'\'
+LINKFLAGSRUNPATH_UREBIN=-Wl,-rpath,\''$$ORIGIN/../lib:$$ORIGIN'\'
+ #TODO: drop $ORIGIN once no URE executable is also shipped in OOo
+LINKFLAGSRUNPATH_OOO=-Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../ure-link/lib'\'
+LINKFLAGSRUNPATH_SDK=-Wl,-rpath,\''$$ORIGIN/../../ure-link/lib'\'
+LINKFLAGSRUNPATH_BRAND=-Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../basis-link/program:$$ORIGIN/../basis-link/ure-link/lib'\'
+LINKFLAGSRUNPATH_OXT=
+LINKFLAGSRUNPATH_NONE=
+LINKFLAGS=-z combreloc $(LINKFLAGSDEFS)
+
+# linker flags for linking applications
+LINKFLAGSAPPGUI= -Wl,-export-dynamic
+LINKFLAGSAPPCUI= -Wl,-export-dynamic
+
+# linker flags for linking shared libraries
+LINKFLAGSSHLGUI= -shared
+LINKFLAGSSHLCUI= -shared
+
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=-g
+LINKFLAGSOPT=
+
+# linker flags for optimization (symbol hashtable)
+# for now, applied to symbol scoped libraries, only
+LINKFLAGSOPTIMIZE*=-Wl,-O1
+LINKVERSIONMAPFLAG=$(LINKFLAGSOPTIMIZE) -Wl,--version-script
+
+SONAME_SWITCH=-Wl,-h
+
+# Sequence of libs does matter !
+
+STDLIBCPP=-lstdc++
+
+# default objectfilenames to link
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+
+# libraries for linking applications
+STDLIBGUIMT=-lX11 -lpthread -lm
+STDLIBCUIMT=-lpthread -lm
+# libraries for linking shared libraries
+STDSHLGUIMT=-lX11 -lXext -lpthread -lm
+STDSHLCUIMT=-lpthread -lm
+
+LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive
+
+.IF "$(STLPORT_VER)" >= "500"
+LIBSTLPORT=$(DYNAMIC) -lstlport -lstdc++
+LIBSTLPORTST=$(STATIC) -lstlport $(DYNAMIC)
+.ELSE
+LIBSTLPORT=$(DYNAMIC) -lstlport_gcc -lstdc++
+LIBSTLPORTST=$(STATIC) -lstlport_gcc $(DYNAMIC)
+.ENDIF
+
+#FILLUPARC=$(STATIC) -lsupc++ $(DYNAMIC)
+
+# name of library manager
+LIBMGR=ar
+LIBFLAGS=-r
+
+# tool for generating import libraries
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=irc
+RCFLAGS=-fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+# platform specific identifier for shared libs
+DLLPOSTFIX=bi
+DLLPRE=lib
+DLLPOST=.so
+
diff --git a/solenv/inc/unxbsds.mk b/solenv/inc/unxbsds.mk
new file mode 100644
index 000000000000..0811c85a4c6d
--- /dev/null
+++ b/solenv/inc/unxbsds.mk
@@ -0,0 +1,179 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for unxbsds
+ASM=gcc
+AFLAGS=-Wa,-Av8plusa,-K,PIC -x assembler-with-cpp -c $(CDEFS)
+
+SOLAR_JAVA=TRUE
+JAVAFLAGSDEBUG=-g
+
+# filter for supressing verbose messages from linker
+#not needed at the moment
+#LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
+
+# _PTHREADS is needed for the stl
+CDEFS+=-D_PTHREADS -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1 -DSTLPORT_VERSION=$(STLPORT_VER) -DOSL_USE_SYS_V_SEMAPHORE
+
+# this is a platform with JAVA support
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+.IF "$(debug)"==""
+JAVA_RUNTIME=-ljava
+.ELSE
+JAVA_RUNTIME=-ljava_g
+.ENDIF
+.ENDIF
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+
+# name of C++ Compiler
+CXX=g++
+# name of C Compiler
+CC=gcc
+# flags for C and C++ Compiler
+CFLAGS=-c
+# flags for the C++ Compiler
+CFLAGSCC= -pipe $(ARCH_FLAGS)
+
+# Flags for enabling exception handling
+CFLAGSEXCEPTIONS=-fexceptions
+# Flags for disabling exception handling
+CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+
+CFLAGSCXX= -pipe $(ARCH_FLAGS)
+PICSWITCH:=-fPIC
+
+# Compiler flags for compiling static object in multi threaded environment with graphical user interface
+CFLAGSOBJGUIMT=$(PICSWITCH)
+# Compiler flags for compiling static object in multi threaded environment with character user interface
+CFLAGSOBJCUIMT=$(PICSWITCH)
+# Compiler flags for compiling shared object in multi threaded environment with graphical user interface
+CFLAGSSLOGUIMT=$(PICSWITCH)
+# Compiler flags for compiling shared object in multi threaded environment with character user interface
+CFLAGSSLOCUIMT=$(PICSWITCH)
+# Compiler flags for profiling
+CFLAGSPROF=
+# Compiler flags for debugging
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+# Compiler flags for enabling optimizations
+CFLAGSOPT=-O2
+# Compiler flags for disabling optimizations
+CFLAGSNOOPT=-O
+# Compiler flags for describing the output path
+CFLAGSOUTOBJ=-o
+
+CFLAGSWARNCC=
+CFLAGSWARNCXX=$(CFLAGSWARNCC) -Wno-ctor-dtor-privacy
+# -Wshadow does not work for C with nested uses of pthread_cleanup_push:
+CFLAGSWALLCC=-Wall -Wextra -Wendif-labels
+CFLAGSWALLCXX=$(CFLAGSWALLCC) -Wshadow -Wno-ctor-dtor-privacy
+CFLAGSWERRCC=-Werror
+
+# switches for dynamic and static linking
+STATIC = -Wl,-Bstatic
+DYNAMIC = -Wl,-Bdynamic
+
+# name of linker
+LINK=gcc
+# default linker flags
+LINKFLAGS=
+
+# linker flags for linking applications
+LINKFLAGSAPPGUI= -Wl,-export-dynamic
+LINKFLAGSAPPCUI= -Wl,-export-dynamic
+# linker flags for linking shared libraries
+LINKFLAGSSHLGUI= -shared
+LINKFLAGSSHLCUI= -shared
+
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=-g
+LINKFLAGSOPT=
+
+.IF "$(NO_BSYMBOLIC)"==""
+.IF "$(PRJNAME)" != "envtest"
+LINKFLAGSSHLGUI+=-Wl,-Bsymbolic
+LINKFLAGSSHLCUI+=-Wl,-Bsymbolic
+.ENDIF
+.ENDIF # "$(NO_BSYMBOLIC)"==""
+
+LINKVERSIONMAPFLAG=-Wl,--version-script
+
+# Sequence of libs does matter !
+
+STDLIBCPP=-lstdc++
+
+# default objectfilenames to link
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+
+# libraries for linking applications
+STDLIBGUIMT=-lX11 -lpthread -lm
+STDLIBCUIMT=-lpthread -lm
+# libraries for linking shared libraries
+STDSHLGUIMT=-lX11 -lXext -lpthread -lm
+STDSHLCUIMT=-lpthread -lm
+
+# STLport always needs pthread. This may yield some redundant -lpthread
+# but that doesn't matter.
+.IF "$(STLPORT_VER)" >= "500"
+LIBSTLPORT=$(DYNAMIC) -lstlport -lpthread
+LIBSTLPORTST=$(STATIC) -lstlport $(DYNAMIC) -lpthread
+.ELSE
+LIBSTLPORT=$(DYNAMIC) -lstlport_gcc -lpthread
+LIBSTLPORTST=$(STATIC) -lstlport_gcc $(DYNAMIC) -lpthread
+.ENDIF
+
+
+# name of library manager
+LIBMGR=ar
+LIBFLAGS=-r
+
+# tool for generating import libraries
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=irc
+RCFLAGS=-fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+# platform specific identifier for shared libs
+DLLPOSTFIX=bs
+DLLPRE=lib
+DLLPOST=.so
+
diff --git a/solenv/inc/unxfbsd.mk b/solenv/inc/unxfbsd.mk
new file mode 100644
index 000000000000..4a22beaec256
--- /dev/null
+++ b/solenv/inc/unxfbsd.mk
@@ -0,0 +1,229 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# Makefile for FreeBSD.
+
+ASM=
+AFLAGS=
+
+SOLAR_JAVA*=
+JAVAFLAGSDEBUG=-g
+
+# Include arch specific makefile.
+.IF "$(CPUNAME)" == "INTEL"
+.INCLUDE : unxfbsdi.mk
+.ENDIF
+.IF "$(CPUNAME)" == "X86_64"
+.INCLUDE : unxfbsdx.mk
+.ENDIF
+
+# filter for supressing verbose messages from linker
+#not needed at the moment
+#LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
+
+# _PTHREADS is needed for the stl
+CDEFS+=$(PTHREAD_CFLAGS) -D_PTHREADS -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1 -DSTLPORT_VERSION=450
+
+# enable visibility define in "sal/types.h"
+.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+CDEFS += -DHAVE_GCC_VISIBILITY_FEATURE
+.ENDIF # "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+
+# this is a platform with JAVA support
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+.IF "$(debug)"==""
+JAVA_RUNTIME=-ljava
+.ELSE
+JAVA_RUNTIME=-ljava_g
+.ENDIF
+.ENDIF
+
+# name of C++ Compiler
+CXX*=g++
+# name of C Compiler
+CC*=gcc
+.IF "$(SYSBASE)"!=""
+CFLAGS_SYSBASE:=-isystem $(SYSBASE)/usr/include
+CXX+:=$(CFLAGS_SYSBASE)
+CC+:=$(CFLAGS_SYSBASE)
+.ENDIF # "$(SYSBASE)"!=""
+CFLAGS+=-fmessage-length=0 -c
+
+# flags to enable build with symbols; required for crashdump feature
+.IF "$(ENABLE_SYMBOLS)"=="SMALL"
+CFLAGSENABLESYMBOLS=-g1
+.ELSE
+CFLAGSENABLESYMBOLS=-g # was temporarily commented out, reenabled before Beta
+
+.ENDIF
+
+# flags for the C++ Compiler
+CFLAGSCC= -pipe $(ARCH_FLAGS)
+# Flags for enabling exception handling
+CFLAGSEXCEPTIONS=-fexceptions -fno-enforce-eh-specs
+# Flags for disabling exception handling
+CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+
+# -fpermissive should be removed as soon as possible
+CFLAGSCXX= -pipe $(ARCH_FLAGS)
+PICSWITCH:=-fpic
+.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+CFLAGSCXX += -fvisibility-inlines-hidden
+.ENDIF # "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+
+# Compiler flags for compiling static object in multi threaded environment with graphical user interface
+CFLAGSOBJGUIMT=
+# Compiler flags for compiling static object in multi threaded environment with character user interface
+CFLAGSOBJCUIMT=
+# Compiler flags for compiling shared object in multi threaded environment with graphical user interface
+CFLAGSSLOGUIMT=$(PICSWITCH)
+# Compiler flags for compiling shared object in multi threaded environment with character user interface
+CFLAGSSLOCUIMT=$(PICSWITCH)
+# Compiler flags for profiling
+CFLAGSPROF=
+# Compiler flags for debugging
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+# Compiler flags for disabling optimizations
+CFLAGSNOOPT=-O0
+# Compiler flags for describing the output path
+CFLAGSOUTOBJ=-o
+
+# -Wshadow does not work for C with nested uses of pthread_cleanup_push:
+CFLAGSWARNCC=-Wall -Wextra -Wendif-labels
+CFLAGSWARNCXX=$(CFLAGSWARNCC) -Wshadow -Wno-ctor-dtor-privacy \
+ -Wno-non-virtual-dtor
+CFLAGSWALLCC=$(CFLAGSWARNCC)
+CFLAGSWALLCXX=$(CFLAGSWARNCXX)
+CFLAGSWERRCC=-Werror
+
+# Once all modules on this platform compile without warnings, set
+# COMPILER_WARN_ERRORS=TRUE here instead of setting MODULES_WITH_WARNINGS (see
+# settings.mk): Currently this is not tested on FreeBSD
+#MODULES_WITH_WARNINGS :=
+
+# switches for dynamic and static linking
+STATIC = -Wl,-Bstatic
+DYNAMIC = -Wl,-Bdynamic
+
+# name of linker
+LINK*=$(CXX)
+LINKC*=$(CC)
+
+# default linker flags
+LINKFLAGSDEFS*=#-Wl,-z,defs
+LINKFLAGSRUNPATH_URELIB=-Wl,-rpath,\''$$ORIGIN'\'
+LINKFLAGSRUNPATH_UREBIN=-Wl,-rpath,\''$$ORIGIN/../lib:$$ORIGIN'\'
+ #TODO: drop $ORIGIN once no URE executable is also shipped in OOo
+LINKFLAGSRUNPATH_OOO=-Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../ure-link/lib'\'
+LINKFLAGSRUNPATH_SDK=-Wl,-rpath,\''$$ORIGIN/../../ure-link/lib'\'
+LINKFLAGSRUNPATH_BRAND=-Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../basis-link/program:$$ORIGIN/../basis-link/ure-link/lib'\'
+LINKFLAGSRUNPATH_OXT=
+LINKFLAGSRUNPATH_NONE=
+LINKFLAGS=-Wl,-z,combreloc $(LINKFLAGSDEFS)
+
+# linker flags for linking applications
+LINKFLAGSAPPGUI= -Wl,-export-dynamic -Wl,--noinhibit-exec
+LINKFLAGSAPPCUI= -Wl,-export-dynamic -Wl,--noinhibit-exec
+
+# linker flags for linking shared libraries
+LINKFLAGSSHLGUI= -shared
+LINKFLAGSSHLCUI= -shared
+
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=-g
+LINKFLAGSOPT=
+
+# linker flags for optimization (symbol hashtable)
+# for now, applied to symbol scoped libraries, only
+LINKFLAGSOPTIMIZE*=-Wl,-O1
+LINKVERSIONMAPFLAG=$(LINKFLAGSOPTIMIZE) -Wl,--version-script
+
+SONAME_SWITCH=-Wl,-h
+
+# Sequence of libs does matter !
+
+STDLIBCPP=-lstdc++
+
+# default objectfilenames to link
+STDOBJVCL=$(L)/salmain.o
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+
+# libraries for linking applications
+STDLIBGUIMT=-lX11 $(PTHREAD_LIBS) -lm
+STDLIBCUIMT=$(PTHREAD_LIBS) -lm
+# libraries for linking shared libraries
+STDSHLGUIMT=-lX11 -lXext $(PTHREAD_LIBS) -lm
+STDSHLCUIMT=$(PTHREAD_LIBS) -lm
+
+LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive
+
+.IF "$(USE_STLP_DEBUG)" != ""
+.IF "$(STLPORT_VER)" >= "500"
+LIBSTLPORT=$(DYNAMIC) -lstlportstlg
+LIBSTLPORTST=$(STATIC) -lstlportstlg $(DYNAMIC)
+.ELSE
+LIBSTLPORT=$(DYNAMIC) -lstlport_gcc_stldebug
+LIBSTLPORTST=$(STATIC) -lstlport_gcc_stldebug $(DYNAMIC)
+.ENDIF
+.ELSE # "$(USE_STLP_DEBUG)" != ""
+.IF "$(STLPORT_VER)" >= "500"
+LIBSTLPORT=$(DYNAMIC) -lstlport
+LIBSTLPORTST=$(STATIC) -lstlport $(DYNAMIC)
+.ELSE
+LIBSTLPORT=$(DYNAMIC) -lstlport_gcc
+LIBSTLPORTST=$(STATIC) -lstlport_gcc $(DYNAMIC)
+.ENDIF
+.ENDIF # "$(USE_STLP_DEBUG)" != ""
+
+#FILLUPARC=$(STATIC) -lsupc++ $(DYNAMIC)
+
+# name of library manager
+LIBMGR=ar
+LIBFLAGS=-r
+
+# tool for generating import libraries
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=irc
+RCFLAGS=-fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+# platform specific identifier for shared libs
+DLLPRE=lib
+DLLPOST=.so
diff --git a/solenv/inc/unxfbsdi.mk b/solenv/inc/unxfbsdi.mk
new file mode 100644
index 000000000000..c1227a35f2d3
--- /dev/null
+++ b/solenv/inc/unxfbsdi.mk
@@ -0,0 +1,46 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#
+# FreBSD/i386 specific defines
+#
+
+CDEFS+=-DX86
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=-mtune=pentiumpro
+
+# Compiler flags for enabling optimizations
+.IF "$(PRODUCT)"!=""
+CFLAGSOPT=-Os -fno-strict-aliasing # optimizing for products
+.ELSE # "$(PRODUCT)"!=""
+CFLAGSOPT= # no optimizing for non products
+.ENDIF # "$(PRODUCT)"!=""
+
+# platform specific identifier for shared libs
+DLLPOSTFIX=fi
diff --git a/solenv/inc/unxfbsdx.mk b/solenv/inc/unxfbsdx.mk
new file mode 100644
index 000000000000..4a8e120d318e
--- /dev/null
+++ b/solenv/inc/unxfbsdx.mk
@@ -0,0 +1,49 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#
+# FreBSD/amd64 specific defines
+#
+
+CDEFS+=-DX86_64
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+.IF "$(CPUNAME)" == "X86_64"
+ARCH_FLAGS*=
+.ENDIF
+
+# Compiler flags for enabling optimizations
+.IF "$(PRODUCT)"!=""
+CFLAGSOPT=-O2 -fno-strict-aliasing # optimizing for products
+.ELSE # "$(PRODUCT)"!=""
+CFLAGSOPT= # no optimizing for non products
+.ENDIF # "$(PRODUCT)"!=""
+
+# platform specific identifier for shared libs
+DLLPOSTFIX=fx
+BUILD64=1
diff --git a/solenv/inc/unxhpgr.mk b/solenv/inc/unxhpgr.mk
new file mode 100644
index 000000000000..9ac0c7e3daf1
--- /dev/null
+++ b/solenv/inc/unxhpgr.mk
@@ -0,0 +1,133 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+# mak file fuer unxhpxr
+ASM=
+AFLAGS=
+
+CDEFS+=-D_PTHREADS -D_STD_NO_NAMESPACE -D_VOS_NO_NAMESPACE -D_UNO_NO_NAMESPACE
+CDEFS+=-DSYSV -D_POSIX_PTHREAD_SEMANTICS -D_HPUX_SOURCE -DRWSTD_MULTI_THREAD -D_REENTRANT -D__HPACC_NOEH -D__STL_NO_EXCEPTIONS
+ #CDEFS+= -D__hppa__
+
+# obernervige Warnungen abschalten
+# 67 = invalid pragma name
+# 251 = An object cannot be deleted using a pointer of type 'void *' since the
+# type of the object allocated is unknown.
+# 370 = The friend declaration is not in the correct form for either a function or a class.
+# (future error)
+# 600 = Type specifier is omitted; "int" is no longer assumed.
+DISWARN=+W67,251,370,600
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+
+#CXX=/opt/aCC/bin/aCC
+#CC=/opt/ansic/bin/cc
+CXX=g++
+CC=gcc
+CFLAGSWALL=-Wall
+CFLAGS=-nostdinc -c
+CFLAGSCC=-pipe -fguiding-decls $(ARCH_FLAGS)
+CFLAGSCXX=-pipe -fguiding-decls $(ARCH_FLAGS)
+PICSWITCH:=-fPIC
+CFLAGSOBJGUIMT=
+CFLAGSOBJCUIMT=
+CFLAGSSLOGUIMT=$(PICSWITCH)
+CFLAGSSLOCUIMT=$(PICSWITCH)
+CFLAGSPROF=
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+CFLAGSOPT=-O2
+CFLAGSNOOPT=
+CFLAGSOUTOBJ=-o
+
+
+ #THREADLIB=-L/opt/dce/lib -ldce
+# use native aCC to build or link with shared libs, for the sake of
+# global class-instances
+
+STATIC = -Bstatic
+DYNAMIC = -Bdynamic
+
+#LINK=$(SOLARENV)/unxhpgr/lib/gcc-lib/hppa1.1-hp-hpux10.20/egcs-2.90.29/ld
+LINK=ld
+LINKFLAGS=-L/nw386/dev/s/solenv/unxhpgr/lib/gcc-lib/hppa1.1-hp-hpux10.20/egcs-2.91.57/threads -L/nw386/dev/s/solenv/unxhpgr/lib/gcc-lib/hppa1.1-hp-hpux10.20/egcs-2.91.57
+LINKFLAGSAPPGUI= /usr/lib/crt0.o
+LINKFLAGSSHLGUI= -b -noinhibit-exec -Bsymbolic -G $(THREADLIB)
+LINKFLAGSAPPCUI= /usr/lib/crt0.o
+LINKFLAGSSHLCUI= -b -noinhibit-exec -warn-once -Bsymbolic -G
+LINKFLAGSTACK=
+APPLINKSTATIC=-Bstatic
+APPLINKSHARED=-Bsymbolic
+APP_LINKTYPE=
+
+# reihenfolge der libs NICHT egal!
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+#STDLIBGUIMT= -lX11 -lXext -lcma -lsec -lcxx -ldld -lc_r -lm
+STDLIBGUIMT= -lX11 -lXext -ldce
+STDLIBCUIMT= -lc_r -lgcc -ldce
+#STDSHLGUIMT= -lX11 -lXext -lcma -lsec -lcxx -ldld -lc_r
+STDSHLGUIMT= -lcma -lsec -ldld -lc_r
+STDSHLCUIMT=
+# -L/opt/dce/lib -ldce -lsec -lcxx
+
+LIBMGR=ar
+LIBFLAGS=-r
+# LIBEXT=.so
+
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=
+RCFLAGS=
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=hg
+DLLPRE=lib
+DLLPOST=.sl
+
+LDUMP=c++filt
+
+.IF "$(PRJNAME)"=="uno" || "$(PRJNAME)"=="vos"
+#CFLAGS += -D_PTHREADS -U_REENTRANT -U_POSIX_PTHREAD_SEMANTICS
+#CFLAGSSLO += -instances=extern -template=wholeclass -ptr$(SLO)
+#CFLAGSOBJ += -instances=global -template=wholeclass -ptr$(SLO)
+#LINKFLAGS+= -temp=/tmp -PIC -instances=extern -ptr$(SLO)
+.ENDIF
+
+#SHLLINKARCONLY=yes
+
diff --git a/solenv/inc/unxhpxr.mk b/solenv/inc/unxhpxr.mk
new file mode 100644
index 000000000000..174d61fc2b4c
--- /dev/null
+++ b/solenv/inc/unxhpxr.mk
@@ -0,0 +1,131 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mak file fuer unxhpxr
+ASM=
+AFLAGS=
+
+CDEFS+=-D_PTHREADS -D_STD_NO_NAMESPACE -D_VOS_NO_NAMESPACE -D_UNO_NO_NAMESPACE -DSYSV -D_POSIX_PTHREAD_SEMANTICS -D_HPUX_SOURCE -DRWSTD_MULTI_THREAD -D_REENTRANT -D__HPACC_NOEH -D__STL_NO_EXCEPTIONS
+
+# kann c++ was c braucht??
+
+# obernervige Warnungen abschalten
+# 67 = invalid pragma name
+# 251 = An object cannot be deleted using a pointer of type 'void *' since the
+# type of the object allocated is unknown.
+# 370 = The friend declaration is not in the correct form for either a function or a class.
+# (future error)
+# 600 = Type specifier is omitted; "int" is no longer assumed.
+DISWARN=+W67,251,370,600
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+
+#CXX=/opt/aCC/bin/aCC
+#CC=/opt/ansic/bin/cc
+CXX=aCC
+CC=cc
+CFLAGS= -c
+CFLAGSCC= -Aa +e +Z $(ARCH_FLAGS)
+CFLAGSCXX=$(DISWARN) +Z $(ARCH_FLAGS)
+CFLAGSOBJGUIMT=
+CFLAGSOBJCUIMT=
+CFLAGSSLOGUIMT=
+CFLAGSSLOCUIMT=
+CFLAGSPROF=
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+CFLAGSOPT=-O
+CFLAGSNOOPT=
+CFLAGSOUTOBJ=-o
+
+
+THREADLIB=-L/opt/dce/lib -ldce
+# use native aCC to build or link with shared libs, for the sake of
+# global class-instances
+LINK=/opt/aCC/bin/aCC
+LINKFLAGS=
+LINKFLAGSAPPGUI=-Wl,+s
+LINKFLAGSSHLGUI=-b -L/usr/solar/lib -L/usr/contrib/X11R6/lib
+LINKFLAGSAPPCUI=-Wl,+s
+LINKFLAGSSHLCUI=-b -L/usr/contrib/X11R6/lib
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=
+LINKFLAGSOPT=
+
+# reihenfolge der libs NICHT egal!
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+#STDLIBGUIMT= -lX11 -lXext -lcma -lsec -lcxx -ldld -lc_r -lm
+STDLIBGUIMT= -lX11 -lXext -lpthread
+STDLIBCUIMT= -lcma
+#STDSHLGUIMT= -lX11 -lXext -lcma -lsec -lcxx -ldld -lc_r
+STDSHLCUIMT=
+# -L/opt/dce/lib -ldce -lsec -lcxx
+
+LIBMGR=ar
+LIBFLAGS=-r
+# LIBEXT=.so
+
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=
+RCFLAGS=
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=hr
+DLLPRE=lib
+DLLPOST=.sl
+
+LDUMP=c++filt
+
+.IF "$(WORK_STAMP)"!="MIX364"
+DLLPOSTFIX=ss
+.ELSE
+DLLPOSTFIX=
+.ENDIF
+
+
+.IF "$(PRJNAME)"=="uno" || "$(PRJNAME)"=="vos"
+#CFLAGS += -D_PTHREADS -U_REENTRANT -U_POSIX_PTHREAD_SEMANTICS
+#CFLAGSSLO += -instances=extern -template=wholeclass -ptr$(SLO)
+#CFLAGSOBJ += -instances=global -template=wholeclass -ptr$(SLO)
+#LINKFLAGS+= -temp=/tmp -PIC -instances=extern -ptr$(SLO)
+.ENDIF
+
+#SHLLINKARCONLY=yes
+
diff --git a/solenv/inc/unxlng.mk b/solenv/inc/unxlng.mk
new file mode 100644
index 000000000000..aff552dde89c
--- /dev/null
+++ b/solenv/inc/unxlng.mk
@@ -0,0 +1,266 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# generic mk file for unxlng (unix linux glibc)
+ASM*=
+AFLAGS*=
+SOLAR_JAVA*=
+# default optimization level for product code
+CDEFAULTOPT*=-O2
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+# position independent code switch
+PICSWITCH*:=-fpic
+JAVAFLAGSDEBUG=-g
+
+# filter for supressing verbose messages from linker
+#not needed at the moment
+#LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
+
+# _PTHREADS is needed for the stl
+CDEFS+=-DGLIBC=2 -D_PTHREADS -D_REENTRANT -DNEW_SOLAR -D_USE_NAMESPACE=1 -DSTLPORT_VERSION=$(STLPORT_VER)
+
+# enable visibility define in "sal/types.h"
+.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+CDEFS += -DHAVE_GCC_VISIBILITY_FEATURE
+.ENDIF # "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+
+# this is a platform with JAVA support
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+.IF "$(debug)"==""
+JAVA_RUNTIME=-ljava
+.ELSE
+JAVA_RUNTIME=-ljava_g
+.ENDIF
+.ENDIF
+
+# name of C++ Compiler
+CXX*=g++
+# name of C Compiler
+CC*=gcc
+.IF "$(SYSBASE)"!=""
+CFLAGS_SYSBASE:=-isystem $(SYSBASE)$/usr$/include
+CXX+:=$(CFLAGS_SYSBASE)
+CC+:=$(CFLAGS_SYSBASE)
+.ENDIF # "$(SYSBASE)"!=""
+CFLAGS+=-fmessage-length=0 -c
+
+# flags to enable build with symbols; required for crashdump feature
+.IF "$(ENABLE_SYMBOLS)"=="SMALL"
+CFLAGSENABLESYMBOLS=-g1
+.ELSE
+CFLAGSENABLESYMBOLS=-g # was temporarily commented out, reenabled before Beta
+
+.ENDIF
+
+# flags for the C++ Compiler
+CFLAGSCC= -pipe $(ARCH_FLAGS)
+# Flags for enabling exception handling
+CFLAGSEXCEPTIONS=-fexceptions -fno-enforce-eh-specs
+# Flags for disabling exception handling
+CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+
+# -fpermissive should be removed as soon as possible
+CFLAGSCXX= -pipe $(ARCH_FLAGS)
+.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+CFLAGSCXX += -fvisibility-inlines-hidden
+.ENDIF # "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+
+CFLAGS_CREATE_PCH=-x c++-header -I$(INCPCH) -DPRECOMPILED_HEADERS
+CFLAGS_USE_PCH=-I$(SLO)$/pch -DPRECOMPILED_HEADERS -Winvalid-pch
+CFLAGS_USE_EXCEPTIONS_PCH=-I$(SLO)$/pch_ex -DPRECOMPILED_HEADERS -Winvalid-pch
+
+# Compiler flags for compiling static object in multi threaded environment with graphical user interface
+CFLAGSOBJGUIMT=
+# Compiler flags for compiling static object in multi threaded environment with character user interface
+CFLAGSOBJCUIMT=
+# Compiler flags for compiling shared object in multi threaded environment with graphical user interface
+CFLAGSSLOGUIMT=$(PICSWITCH)
+# Compiler flags for compiling shared object in multi threaded environment with character user interface
+CFLAGSSLOCUIMT=$(PICSWITCH)
+# Compiler flags for profiling
+CFLAGSPROF=
+# Compiler flags for debugging
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+# Compiler flags for enabling optimizations
+.IF "$(PRODUCT)"!=""
+CFLAGSOPT=$(CDEFAULTOPT) -fno-strict-aliasing # optimizing for products
+.ELSE # "$(PRODUCT)"!=""
+CFLAGSOPT= # no optimizing for non products
+.ENDIF # "$(PRODUCT)"!=""
+# Compiler flags for disabling optimizations
+CFLAGSNOOPT=-O0
+# Compiler flags for describing the output path
+CFLAGSOUTOBJ=-o
+
+# -Wshadow does not work for C with nested uses of pthread_cleanup_push:
+CFLAGSWARNCC=-Wall -Wextra -Wendif-labels
+CFLAGSWARNCXX=$(CFLAGSWARNCC) -Wshadow -Wno-ctor-dtor-privacy \
+ -Wno-non-virtual-dtor
+CFLAGSWALLCC=$(CFLAGSWARNCC)
+CFLAGSWALLCXX=$(CFLAGSWARNCXX)
+CFLAGSWERRCC=-Werror
+
+# Once all modules on this platform compile without warnings, set
+# COMPILER_WARN_ERRORS=TRUE here instead of setting MODULES_WITH_WARNINGS (see
+# settings.mk):
+MODULES_WITH_WARNINGS := \
+ soldep
+
+# switches for dynamic and static linking
+STATIC = -Wl,-Bstatic
+DYNAMIC = -Wl,-Bdynamic
+
+# name of linker
+LINK*=$(CXX)
+LINKC*=$(CC)
+
+# default linker flags
+LINKFLAGSDEFS*=-Wl,-z,defs
+LINKFLAGSRUNPATH_URELIB=-Wl,-rpath,\''$$ORIGIN'\'
+LINKFLAGSRUNPATH_UREBIN=-Wl,-rpath,\''$$ORIGIN/../lib:$$ORIGIN'\'
+ #TODO: drop $ORIGIN once no URE executable is also shipped in OOo
+LINKFLAGSRUNPATH_OOO=-Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../ure-link/lib'\'
+LINKFLAGSRUNPATH_SDK=-Wl,-rpath,\''$$ORIGIN/../../ure-link/lib'\'
+LINKFLAGSRUNPATH_BRAND=-Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../basis-link/program:$$ORIGIN/../basis-link/ure-link/lib'\'
+LINKFLAGSRUNPATH_OXT=
+LINKFLAGSRUNPATH_BOXT=-Wl,-rpath,\''$$ORIGIN/../../../basis-link/program'\'
+LINKFLAGSRUNPATH_NONE=
+# flag -Wl,-z,noexecstack sets the NX bit on the stack
+LINKFLAGS=-Wl,-z,noexecstack -Wl,-z,combreloc $(LINKFLAGSDEFS)
+.IF "$(HAVE_LD_BSYMBOLIC_FUNCTIONS)" == "TRUE"
+LINKFLAGS += -Wl,-Bsymbolic-functions -Wl,--dynamic-list-cpp-new -Wl,--dynamic-list-cpp-typeinfo
+.ENDIF
+
+# linker flags for linking applications
+LINKFLAGSAPPGUI= -Wl,-export-dynamic -Wl,--noinhibit-exec \
+ -Wl,-rpath-link,$(LB):$(SOLARLIBDIR)
+LINKFLAGSAPPCUI= -Wl,-export-dynamic -Wl,--noinhibit-exec \
+ -Wl,-rpath-link,$(LB):$(SOLARLIBDIR)
+
+# linker flags for linking shared libraries
+LINKFLAGSSHLGUI= -shared
+LINKFLAGSSHLCUI= -shared
+
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=-g
+LINKFLAGSOPT=
+
+# linker flags for optimization (symbol hashtable)
+# for now, applied to symbol scoped libraries, only
+LINKFLAGSOPTIMIZE*=-Wl,-O1
+LINKVERSIONMAPFLAG=$(LINKFLAGSOPTIMIZE) -Wl,--version-script
+
+SONAME_SWITCH=-Wl,-h
+
+# Sequence of libs does matter !
+
+STDLIBCPP=-lstdc++
+
+# default objectfilenames to link
+STDOBJVCL=$(L)$/salmain.o
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+
+.IF "$(ALLOC)" == "TCMALLOC"
+STDLIBGUIMT+=-ltcmalloc
+STDLIBCUIMT+=-ltcmalloc
+STDSHLGUIMT+=-ltcmalloc
+STDSHLCUIMT+=-ltcmalloc
+.ENDIF
+
+.IF "$(ALLOC)" == "JEMALLOC"
+STDLIBGUIMT+=-ljemalloc
+STDLIBCUIMT+=-ljemalloc
+STDSHLGUIMT+=-ljemalloc
+STDSHLCUIMT+=-ljemalloc
+.ENDIF
+
+.IF "$(HAVE_LD_HASH_STYLE)" == "TRUE"
+LINKFLAGS += -Wl,--hash-style=both
+.ELSE
+LINKFLAGS += -Wl,-zdynsort
+.ENDIF
+
+# libraries for linking applications
+STDLIBGUIMT+=-Wl,--as-needed -ldl -lpthread -lm -Wl,--no-as-needed
+STDLIBCUIMT+=-Wl,--as-needed -ldl -lpthread -lm -Wl,--no-as-needed
+# libraries for linking shared libraries
+STDSHLGUIMT+=-Wl,--as-needed -ldl -lpthread -lm -Wl,--no-as-needed
+STDSHLCUIMT+=-Wl,--as-needed -ldl -lpthread -lm -Wl,--no-as-needed
+
+X11LINK_DYNAMIC = -Wl,--as-needed -lXext -lX11 -Wl,--no-as-needed
+
+LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive
+
+.IF "$(USE_STLP_DEBUG)" != ""
+.IF "$(STLPORT_VER)" >= "500"
+LIBSTLPORT=$(DYNAMIC) -lstlportstlg
+LIBSTLPORTST=$(STATIC) -lstlportstlg $(DYNAMIC)
+.ELSE
+LIBSTLPORT=$(DYNAMIC) -lstlport_gcc_stldebug
+LIBSTLPORTST=$(STATIC) -lstlport_gcc_stldebug $(DYNAMIC)
+.ENDIF
+.ELSE # "$(USE_STLP_DEBUG)" != ""
+.IF "$(STLPORT_VER)" >= "500"
+LIBSTLPORT=$(DYNAMIC) -lstlport
+LIBSTLPORTST=$(STATIC) -lstlport $(DYNAMIC)
+.ELSE
+LIBSTLPORT=$(DYNAMIC) -lstlport_gcc
+LIBSTLPORTST=$(STATIC) -lstlport_gcc $(DYNAMIC)
+.ENDIF
+.ENDIF # "$(USE_STLP_DEBUG)" != ""
+
+#FILLUPARC=$(STATIC) -lsupc++ $(DYNAMIC)
+
+# name of library manager
+LIBMGR*=ar
+LIBFLAGS=-r
+
+# tool for generating import libraries
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=irc
+RCFLAGS=-fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+# platform specific identifier for shared libs
+DLLPRE=lib
+DLLPOST=.so
+PCHPOST=.gch
diff --git a/solenv/inc/unxlnga.mk b/solenv/inc/unxlnga.mk
new file mode 100644
index 000000000000..da5d2fcd3d38
--- /dev/null
+++ b/solenv/inc/unxlnga.mk
@@ -0,0 +1,33 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Unix Linux Itanium using gcc, please make generic modifications to unxlng.mk
+
+.INCLUDE : unxlng.mk
+CFLAGS+=-DIA64
+DLLPOSTFIX=la
+BUILD64=1
diff --git a/solenv/inc/unxlngaxp.mk b/solenv/inc/unxlngaxp.mk
new file mode 100644
index 000000000000..bf7711a10c5b
--- /dev/null
+++ b/solenv/inc/unxlngaxp.mk
@@ -0,0 +1,34 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Unix Linux Alpha using gcc, please make generic modifications to unxlng.mk
+
+PICSWITCH:=-fPIC
+.INCLUDE : unxlng.mk
+CFLAGS+=-DAXP
+DLLPOSTFIX=ll
+BUILD64=1
diff --git a/solenv/inc/unxlnghppa.mk b/solenv/inc/unxlnghppa.mk
new file mode 100644
index 000000000000..7ae2d25c332e
--- /dev/null
+++ b/solenv/inc/unxlnghppa.mk
@@ -0,0 +1,35 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Unix Linux HPPA using GCC, please make generic modifications to unxlng.mk
+PICSWITCH:=-fPIC
+.INCLUDE : unxlng.mk
+CDEFS+=-DHPPA
+CFLAGS+=
+CFLAGSCC+=
+CFLAGSCXX+=
+DLLPOSTFIX=lh
diff --git a/solenv/inc/unxlngi.mk b/solenv/inc/unxlngi.mk
new file mode 100644
index 000000000000..d86aab185d0e
--- /dev/null
+++ b/solenv/inc/unxlngi.mk
@@ -0,0 +1,34 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Unix Linux Intel (X86) using GCC, please make generic modifications to unxlng.mk
+CDEFAULTOPT=-Os
+ARCH_FLAGS*=-mtune=pentiumpro
+.INCLUDE : unxlng.mk
+CDEFS+=-DX86
+DLLPOST=.so
+DLLPOSTFIX=li
diff --git a/solenv/inc/unxlngm68k.mk b/solenv/inc/unxlngm68k.mk
new file mode 100644
index 000000000000..da6ed55d8cfd
--- /dev/null
+++ b/solenv/inc/unxlngm68k.mk
@@ -0,0 +1,37 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Unix Linux m68k using GCC, please make generic modifications to unxlng.mk
+
+CDEFAULTOPT=-Os
+PICSWITCH:=-fPIC
+.INCLUDE : unxlng.mk
+CDEFS+=-DM68K
+CFLAGS+=-fsigned-char -fno-omit-frame-pointer
+CFLAGSCC+=-fsigned-char
+CFLAGSCXX+=-fsigned-char
+DLLPOSTFIX=lm
diff --git a/solenv/inc/unxlngmips.mk b/solenv/inc/unxlngmips.mk
new file mode 100644
index 000000000000..53c927d10b32
--- /dev/null
+++ b/solenv/inc/unxlngmips.mk
@@ -0,0 +1,33 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Unix Linux Mips using GCC, please make generic modifications to unxlng.mk
+
+CDEFAULTOPT=-Os
+.INCLUDE : unxlng.mk
+CDEFS+=-DMIPS
+DLLPOSTFIX=lm
diff --git a/solenv/inc/unxlngppc.mk b/solenv/inc/unxlngppc.mk
new file mode 100644
index 000000000000..408233539bf8
--- /dev/null
+++ b/solenv/inc/unxlngppc.mk
@@ -0,0 +1,37 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Unix Linux PowerPC using GCC, please make generic modifications to unxlng.mk
+
+DEFAULTOPT=-Os
+PICSWITCH:=-fPIC
+.INCLUDE : unxlng.mk
+CDEFS+=-DPOWERPC -DPPC
+CFLAGS+=-fsigned-char
+CFLAGSCC+=-fsigned-char
+CFLAGSCXX+=-fsigned-char
+DLLPOSTFIX=lp
diff --git a/solenv/inc/unxlngppc64.mk b/solenv/inc/unxlngppc64.mk
new file mode 100644
index 000000000000..7ce9f35c4ad8
--- /dev/null
+++ b/solenv/inc/unxlngppc64.mk
@@ -0,0 +1,34 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Unix Linux 64Bit PowerPC using GCC, inherit from ppc and add some flags
+
+.INCLUDE : unxlngppc.mk
+
+CDEFS+=-DPOWERPC64
+CFLAGSCXX+=-mminimal-toc
+BUILD64=1
diff --git a/solenv/inc/unxlngr.mk b/solenv/inc/unxlngr.mk
new file mode 100644
index 000000000000..1bcbb6626219
--- /dev/null
+++ b/solenv/inc/unxlngr.mk
@@ -0,0 +1,34 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Unix Linux ARM using GCC, please make generic modifications to unxlng.mk
+
+CDEFAULTOPT=-Os
+.INCLUDE : unxlng.mk
+CDEFS+=-DARM32
+CFLAGS+=-fno-omit-frame-pointer
+DLLPOSTFIX=lr
diff --git a/solenv/inc/unxlngs.mk b/solenv/inc/unxlngs.mk
new file mode 100644
index 000000000000..b4e6f5f58f4d
--- /dev/null
+++ b/solenv/inc/unxlngs.mk
@@ -0,0 +1,36 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Unix Linux Sparc using GCC, please make generic modifications to unxlng.mk
+
+ASM=$(CC)
+AFLAGS=-Wa,-K,PIC -c $(CDEFS)
+CDEFAULTOPT=-Os
+PICSWITCH:=-fPIC
+.INCLUDE : unxlng.mk
+CDEFS+=-DSPARC
+DLLPOSTFIX=ls
diff --git a/solenv/inc/unxlngs390.mk b/solenv/inc/unxlngs390.mk
new file mode 100644
index 000000000000..47e2e37011e8
--- /dev/null
+++ b/solenv/inc/unxlngs390.mk
@@ -0,0 +1,36 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Unix Linux s390 using GCC, please make generic modifications to unxlng.mk
+
+PICSWITCH:=-fPIC
+.INCLUDE : unxlng.mk
+CDEFS+=-DS390
+CFLAGS+=-fsigned-char -fno-omit-frame-pointer
+CFLAGSCC+=-fsigned-char
+CFLAGSCXX+=-fsigned-char
+DLLPOSTFIX=l3
diff --git a/solenv/inc/unxlngs390x.mk b/solenv/inc/unxlngs390x.mk
new file mode 100644
index 000000000000..108e30b7337a
--- /dev/null
+++ b/solenv/inc/unxlngs390x.mk
@@ -0,0 +1,33 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Unix Linux 64bit s390x using GCC, inherit from s390 and add some flags
+
+.INCLUDE : unxlngs390.mk
+
+CDEFS+=-DS390X
+BUILD64=1
diff --git a/solenv/inc/unxlngx.mk b/solenv/inc/unxlngx.mk
new file mode 100644
index 000000000000..1ced6c3912d0
--- /dev/null
+++ b/solenv/inc/unxlngx.mk
@@ -0,0 +1,35 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Linux Unix X86-64 using GCC, please make generic modifications to unxlng.mk
+
+.INCLUDE : unxlng.mk
+CDEFS+=-DX86_64
+MODULES_WITH_WARNINGS+=\
+ svx
+DLLPOSTFIX=lx
+BUILD64=1
diff --git a/solenv/inc/unxmacx.mk b/solenv/inc/unxmacx.mk
new file mode 100644
index 000000000000..77a348138e30
--- /dev/null
+++ b/solenv/inc/unxmacx.mk
@@ -0,0 +1,289 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+##########################################################################
+# Platform MAKEFILE for Mac OS X and Darwin on both PowerPC and Intel
+##########################################################################
+
+# PROCESSOR_DEFINES and DLLPOSTFIX are defined in the particular platform file
+
+ASM=
+AFLAGS=
+LINKOUTPUT_FILTER=
+
+# Definitions that we may need on the compile line.
+# -D_PTHREADS and -D_REENTRANT are needed for STLport, and must be specified when
+# compiling STLport sources too, either internally or externally.
+CDEFS+=-DGLIBC=2 -D_PTHREADS -D_REENTRANT -DNO_PTHREAD_PRIORITY $(PROCESSOR_DEFINES) -DSTLPORT_VERSION=$(STLPORT_VER) -D_USE_NAMESPACE=1
+.IF "$(GUIBASE)"=="unx" && "$(USE_SYSTEM_STL)"!="YES"
+CDEFS+=-DX_LOCALE
+.ENDIF
+.IF "$(GUIBASE)"=="aqua"
+# MAXOSX_DEPLOYMENT_TARGET : The minimum version required to run the build,
+# build can assume functions/libraries of that version to be available
+# unless you want to do runtime checks for 10.5 api, you also want to use the 10.4 sdk
+# (safer/easier than dealing with the MAC_OS_X_VERSION_MAX_ALLOWED macro)
+# http://developer.apple.com/technotes/tn2002/tn2064.html
+MACOSX_DEPLOYMENT_TARGET=10.4
+.EXPORT: MACOSX_DEPLOYMENT_TARGET
+CDEFS+=-DQUARTZ
+EXTRA_CDEFS*=-isysroot /Developer/SDKs/MacOSX10.4u.sdk
+.ENDIF
+
+# Name of library where static data members are initialized
+# STATICLIBNAME=static$(DLLPOSTFIX)
+# STATICLIB=-l$(STATICLIBNAME)
+
+# enable visibility define in "sal/types.h"
+.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+CDEFS += -DHAVE_GCC_VISIBILITY_FEATURE
+.ENDIF # "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+
+
+# MacOS X specific Java compilation/link flags
+SOLAR_JAVA*=TRUE
+.IF "$(SOLAR_JAVA)"!=""
+ JAVADEF=-DSOLAR_JAVA
+ JAVAFLAGSDEBUG=-g
+ JAVA_RUNTIME=-framework JavaVM
+.ENDIF
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+
+# Specify the compiler to use. NOTE: MacOS X should always specify
+# c++ for C++ compilation as it does certain C++ specific things
+# behind the scenes for us.
+# CC = C++ compiler to use
+# cc = C compiler to use
+# objc = Objective C compiler to use
+# objcpp = Objective C++ compiler to use
+CXX*=g++
+CC*=gcc
+objc*=$(CC)
+objcpp*=$(CXX)
+
+CFLAGS=-fsigned-char -fmessage-length=0 -malign-natural -c $(EXTRA_CFLAGS)
+
+.IF "$(DISABLE_DEPRECATION_WARNING)" == "TRUE"
+CFLAGS+=-Wno-deprecated-declarations
+.ENDIF
+# ---------------------------------
+# Compilation flags
+# ---------------------------------
+# Normal C compilation flags
+CFLAGSCC=-pipe -fsigned-char -malign-natural $(ARCH_FLAGS)
+
+# Normal Objective C compilation flags
+#OBJCFLAGS=-no-precomp
+OBJCFLAGS=-fobjc-exceptions
+# -x options generally ignored by ccache, tell it that it can cache
+# the result nevertheless
+CCACHE_SKIP:=$(eq,$(USE_CCACHE),YES --ccache-skip $(NULL))
+OBJCXXFLAGS:=$(CCACHE_SKIP) -x $(CCACHE_SKIP) objective-c++ -fobjc-exceptions
+
+# Comp Flags for files that need exceptions enabled (C and C++)
+CFLAGSEXCEPTIONS=-fexceptions -fno-enforce-eh-specs
+
+# Comp Flags for files that do not need exceptions enabled (C and C++)
+CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+
+# Normal C++ compilation flags
+CFLAGSCXX=-pipe -malign-natural -fsigned-char -Wno-long-double $(ARCH_FLAGS)
+CFLAGSCXX+= -Wno-ctor-dtor-privacy
+
+PICSWITCH:=-fPIC
+# Other flags
+CFLAGSOBJGUIMT=$(PICSWITCH) -fno-common
+CFLAGSOBJCUIMT=$(PICSWITCH) -fno-common
+CFLAGSSLOGUIMT=$(PICSWITCH) -fno-common
+CFLAGSSLOCUIMT=$(PICSWITCH) -fno-common
+CFLAGSPROF=
+
+# Flag for including debugging information in object files
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+
+# Flag to specify output file to compiler/linker
+CFLAGSOUTOBJ=-o
+
+# Flags to enable precompiled headers
+CFLAGS_CREATE_PCH=-x c++-header -I$(INCPCH) -DPRECOMPILED_HEADERS
+CFLAGS_USE_PCH=-I$(SLO)/pch -DPRECOMPILED_HEADERS -Winvalid-pch
+CFLAGS_USE_EXCEPTIONS_PCH=-I$(SLO)/pch_ex -DPRECOMPILED_HEADERS -Winvalid-pch
+
+# ---------------------------------
+# Optimization flags
+# ---------------------------------
+CFLAGSOPT=-O2 -fno-strict-aliasing
+CFLAGSNOOPT=-O0
+
+# -Wshadow does not work for C with nested uses of pthread_cleanup_push:
+# -Wshadow does not work for C++ as /usr/include/c++/4.0.0/ext/hashtable.h
+# l. 717 contains a declaration of __cur2 shadowing the declaration at l. 705,
+# in template code for which a #pragma gcc system_header would not work:
+# -Wextra doesn not work for gcc-3.3
+CFLAGSWARNCC=-Wall -Wendif-labels
+CFLAGSWARNCXX=$(CFLAGSWARNCC) -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor
+CFLAGSWALLCC=$(CFLAGSWARNCC)
+CFLAGSWALLCXX=$(CFLAGSWARNCXX)
+CFLAGSWERRCC=-Werror
+
+# All modules on this platform compile without warnings.
+# If you need to set MODULES_WITH_WARNINGS here, comment
+# COMPILER_WARN_ERRORS=TRUE here (see settings.mk):
+COMPILER_WARN_ERRORS=TRUE
+
+#special settings form environment
+CDEFS+=$(EXTRA_CDEFS)
+
+STDLIBCPP=-lstdc++
+
+# ---------------------------------
+# STLport library names
+# ---------------------------------
+.IF "$(USE_STLP_DEBUG)" != ""
+.IF "$(STLPORT_VER)" >= "500"
+LIBSTLPORT=-lstlportstlg
+LIBSTLPORTST=$(STATIC) -lstlportstlg
+.ELSE
+LIBSTLPORT=-lstlport_gcc_stldebug
+LIBSTLPORTST=$(SOLARVERSION)/$(INPATH)/lib/libstlport_gcc_stldebug.a
+.ENDIF
+.ELSE # "$(USE_STLP_DEBUG" != ""
+.IF "$(STLPORT_VER)" >= "500"
+LIBSTLPORT=-lstlport
+LIBSTLPORTST=$(STATIC) -lstlport
+.ELSE
+LIBSTLPORT=-lstlport_gcc
+LIBSTLPORTST=$(SOLARVERSION)/$(INPATH)/lib/libstlport_gcc.a
+.ENDIF
+.ENDIF # "$(USE_STLP_DEBUG" != ""
+
+# ---------------------------------
+# Link stage flags
+# ---------------------------------
+# always link with gcc since you may be linking c code and don't want -lstdc++ linked in!
+
+## ericb 04 mars 2005
+
+LINK*=$(CXX)
+LINKC*=$(CC)
+
+LINKFLAGSDEFS*=-Wl,-multiply_defined,suppress
+# assure backwards-compatibility
+EXTRA_LINKFLAGS*=-Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk
+# Very long install_names are needed so that install_name_tool -change later on
+# does not complain that "larger updated load commands do not fit:"
+LINKFLAGSRUNPATH_URELIB=-install_name '@__________________________________________________URELIB/$(@:f)'
+LINKFLAGSRUNPATH_UREBIN=
+LINKFLAGSRUNPATH_OOO=-install_name '@__________________________________________________OOO/$(@:f)'
+LINKFLAGSRUNPATH_SDK=
+LINKFLAGSRUNPATH_BRAND=
+LINKFLAGSRUNPATH_OXT=
+LINKFLAGSRUNPATH_BOXT=
+LINKFLAGSRUNPATH_NONE=-install_name '@__________________________________________________NONE/$(@:f)'
+LINKFLAGS=$(LINKFLAGSDEFS)
+
+# [ed] 5/14/02 If we're building for aqua, add in the objc runtime library into our link line
+.IF "$(GUIBASE)" == "aqua"
+ LINKFLAGS+=-lobjc
+ # Sometimes we still use files that would be in a GUIBASE="unx" specific directory
+ # because they really aren't GUIBASE specific, so we've got to account for that here.
+ INCGUI+= -I$(PRJ)/unx/inc
+.ENDIF
+
+#special settings form environment
+LINKFLAGS+=$(EXTRA_LINKFLAGS)
+
+# Random link flags dealing with different cases of linking
+
+LINKFLAGSAPPGUI=-bind_at_load
+LINKFLAGSSHLGUI=-dynamiclib -single_module
+LINKFLAGSAPPCUI=-bind_at_load
+LINKFLAGSSHLCUI=-dynamiclib -single_module
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+
+# Flag to add debugging information to final products
+LINKFLAGSDEBUG=-g
+LINKFLAGSOPT=
+
+# ---------------------------------
+# MacOS X shared library specifics
+# ---------------------------------
+
+# Tag to identify an output file as a library
+DLLPRE=lib
+# File extension to identify dynamic shared libraries on MacOS X
+DLLPOST=.dylib
+# Precompiled header file extension
+PCHPOST=.gch
+
+# We don't use mapping on MacOS X
+#LINKVERSIONMAPFLAG=-Wl,--version-script
+LINKVERSIONMAPFLAG=-Wl,-exported_symbols_list
+
+SONAME_SWITCH=-Wl,-h
+
+STDLIBCPP=-lstdc++
+
+STDOBJVCL=$(L)/salmain.o
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+
+.IF "$(GUIBASE)" == "aqua"
+ STDLIBCUIMT=CPPRUNTIME -lm
+ STDLIBGUIMT=-framework Carbon -framework Cocoa -lpthread CPPRUNTIME -lm
+ STDSHLCUIMT=-lpthread CPPRUNTIME -lm
+ STDSHLGUIMT=-framework Carbon -framework CoreFoundation -framework Cocoa -lpthread CPPRUNTIME -lm
+.ELSE
+ STDLIBCUIMT= CPPRUNTIME -lm
+ STDLIBGUIMT=-lX11 -lpthread CPPRUNTIME -lm
+ STDSHLCUIMT=-lpthread CPPRUNTIME -lm
+ STDSHLGUIMT=-lX11 -lXext -lpthread CPPRUNTIME -lm -framework CoreFoundation
+.ENDIF
+
+LIBMGR=ar
+LIBFLAGS=-r
+
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=irc
+RCFLAGS=-fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+OOO_LIBRARY_PATH_VAR = DYLD_LIBRARY_PATH
diff --git a/solenv/inc/unxmacxi.mk b/solenv/inc/unxmacxi.mk
new file mode 100644
index 000000000000..7c7f0a88f4f4
--- /dev/null
+++ b/solenv/inc/unxmacxi.mk
@@ -0,0 +1,53 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#
+# Mac OS X/Intel specific defines
+#
+
+PROCESSOR_DEFINES=-DX86
+
+DLLPOSTFIX=mxi
+
+# special for SO build environment
+.IF "$(SYSBASE)"!=""
+.IF "$(EXTRA_CFLAGS)"!=""
+CPP:=gcc -E $(EXTRA_CFLAGS)
+CXXCPP*:=g++ -E $(EXTRA_CFLAGS)
+.EXPORT : CPP CXXCPP
+.ENDIF # "$(EXTRA_CFLAGS)"!=""
+.ENDIF # "$(SYSBASE)"!=""
+
+# flags to enable build with symbols; required by crashdump feature
+.IF "$(ENABLE_SYMBOLS)"=="SMALL"
+CFLAGSENABLESYMBOLS=-g1
+.ELSE
+CFLAGSENABLESYMBOLS=-g
+.ENDIF
+
+# Include generic Mac OS X makefile
+.INCLUDE : unxmacx.mk
diff --git a/solenv/inc/unxmacxp.mk b/solenv/inc/unxmacxp.mk
new file mode 100644
index 000000000000..28b2881962de
--- /dev/null
+++ b/solenv/inc/unxmacxp.mk
@@ -0,0 +1,37 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+#
+# Mac OS X/PowerPC specific defines
+#
+
+PROCESSOR_DEFINES=-DPOWERPC -DPPC
+
+DLLPOSTFIX=mxp
+
+# Include generic Mac OS X makefile
+.INCLUDE : unxmacx.mk
diff --git a/solenv/inc/unxscoi.mk b/solenv/inc/unxscoi.mk
new file mode 100644
index 000000000000..901fe7b2cb22
--- /dev/null
+++ b/solenv/inc/unxscoi.mk
@@ -0,0 +1,140 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+# mak file fuer wnticci
+ASM=
+AFLAGS=
+
+CDEFS+=-D_PTHREADS -D_REENTRANT
+CDEFS+=-D_STD_NO_NAMESPACE -D_VOS_NO_NAMESPACE -D_UNO_NO_NAMESPACE -DX86 -DNEW_SOLAR
+# kann c++ was c braucht??
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=-mpentium
+
+CXX*=/nw386/dev/s/solenv/unxscoi/bin/g++
+CC*=/nw386/dev/s/solenv/unxscoi/bin/gcc
+CFLAGS=-c
+CFLAGSCC=$(ARCH_FLAGS)
+CFLAGSEXCEPTIONS=-fexceptions
+CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+CFLAGSCXX=-fguiding-decls -frtti $(ARCH_FLAGS)
+PICSWITCH:=-fPIC
+CFLAGSOBJGUIMT=$(PICSWITCH)
+CFLAGSOBJCUIMT=$(PICSWITCH)
+CFLAGSSLOGUIMT=$(PICSWITCH)
+CFLAGSSLOCUIMT=$(PICSWITCH)
+CFLAGSPROF=
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+CFLAGSOPT=-O2
+CFLAGSNOOPT=-O
+CFLAGSOUTOBJ=-o
+
+CFLAGSWARNCC=
+CFLAGSWARNCXX=$(CFLAGSWARNCC) -Wno-ctor-dtor-privacy
+# -Wshadow does not work for C with nested uses of pthread_cleanup_push:
+CFLAGSWALLCC=-Wall -Wextra -Wendif-labels
+CFLAGSWALLCXX=$(CFLAGSWALLCC) -Wshadow -Wno-ctor-dtor-privacy
+CFLAGSWERRCC=-Werror
+
+STATIC = -Wl,-Bstatic
+DYNAMIC = -Wl,-Bdynamic
+
+THREADLIB=
+LINK=/nw386/dev/s/solenv/unxscoi/bin/gcc
+LINKFLAGS=
+# SCO hat grosse Probleme mit fork/exec und einigen shared libraries
+# rsc2 muss daher statisch gelinkt werden
+.IF "$(PRJNAME)"=="rsc"
+LINKFLAGSAPPGUI=-L/nw386/dev/s/solenv/unxscoi/lib $(STATIC) -lpthread_init $(DYNAMIC)
+LINKFLAGSAPPCUI=-L/nw386/dev/s/solenv/unxscoi/lib $(STATIC) -lpthread_init $(DYNAMIC)
+.ELSE
+LINKFLAGSAPPGUI=-L/nw386/dev/s/solenv/unxscoi/lib -lpthread_init
+LINKFLAGSAPPCUI=-L/nw386/dev/s/solenv/unxscoi/lib -lpthread_init
+.ENDIF
+LINKFLAGSSHLGUI=-G -W,l,-Bsymbolic
+LINKFLAGSSHLCUI=-G -W,l,-Bsymbolic
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=-g
+LINKFLAGSOPT=
+
+# standard C++ Library
+#
+# das statische dazulinken der libstdc++ macht jede shared library um 50k
+# (ungestrippt) oder so groesser, auch wenn sie ueberhaupt nicht gebraucht
+# wird. Da muessen wir uns was besseres ueberlegen.
+STDLIBCPP=-Wl,-Bstatic -lstdc++ -Wl,-Bdynamic
+
+# reihenfolge der libs NICHT egal!
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+.IF "$(PRJNAME)"=="rsc"
+STDLIBGUIMT=-lXext -lX11 $(STATIC) -lpthread $(DYNAMIC) -ldl -lsocket -lm
+STDLIBCUIMT=$(STATIC) -lpthread $(DYNAMIC) -ldl -lsocket -lm
+.ELSE
+STDLIBGUIMT=-lXext -lX11 -lpthread -ldl -lsocket -lm
+STDLIBCUIMT=-lpthread -ldl -lsocket -lm
+.ENDIF
+#STDSHLGUIMT=-lXext -lX11 -lpthread -ldl -lsocket -lm
+#STDSHLCUIMT=-lpthread -ldl -lsocket -lm
+
+STDLIBCPP= -lstdc++
+SHLLINKARCONLY=yes
+
+LIBMGR=ar
+LIBFLAGS=-r
+# LIBEXT=.so
+
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=irc
+RCFLAGS=-fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=ci
+DLLPRE=lib
+DLLPOST=.so
+
+LDUMP=cppfilt /b /n /o /p
+
+.IF "$(WORK_STAMP)"!="MIX364"
+DLLPOSTFIX=ci
+.ELSE
+DLLPOSTFIX=
+.ENDIF
diff --git a/solenv/inc/unxsogi.mk b/solenv/inc/unxsogi.mk
new file mode 100644
index 000000000000..ce82fca29fa9
--- /dev/null
+++ b/solenv/inc/unxsogi.mk
@@ -0,0 +1,141 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for unxsogi
+ASM=/usr/ccs/bin/as
+AFLAGS=-P
+
+SOLAR_JAVA=TRUE
+JAVAFLAGSDEBUG=-g
+
+# _PTHREADS is needed for the stl
+CDEFS+=-D_PTHREADS -D_REENTRANT -DSYSV -DSUN -DSUN4 -D_POSIX_PTHREAD_SEMANTICS -DSTLPORT_VERSION=$(STLPORT_VER) -D_USE_NAMESPACE=1
+
+
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+.IF "$(debug)"==""
+JAVA_RUNTIME=-ljava
+.ELSE
+JAVA_RUNTIME=-ljava_g
+.ENDIF
+.ENDIF
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+
+CXX*=g++
+CC*=gcc
+CFLAGS=-c
+CFLAGSCC= -pipe $(ARCH_FLAGS)
+
+CFLAGSEXCEPTIONS=-fexceptions
+CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+
+CFLAGSCXX= -pipe $(ARCH_FLAGS)
+PICSWITCH:=-fPIC
+
+CFLAGSOBJGUIMT=
+CFLAGSOBJCUIMT=
+CFLAGSSLOGUIMT=$(PICSWITCH)
+CFLAGSSLOCUIMT=$(PICSWITCH)
+CFLAGSPROF=
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+CFLAGSOPT=-O2
+CFLAGSNOOPT=
+CFLAGSOUTOBJ=-o
+
+STATIC = -Wl,-Bstatic
+DYNAMIC = -Wl,-Bdynamic
+
+LINK*=$(CXX)
+LINKC*=$(CC)
+
+LINKFLAGS=
+LINKFLAGSAPPGUI=-Wl,-export-dynamic
+LINKFLAGSSHLGUI=-shared
+LINKFLAGSAPPCUI=-Wl,-export-dynamic
+LINKFLAGSSHLCUI=-shared
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=-g
+LINKFLAGSOPT=
+
+LINKVERSIONMAPFLAG=-Wl,--version-script
+
+# enable visibility define in "sal/types.h"
+.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+CDEFS += -DHAVE_GCC_VISIBILITY_FEATURE
+.ENDIF # "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+
+# Reihenfolge der libs NICHT egal!
+
+STDLIBCPP=-lstdc++
+
+STDOBJVCL=$(L)/salmain.o
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+
+STDLIBGUIMT=$(DYNAMIC) -lpthread -lthread -lm
+STDLIBCUIMT=$(DYNAMIC) -lpthread -lthread -lm
+# libraries for linking shared libraries
+STDSHLGUIMT=$(DYNAMIC) -lpthread -lthread -lm
+STDSHLCUIMT=$(DYNAMIC) -lpthread -lthread -lm
+
+STDLIBGUIMT+=-lX11
+
+.IF "$(STLPORT_VER)" >= "500"
+LIBSTLPORT=$(DYNAMIC) -lstlport
+LIBSTLPORTST=$(STATIC) -lstlport $(DYNAMIC)
+.ELSE
+LIBSTLPORT=$(DYNAMIC) -lstlport_gcc
+LIBSTLPORTST=$(STATIC) -lstlport_gcc $(DYNAMIC)
+.ENDIF
+
+LIBMGR=ar
+LIBFLAGS=-r
+# LIBEXT=.so
+
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=irc
+RCFLAGS=-fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=sogi
+DLLPRE=lib
+DLLPOST=.so
diff --git a/solenv/inc/unxsogs.mk b/solenv/inc/unxsogs.mk
new file mode 100644
index 000000000000..dd0fb53272f8
--- /dev/null
+++ b/solenv/inc/unxsogs.mk
@@ -0,0 +1,140 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for unxsogs
+ASM=/usr/ccs/bin/as
+AFLAGS=-P
+
+SOLAR_JAVA=TRUE
+JAVAFLAGSDEBUG=-g
+
+# _PTHREADS is needed for the stl
+CDEFS+=-D_PTHREADS -D_REENTRANT -DSYSV -DSUN -DSUN4 -D_POSIX_PTHREAD_SEMANTICS -DSTLPORT_VERSION=$(STLPORT_VER) -D_USE_NAMESPACE=1
+
+
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+.IF "$(debug)"==""
+JAVA_RUNTIME=-ljava
+.ELSE
+JAVA_RUNTIME=-ljava_g
+.ENDIF
+.ENDIF
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+
+CXX*=g++
+CC*=gcc
+CFLAGS=-c
+CFLAGSCC= -pipe $(ARCH_FLAGS)
+
+CFLAGSEXCEPTIONS=-fexceptions
+CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+
+CFLAGSCXX= -pipe $(ARCH_FLAGS)
+PICSWITCH:=-fPIC
+CFLAGSOBJGUIMT=
+CFLAGSOBJCUIMT=
+CFLAGSSLOGUIMT=$(PICSWITCH)
+CFLAGSSLOCUIMT=$(PICSWITCH)
+CFLAGSPROF=
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+CFLAGSOPT=-O2
+CFLAGSNOOPT=
+CFLAGSOUTOBJ=-o
+
+STATIC = -Wl,-Bstatic
+DYNAMIC = -Wl,-Bdynamic
+
+LINK*=$(CXX)
+LINKC*=$(CC)
+
+LINKFLAGS=
+LINKFLAGSAPPGUI=-Wl,-export-dynamic
+LINKFLAGSSHLGUI=-shared
+LINKFLAGSAPPCUI=-Wl,-export-dynamic
+LINKFLAGSSHLCUI=-shared
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=-g
+LINKFLAGSOPT=
+
+LINKVERSIONMAPFLAG=-Wl,--version-script
+
+# enable visibility define in "sal/types.h"
+.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+CDEFS += -DHAVE_GCC_VISIBILITY_FEATURE
+.ENDIF # "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
+
+# Reihenfolge der libs NICHT egal!
+
+STDLIBCPP=-lstdc++
+
+STDOBJVCL=$(L)/salmain.o
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+
+STDLIBGUIMT=$(DYNAMIC) -lpthread -lthread -lm
+STDLIBCUIMT=$(DYNAMIC) -lpthread -lthread -lm
+# libraries for linking shared libraries
+STDSHLGUIMT=$(DYNAMIC) -lpthread -lthread -lm
+STDSHLCUIMT=$(DYNAMIC) -lpthread -lthread -lm
+
+STDLIBGUIMT+=-lX11
+
+.IF "$(STLPORT_VER)" >= "500"
+LIBSTLPORT=$(DYNAMIC) -lstlport
+LIBSTLPORTST=$(STATIC) -lstlport $(DYNAMIC)
+.ELSE
+LIBSTLPORT=$(DYNAMIC) -lstlport_gcc
+LIBSTLPORTST=$(STATIC) -lstlport_gcc $(DYNAMIC)
+.ENDIF
+
+LIBMGR=ar
+LIBFLAGS=-r
+# LIBEXT=.so
+
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=irc
+RCFLAGS=-fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=sogs
+DLLPRE=lib
+DLLPOST=.so
diff --git a/solenv/inc/unxsoli4.mk b/solenv/inc/unxsoli4.mk
new file mode 100644
index 000000000000..b1778a0edfde
--- /dev/null
+++ b/solenv/inc/unxsoli4.mk
@@ -0,0 +1,241 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+ASM=/usr/ccs/bin/as
+AFLAGS=-P
+
+CDEFS+=-D_PTHREADS -DSYSV -DSUN -DSUN4 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DSTLPORT_VERSION=$(STLPORT_VER)
+
+SOLAR_JAVA*=TRUE
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+JAVAFLAGSDEBUG=-g
+.IF "$(debug)"==""
+JAVA_RUNTIME=-ljava
+.ELSE
+JAVA_RUNTIME=-ljava_g
+.ENDIF
+.ENDIF
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+
+CXX*=CC
+CC*=cc
+
+CFLAGS=$(PREENVCFLAGS) -c -temp=/tmp
+CFLAGSCC=-xCC $(ARCH_FLAGS)
+CFLAGSCXX=-features=no%altspell -library=no%Cstd $(ARCH_FLAGS)
+
+# flags to enable build with symbols; required for crashdump feature
+CFLAGSENABLESYMBOLS=-g0 -xs # was temporarily commented out, reenabled before Beta
+CFLAGSENABLESYMBOLS_CC_ONLY=-g -xs # was temporarily commented out, reenabled before Beta
+
+CFLAGSEXCEPTIONS=
+CFLAGS_NO_EXCEPTIONS=-noex
+
+CFLAGSOBJGUIMT=-KPIC -mt
+CFLAGSOBJCUIMT=-KPIC -mt
+CFLAGSSLOGUIMT=-KPIC -mt
+CFLAGSSLOCUIMT=-KPIC -mt
+CFLAGSPROF=-xpg
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+CFLAGSOPT=-xarch=generic -xO3
+CFLAGSNOOPT=
+CFLAGSOUTOBJ=-o
+
+# Warnings switched off for CXX:
+# - doubunder: we have many identifiers containing double underscores, some of
+# them in the stable UDK API we cannot change
+# - identexpected: Identifier expected instead of "}"
+# if an enum ends with a comma before the '}'
+# this warning does not seem to heed #pragma disable_warn, and is not helpful
+# - inllargeuse: "function is too large and will not be expanded inline" is
+# merely a hint
+# - inllargeint: "function is too large to generate inline, consider writing
+# it yourself" is merely a hint
+# - notemsource: "could not find source for function" appears to be spurious
+# - reftotemp: warns about calling non-const functions on temporary objects,
+# something legally done by boost::scoped_array<T>::reset, for example
+# (this_type(p).swap(*this))
+# - truncwarn: "conversion of 64 bit type value to smaller type causes
+# truncation" at least with CC 5.8 is reported only at the end of a
+# compilation unit that uses std::hash_map<sal_Int64, sal_Int64> (see
+# sfx2/source/toolbox/imgmgr.cxx:1.27) and thus unfortunately needs to be
+# disabled globally
+# - wnoretvalue: warning about the last statement of a function not
+# returning a value. Unfortunately triggers on perfectly acceptable
+# code, for example if the last statement in is a throw statement
+# - anonnotype: Warns if a type is declared in an anonymous union. Temporary
+# disabled until issue i97325 is fixed. Note: The compiler is actually
+# right about this warning, the C++ standard is explicit about this.
+CFLAGSWARNCC=
+CFLAGSWARNCXX=+w2 -erroff=doubunder,identexpected,inllargeuse,inllargeint,notemsource,reftotemp,truncwarn,wnoretvalue,anonnotype
+CFLAGSWALLCC=$(CFLAGSWARNCC)
+CFLAGSWALLCXX=$(CFLAGSWARNCXX)
+CFLAGSWERRCC=-errwarn=%all
+CFLAGSWERRCXX=-xwe
+
+# Once all modules on this platform compile without warnings, set
+# COMPILER_WARN_ERRORS=TRUE here instead of setting MODULES_WITH_WARNINGS (see
+# settings.mk):
+MODULES_WITH_WARNINGS := \
+ soldep
+
+STDOBJVCL=$(L)/salmain.o
+
+THREADLIB=
+.IF "$(PURIFY)"!=""
+LINK=/usr/local/purify-4.2-solaris2/purify CC
+.ELSE
+LINK=$(CXX)
+.ENDIF
+LINKC=$(CC)
+
+# link against set of baseline libraries
+.IF "$(SYSBASE)"!=""
+C_RESTRICTIONFLAGS*=-xc99=none
+#LD_OPTIONS+:=-L$(SYSBASE)/usr/lib
+CDEFS+=-DSYSBASE="$(SYSBASE)"
+CFLAGSCC+=$(C_RESTRICTIONFLAGS)
+#.EXPORT : LD_OPTIONS
+.ENDIF # "$(SYSBASE)"!=""
+
+# -z combreloc combines multiple relocation sections. Reduces overhead on startup
+# -norunpath prevents the compiler from recording his own libs in the runpath
+LINKFLAGSRUNPATH_URELIB=-R\''$$ORIGIN'\'
+LINKFLAGSRUNPATH_UREBIN=-R\''$$ORIGIN/../lib:$$ORIGIN'\'
+ #TODO: drop $ORIGIN once no URE executable is also shipped in OOo
+LINKFLAGSRUNPATH_OOO=-R\''$$ORIGIN:$$ORIGIN/../ure-link/lib'\'
+LINKFLAGSRUNPATH_SDK=-R\''$$ORIGIN/../../ure-link/lib'\'
+LINKFLAGSRUNPATH_BRAND=-R\''$$ORIGIN:$$ORIGIN/../basis-link/program:$$ORIGIN/../basis-link/ure-link/lib'\'
+LINKFLAGSRUNPATH_OXT=
+LINKFLAGSRUNPATH_BOXT=-R\''$$ORIGIN/../../../basis-link/program'\'
+LINKFLAGSRUNPATH_NONE=
+LINKFLAGS=-w -mt -z combreloc -PIC -temp=/tmp -norunpath -library=no%Cstd
+LINKCFLAGS=-w -mt -z combreloc -norunpath
+
+# -z text force fatal error if non PIC code is linked into shared library. Such code
+# would be expensive on startup
+CHECKFORPIC =-z text
+LINKFLAGSSHLGUI=$(CHECKFORPIC) -G
+LINKFLAGSSHLCUI=$(CHECKFORPIC) -G
+
+# switches for dynamic and static linking
+LINKFLAGSDEFS*= -z defs
+STATIC = -Bstatic
+DIRECT = -Bdirect $(LINKFLAGSDEFS)
+DYNAMIC = -Bdynamic
+
+LINKFLAGSAPPGUI+=$(DIRECT)
+LINKFLAGSAPPCUI+=$(DIRECT)
+LINKFLAGSSHLGUI+=$(DIRECT)
+LINKFLAGSSHLCUI+=$(DIRECT)
+
+LINKFLAGSTACK=
+LINKFLAGSPROF=-L$(COMPATH)/WS6U1/lib/libp -xpg -z allextract
+LINKFLAGSDEBUG=
+LINKFLAGSOPT=
+LINKVERSIONMAPFLAG=-M
+
+# mapfile for non-executable stack
+LINKFLAGSNOEXSTK*=$(LINKVERSIONMAPFLAG) $(SOLARENV)/src/solaris_noexstk.map
+LINKFLAGSAPPGUI+=$(LINKFLAGSNOEXSTK)
+LINKFLAGSAPPCUI+=$(LINKFLAGSNOEXSTK)
+
+APPLINKSTATIC=$(STATIC)
+APPLINKSHARED=$(DIRECT)
+APP_LINKTYPE=
+
+STDLIBCPP=-lCrun
+
+# reihenfolge der libs NICHT egal!
+STDOBJGUI=
+.IF "DBG_UTIL" != ""
+STDSLOGUI=#-lpthread
+.ELSE
+STDSLOGUI=
+.ENDIF
+STDOBJCUI=
+STDSLOCUI=
+
+# CPPRUNTIME - define where to place C++ runtime if required
+STDLIBGUIMT=$(DYNAMIC) -lpthread -lm
+STDLIBCUIMT=$(DYNAMIC) -lpthread -lm
+STDSHLGUIMT=$(DYNAMIC) -lpthread CPPRUNTIME -lm -lc
+STDSHLCUIMT=$(DYNAMIC) -lpthread CPPRUNTIME -lm -lc
+
+# libdl.so - no really an GUI library but required in this context
+STDLIBGUIMT+=-ldl
+STDSHLGUIMT+=-ldl
+X11LINK_DYNAMIC = -lXext -lX11
+
+# @@@ interposer needed for -Bdirect @@@
+# LIBSALCPPRT*=-z allextract -lsalcpprt -z defaultextract
+LIBSALCPPRT=
+
+.IF "$(USE_STLP_DEBUG)" != ""
+LIBSTLPORT=$(DYNAMIC) -lstlport_sunpro_debug
+LIBSTLPORTST=$(STATIC) -lstlport_sunpro_debug $(DYNAMIC)
+.ELSE
+LIBSTLPORT=$(DYNAMIC) -lstlport_sunpro
+LIBSTLPORTST=$(STATIC) -lstlport_sunpro $(DYNAMIC)
+.ENDIF # "$(USE_STLP_DEBUG)" != ""
+
+LIBMGR=CC
+LIBFLAGS=-xar -o
+
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+IGNORE_SYMBOLS=S-LP64
+
+RC=irc
+RCFLAGS=-fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=si
+
+DLLPRE=lib
+DLLPOST=.so
+
+LDUMP=cppfilt /b /n /o /p
+
+CFLAGSCXXSLO +=
+CFLAGSCXXOBJ +=
+
+LINKFLAGSAPPGUI+=
+LINKFLAGSSHLGUI+=
+LINKFLAGSAPPCUI+=
+LINKFLAGSSHLCUI+=
diff --git a/solenv/inc/unxsols4.mk b/solenv/inc/unxsols4.mk
new file mode 100644
index 000000000000..4febb67d446a
--- /dev/null
+++ b/solenv/inc/unxsols4.mk
@@ -0,0 +1,247 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+ASM=/usr/ccs/bin/as
+# needs -D__sparcv8plus because it's not defined by the assembler with -xarch=v8plus
+AFLAGS=-P -xarch=v8plus -D__sparcv8plus
+
+CDEFS+=-D_PTHREADS -DSYSV -DSUN -DSUN4 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DSTLPORT_VERSION=$(STLPORT_VER)
+
+SOLAR_JAVA*=TRUE
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+JAVAFLAGSDEBUG=-g
+.IF "$(debug)"==""
+JAVA_RUNTIME=-ljava
+.ELSE
+JAVA_RUNTIME=-ljava_g
+.ENDIF
+.ENDIF
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+
+CXX*=CC
+CC*=cc
+
+CFLAGS=$(PREENVCFLAGS) -c -temp=/tmp
+# CC defines __sparcv8plus with -xarch=v8plus, cc does not (sigh)
+CFLAGSCC=-xCC -D__sparcv8plus $(ARCH_FLAGS)
+CFLAGSCXX=-features=no%altspell -library=no%Cstd $(ARCH_FLAGS)
+
+# flags to enable build with symbols; required for crashdump feature
+CFLAGSENABLESYMBOLS=-g0 -xs # was temporarily commented out, reenabled before Beta
+CFLAGSENABLESYMBOLS_CC_ONLY=-g -xs # was temporarily commented out, reenabled before Beta
+
+CFLAGSEXCEPTIONS=
+CFLAGS_NO_EXCEPTIONS=-noex
+
+CFLAGSOBJGUIMT=-KPIC -mt
+CFLAGSOBJCUIMT=-KPIC -mt
+CFLAGSSLOGUIMT=-KPIC -mt
+CFLAGSSLOCUIMT=-KPIC -mt
+CFLAGSPROF=-xpg
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+# -m32 -xarch=sparc restrict target to 32 bit sparc
+# -xO3 optimization level 3
+# -xspace don't do optimizations which do increase binary size
+# -xprefetch=yes do prefetching (helps on UltraSparc III)
+CFLAGSOPT=-m32 -xarch=sparc -xO3 -xspace -xprefetch=yes
+CFLAGSNOOPT=
+CFLAGSOUTOBJ=-o
+
+# Warnings switched off for CXX:
+# - doubunder: we have many identifiers containing double underscores, some of
+# them in the stable UDK API we cannot change
+# - identexpected: Identifier expected instead of "}"
+# if an enum ends with a comma before the '}'
+# this warning does not seem to heed #pragma disable_warn, and is not helpful
+# - inllargeuse: "function is too large and will not be expanded inline" is
+# merely a hint
+# - inllargeint: "function is too large to generate inline, consider writing
+# it yourself" is merely a hint
+# - notemsource: "could not find source for function" appears to be spurious
+# - reftotemp: warns about calling non-const functions on temporary objects,
+# something legally done by boost::scoped_array<T>::reset, for example
+# (this_type(p).swap(*this))
+# - truncwarn: "conversion of 64 bit type value to smaller type causes
+# truncation" at least with CC 5.8 is reported only at the end of a
+# compilation unit that uses std::hash_map<sal_Int64, sal_Int64> (see
+# sfx2/source/toolbox/imgmgr.cxx:1.27) and thus unfortunately needs to be
+# disabled globally
+# - wnoretvalue: warning about the last statement of a function not
+# returning a value. Unfortunately triggers on perfectly acceptable
+# code, for example if the last statement in is a throw statement
+# - anonnotype: Warns if a type is declared in an anonymous union. Temporary
+# disabled until issue i97325 is fixed. Note: The compiler is actually
+# right about this warning, the C++ standard is explicit about this.
+CFLAGSWARNCC=
+CFLAGSWARNCXX=+w2 -erroff=doubunder,identexpected,inllargeuse,inllargeint,notemsource,reftotemp,truncwarn,wnoretvalue,anonnotype
+CFLAGSWALLCC=$(CFLAGSWARNCC)
+CFLAGSWALLCXX=$(CFLAGSWARNCXX)
+CFLAGSWERRCC=-errwarn=%all
+CFLAGSWERRCXX=-xwe
+
+# Once all modules on this platform compile without warnings, set
+# COMPILER_WARN_ERRORS=TRUE here instead of setting MODULES_WITH_WARNINGS (see
+# settings.mk):
+MODULES_WITH_WARNINGS := \
+ soldep
+
+STDOBJVCL=$(L)/salmain.o
+
+THREADLIB=
+.IF "$(PURIFY)"!=""
+LINK=/usr/local/purify-4.2-solaris2/purify CC
+.ELSE
+LINK=$(CXX)
+.ENDIF
+LINKC=$(CC)
+
+# link against set of baseline libraries
+.IF "$(SYSBASE)"!=""
+C_RESTRICTIONFLAGS*=-xc99=none
+#LD_OPTIONS+:=-L$(SYSBASE)/usr/lib
+CDEFS+=-DSYSBASE="$(SYSBASE)"
+CFLAGSCC+=$(C_RESTRICTIONFLAGS)
+#.EXPORT : LD_OPTIONS
+.ENDIF # "$(SYSBASE)"!=""
+
+# -z combreloc combines multiple relocation sections. Reduces overhead on startup
+# -norunpath prevents the compiler from recording his own libs in the runpath
+LINKFLAGSRUNPATH_URELIB=-R\''$$ORIGIN'\'
+LINKFLAGSRUNPATH_UREBIN=-R\''$$ORIGIN/../lib:$$ORIGIN'\'
+ #TODO: drop $ORIGIN once no URE executable is also shipped in OOo
+LINKFLAGSRUNPATH_OOO=-R\''$$ORIGIN:$$ORIGIN/../ure-link/lib'\'
+LINKFLAGSRUNPATH_SDK=-R\''$$ORIGIN/../../ure-link/lib'\'
+LINKFLAGSRUNPATH_BRAND=-R\''$$ORIGIN:$$ORIGIN/../basis-link/program:$$ORIGIN/../basis-link/ure-link/lib'\'
+LINKFLAGSRUNPATH_OXT=
+LINKFLAGSRUNPATH_BOXT=-R\''$$ORIGIN/../../../basis-link/program'\'
+LINKFLAGSRUNPATH_NONE=
+LINKFLAGS=-w -mt -z combreloc -PIC -temp=/tmp -norunpath -library=no%Cstd
+LINKCFLAGS=-w -mt -z combreloc -norunpath
+
+# -z text force fatal error if non PIC code is linked into shared library. Such code
+# would be expensive on startup
+CHECKFORPIC =-z text
+LINKFLAGSSHLGUI=$(CHECKFORPIC) -G
+LINKFLAGSSHLCUI=$(CHECKFORPIC) -G
+
+# switches for dynamic and static linking
+LINKFLAGSDEFS*= -z defs
+STATIC = -Bstatic
+DIRECT = -Bdirect $(LINKFLAGSDEFS)
+DYNAMIC = -Bdynamic
+
+LINKFLAGSAPPGUI+=$(DIRECT)
+LINKFLAGSAPPCUI+=$(DIRECT)
+LINKFLAGSSHLGUI+=$(DIRECT)
+LINKFLAGSSHLCUI+=$(DIRECT)
+
+LINKFLAGSTACK=
+LINKFLAGSPROF=-L$(COMPATH)/WS6U1/lib/libp -xpg -z allextract
+LINKFLAGSDEBUG=
+LINKFLAGSOPT=
+LINKVERSIONMAPFLAG=-M
+
+# mapfile for non-executable stack
+LINKFLAGSNOEXSTK*=$(LINKVERSIONMAPFLAG) $(SOLARENV)/src/solaris_noexstk.map
+LINKFLAGSAPPGUI+=$(LINKFLAGSNOEXSTK)
+LINKFLAGSAPPCUI+=$(LINKFLAGSNOEXSTK)
+
+APPLINKSTATIC=$(STATIC)
+APPLINKSHARED=$(DIRECT)
+APP_LINKTYPE=
+
+STDLIBCPP=-lCrun
+
+# reihenfolge der libs NICHT egal!
+STDOBJGUI=
+.IF "DBG_UTIL" != ""
+STDSLOGUI=#-lpthread
+.ELSE
+STDSLOGUI=
+.ENDIF
+STDOBJCUI=
+STDSLOCUI=
+
+# CPPRUNTIME - define where to place C++ runtime if required
+STDLIBGUIMT=$(DYNAMIC) -lpthread -lm
+STDLIBCUIMT=$(DYNAMIC) -lpthread -lm
+STDSHLGUIMT=$(DYNAMIC) -lpthread CPPRUNTIME -lm -lc
+STDSHLCUIMT=$(DYNAMIC) -lpthread CPPRUNTIME -lm -lc
+
+# libdl.so - no really an GUI library but required in this context
+STDLIBGUIMT+=-ldl
+STDSHLGUIMT+=-ldl
+X11LINK_DYNAMIC = -lXext -lX11
+
+# @@@ interposer needed for -Bdirect @@@
+# LIBSALCPPRT*=-z allextract -lsalcpprt -z defaultextract
+LIBSALCPPRT=
+
+.IF "$(USE_STLP_DEBUG)" != ""
+LIBSTLPORT=$(DYNAMIC) -lstlport_sunpro_debug
+LIBSTLPORTST=$(STATIC) -lstlport_sunpro_debug $(DYNAMIC)
+.ELSE
+LIBSTLPORT=$(DYNAMIC) -lstlport_sunpro
+LIBSTLPORTST=$(STATIC) -lstlport_sunpro $(DYNAMIC)
+.ENDIF # "$(USE_STLP_DEBUG)" != ""
+
+LIBMGR=CC
+LIBFLAGS=-xar -o
+
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+IGNORE_SYMBOLS=S-LP64
+
+RC=irc
+RCFLAGS=-fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=ss
+
+DLLPRE=lib
+DLLPOST=.so
+
+LDUMP=cppfilt /b /n /o /p
+
+CFLAGSCXXSLO +=
+CFLAGSCXXOBJ +=
+
+LINKFLAGSAPPGUI+=
+LINKFLAGSSHLGUI+=
+LINKFLAGSAPPCUI+=
+LINKFLAGSSHLCUI+=
diff --git a/solenv/inc/unxsolu4.mk b/solenv/inc/unxsolu4.mk
new file mode 100644
index 000000000000..c73d6fc37283
--- /dev/null
+++ b/solenv/inc/unxsolu4.mk
@@ -0,0 +1,242 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+# 64 bit (LP64) platform
+IS_LP64=TRUE
+
+ASM=/usr/ccs/bin/as
+AFLAGS=-P -xarch=v9
+
+
+CDEFS+=-D_PTHREADS -DSYSV -DSUN -DSUN4 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DIS_LP64
+
+SOLAR_JAVA*=TRUE
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+JAVAFLAGSDEBUG=-g
+.IF "$(debug)"==""
+JAVA_RUNTIME=-ljava
+.ELSE
+JAVA_RUNTIME=-ljava_g
+.ENDIF
+.ENDIF
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=-m64
+
+CXX*=CC
+CC*=cc
+
+CFLAGS=$(PREENVCFLAGS) -c -temp=/tmp
+CFLAGSCC=-xCC $(ARCH_FLAGS)
+CFLAGSCXX= -features=no%altspell -library=stlport4 $(ARCH_FLAGS)
+
+# flags to enable build with symbols; required for crashdump feature
+CFLAGSENABLESYMBOLS=-g0 -xs # was temporarily commented out, reenabled before Beta
+CFLAGSENABLESYMBOLS_CC_ONLY=-g -xs # was temporarily commented out, reenabled before Beta
+
+CFLAGSEXCEPTIONS=
+CFLAGS_NO_EXCEPTIONS=-noex
+
+CFLAGSOBJGUIMT=-KPIC -mt
+CFLAGSOBJCUIMT=-KPIC -mt
+CFLAGSSLOGUIMT=-KPIC -mt
+CFLAGSSLOCUIMT=-KPIC -mt
+CFLAGSPROF=-xpg
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+# -xO3 optimization level 3
+CFLAGSOPT= -xO3 -xalias_level=compatible
+CFLAGSNOOPT=
+CFLAGSOUTOBJ=-o
+
+# Warnings switched off for CXX:
+# - doubunder: we have many identifiers containing double underscores, some of
+# them in the stable UDK API we cannot change
+# - identexpected: Identifier expected instead of "}"
+# if an enum ends with a comma before the '}'
+# this warning does not seem to heed #pragma disable_warn, and is not helpful
+# - inllargeuse: "function is too large and will not be expanded inline" is
+# merely a hint
+# - inllargeint: "function is too large to generate inline, consider writing
+# it yourself" is merely a hint
+# - notemsource: "could not find source for function" appears to be spurious
+# - reftotemp: warns about calling non-const functions on temporary objects,
+# something legally done by boost::scoped_array<T>::reset, for example
+# (this_type(p).swap(*this))
+# - truncwarn: "conversion of 64 bit type value to smaller type causes
+# truncation" at least with CC 5.8 is reported only at the end of a
+# compilation unit that uses std::hash_map<sal_Int64, sal_Int64> (see
+# sfx2/source/toolbox/imgmgr.cxx:1.27) and thus unfortunately needs to be
+# disabled globally
+# - wnoretvalue: "The last statement should return a value."
+# CC 5.9: the compiler does often not notice that there is no way
+# to reach the closing brace of a function without either returning a proper
+# value or throwing an exception.
+# - hidef: "d::foo() hides the function b::foo()." We got still some cases of mixed
+# sal_uInt32 and ULONG usages which needs to be fixed. We can then remove this one
+CFLAGSWARNCC=
+CFLAGSWARNCXX=+w2 -erroff=doubunder,identexpected,inllargeuse,inllargeint,notemsource,reftotemp,truncwarn,wnoretvalue,hidef,anonnotype,unassigned,badargtype2w
+CFLAGSWALLCC=$(CFLAGSWARNCC)
+CFLAGSWALLCXX=$(CFLAGSWARNCXX)
+CFLAGSWERRCC=-errwarn=%all
+CFLAGSWERRCXX=-xwe
+
+# Once all modules on this platform compile without warnings, set
+# COMPILER_WARN_ERRORS=TRUE here instead of setting MODULES_WITH_WARNINGS (see
+# settings.mk):
+MODULES_WITH_WARNINGS := \
+ soldep
+
+STDOBJVCL=$(L)/salmain.o
+
+THREADLIB=
+LINK=$(CXX)
+LINKC=$(CC)
+
+# link against set of baseline libraries
+.IF "$(SYSBASE)"!=""
+C_RESTRICTIONFLAGS*=-xc99=none
+LD_OPTIONS+=-L$(SYSBASE)/usr/lib
+CDEFS+=-DSYSBASE="$(SYSBASE)"
+CFLAGSCC+=$(C_RESTRICTIONFLAGS)
+.EXPORT : LD_OPTIONS
+.ENDIF # "$(SYSBASE)"!=""
+
+# -z combreloc combines multiple relocation sections. Reduces overhead on startup
+# -norunpath prevents the compiler from recording his own libs in the runpath
+LINKFLAGSRUNPATH_URELIB=-R\''$$ORIGIN'\'
+LINKFLAGSRUNPATH_UREBIN=-R\''$$ORIGIN/../lib:$$ORIGIN'\'
+ #TODO: drop $ORIGIN once no URE executable is also shipped in OOo
+LINKFLAGSRUNPATH_OOO=-R\''$$ORIGIN:$$ORIGIN/../ure-link/lib'\'
+LINKFLAGSRUNPATH_BRAND=-R\''$$ORIGIN:$$ORIGIN/../basis-link/program:$$ORIGIN/../basis-link/ure-link/lib'\'
+LINKFLAGSRUNPATH_OXT=
+LINKFLAGSRUNPATH_BOXT=-R\''$$ORIGIN/../../../basis-link/program'\'
+LINKFLAGSRUNPATH_NONE=
+LINKFLAGS=-m64 -w -mt -z combreloc -PIC -temp=/tmp -norunpath -library=stlport4
+LINKCFLAGS=-m64 -w -mt -z combreloc -norunpath
+
+# -z text force fatal error if non PIC code is linked into shared library. Such code
+# would be expensive on startup
+CHECKFORPIC =-z text
+LINKFLAGSSHLGUI=$(CHECKFORPIC) -G
+LINKFLAGSSHLCUI=$(CHECKFORPIC) -G
+
+# switches for dynamic and static linking
+LINKFLAGSDEFS*= -z defs
+STATIC = -Bstatic
+DIRECT = -Bdirect $(LINKFLAGSDEFS)
+DYNAMIC = -Bdynamic
+
+LINKFLAGSAPPGUI+=$(DIRECT)
+LINKFLAGSAPPCUI+=$(DIRECT)
+LINKFLAGSSHLGUI+=$(DIRECT)
+LINKFLAGSSHLCUI+=$(DIRECT)
+
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=
+LINKFLAGSOPT=
+LINKVERSIONMAPFLAG=-M
+
+# mapfile for non-executable stack
+LINKFLAGSNOEXSTK*=$(LINKVERSIONMAPFLAG) $(SOLARENV)/src/solaris_noexstk.map
+LINKFLAGSAPPGUI+=$(LINKFLAGSNOEXSTK)
+LINKFLAGSAPPCUI+=$(LINKFLAGSNOEXSTK)
+
+APPLINKSTATIC=$(STATIC)
+APPLINKSHARED=$(DIRECT)
+APP_LINKTYPE=
+
+STDLIBCPP=-lCrun
+
+# reihenfolge der libs NICHT egal!
+STDOBJGUI=
+.IF "DBG_UTIL" != ""
+STDSLOGUI=#-lpthread
+.ELSE
+STDSLOGUI=
+.ENDIF
+STDOBJCUI=
+STDSLOCUI=
+
+# CPPRUNTIME - define where to place C++ runtime if required
+STDLIBGUIMT=$(DYNAMIC) -lpthread -lm
+STDLIBCUIMT=$(DYNAMIC) -lpthread -lm
+STDSHLGUIMT=$(DYNAMIC) -lpthread CPPRUNTIME -lm -lc
+STDSHLCUIMT=$(DYNAMIC) -lpthread CPPRUNTIME -lm -lc
+
+# libdl.so - no really an GUI library but required in this context
+STDLIBGUIMT+=-lX11 -ldl
+STDSHLGUIMT+=-lX11 -ldl
+
+# @@@ interposer needed for -Bdirect @@@
+# LIBSALCPPRT*=-z allextract -lsalcpprt -z defaultextract
+LIBSALCPPRT=
+
+.IF "$(USE_STLP_DEBUG)" != ""
+LIBSTLPORT=$(DYNAMIC) -lstlport_sunpro_debug
+LIBSTLPORTST=$(STATIC) -lstlport_sunpro_debug $(DYNAMIC)
+.ELSE
+LIBSTLPORT=$(DYNAMIC) -lstlport_sunpro
+LIBSTLPORTST=$(STATIC) -lstlport_sunpro $(DYNAMIC)
+.ENDIF # "$(USE_STLP_DEBUG)" != ""
+
+LIBMGR=CC
+LIBFLAGS=-xar -o
+
+IMPLIB=
+IMPLIBFLAGS=
+
+MAPSYM=
+MAPSYMFLAGS=
+IGNORE_SYMBOLS=S-ILP32
+
+RC=irc
+RCFLAGS=-fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=su
+
+DLLPRE=lib
+DLLPOST=.so
+
+LDUMP=cppfilt /b /n /o /p
+
+CFLAGSCXXSLO +=
+CFLAGSCXXOBJ +=
+
+LINKFLAGSAPPGUI+=
+LINKFLAGSSHLGUI+=
+LINKFLAGSAPPCUI+=
+LINKFLAGSSHLCUI+=
+
+BUILD64=1
diff --git a/solenv/inc/verinfo.hrc b/solenv/inc/verinfo.hrc
new file mode 100644
index 000000000000..d0a585af90ee
--- /dev/null
+++ b/solenv/inc/verinfo.hrc
@@ -0,0 +1,229 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _VERINFO_HRC
+#define _VERINFO_HRC
+
+// include ---------------------------------------------------------------
+
+#ifndef WIN32
+#include <ver.h>
+#else
+#include <winver.h>
+#endif
+
+// general preprocessor string management --------------------------------
+
+#ifndef PPSX
+#define PPSX(s) #s
+#endif
+#ifndef PPS
+#define PPS(s) PPSX(s)
+#endif
+
+#ifndef PPCX
+#define PPCX(s1, s2) s1##s2
+#endif
+#ifndef PPCAT
+#define PPCAT(s1, s2) PPCX(s1, s2)
+#endif
+
+// define order of date parts --------------------------------------------
+
+#if defined(LG_D)
+ #define VER_DMY
+#else
+ #define VER_YMD
+#endif
+
+// set VERVARIANT to 0 if not defined ------------------------------------
+
+#if !defined(VERVARIANT)
+ #define VERVARIANT 0
+#endif
+
+// define pre release state ----------------------------------------------
+
+#ifdef VER_CONCEPT
+ #define VER_PREL 1
+ #define VER_COUNT (0+VER_CONCEPT)
+ #define VER1 Concept (Level VER_CONCEPT)
+#endif
+
+#ifdef VER_ALPHA
+ #define VER_PREL 1
+ #define VER_COUNT (100+VER_ALPHA)
+ #define VER1 Alpha (Level VER_ALPHA)
+#endif
+
+#ifdef VER_BETA
+ #define VER_PREL 1
+ #define VER_COUNT (200+VER_BETA)
+ #define VER1 Beta (Level VER_BETA)
+#endif
+
+#ifdef VER_GAMMA
+ #define VER_PREL 1
+ #define VER_COUNT (300+VER_GAMMA)
+ #define VER1 Gamma (Level VER_GAMMA)
+#endif
+
+#ifdef VER_FINAL
+ #define VER_COUNT (500+VER_FINAL)
+ #if VER_FINAL==0
+ #undef VER1
+ #elif VER_FINAL==1
+ #define VER1 1
+ #elif VER_FINAL==2
+ #define VER1 2
+ #elif VER_FINAL==3
+ #define VER1 3
+ #elif VER_FINAL==4
+ #define VER1 4
+ #elif VER_FINAL==5
+ #define VER1 5
+ #elif VER_FINAL==6
+ #define VER1 6
+ #elif VER_FINAL==7
+ #define VER1 7
+ #elif VER_FINAL==8
+ #define VER1 8
+ #elif VER_FINAL==9
+ #define VER1 9
+ #elif VER_FINAL==10
+ #define VER1 a
+ #elif VER_FINAL==11
+ #define VER1 b
+ #elif VER_FINAL==12
+ #define VER1 c
+ #endif
+#endif
+
+#ifdef SUBVERSION
+#if SUBVERSION < 10
+ #define VER4 PPCAT(0, SUBVERSION)
+#else
+ #define VER4 SUBVERSION
+#endif
+#else
+ #define VER4 0.0
+#endif
+
+#ifndef VER1
+#if VERVARIANT > 0
+ #define VER_LEVEL VERSION.VER4.VERVARIANT
+#else
+ #define VER_LEVEL VERSION.VER4
+#endif
+#else
+ #define VERC1(a, b, c) a.b##c
+ #define VERC2(a, b, c) VERC1(a, b, c)
+ #define VER_LEVEL VERC2(VERSION, VER4, VER1)
+#endif
+
+#if !defined(VER_DMY) && VER_DAY < 10
+ #define VER5 PPCAT(0, VER_DAY)
+#else
+ #define VER5 VER_DAY
+#endif
+
+// define month strings --------------------------------------------------
+
+#if VER_MONTH==1
+ #define VER2 Jan
+#elif VER_MONTH==2
+ #define VER2 Feb
+#elif VER_MONTH==3
+ #ifdef LG_D
+ #define VER2 M\344r
+ #else
+ #define VER2 Mar
+ #endif
+#elif VER_MONTH==4
+ #define VER2 Apr
+#elif VER_MONTH==5
+ #ifdef LG_D
+ #define VER2 Mai
+ #else
+ #define VER2 May
+ #endif
+#elif VER_MONTH==6
+ #define VER2 Jun
+#elif VER_MONTH==7
+ #define VER2 Jul
+#elif VER_MONTH==8
+ #define VER2 Aug
+#elif VER_MONTH==9
+ #define VER2 Sep
+#elif VER_MONTH==10
+ #ifdef LG_D
+ #define VER2 Okt
+ #else
+ #define VER2 Oct
+ #endif
+#elif VER_MONTH==11
+ #define VER2 Nov
+#elif VER_MONTH==12
+ #ifdef LG_D
+ #define VER2 Dez
+ #else
+ #define VER2 Dec
+ #endif
+#endif
+
+#ifdef LG_D
+ #define VERC3(a, b, c) a.b.c
+#else
+ #define VERC3(a, b, c) c-b-a
+#endif
+#define VERC4(a, b, c) VERC3(a, b, c)
+#define VER_DATE VERC4(VER5, VER2, VER_YEAR)
+
+#if PPCAT(1, VER_FIRSTYEAR)==PPCAT(1, VER_YEAR)
+ #define VER_YEARRANGE VER_FIRSTYEAR
+#else
+ #define VER_YEARRANGE VER_FIRSTYEAR-VER_YEAR
+#endif
+
+#if VER_FIRSTYEAR > 100
+#define VERC5(a) Copyright \251 a by
+#define VERC6(a) VERC5(a)
+#else
+#define VERC5(a) Copyright \251 20##a by
+#define VERC6(a) VERC5(a)
+#endif
+
+#define S_CRIGHT PPS(VERC6(VER_YEARRANGE))
+
+#ifdef LG_D
+#define S_VERSION PPS(Version VER_LEVEL vom VER_DATE)
+#else
+#define S_VERSION PPS(Version VER_LEVEL of VER_DATE)
+#endif
+
+#endif // _VERINFO_HRC
+
diff --git a/solenv/inc/version.hrc b/solenv/inc/version.hrc
new file mode 100755
index 000000000000..1abf729cca39
--- /dev/null
+++ b/solenv/inc/version.hrc
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ *************************************************************************/
+
+#define VERSION 3
+#define SUBVERSION 3
+//#define VERVARIANT 0 // never define this one, will be provided by build environment (BUILD_ID)
+// .0 + VER_CONCEPT
+// .100 + VER_ALPHA
+// .200 + VER_BETA
+// .300 + VER_GAMMA
+// .500 + VER_FINAL
+//#define VER_CONCEPT 0
+//#define VER_BETA 6
+#define VER_FINAL 0
+
+#define VER_DAY 1
+#define VER_MONTH 8
+#define VER_YEAR 2010
+
+#ifndef VER_FIRSTYEAR
+#define VER_FIRSTYEAR VER_YEAR
+#endif
+
+#include "verinfo.hrc"
+
+#ifdef WIN32
+#define FOR_WIN_X " (32 Bit)"
+#else
+#define FOR_WIN_X ""
+#endif
+
+// -----------------------------------------------------------------------
+// language/character set specification table
+// -----------------------------------------------------------------------
+
+RCD_LANGUAGE rcdata
+{
+#ifdef LG_D
+ "040704B0", // Germany -> Unicode
+ "040704E4", // Germany -> Windows, Multilingual
+#else
+ "040904B0", // Germany -> Unicode
+ "040904E4", // USA -> Windows, Multilingual
+#endif
+ "04090000", // USA -> 7-Bit-ASCII
+ 0 // end of table
+}
+
+
+// version binary entry
+VS_VERSION_INFO rcdata
+{
+ 0xF0, "sw", 0x0F, VER_YEAR, VER_MONTH, VER_DAY,
+ VERSION, SUBVERSION, VERVARIANT, VER_COUNT
+};
+
diff --git a/solenv/inc/version.lst b/solenv/inc/version.lst
new file mode 100644
index 000000000000..ac49f6c6fcf6
--- /dev/null
+++ b/solenv/inc/version.lst
@@ -0,0 +1,30 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+OOOBASEVERSIONMAJOR=3
+OOOBASEVERSIONMINOR=3
+OOOBASEVERSIONMICRO=0
diff --git a/solenv/inc/version_so.hrc b/solenv/inc/version_so.hrc
new file mode 100755
index 000000000000..5e2c35baea12
--- /dev/null
+++ b/solenv/inc/version_so.hrc
@@ -0,0 +1,79 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ *************************************************************************/
+
+#define VERSION 3
+#define SUBVERSION 3
+//#define VERVARIANT 0 // never define this one, will be provided by build environment (BUILD_ID)
+// .0 + VER_CONCEPT
+// .100 + VER_ALPHA
+// .200 + VER_BETA
+// .300 + VER_GAMMA
+// .500 + VER_FINAL
+//#define VER_CONCEPT 0
+//#define VER_BETA 6
+#define VER_FINAL 0
+
+#define VER_DAY 1
+#define VER_MONTH 8
+#define VER_YEAR 2010
+
+#ifndef VER_FIRSTYEAR
+#define VER_FIRSTYEAR VER_YEAR
+#endif
+
+#include "verinfo.hrc"
+
+#ifdef WIN32
+#define FOR_WIN_X " (32 Bit)"
+#else
+#define FOR_WIN_X ""
+#endif
+
+// -----------------------------------------------------------------------
+// language/character set specification table
+// -----------------------------------------------------------------------
+
+RCD_LANGUAGE rcdata
+{
+#ifdef LG_D
+ "040704B0", // Germany -> Unicode
+ "040704E4", // Germany -> Windows, Multilingual
+#else
+ "040904B0", // Germany -> Unicode
+ "040904E4", // USA -> Windows, Multilingual
+#endif
+ "04090000", // USA -> 7-Bit-ASCII
+ 0 // end of table
+}
+
+// version binary entry
+VS_VERSION_INFO rcdata
+{
+ 0xF0, "sw", 0x0F, VER_YEAR, VER_MONTH, VER_DAY,
+ VERSION, SUBVERSION, VERVARIANT, VER_COUNT
+};
+
diff --git a/solenv/inc/versionlist.mk b/solenv/inc/versionlist.mk
new file mode 100644
index 000000000000..31a255e48be1
--- /dev/null
+++ b/solenv/inc/versionlist.mk
@@ -0,0 +1,30 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+.INCLUDE: version.lst
+
+.EXPORT : OOOBASEVERSIONMAJOR OOOBASEVERSIONMINOR OOOBASEVERSIONMICRO
diff --git a/solenv/inc/wnt.mk b/solenv/inc/wnt.mk
new file mode 100644
index 000000000000..f369bd15ad30
--- /dev/null
+++ b/solenv/inc/wnt.mk
@@ -0,0 +1,72 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# --- Windows-NT-Environment ---------------------------------------
+# Used if "$(GUI)" == "WNT"
+
+# --- Compiler ---
+
+.IF "$(OS)$(COM)$(CPU)" == "WNTMSCI"
+.IF "$(COMEX)" == "10"
+.INCLUDE : wntmsci10.mk
+.ELSE
+# for wntmsci11 (.Net 2005) and wntmsci12 (.Net 2008)
+.INCLUDE : wntmsci11.mk
+.ENDIF # "$(COMEX)" == "10"
+.ENDIF # "$(OS)$(COM)$(CPU)" == "WNTMSCI"
+
+.IF "$(COM)$(OS)$(CPU)" == "GCCWNTI"
+.INCLUDE : wntgcci.mk
+.ENDIF
+
+# --- changes for W32-tcsh - should move into settings.mk ---
+JAVAC=javac
+JAVA=java
+JAVAI!:=java
+PATH_SEPERATOR*=:
+
+# --- general WNT settings ---
+
+HC=hc
+HCFLAGS=
+DLLPRE=
+DLLPOST=.dll
+EXECPOST=.exe
+SCPPOST=.inf
+DLLDEST=$(BIN)
+SOLARSHAREDBIN=$(SOLARBINDIR)
+
+.IF "$(SOLAR_JAVA)"!=""
+JAVADEF=-DSOLAR_JAVA
+.IF "$(debug)"==""
+JAVA_RUNTIME=javai.lib
+.ELSE
+JAVA_RUNTIME=javai_g.lib
+.ENDIF
+.ENDIF
+
+OOO_LIBRARY_PATH_VAR = PATH
diff --git a/solenv/inc/wntgcci.mk b/solenv/inc/wntgcci.mk
new file mode 100644
index 000000000000..a6c7e67cfd9f
--- /dev/null
+++ b/solenv/inc/wntgcci.mk
@@ -0,0 +1,217 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for Window Intel using GCC
+
+SOLAR_JAVA*=TRUE
+FULL_DESK=TRUE
+JAVAFLAGSDEBUG=-g
+
+# SOLAR JAva Unterstuetzung nur fuer wntmsci
+
+ASM=ml
+AFLAGS=/c /Cp /coff
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=-march=pentium
+
+CXX*=gcc
+### Der gcc vertraegt kein Semikolon im Include-Pfad RT
+# old:
+#CFLAGS=-c -Wall -I$(INCLUDE) $(OLE2DEF)
+# new:
+#CYGINC=$(INCLUDE:s/-I /-I/:+" ":s/;/ -I/:s/-I //:s/ / /)
+CFLAGS=-fmessage-length=0 -c -nostdinc $(OLE2DEF)
+###
+CFLAGSCC=-pipe $(ARCH_FLAGS)
+CFLAGSCXX=-pipe $(ARCH_FLAGS)
+CFLAGSEXCEPTIONS=-fexceptions -fno-enforce-eh-specs
+CFLAGS_NO_EXCEPTIONS=-fno-exceptions
+PICSWITCH:=
+
+CFLAGS_CREATE_PCH=-x c++-header -I$(INCPCH) -DPRECOMPILED_HEADERS
+CFLAGS_USE_PCH=-I$(SLO)$/pch -DPRECOMPILED_HEADERS -Winvalid-pch
+CFLAGS_USE_EXCEPTIONS_PCH=-I$(SLO)$/pch_ex -DPRECOMPILED_HEADERS -Winvalid-pch
+
+CFLAGSOBJGUIST=
+CFLAGSOBJCUIST=
+CFLAGSOBJGUIMT=-D_MT
+CFLAGSOBJCUIMT=-D_MT
+CFLAGSSLOGUIMT=-D_MT $(PICSWITCH)
+CFLAGSSLOCUIMT=-D_MT $(PICSWITCH)
+CFLAGSPROF=
+CFLAGSDEBUG=-g
+CFLAGSDBGUTIL=
+.IF "$(PRODUCT)"!=""
+CFLAGSOPT=-O2 -fno-strict-aliasing # optimizing for products
+.ELSE # "$(PRODUCT)"!=""
+CFLAGSOPT= # no optimizing for non products
+.ENDIF # "$(PRODUCT)"!=""
+# Compiler flags for disabling optimizations
+CFLAGSNOOPT=-O0
+# Compiler flags for describing the output path
+CFLAGSOUTOBJ=-o
+#plattform hart setzen
+CDEFS+=-DWIN32 -DWINVER=0x500 -D_WIN32_WINNT=0x500 -D_WIN32_IE=0x500 -D_M_IX86 -DSTLPORT_VERSION=450 -D_NATIVE_WCHAR_T_DEFINED -D_MSC_EXTENSIONS -D_FORCENAMELESSUNION
+.IF "$(DYNAMIC_CRT)"!=""
+CDEFS+=-D_DLL
+.ENDIF
+
+# -Wshadow does not work for C with nested uses of pthread_cleanup_push:
+CFLAGSWARNCC=-Wall -Wextra -Wendif-labels
+CFLAGSWARNCXX=$(CFLAGSWARNCC) -Wshadow -Wno-ctor-dtor-privacy \
+ -Wno-non-virtual-dtor -Wno-uninitialized
+CFLAGSWALLCC=$(CFLAGSWARNCC)
+CFLAGSWALLCXX=$(CFLAGSWARNCXX)
+CFLAGSWERRCC=-Werror
+CFLAGSWERRCXX=-Werror
+
+MODULES_WITH_WARNINGS := \
+ b_server \
+ chart2 \
+ devtools \
+ extensions \
+ lingu \
+ r_tools \
+ soldep \
+ starmath \
+ sw \
+ xmlsecurity
+
+STATIC= -static
+DYNAMIC= -dynamic
+
+LINK*=$(CXX)
+LINKC*=$(CC)
+
+CYGLIB=$(LIB:s/;/ -L/)
+LINKFLAGS=-nostdlib -Wl,--enable-stdcall-fixup,--enable-runtime-pseudo-reloc-v2 -L$(CYGLIB)
+.IF "$(USE_MINGW)"=="cygwin"
+MINGWLIBDIR=$(COMPATH)$/lib$/mingw
+.ELSE
+MINGWLIBDIR=$(COMPATH)$/lib
+.ENDIF
+MINGWSSTDOBJ=$(MINGW_CLIB_DIR)$/crtbegin.o
+MINGWSSTDENDOBJ=$(MINGW_CLIB_DIR)$/crtend.o
+LINKFLAGSAPPGUI=-mwindows $(MINGWLIBDIR)$/crt2.o
+LINKFLAGSSHLGUI=--warn-once -mwindows -shared $(MINGWLIBDIR)$/dllcrt2.o
+LINKFLAGSAPPCUI=-mconsole $(MINGWLIBDIR)$/crt2.o
+LINKFLAGSSHLCUI=--warn-once -mconsole -shared $(MINGWLIBDIR)$/dllcrt2.o
+LINKFLAGSTACK=
+LINKFLAGSPROF=
+LINKFLAGSDEBUG=-g
+LINKFLAGSOPT=
+
+.IF "$(MINGW_SHARED_GXXLIB)"=="YES" && "$(DYNAMIC_CRT)"!=""
+STDLIBCPP=-lstdc++_s
+.ELSE
+STDLIBCPP=-lstdc++
+.ENDIF
+UWINAPILIB*=$(DYNAMIC) -luwinapi
+
+.IF "$(MINGW_SHARED_GCCLIB)"=="YES" && "$(DYNAMIC_CRT)"!=""
+MINGW_LIBGCC=-lgcc_s -lgcc
+LINKFLAGS+=-shared-libgcc
+.ELSE
+.IF "$(MINGW_GCCLIB_EH)"=="YES"
+MINGW_LIBGCC=-lgcc_eh -lgcc
+.ELSE
+MINGW_LIBGCC=-lgcc
+.ENDIF
+.ENDIF
+STDOBJVCL=$(L)$/salmain.obj
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+STDLIBGUIMT=-Wl,--start-group CPPRUNTIME $(MINGW_LIBGCC)
+STDLIBCUIMT=-Wl,--start-group CPPRUNTIME $(MINGW_LIBGCC)
+STDSHLGUIMT=-Wl,--start-group CPPRUNTIME $(MINGW_LIBGCC)
+STDSHLCUIMT=-Wl,--start-group CPPRUNTIME $(MINGW_LIBGCC)
+.IF "$(DYNAMIC_CRT)"!=""
+STDLIBGUIMT+=-lmingwthrd
+STDLIBCUIMT+=-lmingwthrd
+STDSHLGUIMT+=-lmingwthrd
+STDSHLCUIMT+=-lmingwthrd
+.ENDIF
+STDLIBGUIMT+=-lmingw32 -lmoldname -lmingwex -Wl,--end-group $(UWINAPILIB) -lm -lkernel32 -luser32 -lmsvcrt
+STDLIBCUIMT+=-lmingw32 -lmoldname -lmingwex -Wl,--end-group $(UWINAPILIB) -lm -lkernel32 -luser32 -lmsvcrt
+STDSHLGUIMT+=-lmingw32 -lmoldname -lmingwex -Wl,--end-group $(UWINAPILIB) -lm -lkernel32 -luser32 -lmsvcrt
+STDSHLCUIMT+=-lmingw32 -lmoldname -lmingwex -Wl,--end-group $(UWINAPILIB) -lm -lkernel32 -luser32 -lmsvcrt
+
+LIBSTLPORT=-lstlport_gcc
+LIBSTLPORTST=-lstlport_gcc_static $(STDLIBCPP)
+
+LIBMGR=ar
+LIBFLAGS=-rsu
+
+IMPLIB=ld
+IMPLIBFLAGS=
+
+MAPSYM=tmapsym
+MAPSYMFLAGS=
+
+RC=rc
+RCFLAGS=-D__MINGW32__ -DWIN32 -D_WIN32_IE=0x400 -fo$@ $(RCFILES)
+RCLINK=
+RCLINKFLAGS=
+RCSETVERSION=
+
+DLLPOSTFIX=gi
+PCHPOST=.gch
+
+ADVAPI32LIB=-ladvapi32
+SHELL32LIB=-lshell32
+GDI32LIB=-lgdi32
+OLE32LIB=-lole32
+OLEAUT32LIB=-loleaut32
+UUIDLIB=$(PSDK_HOME)$/lib$/uuid.lib
+WINSPOOLLIB=-lwinspool
+IMM32LIB=-limm32
+VERSIONLIB=-lversion
+WINMMLIB=-lwinmm
+WSOCK32LIB=-lwsock32
+MPRLIB=-lmpr
+WS2_32LIB=-lws2_32
+KERNEL32LIB=-lkernel32
+USER32LIB=-luser32
+LIBCMT=-lmsvcrt
+COMDLG32LIB=-lcomdlg32
+COMCTL32LIB=-lcomctl32
+CRYPT32LIB=$(PSDK_HOME)$/lib$/crypt32.lib
+GDIPLUSLIB=$(PSDK_HOME)$/lib$/gdiplus.lib
+DBGHELPLIB=$(PSDK_HOME)$/lib$/dbghelp.lib
+MSILIB=$(PSDK_HOME)$/lib$/msi.lib
+DDRAWLIB=$(DIRECTXSDK_LIB)/ddraw.lib
+SHLWAPILIB=$(PSDK_HOME)$/lib$/shlwapi.lib
+URLMONLIB=$(PSDK_HOME)$/lib$/urlmon.lib
+UNICOWSLIB=$(PSDK_HOME)$/lib$/unicows.lib
+WININETLIB=-lwininet
+OLDNAMESLIB=-lmoldname
+MSIMG32LIB=$(PSDK_HOME)$/lib$/msimg32.lib
+PROPSYSLIB=-lpropsys
diff --git a/solenv/inc/wntmsci10.mk b/solenv/inc/wntmsci10.mk
new file mode 100644
index 000000000000..5c959f7d0e3c
--- /dev/null
+++ b/solenv/inc/wntmsci10.mk
@@ -0,0 +1,343 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for $(OS)$(COM)$(CPU)$(COMEX) == WNTMSCI10
+
+SOLAR_JAVA*=TRUE
+FULL_DESK=TRUE
+JAVAFLAGSDEBUG=-g
+
+# SOLAR JAva Unterstuetzung nur fuer wntmsci
+
+ASM=ml
+AFLAGS=/c /Cp /coff /safeseh
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+
+CC*:=cl
+.IF "$(bndchk)" != ""
+CXX*=nmcl
+.ELSE
+.IF "$(truetime)" != ""
+CXX*=nmcl /NMttOn
+.ELSE
+CXX*:=cl
+.ENDIF
+.ENDIF # "$(bndchk)" != ""
+
+.IF "$(stoponerror)" != ""
+CXX+= /NMstoponerror
+.ENDIF
+
+.IF "$(nmpass)" != ""
+CXX+= /NMpass
+.ENDIF
+
+.IF "$(ttinlines)" != ""
+CXX+= /NMttInlines
+.ENDIF
+
+.IF "$(ttnolines)" != ""
+CXX+= /NMttNoLines
+.ENDIF
+
+# Flags for COMEX == 10
+
+CFLAGS+=-Zm500 -Zc:forScope -GR
+CFLAGS+=-c -nologo -Gs $(NOLOGO)
+
+CDEFS+= -D_X86_=1
+
+.IF "$(product)" != ""
+CFLAGS+= -Gy
+.ENDIF # "$(product)" != ""
+
+.IF "$(bndchk)" == ""
+.IF "$(VC_STANDARD)"==""
+CFLAGS+= -Ob1
+.ENDIF # "$(VC_STANDARD)"==""
+.ENDIF
+
+# flags to enable build with symbols; required for crashdump feature
+#CFLAGSENABLESYMBOLS=-Zi -Fd$(MISC)/_ooo_st_$(TARGET).PDB
+# full debug for RE builds only due to size concerns
+.IF "$(UPDATER)"!=""
+CFLAGSENABLESYMBOLS=-Z7 -Yd
+.ELSE # "$(UPDATER)"!=""
+# -Zd got higher priority and overrides debug switches
+.IF "$(debug)"==""
+CFLAGSENABLESYMBOLS=-Zd
+.ENDIF # "$(debug)"==""
+.ENDIF # "$(UPDATER)"!=""
+
+.IF "$(bndchk)" != ""
+.IF "$(debug)" == ""
+CFLAGS+= -Z7
+.ENDIF
+.ENDIF
+
+.IF "$(truetime)" != ""
+.IF "$(debug)" == ""
+CFLAGS+= -Z7
+.ENDIF
+.ENDIF
+
+.IF "$(FULL_DESK)"!=""
+CDEFS+=-DFULL_DESK
+RSCDEFS+=-DFULL_DESK
+.ENDIF
+
+CFLAGSEXCEPTIONS=-GX
+CFLAGS_NO_EXCEPTIONS=
+
+CFLAGS_CREATE_PCH=-I$(INCPCH) -Fo$(SLO)/pchname.obj -Ycprecompiled_$(PRJNAME).hxx -DPRECOMPILED_HEADERS
+CFLAGS_USE_PCH=-I$(INCPCH) -Yuprecompiled_$(PRJNAME).hxx -Fp$(SLO)/pch/precompiled_$(PRJNAME).hxx$(PCHPOST) -DPRECOMPILED_HEADERS
+CFLAGS_USE_EXCEPTIONS_PCH=-I$(INCPCH) -Yuprecompiled_$(PRJNAME).hxx -Fp$(SLO)/pch_ex/precompiled_$(PRJNAME).hxx$(PCHPOST) -DPRECOMPILED_HEADERS
+.IF "$(CALL_CDECL)"=="TRUE"
+CFLAGSCALL=-Gd
+.ELSE # "$(CALL_CDECL)"=="TRUE"
+CFLAGSCALL=-Gz
+.ENDIF # "$(CALL_CDECL)"=="TRUE"
+
+CFLAGSCC=$(ARCH_FLAGS)
+.IF "$(DYNAMIC_CRT)"!=""
+CDEFSSLOMT+=-DWIN32 -D_MT -D_DLL
+CDEFSSLOMT+=-DWIN32 -D_MT -D_DLL
+.IF "$(NO_DYNAMIC_OBJ)"==""
+CDEFSOBJMT+=-DWIN32 -D_MT -D_DLL
+CDEFSOBJMT+=-DWIN32 -D_MT -D_DLL
+.ELSE
+CDEFSOBJMT+=-DWIN32 -D_MT
+CDEFSOBJMT+=-DWIN32 -D_MT
+.ENDIF
+.ELSE
+CDEFSSLOMT+=-DWIN32 -D_MT
+CDEFSSLOMT+=-DWIN32 -D_MT
+CDEFSOBJMT+=-DWIN32 -D_MT
+CDEFSOBJMT+=-DWIN32 -D_MT
+.ENDIF
+CFLAGSPROF=-Gh -Fd$(MISC)/$(@:b).pdb
+CFLAGSDEBUG=-Zi -Fd$(MISC)\_ooo_st_$(TARGET).PDB
+CFLAGSDBGUTIL=
+.IF "$(VC_STANDARD)"==""
+CFLAGSOPT=-Oxs -Oy-
+CFLAGSNOOPT=-Od
+.ELSE # "$(VC_STANDARD)"==""
+CFLAGSOPT=
+CFLAGSNOOPT=
+.ENDIF # "$(VC_STANDARD)"==""
+CFLAGSOUTOBJ=-Fo
+
+# For C and C++, certain warnings are disabled globally, as they result in
+# spurious warnings and are hard or impossible to workaround:
+# - "warning C4061: enumerate in switch of enum is not explicitly handled by a
+# case label",
+# - "warning C4063: case 'identifier' is not a valid value for switch of enum
+# 'enumeration'",
+# - "warning C4127: conditional expression is constant",
+# - "warning C4191: unsafe conversion from function type to function type",
+# - "warning C4217: member template functions cannot be used for copy-assignment
+# or copy-construction",
+# - "warning C4250: 'class1' : inherits 'class2::member' via dominance",
+# - "warning C4292: compiler limit : terminating debug information emission",
+# - "warning C4344: behavior change: use of explicit template arguments results
+# in call to 'function",
+# - "warning C4347: behavior change: 'overload A' is called instead of
+# 'overload B'",
+# - "warning C4355: 'this' used in base member initializer list",
+# - "warning C4503: 'identifier': decorated name length exceeded, name was
+# truncated" (http://msdn2.microsoft.com/en-us/library/074af4b6.aspx),
+# - "warning C4511: copy constructor could not be generated",
+# - "warning C4512: assignment operator could not be generated",
+# - "warning C4514: unreferenced inline function has been removed",
+# - "warning C4611: interaction between '_setjmp' and C++ object destruction is
+# non-portable",
+# - "warning C4619: warning Cnnnn unknown",
+# - "warning C4625: copy constructor could not be generated because a base class
+# copy constructor is inaccessible",
+# - "warning C4626: assignment operator could not be generated because a base
+# class assignment operator is inaccessible",
+# - "warning C4675: resolved overload was found by argument-dependent lookup",
+# - "warning C4686: possible change in behavior, change in UDT return calling
+# convention",
+# - "warning C4710: function not inlined",
+# - "warning C4711: function selected for automatic inline expansion",
+# - "warning C4820: padding added after member".
+# For C, certain warnings from system headers (stdlib.h etc.) have to be
+# disabled globally (for C++, this is not necessary, as the system headers are
+# wrapped by STLport):
+# - "warning C4255: no function prototype given: converting '()' to '(void)'".
+CFLAGSWARNCXX=-Wall -wd4061 -wd4063 -wd4127 -wd4191 -wd4217 -wd4250 -wd4251 \
+ -wd4275 -wd4290 -wd4292 -wd4294 -wd4344 -wd4347 -wd4355 -wd4503 -wd4511 \
+ -wd4512 -wd4514 -wd4611 -wd4619 -wd4625 -wd4626 -wd4640 -wd4675 -wd4686 \
+ -wd4710 -wd4711 -wd4786 -wd4800 -wd4820
+CFLAGSWARNCC=$(CFLAGSWARNCXX) -wd4255
+CFLAGSWALLCC=$(CFLAGSWARNCC)
+CFLAGSWALLCXX=$(CFLAGSWARNCXX)
+CFLAGSWERRCC=-WX
+
+# Once all modules on this platform compile without warnings, set
+# COMPILER_WARN_ERRORS=TRUE here instead of setting MODULES_WITH_WARNINGS (see
+# settings.mk):
+MODULES_WITH_WARNINGS := \
+ lingucomponent \
+ soldep
+
+CDEFS+=-DSTLPORT_VERSION=$(STLPORT_VER) -D_MT -DWINVER=0x0500 -D_WIN32_WINNT=0x0500 -D_WIN32_IE=0x0500
+
+COMMENTFLAG=/COMMENT:"$(PRJNAME)_$(UPD)_$(VCSID)_"
+
+LINK=link $(COMMENTFLAG) $(NOLOGO) /MACHINE:IX86
+LINKOUTPUTFILTER= $(PIPEERROR) $(GREP) -v "LNK4197:"
+.IF "$(PRODUCT)"!="full"
+.ELSE
+LINKFLAGS=/MAP /OPT:NOREF
+.ENDIF
+
+.IF "$(linkinc)" != ""
+LINKFLAGS=-NODEFAULTLIB -DEBUG:full -DEBUGTYPE:cv -INCREMENTAL:YES
+MAPFILE=
+.ELSE # "$(linkinc)" != ""
+.IF "$(PRODUCT)"!="full"
+LINKFLAGS+= -NODEFAULTLIB -DEBUG:full -DEBUGTYPE:cv
+.ELSE # "$(PRODUCT)"!="full"
+LINKFLAGS+= -NODEFAULTLIB -RELEASE -DEBUG:full
+.ENDIF # "$(PRODUCT)"!="full"
+MAPFILE=-out:$$@
+.ENDIF # "$(linkinc)" != ""
+
+.IF "$(bndchk)" != ""
+LINK=nmlink $(COMMENTFLAG) $(NOLOGO) -MACHINE:IX86
+LINKFLAGS=-NODEFAULTLIB -DEBUG:full -DEBUGTYPE:cv
+.ENDIF
+
+.IF "$(truetime)" != ""
+LINK=nmlink /NMttOn $(COMMENTFLAG) $(NOLOGO) /MACHINE:IX86
+LINKFLAGS=/NODEFAULTLIB /DEBUG:full /DEBUGTYPE:cv
+.ENDIF
+
+LINKFLAGSAPPGUI=/SUBSYSTEM:WINDOWS,4.0
+LINKFLAGSSHLGUI=/SUBSYSTEM:WINDOWS,4.0 /DLL
+LINKFLAGSAPPCUI=/SUBSYSTEM:CONSOLE /BASE:0x1b000000
+LINKFLAGSSHLCUI=/SUBSYSTEM:CONSOLE /DLL
+LINKFLAGSTACK=/STACK:
+LINKFLAGSPROF=-DEBUG:mapped,partial -DEBUGTYPE:coff cap.lib
+LINKFLAGSWST=-DEBUG:mapped,partial -DEBUGTYPE:coff wst.lib -NODEFAULTLIB
+LINKFLAGSDEBUG=-DEBUG:full -DEBUGTYPE:cv
+LINKFLAGSOPT=
+
+UWINAPILIB*=uwinapi.lib
+.IF "$(DYNAMIC_CRT)"!=""
+.IF "$(USE_STLP_DEBUG)" != ""
+LIBCMT=msvcrtd.lib
+.ELSE # "$(USE_STLP_DEBUG)" != ""
+LIBCMT=msvcrt.lib
+.ENDIF # "$(USE_STLP_DEBUG)" != ""
+.ELSE # "$(DYNAMIC_CRT)"!=""
+.IF "$(USE_STLP_DEBUG)" != ""
+LIBCMT=libcmtd.lib
+.ELSE # "$(USE_STLP_DEBUG)" != ""
+LIBCMT=libcmt.lib
+.ENDIF # "$(USE_STLP_DEBUG)" != ""
+.ENDIF # "$(DYNAMIC_CRT)"!=""
+
+STDOBJVCL=$(L)/salmain.obj
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+
+STDLIBGUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib psapi.lib
+STDLIBCUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib psapi.lib
+STDSHLGUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib psapi.lib
+STDSHLCUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib psapi.lib
+
+.IF "$(USE_STLP_DEBUG)" != ""
+CFLAGS+=-MTd
+LIBSTLPORT=stlport_vc71_stldebug.lib
+LIBSTLPORTST=stlport_vc71_stldebug_static.lib
+.ELSE
+LIBSTLPORT=stlport_vc71.lib
+LIBSTLPORTST=stlport_vc71_static.lib
+.ENDIF
+
+ATL_INCLUDE*=$(COMPATH)/atlmfc/include
+ATL_LIB*=$(COMPATH)/atlmfc/lib
+
+LIBMGR=lib $(NOLOGO)
+IMPLIB=lib
+LIBFLAGS=
+
+IMPLIBFLAGS=-machine:IX86
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=rc
+RCFLAGS=-r -DWIN32 -fo$@ $(RCFILES)
+RCLINK=rc
+RCLINKFLAGS=
+RCSETVERSION=
+
+
+DLLPOSTFIX=mi
+PCHPOST=.pch
+
+CSC*=$(FLIPCMD) csc
+VBC*=vbc
+
+ADVAPI32LIB=advapi32.lib
+SHELL32LIB=shell32.lib
+GDI32LIB=gdi32.lib
+OLE32LIB=ole32.lib
+OLEAUT32LIB=oleaut32.lib
+UUIDLIB=uuid.lib
+WINSPOOLLIB=winspool.lib
+IMM32LIB=imm32.lib
+VERSIONLIB=version.lib
+WINMMLIB=winmm.lib
+WSOCK32LIB=wsock32.lib
+MPRLIB=mpr.lib
+WS2_32LIB=ws2_32.lib
+KERNEL32LIB=kernel32.lib
+USER32LIB=user32.lib
+COMDLG32LIB=comdlg32.lib
+COMCTL32LIB=comctl32.lib
+CRYPT32LIB=crypt32.lib
+GDIPLUSLIB=gdiplus.lib
+DBGHELPLIB=dbghelp.lib
+MSILIB=msi.lib
+DDRAWLIB=ddraw.lib
+SHLWAPILIB=shlwapi.lib
+URLMONLIB=urlmon.lib
+UNICOWSLIB=unicows.lib
+WININETLIB=wininet.lib
+OLDNAMESLIB=oldnames.lib
+MSIMG32LIB=msimg32.lib
+
diff --git a/solenv/inc/wntmsci11.mk b/solenv/inc/wntmsci11.mk
new file mode 100644
index 000000000000..972feb0a8fdc
--- /dev/null
+++ b/solenv/inc/wntmsci11.mk
@@ -0,0 +1,391 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+# mk file for $(OS)$(COM)$(CPU)$(COMEX) == WNTMSCI11 and WNTMSCI12
+
+SOLAR_JAVA*=TRUE
+FULL_DESK=TRUE
+JAVAFLAGSDEBUG=-g
+
+# SOLAR JAva Unterstuetzung nur fuer wntmsci
+
+ASM=ml
+AFLAGS=/c /Cp /coff /safeseh
+
+# architecture dependent flags for the C and C++ compiler that can be changed by
+# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
+ARCH_FLAGS*=
+
+CC*:=cl
+.IF "$(bndchk)" != ""
+CXX*=nmcl
+.ELSE
+.IF "$(truetime)" != ""
+CXX*=nmcl /NMttOn
+.ELSE
+CXX*:=cl
+.ENDIF
+.ENDIF # "$(bndchk)" != ""
+
+.IF "$(stoponerror)" != ""
+CXX+= /NMstoponerror
+.ENDIF
+
+.IF "$(nmpass)" != ""
+CXX+= /NMpass
+.ENDIF
+
+.IF "$(ttinlines)" != ""
+CXX+= /NMttInlines
+.ENDIF
+
+.IF "$(ttnolines)" != ""
+CXX+= /NMttNoLines
+.ENDIF
+
+.IF "$(VERBOSE)" != "TRUE"
+NOLOGO*=-nologo
+.ENDIF
+
+.IF "$(VERBOSE)" != "TRUE"
+COMPILE_ECHO_SWITCH=-n
+COMPILE_ECHO_FILE=
+.ENDIF
+
+# Flags for COMEX == 11
+
+# disable "warning C4675: resolved overload was found by argument-dependent
+# lookup":
+# -wd4251 -wd4275 -wd4290 -wd4675 -wd4786 -wd4800
+CFLAGS+=-Zm500 -Zc:forScope,wchar_t- -GR
+
+# Stack buffer overrun detection.
+CFLAGS+=-GS
+
+CFLAGS+=-c -nologo -Gs $(NOLOGO)
+
+CDEFS+= -D_X86_=1 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS
+
+.IF "$(product)" != ""
+CFLAGS+= -Gy
+.ENDIF # "$(product)" != ""
+
+.IF "$(bndchk)" == ""
+.IF "$(VC_STANDARD)"==""
+CFLAGS+= -Ob1
+.ENDIF # "$(VC_STANDARD)"==""
+.ENDIF
+
+# flags to enable build with symbols; required for crashdump feature
+#CFLAGSENABLESYMBOLS=-Zi -Fd$(MISC)/_ooo_st_$(TARGET).PDB
+CFLAGSENABLESYMBOLS=-Z7 -Yd
+
+.IF "$(bndchk)" != ""
+.IF "$(debug)" == ""
+CFLAGS+= -Z7
+.ENDIF
+.ENDIF
+
+.IF "$(truetime)" != ""
+.IF "$(debug)" == ""
+CFLAGS+= -Z7
+.ENDIF
+.ENDIF
+
+.IF "$(FULL_DESK)"!=""
+CDEFS+=-DFULL_DESK
+RSCDEFS+=-DFULL_DESK
+.ENDIF
+
+CFLAGSEXCEPTIONS=-EHa
+CFLAGS_NO_EXCEPTIONS=
+
+# enable boost support for __cdecl (SAL_CALL) C++-UNO interface methods
+CDEFS+=-DBOOST_MEM_FN_ENABLE_CDECL
+
+# with the current debug switches PCH won't work
+# anyway. so keep the existing .pch intact and don't
+# touch it
+.IF "$(debug)"!=""
+ENABLE_PCH:=
+.ENDIF "$(debug)"!=""
+
+CFLAGS_CREATE_PCH=-I$(INCPCH) -Fo$(SLO)/pchname.obj -Ycprecompiled_$(PRJNAME).hxx -DPRECOMPILED_HEADERS
+CFLAGS_USE_PCH=-I$(INCPCH) -Yuprecompiled_$(PRJNAME).hxx -Fp$(SLO)/pch/precompiled_$(PRJNAME).hxx$(PCHPOST) -DPRECOMPILED_HEADERS
+CFLAGS_USE_EXCEPTIONS_PCH=-I$(INCPCH) -Yuprecompiled_$(PRJNAME).hxx -Fp$(SLO)/pch_ex/precompiled_$(PRJNAME).hxx$(PCHPOST) -DPRECOMPILED_HEADERS
+.IF "$(CALL_CDECL)"=="TRUE"
+CFLAGSCALL=-Gd
+.ELSE # "$(CALL_CDECL)"=="TRUE"
+CFLAGSCALL=-Gz
+.ENDIF # "$(CALL_CDECL)"=="TRUE"
+
+CFLAGSCC=$(ARCH_FLAGS)
+.IF "$(DYNAMIC_CRT)"!=""
+CDEFSSLOMT+=-DWIN32 -D_MT -D_DLL
+CDEFSSLOMT+=-DWIN32 -D_MT -D_DLL
+.IF "$(NO_DYNAMIC_OBJ)"==""
+CDEFSOBJMT+=-DWIN32 -D_MT -D_DLL
+CDEFSOBJMT+=-DWIN32 -D_MT -D_DLL
+.ELSE
+CDEFSOBJMT+=-DWIN32 -D_MT
+CDEFSOBJMT+=-DWIN32 -D_MT
+.ENDIF # "$(NO_DYNAMIC_OBJ)"==""
+.ELSE
+CDEFSSLOMT+=-DWIN32 -D_MT
+CDEFSSLOMT+=-DWIN32 -D_MT
+CDEFSOBJMT+=-DWIN32 -D_MT
+CDEFSOBJMT+=-DWIN32 -D_MT
+.ENDIF # "$(DYNAMIC_CRT)"!=""
+
+CFLAGSPROF=-Gh -Fd$(MISC)/$(@:b).pdb
+CFLAGSDEBUG=-Zi -Fd$(MISC)/$(@:b).pdb
+CFLAGSDBGUTIL=
+.IF "$(VC_STANDARD)"==""
+CFLAGSOPT=-Oxs -Oy-
+CFLAGSNOOPT=-Od
+.ELSE # "$(VC_STANDARD)"==""
+CFLAGSOPT=
+CFLAGSNOOPT=
+.ENDIF # "$(VC_STANDARD)"==""
+CFLAGSOUTOBJ=-Fo
+
+# For C and C++, certain warnings are disabled globally, as they result in
+# spurious warnings and are hard or impossible to workaround:
+# - "warning C4061: enumerate in switch of enum is not explicitly handled by a
+# case label",
+# - "warning C4127: conditional expression is constant",
+# - "warning C4191: unsafe conversion from function type to function type",
+# - "warning C4217: member template functions cannot be used for copy-assignment
+# or copy-construction",
+# - "warning C4250: 'class1' : inherits 'class2::member' via dominance",
+# - "warning C4355: 'this' used in base member initializer list",
+# - "warning C4511: copy constructor could not be generated",
+# - "warning C4512: assignment operator could not be generated",
+# - "warning C4514: unreferenced inline function has been removed",
+# - "warning C4611: interaction between '_setjmp' and C++ object destruction is
+# non-portable",
+# - "warning C4625: copy constructor could not be generated because a base class
+# copy constructor is inaccessible",
+# - "warning C4626: assignment operator could not be generated because a base
+# class assignment operator is inaccessible",
+# - "warning C4675: resolved overload was found by argument-dependent lookup",
+# - "warning C4710: function not inlined",
+# - "warning C4711: function selected for automatic inline expansion",
+# - "warning C4820: padding added after member".
+# - "warning C4503: 'identifier' : decorated name length exceeded, name was truncated"
+# (http://msdn2.microsoft.com/en-us/library/074af4b6.aspx)
+# - "warning C4180: qualifier applied to function type has no meaning; ignored"
+# (frequently seen with a recent boost)
+# For C, certain warnings from system headers (stdlib.h etc.) have to be
+# disabled globally (for C++, this is not necessary, as the system headers are
+# wrapped by STLport):
+# - "warning C4255: no function prototype given: converting
+# '()' to '(void)'".
+# - "warning C4365: conversion from ... to ... signed/unsigned mismatch"
+
+CFLAGSWARNCXX=-Wall -wd4061 -wd4127 -wd4191 -wd4217 -wd4250 -wd4251 -wd4275 \
+ -wd4290 -wd4294 -wd4355 -wd4511 -wd4512 -wd4514 -wd4611 -wd4625 -wd4626 \
+ -wd4640 -wd4675 -wd4710 -wd4711 -wd4786 -wd4800 -wd4820 -wd4503 -wd4619 \
+ -wd4365 -wd4668 -wd4738 -wd4826 -wd4350 -wd4505 -wd4692 -wd4189 -wd4005 \
+ -wd4180
+CFLAGSWARNCC=$(CFLAGSWARNCXX) -wd4255
+CFLAGSWALLCC=$(CFLAGSWARNCC)
+CFLAGSWALLCXX=$(CFLAGSWARNCXX)
+CFLAGSWERRCC=-WX
+
+# Once all modules on this platform compile without warnings, set
+# COMPILER_WARN_ERRORS=TRUE here instead of setting MODULES_WITH_WARNINGS (see
+# settings.mk):
+MODULES_WITH_WARNINGS := \
+ soldep
+
+CDEFS+=-DSTLPORT_VERSION=400 -D_MT -DWINVER=0x0500 -D_WIN32_WINNT=0x0500 -D_WIN32_IE=0x0500
+.IF "$(COMEX)" == "11"
+_VC_MANIFEST_BASENAME=__VC80
+.ELSE
+_VC_MANIFEST_BASENAME=__VC90
+.ENDIF
+
+LINK=link /MACHINE:IX86
+ # do *not* add $(NOLOGO) to LINK or LINKFLAGS. Strangely, the wntmsci12 linker links fine then, but exits with
+ # a return value 1, which makes dmake think it failed
+LINKOUTPUTFILTER= $(PIPEERROR) $(GREP) -v "LNK4197:"
+.IF "$(PRODUCT)"!="full"
+.ELSE
+LINKFLAGS=/MAP /OPT:NOREF
+.ENDIF
+
+# excetion handling protection
+LINKFLAGS+=-safeseh
+
+# enable DEP
+LINKFLAGS+=-nxcompat
+
+# enable ASLR
+LINKFLAGS+=-dynamicbase
+
+.IF "$(linkinc)" != ""
+LINKFLAGS+=-NODEFAULTLIB -INCREMENTAL:YES -DEBUG
+MAPFILE=
+_VC_MANIFEST_INC=1
+.ELSE # "$(linkinc)" != ""
+_VC_MANIFEST_INC=0
+.IF "$(PRODUCT)"!="full"
+LINKFLAGS+= -NODEFAULTLIB -DEBUG
+.ELSE # "$(PRODUCT)"!="full"
+LINKFLAGS+= -NODEFAULTLIB -RELEASE -DEBUG -INCREMENTAL:NO
+.ENDIF # "$(PRODUCT)"!="full"
+MAPFILE=-out:$$@
+.ENDIF # "$(linkinc)" != ""
+
+.IF "$(bndchk)" != ""
+LINK=nmlink $(COMMENTFLAG) $(NOLOGO) /MACHINE:IX86
+LINKFLAGS=-NODEFAULTLIB -DEBUG
+.ENDIF
+
+.IF "$(truetime)" != ""
+LINK=nmlink /NMttOn $(COMMENTFLAG) $(NOLOGO) /MACHINE:IX86
+LINKFLAGS=-NODEFAULTLIB -DEBUG
+.ENDIF
+
+.IF "$(COMEX)" == "11"
+LINKFLAGSAPPGUI=/SUBSYSTEM:WINDOWS,4.0
+LINKFLAGSSHLGUI=/SUBSYSTEM:WINDOWS,4.0 /DLL
+.ELSE
+LINKFLAGSAPPGUI=/SUBSYSTEM:WINDOWS
+LINKFLAGSSHLGUI=/SUBSYSTEM:WINDOWS /DLL
+.ENDIF # "$(COMEX)" == "11"
+LINKFLAGSAPPCUI=/SUBSYSTEM:CONSOLE /BASE:0x1b000000
+LINKFLAGSSHLCUI=/SUBSYSTEM:CONSOLE /DLL
+LINKFLAGSTACK=/STACK:
+LINKFLAGSPROF=/DEBUG:mapped,partial /DEBUGTYPE:coff cap.lib
+LINKFLAGSWST=/DEBUG:mapped,partial /DEBUGTYPE:coff wst.lib /NODEFAULTLIB
+LINKFLAGSDEBUG=-DEBUG
+LINKFLAGSOPT=
+
+UWINAPILIB*=uwinapi.lib
+.IF "$(DYNAMIC_CRT)"!=""
+.IF "$(USE_STLP_DEBUG)" != ""
+LIBCMT=msvcrtd.lib
+.ELSE # "$(USE_STLP_DEBUG)" != ""
+LIBCMT=msvcrt.lib
+.ENDIF # "$(USE_STLP_DEBUG)" != ""
+.ELSE # "$(DYNAMIC_CRT)"!=""
+.IF "$(USE_STLP_DEBUG)" != ""
+LIBCMT=libcmtd.lib
+CDEFS+=-D_DEBUG
+.ELSE # "$(USE_STLP_DEBUG)" != ""
+LIBCMT=libcmt.lib
+.ENDIF # "$(USE_STLP_DEBUG)" != ""
+.ENDIF # "$(DYNAMIC_CRT)"!=""
+
+STDOBJVCL=$(L)/salmain.obj
+STDOBJGUI=
+STDSLOGUI=
+STDOBJCUI=
+STDSLOCUI=
+
+STDLIBGUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib
+STDLIBCUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib
+STDSHLGUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib
+STDSHLCUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib
+
+.IF "$(USE_STLP_DEBUG)" != ""
+LIBSTLPORT=stlport_vc71_stldebug.lib
+LIBSTLPORTST=stlport_vc71_stldebug_static.lib
+.ELSE
+LIBSTLPORT=stlport_vc71.lib
+LIBSTLPORTST=stlport_vc71_static.lib
+.ENDIF
+
+.IF "$(PROF_EDITION)" == ""
+ATL_INCLUDE*=$(COMPATH)/PlatformSDK/include/atl
+ATL_LIB*=$(COMPATH)/atlmfc/lib
+MFC_INCLUDE*=$(COMPATH)/PlatformSDK/include/mfc
+MFC_LIB*=$(COMPATH)/atlmfc/lib
+.ELSE
+ATL_INCLUDE*=$(COMPATH)/atlmfc/include
+ATL_LIB*=$(COMPATH)/atlmfc/lib
+MFC_INCLUDE*=$(COMPATH)/atlmfc/include
+MFC_LIB*=$(COMPATH)/atlmfc/lib
+.ENDIF
+
+LIBMGR=lib $(NOLOGO)
+IMPLIB=lib
+LIBFLAGS=
+
+IMPLIBFLAGS=-machine:IX86
+
+MAPSYM=
+MAPSYMFLAGS=
+
+RC=rc
+RCFLAGS=-r -DWIN32 -fo$@ $(RCFILES)
+RCLINK=rc
+RCLINKFLAGS=
+RCSETVERSION=
+
+MT=mt.exe
+MTFLAGS=$(NOLOGO)
+
+
+DLLPOSTFIX=mi
+PCHPOST=.pch
+
+CSC*=$(FLIPCMD) csc
+VBC*=vbc
+
+ADVAPI32LIB=advapi32.lib
+SHELL32LIB=shell32.lib
+GDI32LIB=gdi32.lib
+OLE32LIB=ole32.lib
+OLEAUT32LIB=oleaut32.lib
+UUIDLIB=uuid.lib
+WINSPOOLLIB=winspool.lib
+IMM32LIB=imm32.lib
+VERSIONLIB=version.lib
+WINMMLIB=winmm.lib
+WSOCK32LIB=wsock32.lib
+MPRLIB=mpr.lib
+WS2_32LIB=ws2_32.lib
+KERNEL32LIB=kernel32.lib
+USER32LIB=user32.lib
+COMDLG32LIB=comdlg32.lib
+COMCTL32LIB=comctl32.lib
+CRYPT32LIB=crypt32.lib
+GDIPLUSLIB=gdiplus.lib
+DBGHELPLIB=dbghelp.lib
+MSILIB=msi.lib
+DDRAWLIB=ddraw.lib
+SHLWAPILIB=shlwapi.lib
+URLMONLIB=urlmon.lib
+UNICOWSLIB=unicows.lib
+WININETLIB=wininet.lib
+OLDNAMESLIB=oldnames.lib
+MSIMG32LIB=msimg32.lib
+PROPSYSLIB=propsys.lib
+