summaryrefslogtreecommitdiff
path: root/solenv/inc
diff options
context:
space:
mode:
Diffstat (limited to 'solenv/inc')
-rw-r--r--solenv/inc/_cppunit.mk290
-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.mk6040
-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.properties11
-rw-r--r--solenv/inc/antsettings.mk87
-rw-r--r--solenv/inc/cppunit.mk80
-rw-r--r--solenv/inc/dummy.flt0
-rw-r--r--solenv/inc/extension_post.mk172
-rw-r--r--solenv/inc/extension_pre.mk59
-rw-r--r--solenv/inc/found_no.mk5
-rw-r--r--solenv/inc/javaunittest.mk106
-rw-r--r--solenv/inc/lang.mk57
-rw-r--r--solenv/inc/layout.mk32
-rw-r--r--solenv/inc/libs.mk527
-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.mk149
-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
-rwxr-xr-xsolenv/inc/set_wntx64.mk202
-rw-r--r--solenv/inc/settings.mk1353
-rw-r--r--solenv/inc/shlinfo.rc113
-rw-r--r--solenv/inc/startup/AIX/macros.mk2
-rw-r--r--solenv/inc/startup/FREEBSD/macros.mk2
-rw-r--r--solenv/inc/startup/HPUX/macros.mk2
-rw-r--r--solenv/inc/startup/IRIX/macros.mk2
-rw-r--r--solenv/inc/startup/LINUX/macros.mk2
-rw-r--r--solenv/inc/startup/MACOSX/macros.mk2
-rw-r--r--solenv/inc/startup/NETBSD/macros.mk2
-rw-r--r--solenv/inc/startup/OS2/macros.mk73
-rw-r--r--solenv/inc/startup/Readme9
-rw-r--r--solenv/inc/startup/SOLARIS/macros.mk2
-rw-r--r--solenv/inc/startup/UNIX/macros.mk19
-rw-r--r--solenv/inc/startup/startup.mk102
-rw-r--r--solenv/inc/startup/summary3
-rw-r--r--solenv/inc/startup/wnt/macros.mk55
-rw-r--r--solenv/inc/starview.hid304
-rw-r--r--solenv/inc/target.mk2116
-rw-r--r--solenv/inc/templates/extension_tmpl.mk153
-rw-r--r--solenv/inc/tg_app.mk316
-rw-r--r--solenv/inc/tg_compv.mk144
-rw-r--r--solenv/inc/tg_config.mk200
-rw-r--r--solenv/inc/tg_def.mk313
-rw-r--r--solenv/inc/tg_dep.mk96
-rw-r--r--solenv/inc/tg_ext.mk366
-rw-r--r--solenv/inc/tg_help.mk82
-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
-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.mk643
-rw-r--r--solenv/inc/tg_slo.mk98
-rw-r--r--solenv/inc/tg_srs.mk85
-rw-r--r--solenv/inc/tg_wntx64.mk514
-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.mk200
-rw-r--r--solenv/inc/unx.mk214
-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.mk257
-rw-r--r--solenv/inc/unxlnga.mk33
-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.mk302
-rw-r--r--solenv/inc/unxmacxi.mk58
-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.mk240
-rw-r--r--solenv/inc/unxsols4.mk246
-rw-r--r--solenv/inc/unxsolu4.mk240
-rw-r--r--solenv/inc/verinfo.hrc229
-rw-r--r--solenv/inc/version.hrc80
-rw-r--r--solenv/inc/version_so.hrc79
-rw-r--r--solenv/inc/wnt.mk77
-rw-r--r--solenv/inc/wntgcci.mk217
-rw-r--r--solenv/inc/wntmsci10.mk343
-rw-r--r--solenv/inc/wntmsci11.mk378
123 files changed, 33359 insertions, 0 deletions
diff --git a/solenv/inc/_cppunit.mk b/solenv/inc/_cppunit.mk
new file mode 100644
index 000000000000..7aab2b0cdb13
--- /dev/null
+++ b/solenv/inc/_cppunit.mk
@@ -0,0 +1,290 @@
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+TEST1LIB=$(SHL1TARGETN)
+.IF "$(TESTOPT)"==""
+ TEST1OPT="-jobexclude"
+ TEST1OPT+=$(SHL1TARGET).xsce
+ TEST1OPT+="-sf"
+ TEST1OPT+=$(mktmp "foo")
+ TEST1OPT+="-onlyerrors"
+ TEST1OPT+=" "
+ TEST1OPT+=$(TESTOPTADD)
+.ELSE
+ TEST1OPT=$(TESTOPT)
+.ENDIF
+
+.IF "$(SHL1TARGET)"!=""
+test : test1
+test1: ALLTAR
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#1 on library $(TEST1LIB)
+ @echo ----------------------------------------------------------
+.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
+ `which testshl2` $(TEST1LIB) $(TEST1OPT)
+.ELSE
+ testshl2 $(TEST1LIB) $(TEST1OPT)
+.ENDIF
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+TEST2LIB=$(SHL2TARGETN)
+.IF "$(TESTOPT)"==""
+ TEST2OPT="-jobexclude"
+ TEST2OPT+=$(SHL2TARGET).xsce
+ TEST2OPT+="-sf"
+ TEST2OPT+=$(mktmp "foo")
+ TEST2OPT+="-onlyerrors"
+ TEST2OPT+=" "
+ TEST2OPT+=$(TESTOPTADD)
+.ELSE
+ TEST2OPT=$(TESTOPT)
+.ENDIF
+
+.IF "$(SHL2TARGET)"!=""
+test : test2
+test2: ALLTAR
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#2 on library $(TEST2LIB)
+ @echo ----------------------------------------------------------
+.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
+ `which testshl2` $(TEST2LIB) $(TEST2OPT)
+.ELSE
+ testshl2 $(TEST2LIB) $(TEST2OPT)
+.ENDIF
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+TEST3LIB=$(SHL3TARGETN)
+.IF "$(TESTOPT)"==""
+ TEST3OPT="-jobexclude"
+ TEST3OPT+=$(SHL3TARGET).xsce
+ TEST3OPT+="-sf"
+ TEST3OPT+=$(mktmp "foo")
+ TEST3OPT+="-onlyerrors"
+ TEST3OPT+=" "
+ TEST3OPT+=$(TESTOPTADD)
+.ELSE
+ TEST3OPT=$(TESTOPT)
+.ENDIF
+
+.IF "$(SHL3TARGET)"!=""
+test : test3
+test3: ALLTAR
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#3 on library $(TEST3LIB)
+ @echo ----------------------------------------------------------
+.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
+ `which testshl2` $(TEST3LIB) $(TEST3OPT)
+.ELSE
+ testshl2 $(TEST3LIB) $(TEST3OPT)
+.ENDIF
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+TEST4LIB=$(SHL4TARGETN)
+.IF "$(TESTOPT)"==""
+ TEST4OPT="-jobexclude"
+ TEST4OPT+=$(SHL4TARGET).xsce
+ TEST4OPT+="-sf"
+ TEST4OPT+=$(mktmp "foo")
+ TEST4OPT+="-onlyerrors"
+ TEST4OPT+=" "
+ TEST4OPT+=$(TESTOPTADD)
+.ELSE
+ TEST4OPT=$(TESTOPT)
+.ENDIF
+
+.IF "$(SHL4TARGET)"!=""
+test : test4
+test4: ALLTAR
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#4 on library $(TEST4LIB)
+ @echo ----------------------------------------------------------
+.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
+ `which testshl2` $(TEST4LIB) $(TEST4OPT)
+.ELSE
+ testshl2 $(TEST4LIB) $(TEST4OPT)
+.ENDIF
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+TEST5LIB=$(SHL5TARGETN)
+.IF "$(TESTOPT)"==""
+ TEST5OPT="-jobexclude"
+ TEST5OPT+=$(SHL5TARGET).xsce
+ TEST5OPT+="-sf"
+ TEST5OPT+=$(mktmp "foo")
+ TEST5OPT+="-onlyerrors"
+ TEST5OPT+=" "
+ TEST5OPT+=$(TESTOPTADD)
+.ELSE
+ TEST5OPT=$(TESTOPT)
+.ENDIF
+
+.IF "$(SHL5TARGET)"!=""
+test : test5
+test5: ALLTAR
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#5 on library $(TEST5LIB)
+ @echo ----------------------------------------------------------
+.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
+ `which testshl2` $(TEST5LIB) $(TEST5OPT)
+.ELSE
+ testshl2 $(TEST5LIB) $(TEST5OPT)
+.ENDIF
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+TEST6LIB=$(SHL6TARGETN)
+.IF "$(TESTOPT)"==""
+ TEST6OPT="-jobexclude"
+ TEST6OPT+=$(SHL6TARGET).xsce
+ TEST6OPT+="-sf"
+ TEST6OPT+=$(mktmp "foo")
+ TEST6OPT+="-onlyerrors"
+ TEST6OPT+=" "
+ TEST6OPT+=$(TESTOPTADD)
+.ELSE
+ TEST6OPT=$(TESTOPT)
+.ENDIF
+
+.IF "$(SHL6TARGET)"!=""
+test : test6
+test6: ALLTAR
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#6 on library $(TEST6LIB)
+ @echo ----------------------------------------------------------
+.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
+ `which testshl2` $(TEST6LIB) $(TEST6OPT)
+.ELSE
+ testshl2 $(TEST6LIB) $(TEST6OPT)
+.ENDIF
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+TEST7LIB=$(SHL7TARGETN)
+.IF "$(TESTOPT)"==""
+ TEST7OPT="-jobexclude"
+ TEST7OPT+=$(SHL7TARGET).xsce
+ TEST7OPT+="-sf"
+ TEST7OPT+=$(mktmp "foo")
+ TEST7OPT+="-onlyerrors"
+ TEST7OPT+=" "
+ TEST7OPT+=$(TESTOPTADD)
+.ELSE
+ TEST7OPT=$(TESTOPT)
+.ENDIF
+
+.IF "$(SHL7TARGET)"!=""
+test : test7
+test7: ALLTAR
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#7 on library $(TEST7LIB)
+ @echo ----------------------------------------------------------
+.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
+ `which testshl2` $(TEST7LIB) $(TEST7OPT)
+.ELSE
+ testshl2 $(TEST7LIB) $(TEST7OPT)
+.ENDIF
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+TEST8LIB=$(SHL8TARGETN)
+.IF "$(TESTOPT)"==""
+ TEST8OPT="-jobexclude"
+ TEST8OPT+=$(SHL8TARGET).xsce
+ TEST8OPT+="-sf"
+ TEST8OPT+=$(mktmp "foo")
+ TEST8OPT+="-onlyerrors"
+ TEST8OPT+=" "
+ TEST8OPT+=$(TESTOPTADD)
+.ELSE
+ TEST8OPT=$(TESTOPT)
+.ENDIF
+
+.IF "$(SHL8TARGET)"!=""
+test : test8
+test8: ALLTAR
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#8 on library $(TEST8LIB)
+ @echo ----------------------------------------------------------
+.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
+ `which testshl2` $(TEST8LIB) $(TEST8OPT)
+.ELSE
+ testshl2 $(TEST8LIB) $(TEST8OPT)
+.ENDIF
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+TEST9LIB=$(SHL9TARGETN)
+.IF "$(TESTOPT)"==""
+ TEST9OPT="-jobexclude"
+ TEST9OPT+=$(SHL9TARGET).xsce
+ TEST9OPT+="-sf"
+ TEST9OPT+=$(mktmp "foo")
+ TEST9OPT+="-onlyerrors"
+ TEST9OPT+=" "
+ TEST9OPT+=$(TESTOPTADD)
+.ELSE
+ TEST9OPT=$(TESTOPT)
+.ENDIF
+
+.IF "$(SHL9TARGET)"!=""
+test : test9
+test9: ALLTAR
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#9 on library $(TEST9LIB)
+ @echo ----------------------------------------------------------
+.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
+ `which testshl2` $(TEST9LIB) $(TEST9OPT)
+.ELSE
+ testshl2 $(TEST9LIB) $(TEST9OPT)
+.ENDIF
+.ENDIF
+
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+TEST10LIB=$(SHL10TARGETN)
+.IF "$(TESTOPT)"==""
+ TEST10OPT="-jobexclude"
+ TEST10OPT+=$(SHL10TARGET).xsce
+ TEST10OPT+="-sf"
+ TEST10OPT+=$(mktmp "foo")
+ TEST10OPT+="-onlyerrors"
+ TEST10OPT+=" "
+ TEST10OPT+=$(TESTOPTADD)
+.ELSE
+ TEST10OPT=$(TESTOPT)
+.ENDIF
+
+.IF "$(SHL10TARGET)"!=""
+test : test10
+test10: ALLTAR
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#10 on library $(TEST10LIB)
+ @echo ----------------------------------------------------------
+.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
+ `which testshl2` $(TEST10LIB) $(TEST10OPT)
+.ELSE
+ testshl2 $(TEST10LIB) $(TEST10OPT)
+.ENDIF
+.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..93588874660f
--- /dev/null
+++ b/solenv/inc/_tg_shl.mk
@@ -0,0 +1,6040 @@
+# 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
+
+$(USE_SHL1VERSIONMAP): $(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
+
+$(USE_SHL2VERSIONMAP): $(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
+
+$(USE_SHL3VERSIONMAP): $(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
+
+$(USE_SHL4VERSIONMAP): $(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
+
+$(USE_SHL5VERSIONMAP): $(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
+
+$(USE_SHL6VERSIONMAP): $(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
+
+$(USE_SHL7VERSIONMAP): $(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
+
+$(USE_SHL8VERSIONMAP): $(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
+
+$(USE_SHL9VERSIONMAP): $(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
+
+$(USE_SHL10VERSIONMAP): $(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..063f98f2f322
--- /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) $(TRANSEX_VERBOSITY) -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) $(TRANSEX_VERBOSITY) -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) $(TRANSEX_VERBOSITY) -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) $(TRANSEX_VERBOSITY) -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) $(TRANSEX_VERBOSITY) -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) $(TRANSEX_VERBOSITY) -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) $(TRANSEX_VERBOSITY) -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) $(TRANSEX_VERBOSITY) -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) $(TRANSEX_VERBOSITY) -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) $(TRANSEX_VERBOSITY) -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..40373957997a
--- /dev/null
+++ b/solenv/inc/ant.properties
@@ -0,0 +1,11 @@
+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..0659e68adad7
--- /dev/null
+++ b/solenv/inc/cppunit.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.
+#
+#*************************************************************************
+
+# Helper makefile additional, to support
+# dmake test
+# for testshl2 (cppunit testing)
+# for simple start all generated libraries:
+# dmake test
+#
+# for library 1 & 2:
+# or dmake test1 test2
+#
+# for library 2 with additional options to the testshl2
+# dmake test2 TESTOPT="-dntsf"
+
+# 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"
+
+#.IF "$(TESTOPT)"==""
+# TESTOPT="-onlyerrors"
+#.ENDIF
+
+################################################################################
+# unroll begin
+# ---- create the test libraries ------------------------------------
+
+TEST$(TNR)LIB=$(SHL$(TNR)TARGETN)
+.IF "$(TESTOPT)"==""
+ TEST$(TNR)OPT="-jobexclude"
+ TEST$(TNR)OPT+=$(SHL$(TNR)TARGET).xsce
+ TEST$(TNR)OPT+="-sf"
+ TEST$(TNR)OPT+=$(mktmp "foo")
+ TEST$(TNR)OPT+="-onlyerrors"
+ TEST$(TNR)OPT+=" "
+ TEST$(TNR)OPT+=$(TESTOPTADD)
+.ELSE
+ TEST$(TNR)OPT=$(TESTOPT)
+.ENDIF
+
+.IF "$(SHL$(TNR)TARGET)"!=""
+test : test$(TNR)
+test$(TNR): ALLTAR
+ @echo ----------------------------------------------------------
+ @echo - start unit test \#$(TNR) on library $(TEST$(TNR)LIB)
+ @echo ----------------------------------------------------------
+.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
+ `which testshl2` $(TEST$(TNR)LIB) $(TEST$(TNR)OPT)
+.ELSE
+ testshl2 $(TEST$(TNR)LIB) $(TEST$(TNR)OPT)
+.ENDIF
+.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_post.mk b/solenv/inc/extension_post.mk
new file mode 100644
index 000000000000..47b62d20dd12
--- /dev/null
+++ b/solenv/inc/extension_post.mk
@@ -0,0 +1,172 @@
+#*************************************************************************
+#
+# 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))
+ $(GNUCOPY) $< $(subst,$(fixme2),$(MISC) $@)
+
+$(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/javaunittest.mk b/solenv/inc/javaunittest.mk
new file mode 100644
index 000000000000..8f9207fd3917
--- /dev/null
+++ b/solenv/inc/javaunittest.mk
@@ -0,0 +1,106 @@
+#*************************************************************************
+#
+# 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) $(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..cbde1659ae5d
--- /dev/null
+++ b/solenv/inc/libs.mk
@@ -0,0 +1,527 @@
+#*************************************************************************
+#
+# 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=$(LIBXML2LIB) $(XMLSECLIB) $(XMLSECLIB-NSS) $(NSS3LIB) $(NSPR4LIB) $(PLC4LIB)
+.IF "$(GUI)$(COM)"=="WNTGCC"
+XMLSECLIB-MS=-lxmlsec1-mscrypto
+MSCRYPTOLIBS=$(LIBXML2LIB) $(XMLSECLIB) $(XMLSECLIB-MS) $(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)
+VBAHELPERLIB=-lvbahelper$(DLLPOSTFIX)
+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"
+CPPUNITLIB = -lcppunit$(DLLPOSTFIX)
+TESTSHL2LIB = -ltestshl2$(DLLPOSTFIX)
+.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
+MYTHESLIB=-lmythes
+PYUNOLIB=-lpyuno
+LPSOLVELIB=-llpsolve55
+SOFFICELIB=-lsofficeapp
+UNOPKGAPPLIB=-lunopkgapp
+CONFIGMGRLIB=-lconfigmgr
+
+.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=$(LIBXML2LIB) $(XMLSECLIB) $(XMLSECLIB-NSS) $(NSS3LIB) $(NSPR4LIB) $(PLC4LIB)
+MSCRYPTOLIBS=$(LIBXML2LIB) $(XMLSECLIB) $(XMLSECLIB-MS) 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 = cppunit.lib
+TESTSHL2LIB = testshl2.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
+CONFIGMGRLIB=iconfigmgr.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..fdb9f8e48def
--- /dev/null
+++ b/solenv/inc/minor.mk
@@ -0,0 +1,5 @@
+RSCVERSION=300
+RSCREVISION=300m76(Build:9491)
+BUILD=9491
+LAST_MINOR=m76
+SOURCEVERSION=DEV300
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..77413849c5f9
--- /dev/null
+++ b/solenv/inc/postset.mk
@@ -0,0 +1,149 @@
+#*************************************************************************
+#
+# 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 \
+sk \
+sl \
+sh \
+sr \
+ss \
+st \
+sv \
+sw \
+sw-TZ \
+te-IN \
+ti-ER \
+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..457041378f85
--- /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)"!="" && ( "$(BUILD_SPECIAL)"!="TRUE" )
+# 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) $(ULFEX_VERBOSITY) -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 100755
index 000000000000..bf2ca9314f33
--- /dev/null
+++ b/solenv/inc/set_wntx64.mk
@@ -0,0 +1,202 @@
+#*************************************************************************
+#
+# 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
+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
+
+.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..5601f105704f
--- /dev/null
+++ b/solenv/inc/settings.mk
@@ -0,0 +1,1353 @@
+#*************************************************************************
+#
+# 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 --------------------------------------
+
+# moved temporary wrapper here as it is used in unitools.mk
+.IF "$(USE_SHELL)"!=""
+use_shell*=$(USE_SHELL)
+.ENDIF
+
+.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
+
+#have SCRIPTEXT already defined in product.mk but available for all
+.IF "$(USE_SHELL)"=="4NT"
+SCRIPTEXT=.bat
+.ELSE # "$(GUI)"=="WNT"
+SCRIPTEXT=
+.ENDIF # "$(GUI)"=="WNT"
+
+.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
+
+#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)/localization_present.mk
+.INCLUDE .IGNORE: $(ALT_L10N_MODULE)/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)))
+.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)
+.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
+ TRANSEX_VERBOSITY=-QQ
+ CFGEX_VERBOSITY=-QQ
+ ULFEX_VERBOSITY=-QQ
+ .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
+
+# 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
+
+TESTSHL2=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/testshl2
+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_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
+
+# 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/AIX/macros.mk b/solenv/inc/startup/AIX/macros.mk
new file mode 100644
index 000000000000..5387b1940198
--- /dev/null
+++ b/solenv/inc/startup/AIX/macros.mk
@@ -0,0 +1,2 @@
+
+.INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d:d:d)UNIX$/macros.mk
diff --git a/solenv/inc/startup/FREEBSD/macros.mk b/solenv/inc/startup/FREEBSD/macros.mk
new file mode 100644
index 000000000000..5387b1940198
--- /dev/null
+++ b/solenv/inc/startup/FREEBSD/macros.mk
@@ -0,0 +1,2 @@
+
+.INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d:d:d)UNIX$/macros.mk
diff --git a/solenv/inc/startup/HPUX/macros.mk b/solenv/inc/startup/HPUX/macros.mk
new file mode 100644
index 000000000000..5387b1940198
--- /dev/null
+++ b/solenv/inc/startup/HPUX/macros.mk
@@ -0,0 +1,2 @@
+
+.INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d:d:d)UNIX$/macros.mk
diff --git a/solenv/inc/startup/IRIX/macros.mk b/solenv/inc/startup/IRIX/macros.mk
new file mode 100644
index 000000000000..5387b1940198
--- /dev/null
+++ b/solenv/inc/startup/IRIX/macros.mk
@@ -0,0 +1,2 @@
+
+.INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d:d:d)UNIX$/macros.mk
diff --git a/solenv/inc/startup/LINUX/macros.mk b/solenv/inc/startup/LINUX/macros.mk
new file mode 100644
index 000000000000..5387b1940198
--- /dev/null
+++ b/solenv/inc/startup/LINUX/macros.mk
@@ -0,0 +1,2 @@
+
+.INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d:d:d)UNIX$/macros.mk
diff --git a/solenv/inc/startup/MACOSX/macros.mk b/solenv/inc/startup/MACOSX/macros.mk
new file mode 100644
index 000000000000..5387b1940198
--- /dev/null
+++ b/solenv/inc/startup/MACOSX/macros.mk
@@ -0,0 +1,2 @@
+
+.INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d:d:d)UNIX$/macros.mk
diff --git a/solenv/inc/startup/NETBSD/macros.mk b/solenv/inc/startup/NETBSD/macros.mk
new file mode 100644
index 000000000000..5387b1940198
--- /dev/null
+++ b/solenv/inc/startup/NETBSD/macros.mk
@@ -0,0 +1,2 @@
+
+.INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d:d:d)UNIX$/macros.mk
diff --git a/solenv/inc/startup/OS2/macros.mk b/solenv/inc/startup/OS2/macros.mk
new file mode 100644
index 000000000000..08d2be3f9a48
--- /dev/null
+++ b/solenv/inc/startup/OS2/macros.mk
@@ -0,0 +1,73 @@
+# Define additional OS/2 specific macros.
+#
+
+# Process release-specific refinements, if any.
+# YD .INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d)$(OSRELEASE)$/macros.mk
+
+# Execution environment configuration.
+# Grab the current setting of COMSPEC.
+#
+.IMPORT .IGNORE : COMSPEC
+
+# First check if SHELL is defined to be something other than COMSPEC.
+# If it is assume that SHELL is a Korn compatible shell like MKS's
+.IF $(SHELL) == $(NULL)
+ .IF $(COMSPEC) == $(NULL)
+ SHELL *:= $(ROOTDIR)$/bin$/sh$E
+ .ELSE
+ SHELL *:= $(COMSPEC)
+ .END
+.END
+GROUPSHELL *:= $(SHELL)
+
+# 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
+
+# Now set the remaining arguments depending on which SHELL we
+# are going to use. COMSPEC (assumed to be command.com) or
+# MKS Korn shell.
+.IF $(SHELL) == $(COMSPEC)
+ SHELLFLAGS *:= $(SWITCHAR)c
+ GROUPFLAGS *:= $(SHELLFLAGS)
+ SHELLMETAS *:= <>|*?&
+ GROUPSUFFIX *:= .bat
+ DIVFILE *= $(TMPFILE:s,/,\\,)
+ RM *= rm
+ RMFLAGS *= -f
+ MV *= rename
+ __.DIVSEP-sh-yes *:= \\
+ __.DIVSEP-sh-no *:= \\
+ DIRSEPSTR := \\
+# See iz61212 for the reason why PWD is overwritten
+# PWD:=$(shell +echo %_cwd:s,/,\\,)
+# PWD:=$(shell +cd)
+#.EXPORT : PWD
+
+.ELSE
+ SHELLFLAGS *:= -c
+ GROUPFLAGS *:=
+ SHELLMETAS *:= *"?<>|()&][$$\#`'
+ GROUPSUFFIX *:= .ksh
+ .MKSARGS *:= yes
+ RM *= $(ROOTDIR)$/bin$/rm
+ RMFLAGS *= -f
+ MV *= $(ROOTDIR)$/bin$/mv
+ DIVFILE *= $(TMPFILE:s,/,${__.DIVSEP-sh-${USESHELL}})
+ __.DIVSEP-sh-yes !:= \\\
+ __.DIVSEP-sh-no !:= \\
+.ENDIF
+
+NAMEMAX = 256
+
diff --git a/solenv/inc/startup/Readme b/solenv/inc/startup/Readme
new file mode 100644
index 000000000000..d0c38c7c75d5
--- /dev/null
+++ b/solenv/inc/startup/Readme
@@ -0,0 +1,9 @@
+
+here are some hints about our use of the startup directory.
+
+because our variable "OS" was already in use, we don't use the default
+subtrees of startup. for example "wntmsci3" uses the subtree "WNT".
+
+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/SOLARIS/macros.mk b/solenv/inc/startup/SOLARIS/macros.mk
new file mode 100644
index 000000000000..5387b1940198
--- /dev/null
+++ b/solenv/inc/startup/SOLARIS/macros.mk
@@ -0,0 +1,2 @@
+
+.INCLUDE .NOINFER .IGNORE : $(INCFILENAME:d:d:d)UNIX$/macros.mk
diff --git a/solenv/inc/startup/UNIX/macros.mk b/solenv/inc/startup/UNIX/macros.mk
new file mode 100644
index 000000000000..7fa2f1b77d35
--- /dev/null
+++ b/solenv/inc/startup/UNIX/macros.mk
@@ -0,0 +1,19 @@
+# This file is used for all $(OS)==UNX during startup
+#
+
+SHELL *:= /usr/bin/csh
+GROUPSHELL *:= $(SHELL)
+
+.IF $(USE_SHELL) == bash
+ SHELLFLAGS *:= -c
+.ELSE
+ SHELLFLAGS *:= -fc
+.ENDIF # $(USE_SHELL) == bash
+
+ GROUPFLAGS *:= $(SHELLFLAGS)
+
+# incomplete - better use METAS from startup.mk
+# SHELLMETAS *:= "<>|/
+ RM *= rm
+ RMFLAGS *= -f
+ MV *= mv
diff --git a/solenv/inc/startup/startup.mk b/solenv/inc/startup/startup.mk
new file mode 100644
index 000000000000..96b6378db11f
--- /dev/null
+++ b/solenv/inc/startup/startup.mk
@@ -0,0 +1,102 @@
+# 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 SHELL 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.
+.INCLUDE .NOINFER : $(INCFILENAME:d)$(OS)$/macros.mk
+
+# ----------------- Default Control Macro definitions -----------------------
+# Select appropriate defaults for basic macros
+ MAKE *= $(MAKECMD) $(MFLAGS)
+ TMPDIR *:= $/tmp
+ DIVFILE *= $(TMPFILE)
+
+MAXLINELENGTH = 65530
+
+# Recipe execution configuration
+ SHELL *:= $/bin$/sh
+ SHELLFLAGS *:= -fc
+ GROUPSHELL *:= $(SHELL)
+ GROUPFLAGS *:=
+ SHELLMETAS *:= |();&<>?*][$$:\\#`'"
+ GROUPSUFFIX *:=
+
+# Intermediate target removal configuration
+ RM *:= $/bin$/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 *:= $/bin$/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..35f903f60922
--- /dev/null
+++ b/solenv/inc/startup/wnt/macros.mk
@@ -0,0 +1,55 @@
+# 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
+
+# Now set the remaining arguments depending on which SHELL we
+# are going to use.
+
+.IF $(USE_SHELL) == bash
+ SHELLFLAGS *:= -c
+.ELSE
+ # See iz50689 why -f is needed.
+ SHELLFLAGS *:= -fc
+.ENDIF # $(USE_SHELL) == bash
+
+ GROUPFLAGS *:=
+ SHELLMETAS *:= *";?<>|()&][$$\#`'
+# Fix syntax highlighting: "
+ GROUPSUFFIX *:= .csh
+# This is hopefully not used. Only in: dmake/msdos/spawn.c
+# .MKSARGS *:= yes
+ DIVFILE *= $(TMPFILE:s,/,${__.DIVSEP-sh-${USESHELL}})
+ RM *= $/bin$/rm
+ RMFLAGS *= -f
+ MV *= $/bin$/mv
+ __.DIVSEP-sh-yes *:= \\\
+ __.DIVSEP-sh-no *:= \\
+ DIRSEPSTR :=/
+
+.EXPORT : GUWCMD
+
+.IF $(SHELL) == $(NULL)
+# SHELL has to be set in (non-4NT) OOobuild environment
+.ERROR : ; @echo Forced error: Environment variable SHELL has to be set for OOo build!
+SHELL_variable_needed
+.END
+
+GROUPSHELL *:= $(SHELL)
+
+# 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..e446635be9a2
--- /dev/null
+++ b/solenv/inc/target.mk
@@ -0,0 +1,2116 @@
+#*************************************************************************
+#
+# 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)"!=""
+.IF "$(EXTRAJARFILES)"!=""
+NEWCLASS+=$(foreach,i,$(EXTRAJARFILES) $(COMMON_BUILD_TOOLS)/$i)
+.ENDIF # "$(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)
+.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) $(TRANSEX_VERBOSITY) -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
+
+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..8218887528fe
--- /dev/null
+++ b/solenv/inc/tg_compv.mk
@@ -0,0 +1,144 @@
+#*************************************************************************
+#
+# 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:=
+
+.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"
+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..2f1b9fedde80
--- /dev/null
+++ b/solenv/inc/tg_config.mk
@@ -0,0 +1,200 @@
+#************************************************************************
+#
+# 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 \
+ $(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 \
+ $(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) $(CFGEX_VERBOSITY) -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/, $@))} \
+ $(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..5cc0cd4821d5
--- /dev/null
+++ b/solenv/inc/tg_ext.mk
@@ -0,0 +1,366 @@
+#*************************************************************************
+#
+# 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" && "$(USE_SHELL)"!="4nt"
+PATH!:=.:$(SOLARBINDIR:^"/cygdrive/":s/://):$(PATH)
+.ELSE # "$(GUI)"=="WNT" && "$(USE_SHELL)"!="4nt"
+PATH!:=.$(PATH_SEPERATOR)$(SOLARBINDIR)$(PATH_SEPERATOR)$(PATH)
+.ENDIF # "$(GUI)"=="WNT" && "$(USE_SHELL)"!="4nt"
+.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)"==""
+
+.IF "$(TAR_EXCLUDES)"!=""
+TAR_EXCLUDE_SWITCH=--exclude=$(TAR_EXCLUDES)
+.ENDIF # "$(TAR_EXCLUDES)"!=""
+
+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_NAME).tar.bz2 $(TARFILE_FILTER) | $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - ")
+.ELSE # "$(GUI)"=="UNX"
+ @noop $(assign UNPACKCMD := bzip2 -cd $(TARFILE_LOCATION)/$(TARFILE_NAME).tar.bz2 $(TARFILE_FILTER) | $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -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_NAME).tar.Z | $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - ")
+.ELSE # "$(GUI)"=="UNX"
+ @noop $(assign UNPACKCMD := uncompress -c $(TARFILE_LOCATION)/$(TARFILE_NAME).tar.Z | $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -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_NAME).tar.gz) $(TARFILE_FILTER) | $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -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_NAME).tgz) $(TARFILE_FILTER) | $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - )
+ @$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
+ @$(RENAME) $@.$(INPATH) $@
+
+$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.tar
+ @-$(RM) $@
+ @noop $(assign UNPACKCMD := $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f $(TARFILE_LOCATION)/$(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_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_NAME).jar)
+.ELSE # "$(OS)"=="SOLARIS"
+ @noop $(assign UNPACKCMD := unzip $(unzip_quiet_switch) -o $(TARFILE_LOCATION)/$(TARFILE_NAME).jar)
+.ENDIF # "$(OS)"=="SOLARIS"
+ @$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
+ @$(RENAME) $@.$(INPATH) $@
+
+#do unpack
+$(PACKAGE_DIR)/$(UNTAR_FLAG_FILE) : $(PRJ)/$(ROUT)/misc/$(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_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_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_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..aa62b1cf477f
--- /dev/null
+++ b/solenv/inc/tg_help.mk
@@ -0,0 +1,82 @@
+#*************************************************************************
+#
+# 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))
+HLANGXHPFILES:=$(foreach,i,$(XHPFILES) $(foreach,j,$(aux_alllangiso) $(COMMONMISC)$/$j$/$(SHELL_PACKAGE)$/$(i:f)))
+
+ALLTAR : $(COMMONMISC)$/$(TARGET).done $(COMMONMISC)$/xhp_changed.flag optix
+
+$(HLANGXHPFILES) : $$(@:d)thisdir.created
+
+$(COMMONMISC)$/{$(aux_alllangiso)}$/$(SHELL_PACKAGE)$/%.xhp :| %.xhp
+ @$(TOUCH) $@
+# internal dependencies not sufficient to trigger merge?
+# @$(NULL)
+
+
+$(COMMONMISC)$/$(TARGET).done : $(HLANGXHPFILES)
+.IF "$(WITH_LANG)"!=""
+ $(AUGMENT_LIBRARY_PATH) $(HELPEX) -QQ -p $(PRJNAME) -r $(PRJ) -i @$(mktmp $(uniq $(foreach,i,$? $(!eq,$(i:f),$(i:f:s/.xhp//) $(i:f) $(XHPFILES))))) -x $(COMMONMISC) -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)))) $(COMMONMISC)$/en-US$/$(SHELL_PACKAGE) && $(TOUCH) $@
+.ENDIF # "$(WITH_LANG)"!=""
+.IF "$(OS)"=="SOLARIS"
+ @$(ECHONL) " "
+.ELSE # "$(OS)"=="SOLARIS"
+ @$(ECHONL)
+.ENDIF # "$(OS)"=="SOLARIS"
+
+$(COMMONMISC)$/xhp_changed.flag : $(HLANGXHPFILES)
+ @$(TOUCH) $@
+
+# urks - dmake mixes up operators and strings :-(
+.IF "$(HLANGXHPFILES:s/defined/xxx/)"!=""
+
+.IF "$(HELPTRANSPHONY)"!=""
+$(COMMONMISC)$/$(TARGET).done .PHONY :
+.ELSE # "$(HELPTRANSPHONY)"!=""
+
+$(COMMONMISC)$/$(TARGET).done : makefile.mk
+.IF "$(WITH_LANG)"!=""
+$(COMMONMISC)$/$(TARGET).done : $(LOCALIZESDF)
+.ENDIF # "$(WITH_LANG)"!=""
+.ENDIF # "$(HELPTRANSPHONY)"!=""
+.ENDIF # "$(HLANGXHPFILES)"!=""
+
+optix: $(COMMONMISC)$/$(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_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..2349a00609ad
--- /dev/null
+++ b/solenv/inc/tg_shl.mk
@@ -0,0 +1,643 @@
+#*************************************************************************
+#
+# 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
+
+$(USE_SHL$(TNR)VERSIONMAP): $(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..347dd25569de
--- /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) $(TRANSEX_VERBOSITY) -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_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..b537bae59d29
--- /dev/null
+++ b/solenv/inc/unitools.mk
@@ -0,0 +1,200 @@
+#*************************************************************************
+#
+# 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
+.IF "$(USE_SHELL)"=="bash"
+IFEXIST:=if [ -f
+IFNOTEXIST:= if ! test -f
+THEN:= ] ; then
+FI:= ; fi
+PIPEERROR=2>&1 |
+.ELSE
+IFEXIST:=if ( -e
+IFNOTEXIST:=if ( ! -e
+THEN:= )
+FI:=
+PIPEERROR=|&
+.ENDIF
+
+# iz31658
+.IF "$(USE_SHELL)"=="bash"
+CHECKZIPRESULT:=|| ret=$$?; if [[ "$$ret" != "12" && "$$ret" != "1" ]] ; then exit $$ret ; fi && echo "Nothing to update for zip"
+.ELSE
+CHECKZIPRESULT:=|| if ("$$status" != "12" && "$$status" != "1") exit $$status && echo "Nothing to update for zip"
+.ENDIF
+
+# 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) variable and the tcsh pwd command both apparantly produce
+# 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:
+.IF "$(USE_SHELL)" == "bash"
+PWDFLAGS = -P
+.ENDIF
diff --git a/solenv/inc/unx.mk b/solenv/inc/unx.mk
new file mode 100644
index 000000000000..c6d756343d79
--- /dev/null
+++ b/solenv/inc/unx.mk
@@ -0,0 +1,214 @@
+#*************************************************************************
+#
+# 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
+
+# --- 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)" != ""
+
+# Add SOLARLIBDIR to the end of a (potentially previously undefined)
+# LD_LIBRARY_PATH (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; the tcsh case is somewhat imprecise in that it
+# potentially affects multiple commands following on the recipe line:
+.IF "$(USE_SHELL)" == "bash"
+AUGMENT_LIBRARY_PATH *= : && \
+ LD_LIBRARY_PATH=$${{LD_LIBRARY_PATH+$${{LD_LIBRARY_PATH}}:}}$(SOLARLIBDIR)
+.ELSE
+AUGMENT_LIBRARY_PATH *= if ($$?LD_LIBRARY_PATH == 1) \
+ eval 'setenv LD_LIBRARY_PATH "$${{LD_LIBRARY_PATH}}:$(SOLARLIBDIR)"' && \
+ if ($$?LD_LIBRARY_PATH == 0) setenv LD_LIBRARY_PATH "$(SOLARLIBDIR)" &&
+.ENDIF
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..b27afb8c1fa4
--- /dev/null
+++ b/solenv/inc/unxlng.mk
@@ -0,0 +1,257 @@
+#*************************************************************************
+#
+# 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_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 "$(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/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..b40814b9a9d7
--- /dev/null
+++ b/solenv/inc/unxmacx.mk
@@ -0,0 +1,302 @@
+#*************************************************************************
+#
+# 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*=gcc
+objcpp*=g++
+
+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_NONE=
+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=
+
+# Add SOLARLIBDIR to the end of a (potentially previously undefined)
+# DYLD_LIBRARY_PATH (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; the tcsh case is somewhat imprecise in that it
+# potentially affects multiple commands following on the recipe line:
+.IF "$(USE_SHELL)" == "bash"
+AUGMENT_LIBRARY_PATH = : && \
+ DYLD_LIBRARY_PATH=$${{DYLD_LIBRARY_PATH+$${{DYLD_LIBRARY_PATH}}:}}$(SOLARLIBDIR)
+.ELSE
+AUGMENT_LIBRARY_PATH = if ($$?DYLD_LIBRARY_PATH == 1) \
+ eval 'setenv DYLD_LIBRARY_PATH "$${{DYLD_LIBRARY_PATH}}:$(SOLARLIBDIR)"' \
+ && if ($$?DYLD_LIBRARY_PATH == 0) \
+ setenv DYLD_LIBRARY_PATH "$(SOLARLIBDIR)" &&
+.ENDIF
diff --git a/solenv/inc/unxmacxi.mk b/solenv/inc/unxmacxi.mk
new file mode 100644
index 000000000000..6a21022d4830
--- /dev/null
+++ b/solenv/inc/unxmacxi.mk
@@ -0,0 +1,58 @@
+#*************************************************************************
+#
+# 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
+
+.IF "$(SNOW_LEOPARD_10_4)"!=""
+JAVACOMPILER+=-target 1.5
+.EXPORT: DYLD_INSERT_LIBRARIES
+.ENDIF # "$(SNOW_LEOPARD_10_4)"!=""
+
+# 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..0f227f9520fc
--- /dev/null
+++ b/solenv/inc/unxsoli4.mk
@@ -0,0 +1,240 @@
+#*************************************************************************
+#
+# 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_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..0bd85aa0bd4f
--- /dev/null
+++ b/solenv/inc/unxsols4.mk
@@ -0,0 +1,246 @@
+#*************************************************************************
+#
+# 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_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..494ecb0478b3
--- /dev/null
+++ b/solenv/inc/unxsolu4.mk
@@ -0,0 +1,240 @@
+#*************************************************************************
+#
+# 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=
+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 100644
index 000000000000..d4c205f942b9
--- /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 2
+//#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 1
+#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_so.hrc b/solenv/inc/version_so.hrc
new file mode 100644
index 000000000000..70ea1c193ee6
--- /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 9
+#define SUBVERSION 2
+//#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 1
+#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/wnt.mk b/solenv/inc/wnt.mk
new file mode 100644
index 000000000000..78f496927899
--- /dev/null
+++ b/solenv/inc/wnt.mk
@@ -0,0 +1,77 @@
+#*************************************************************************
+#
+# 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
+
+.IF "$(USE_SHELL)" == "bash"
+AUGMENT_LIBRARY_PATH *= : && \
+ PATH=$${{PATH}}:$(SOLARBINDIR:s/://:^"/cygdrive/")
+.ELSE
+AUGMENT_LIBRARY_PATH *= echos && PATH=%PATH%;$(SOLARBINDIR) &&
+.ENDIF
diff --git a/solenv/inc/wntgcci.mk b/solenv/inc/wntgcci.mk
new file mode 100644
index 000000000000..abb2bb25e34d
--- /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 -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..6ed8327c8506
--- /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
+
+# 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..b270a6a25cfe
--- /dev/null
+++ b/solenv/inc/wntmsci11.mk
@@ -0,0 +1,378 @@
+#*************************************************************************
+#
+# 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
+
+# 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
+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
+
+.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
+