summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.in164
-rw-r--r--instsetoo_native/util/makefile.mk118
-rw-r--r--set_soenv.in36
-rw-r--r--soldep/util/perl.mk5
-rw-r--r--solenv/bin/addsym.awk30
-rwxr-xr-xsolenv/bin/checkapi71
-rw-r--r--solenv/bin/checkapi.btm44
-rwxr-xr-xsolenv/bin/cwscheckapi361
-rwxr-xr-xsolenv/bin/cwscheckapi.btm206
-rw-r--r--solenv/bin/dbgsv.ini29
-rwxr-xr-xsolenv/bin/installoffice107
-rwxr-xr-xsolenv/bin/installoffice.btm120
-rwxr-xr-xsolenv/bin/installoffice.pl933
-rw-r--r--solenv/bin/macosx-change-install-names.pl8
-rw-r--r--solenv/bin/modules/installer/globals.pm5
-rw-r--r--solenv/bin/modules/installer/parameter.pm1
-rw-r--r--solenv/bin/modules/installer/simplepackage.pm46
-rwxr-xr-xsolenv/bin/receditor2
-rwxr-xr-xsolenv/bin/reportErrorCheckAPI.btm17
-rwxr-xr-xsolenv/bin/subsequenttests131
-rw-r--r--solenv/config/sdev300.ini39
-rw-r--r--solenv/config/ssolar.cmn6
-rw-r--r--solenv/inc/_cppunit.mk250
-rw-r--r--solenv/inc/_tg_shl.mk40
-rw-r--r--solenv/inc/cppunit.mk34
-rw-r--r--solenv/inc/installationtest.mk121
-rw-r--r--solenv/inc/javaunittest.mk5
-rw-r--r--solenv/inc/libs.mk16
-rw-r--r--solenv/inc/settings.mk30
-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.mk55
-rw-r--r--solenv/inc/startup/Readme3
-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.mk37
-rw-r--r--solenv/inc/startup/wnt/macros.mk23
-rw-r--r--solenv/inc/target.mk4
-rw-r--r--solenv/inc/tg_ext.mk24
-rw-r--r--solenv/inc/tg_shl.mk4
-rw-r--r--solenv/inc/unitools.mk22
-rw-r--r--solenv/inc/unx.mk15
-rw-r--r--solenv/inc/unxmacx.mk18
-rw-r--r--solenv/inc/wnt.mk7
-rw-r--r--soltools/testhxx/create.pl22
-rw-r--r--soltools/testhxx/makefile.mk14
-rw-r--r--stlport/makefile.mk12
52 files changed, 631 insertions, 2639 deletions
diff --git a/configure.in b/configure.in
index 33bd0d829d11..91ff5806fbe5 100644
--- a/configure.in
+++ b/configure.in
@@ -547,6 +547,9 @@ AC_ARG_WITH(system-altlinuxhyph,
AC_ARG_WITH(system-lpsolve,
[ --with-system-lpsolve Use lpsolve already on system
],,)
+AC_ARG_WITH(system-cppunit,
+[ --with-system-cppunit Use cppunit already on system
+],,)
AC_ARG_WITH(system-mozilla,
[ --with-system-mozilla Use mozilla already on system. Note that some
components cannot be built against a contemporary
@@ -602,6 +605,13 @@ AC_ARG_WITH(ant-home,
Usage: --with-ant-home=<absolute path to Ant home>
],,)
+AC_ARG_WITH(junit,
+[ --with-junit Specifies the JUnit 4 jar file to use for JUnit-based
+ tests. --without-junit disables those tests. Not
+ relevant in the --without-java case.
+
+ Usage: --with-junit=<absolute path to JUnit 4 jar>
+],,with_junit=yes)
AC_ARG_WITH(perl-home,
[ --with-perl-home If you have installed the Perl 5 Distribution, on your
system, please supply the path here.
@@ -779,7 +789,7 @@ AC_ARG_WITH(zip-home,
],,)
AC_ARG_WITH(mingwin,
[ --with-mingwin For Windows users, use the mingwin32 compiler within
- cygwin environment, this implies --with-use-shell=tcsh
+ cygwin environment
Usage: --with-mingwin=yes
@@ -789,15 +799,6 @@ AC_ARG_WITH(mingwin,
Usage: --with-mingwin=i586-mingw32msvc-g++
],WITH_MINGWIN=$withval,WITH_MINGWIN=0)
-AC_ARG_WITH(use-shell,
-[ --with-use-shell Use this option to override the default shell to be
- used for the build environment.
- Supported options:
- tcsh (default)
- bash
-
- Usage: --with-use-shell=tcsh|bash
-],with_use_shell=$withval,with_use_shell="tcsh")
AC_ARG_WITH(build-version,
[ --with-build-version Allows the builder to add a custom version tag
that will appear in the Help/About box for QA
@@ -1325,16 +1326,8 @@ AC_SUBST(DICT_SYSTEM_DIR)
AC_SUBST(HYPH_SYSTEM_DIR)
AC_SUBST(THES_SYSTEM_DIR)
-dnl ===================================================================
-dnl all O/S use tcsh or bash.
-dnl The following sets the with_use_shell variable.
-dnl ===================================================================
-AC_MSG_CHECKING([which shell to use])
if test $_os = "WINNT"; then
- dnl ===================================================================
- if test "$with_use_shell" != "tcsh" -a "$with_use_shell" != "bash"; then
- AC_MSG_ERROR([only "tcsh" or "bash" are supported options])
- fi
+ AC_MSG_CHECKING([Windows build environment sanity])
dnl ===================================================================
dnl Sanity check! Native windows programs cannot use cygwin symlinks!
dnl ===================================================================
@@ -1362,32 +1355,14 @@ link, and copy the program to the name of the link.])
fi
fi
dnl ===================================================================
- dnl If using Mingwin32 then don't use 4NT
- dnl ===================================================================
if test "$WITH_MINGWIN" = "yes" ; then
- if test "x$with_use_shell" = "x"; then
- with_use_shell="tcsh"
- fi
if test -z "$CC"; then
CC="gcc -mno-cygwin"
CXX="g++ -mno-cygwin"
fi
fi
-elif test $_os = "OS2"; then
- if test "$with_use_shell" != "tcsh"; then
- AC_MSG_ERROR([only "tcsh" is supported options])
- fi
-else
- dnl ===================================================================
- dnl All other operating systems use tcsh or bash.
- dnl ===================================================================
- if test "$with_use_shell" != "tcsh" -a "$with_use_shell" != "bash"; then
- AC_MSG_ERROR([only "tcsh" or "bash" are supported options])
- fi
+ AC_MSG_RESULT([ok])
fi
-USE_SHELL="$with_use_shell"
-AC_MSG_RESULT([$USE_SHELL])
-AC_SUBST(USE_SHELL)
AC_SUBST(WITH_MINGWIN)
dnl ===================================================================
@@ -1406,25 +1381,13 @@ fi
dnl ===================================================================
-dnl Check whether the chosen shell can be used.
+dnl Check whether the bash shell can be used.
dnl ===================================================================
-if test "$with_use_shell" = "tcsh"; then
- AC_PATH_PROG(SHELLPATH, tcsh)
- if test -z "$SHELLPATH"; then
- AC_MSG_ERROR([tcsh not found in \$PATH])
- else
- SHELLPATH=`echo $SHELLPATH | $SED -n "s/\/tcsh$//p"`
- fi
-elif test "$with_use_shell" = "bash"; then
- AC_PATH_PROG(SHELLPATH, bash)
- if test -z "$SHELLPATH"; then
- AC_MSG_ERROR([bash not found in \$PATH])
- else
- SHELLPATH=`echo $SHELLPATH | $SED -n "s/\/bash$//p"`
- fi
+AC_PATH_PROG(SHELLPATH, bash)
+if test -z "$SHELLPATH"; then
+ AC_MSG_ERROR([bash not found in \$PATH])
else
- AC_MSG_WARN([Windows/OS/2 4NT builds don't test for the shell])
- SHELLPATH="NO_SHELLPATH_NEEDED"
+ SHELLPATH=`echo $SHELLPATH | $SED -n "s/\/bash$//p"`
fi
AC_SUBST(SHELLPATH)
@@ -2769,6 +2732,17 @@ if test "$SOLAR_JAVA" != ""; then
fi
JAVAINTERPRETER=`cygpath -d "$JAVAINTERPRETER"`
JAVAINTERPRETER=`cygpath -u "$JAVAINTERPRETER"`
+ elif test "$_os" = "Darwin"; then
+ dnl HACK: There currently is only a 32 bit version of OOo for Mac OS X,
+ dnl and Tiger java complains about -d32 while Snow Leopard java needs it
+ dnl to run in 32 bit mode and be able to load OOo jnilibs:
+ AC_MSG_CHECKING([whether to pass -d32 to Java interpreter])
+ if "$JAVAINTERPRETER" -d32 >&5 2>&5; then
+ AC_MSG_RESULT([yes])
+ JAVAIFLAGS=-d32
+ else
+ AC_MSG_RESULT([no])
+ fi
fi
fi
@@ -3151,6 +3125,7 @@ AC_SUBST(JAVA_HOME)
AC_SUBST(JDK)
AC_SUBST(JAVAFLAGS)
AC_SUBST(JAVAINTERPRETER)
+AC_SUBST(JAVAIFLAGS)
AC_SUBST(JAVACOMPILER)
AC_SUBST(JAVAAOTCOMPILER)
AC_SUBST(JAVADOC)
@@ -3202,7 +3177,7 @@ fi
AC_SUBST(BUILD_DMAKE)
AC_MSG_CHECKING([whether to enable EPM for packing])
-if test "$_os" != "WINNT" -a \( "z$enable_epm" = "z" -o "$enable_epm" != "no" \) ; then
+if test "$enable_epm" = "yes"; then
AC_MSG_RESULT([yes])
dnl ===================================================================
dnl Check for epm - not needed for windows
@@ -3253,18 +3228,6 @@ if test "$_os" != "WINNT" -a \( "z$enable_epm" = "z" -o "$enable_epm" != "no" \)
# test which package format to use
AC_MSG_CHECKING([which package format to use])
- # epm supports the following formats:
- # aix - AIX software distribution
- # bsd - FreeBSD, NetBSD, or OpenBSD software distribution
- # depot or swinstall - HP-UX software distribution
- # deb - Debian software distribution
- # inst or tardist - IRIX software distribution
- # osx - MacOS X software distribution
- # pkg - Solaris software distribution
- # rpm - RedHat software distribution
- # setld - Tru64 (setld) software distribution
- # native - "Native" software distribution for the platform
- # portable - Portable software distribution
# defaults
case "$_os" in
@@ -3294,6 +3257,9 @@ if test "$_os" != "WINNT" -a \( "z$enable_epm" = "z" -o "$enable_epm" != "no" \)
OSF1)
PKGFORMAT=setld
;;
+ WINNT)
+ PKGFORMAT=msi
+ ;;
# we never should get here since we check the arciecture/os at the beginning,
# but go sure...
*)
@@ -3302,7 +3268,7 @@ if test "$_os" != "WINNT" -a \( "z$enable_epm" = "z" -o "$enable_epm" != "no" \)
if test -n "$with_package_format"; then
for i in $with_package_format; do
case "$i" in
- aix | bsd | deb | inst | tardist | osx | pkg | rpm | setld | native | portable)
+ aix | bsd | deb | inst | tardist | osx | pkg | rpm | setld | native | portable | archive | dmg | installed | msi)
;;
*)
AC_MSG_ERROR([unsupported format $i. Supported by EPM are:
@@ -3317,6 +3283,11 @@ rpm - RedHat software distribution
setld - Tru64 (setld) software distribution
native - "Native" software distribution for the platform
portable - Portable software distribution
+OOo additionally supports:
+archive - .tar.gz or .zip
+dmg - Mac OS X .dmg
+installed - installation tree
+msi - Windows .msi
])
;;
esac
@@ -3631,6 +3602,33 @@ AC_SUBST(LIBWPD_CFLAGS)
AC_SUBST(LIBWPD_LIBS)
dnl ===================================================================
+dnl Check for system cppunit
+dnl ===================================================================
+AC_MSG_CHECKING([which cppunit to use])
+if test -n "$with_system_cppunit" -o -n "$with_system_libs" && \
+ test "$with_system_cppunit" != "no"; then
+ AC_MSG_RESULT([external])
+ SYSTEM_CPPUNIT=YES
+ # might work for earlier, too but go sure. We didn't have
+ # a system-cppunit before the first version using a proper cppunit
+ # (and that being 1.12.1) anyway
+ PKG_CHECK_MODULES( CPPUNIT, cppunit >= 1.12.1 )
+ AC_MSG_CHECKING([STL compatibility])
+ if test "$WITH_STLPORT" != "no"; then
+ AC_MSG_ERROR([to use system cppunit you need to use --without-stlport])
+ else
+ AC_MSG_RESULT([OK])
+ fi
+else
+ AC_MSG_RESULT([internal])
+ SYSTEM_CPPUNIT=NO
+ BUILD_TYPE="$BUILD_TYPE CPPUNIT"
+fi
+AC_SUBST(SYSTEM_CPPUNIT)
+AC_SUBST(CPPUNIT_CFLAGS)
+AC_SUBST(CPPUNIT_LIBS)
+
+dnl ===================================================================
dnl Check whether freetype is available
dnl ===================================================================
if test "$test_freetype" = "yes"; then
@@ -6717,6 +6715,34 @@ EOF
fi
rm -f conftest* core core.* *.core
+OOO_JUNIT_JAR=
+if test "$SOLAR_JAVA" != "" && test "$with_junit" != "no"; then
+ AC_MSG_CHECKING([for JUnit 4])
+ if test "$with_junit" == "yes"; then
+ if test -e /usr/share/java/junit4.jar; then
+ OOO_JUNIT_JAR=/usr/share/java/junit4.jar
+ else
+ OOO_JUNIT_JAR=/usr/share/java/junit.jar
+ fi
+ else
+ OOO_JUNIT_JAR=$with_junit
+ fi
+ if test "$_os" = "WINNT"; then
+ OOO_JUNIT_JAR=`cygpath -m "$OOO_JUNIT_JAR"`
+ fi
+ "$JAVA_HOME/bin/jar" tf "$OOO_JUNIT_JAR" 2>&5 | \
+ grep org/junit/Before.class > /dev/null 2>&5
+ if test $? -eq 0; then
+ AC_MSG_RESULT([$OOO_JUNIT_JAR])
+ else
+ AC_MSG_RESULT([no])
+ AC_MSG_ERROR([cannot find JUnit 4 jar at $OOO_JUNIT_JAR;
+please install one and/or specify its pathname via --with-junit=...,
+or disable it via --without-junit])
+ fi
+fi
+AC_SUBST(OOO_JUNIT_JAR)
+
AC_MSG_CHECKING([which languages to be built])
WITH_LANG="$with_lang"
if test -z "$WITH_LANG"; then
diff --git a/instsetoo_native/util/makefile.mk b/instsetoo_native/util/makefile.mk
index 2ef67e564fd5..09334fdc98c0 100644
--- a/instsetoo_native/util/makefile.mk
+++ b/instsetoo_native/util/makefile.mk
@@ -76,21 +76,6 @@ LOCALPYFILES= \
$(BIN)$/officehelper.py \
$(BIN)$/mailmerge.py
-# PKGFORMAT taken from environment. See possible
-# values below.
-#
-# epm supports the following formats:
-# aix - AIX software distribution
-# bsd - FreeBSD, NetBSD, or OpenBSD software distribution
-# depot or swinstall - HP-UX software distribution
-# deb - Debian software distribution
-# inst or tardist - IRIX software distribution
-# osx - MacOS X software distribution
-# pkg - Solaris software distribution
-# rpm - RedHat software distribution
-# setld - Tru64 (setld) software distribution
-# native - "Native" software distribution for the platform
-# portable - Portable software distribution
xxxx:
echo $(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl --buildid $(BUILD) --arch "$(RTL_ARCH)" --os "$(RTL_OS)" --lstfile $(PRJ)$/util$/openoffice.lst --product OpenOffice --languages $(subst,$(@:s/_/ /:1)_, $(@:b)) $(PRJ)$/util$/update.xml
@@ -109,17 +94,18 @@ ALLTAR : updatepack
.ENDIF # "$(UPDATER)"=="" || "$(USE_PACKAGER)"==""
.ENDIF # "$(GUI)"!="WNT" && "$(EPM)"=="NO" && "$(USE_PACKAGER)"==""
+.IF "$(FORCE2ARCHIVE)" == "TRUE"
+PKGFORMAT = archive
+.END
+
.IF "$(MAKETARGETS:e)"!=""
PKGFORMAT+=$(MAKETARGETS:e:s/.//)
.ENDIF # "$(MAKETARGETS:e)"!=""
-.IF "$(PKGFORMAT)"!=""
-.IF "$(FORCE2ARCHIVE)"!=""
-PKGFORMATSWITCH=-format archive
-.ELSE # "$(FORCE2ARCHIVE)"!=""
-PKGFORMATSWITCH=-format xxx
-.ENDIF # "$(FORCE2ARCHIVE)"!=""
-.ENDIF # "$(PKGFORMAT)"!=""
+# Independent of PKGFORMAT, always build a default-language openoffice product
+# also in archive format, so that tests that require an OOo installation (like
+# smoketestoo_native) have one available:
+openoffice_$(defaultlangiso) : $$@.archive
.IF "$(VERBOSE)"=="TRUE"
VERBOSESWITCH=-verbose
@@ -217,124 +203,76 @@ DMGDEPS=$(BIN)$/{osxdndinstall.png DS_Store DS_Store_Langpack}
$(foreach,i,$(alllangiso) {openoffice openofficedev openofficewithjre ooolanguagepack broffice brofficedev brofficewithjre}_$i) : $(DMGDEPS)
.ENDIF # "$(OS)" == "MACOSX"
-.IF "$(PKGFORMAT)"!=""
$(foreach,i,$(alllangiso) openoffice_$i) : $$@{$(PKGFORMAT:^".")}
-.IF "$(MAKETARGETS)"!="" && "$(PKGFORMAT)"!=""
+.IF "$(MAKETARGETS)"!=""
.IF "$(MAKETARGETS:e)"=="" && "$(MAKETARGETS:s/_//)"!="$(MAKETARGETS)"
$(MAKETARGETS) : $$@{$(PKGFORMAT:^".")}
$(MAKETARGETS){$(PKGFORMAT:^".")} : $(ADDDEPS)
.ENDIF # "$(MAKETARGETS:e)"=="" && "$(MAKETARGETS:s/_//)"!="$(MAKETARGETS)"
-.ENDIF # "$(MAKETARGETS)"!="" && "$(PKGFORMAT)"!=""
-openoffice_%{$(PKGFORMAT:^".")} :
-.ELSE # "$(PKGFORMAT)"!=""
-openoffice_% :
-.ENDIF # "$(PKGFORMAT)"!=""
- $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles $(subst,xxx,$(@:e:s/.//) $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+.ENDIF # "$(MAKETARGETS)"!=""
+openoffice_%{$(PKGFORMAT:^".") .archive} :
+ $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -format $(@:e:s/.//) $(VERBOSESWITCH)
$(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl --buildid $(BUILD) --arch "$(RTL_ARCH)" --os "$(RTL_OS)" --lstfile $(PRJ)$/util$/openoffice.lst --product OpenOffice --languages $(subst,$(@:s/_/ /:1)_, $(@:b)) $(PRJ)$/util$/update.xml > $(MISC)/$(@:b)_$(RTL_OS)_$(RTL_ARCH)$(@:e).update.xml
-.IF "$(PKGFORMAT)"!=""
$(foreach,i,$(alllangiso) openofficewithjre_$i) : $$@{$(PKGFORMAT:^".")}
openofficewithjre_%{$(PKGFORMAT:^".")} :
-.ELSE # "$(PKGFORMAT)"!=""
-openofficewithjre_% :
-.ENDIF # "$(PKGFORMAT)"!=""
- $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice_wJRE -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles $(subst,xxx,$(@:e:s/.//) $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+ $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice_wJRE -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -format $(@:e:s/.//) $(VERBOSESWITCH)
-.IF "$(PKGFORMAT)"!=""
$(foreach,i,$(alllangiso) openofficedev_$i) : $$@{$(PKGFORMAT:^".")}
openofficedev_%{$(PKGFORMAT:^".")} :
-.ELSE # "$(PKGFORMAT)"!=""
-openofficedev_% :
-.ENDIF # "$(PKGFORMAT)"!=""
- $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice_Dev -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles $(subst,xxx,$(@:e:s/.//) $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+ $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice_Dev -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -format $(@:e:s/.//) $(VERBOSESWITCH)
$(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl --buildid $(BUILD) --arch "$(RTL_ARCH)" --os "$(RTL_OS)" --lstfile $(PRJ)$/util$/openoffice.lst --product OpenOffice_Dev --languages $(subst,$(@:s/_/ /:1)_, $(@:b)) $(PRJ)$/util$/update.xml > $(MISC)/$(@:b)_$(RTL_OS)_$(RTL_ARCH)$(@:e).update.xml
-.IF "$(PKGFORMAT)"!=""
$(foreach,i,$(alllangiso) ooolanguagepack_$i) : $$@{$(PKGFORMAT:^".")}
ooolanguagepack_%{$(PKGFORMAT:^".")} :
-.ELSE # "$(PKGFORMAT)"!=""
-ooolanguagepack_% :
-.ENDIF # "$(PKGFORMAT)"!=""
- $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice -u $(OUT) -buildid $(BUILD) -msitemplate $(MSILANGPACKTEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -languagepack $(subst,xxx,$(@:e:s/.//) $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+ $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice -u $(OUT) -buildid $(BUILD) -msitemplate $(MSILANGPACKTEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -languagepack -format $(@:e:s/.//) $(VERBOSESWITCH)
-.IF "$(PKGFORMAT)"!=""
$(foreach,i,$(alllangiso) ooodevlanguagepack_$i) : $$@{$(PKGFORMAT:^".")}
ooodevlanguagepack_%{$(PKGFORMAT:^".")} :
-.ELSE # "$(PKGFORMAT)"!=""
-ooodevlanguagepack_% :
-.ENDIF # "$(PKGFORMAT)"!=""
- $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice_Dev -u $(OUT) -buildid $(BUILD) -msitemplate $(MSILANGPACKTEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -languagepack $(subst,xxx,$(@:e:s/.//) $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+ $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice_Dev -u $(OUT) -buildid $(BUILD) -msitemplate $(MSILANGPACKTEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -languagepack -format $(@:e:s/.//) $(VERBOSESWITCH)
-.IF "$(PKGFORMAT)"!=""
$(foreach,i,$(alllangiso) sdkoo_$i) : $$@{$(PKGFORMAT:^".")}
sdkoo_%{$(PKGFORMAT:^".")} :
-.ELSE # "$(PKGFORMAT)"!=""
-sdkoo_% :
-.ENDIF # "$(PKGFORMAT)"!=""
- $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice_SDK -u $(OUT) -buildid $(BUILD) -msitemplate $(MSISDKOOTEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles $(subst,xxx,$(@:e:s/.//) -dontstrip $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+ $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice_SDK -u $(OUT) -buildid $(BUILD) -msitemplate $(MSISDKOOTEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -dontstrip -format $(@:e:s/.//) $(VERBOSESWITCH)
-.IF "$(PKGFORMAT)"!=""
$(foreach,i,$(alllangiso) sdkoodev_$i) : $$@{$(PKGFORMAT:^".")}
sdkoodev_%{$(PKGFORMAT:^".")} :
-.ELSE # "$(PKGFORMAT)"!=""
-sdkoodev_% :
-.ENDIF # "$(PKGFORMAT)"!=""
- $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice_Dev_SDK -u $(OUT) -buildid $(BUILD) -msitemplate $(MSISDKOOTEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles $(subst,xxx,$(@:e:s/.//) -dontstrip $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+ $(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice_Dev_SDK -u $(OUT) -buildid $(BUILD) -msitemplate $(MSISDKOOTEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -dontstrip -format $(@:e:s/.//) $(VERBOSESWITCH)
-.IF "$(PKGFORMAT)"!=""
$(foreach,i,$(alllangiso) ure_$i) : $$@{$(PKGFORMAT:^".")}
ure_%{$(PKGFORMAT:^".")} :
-.ELSE # "$(PKGFORMAT)"!=""
-ure_% :
-.ENDIF # "$(PKGFORMAT)"!=""
.IF "$(OS)" == "MACOSX"
@echo 'for now, there is no standalone URE for Mac OS X'
.ELSE
$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst \
- -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p URE -u $(OUT) -buildid $(BUILD) $(subst,xxx,$(@:e:s/.//) $(PKGFORMATSWITCH) $(VERBOSESWITCH)) \
+ -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p URE -u $(OUT) -buildid $(BUILD) -format $(@:e:s/.//) $(VERBOSESWITCH) \
-msitemplate $(MSIURETEMPLATEDIR) \
-msilanguage $(COMMONMISC)$/win_ulffiles
.ENDIF
-.IF "$(PKGFORMAT)"!=""
$(foreach,i,$(alllangiso) broffice_$i) : $$@{$(PKGFORMAT:^".")}
-.IF "$(MAKETARGETS)"!="" && "$(PKGFORMAT)"!=""
+.IF "$(MAKETARGETS)"!=""
.IF "$(MAKETARGETS:e)"=="" && "$(MAKETARGETS:s/_//)"!="$(MAKETARGETS)"
$(MAKETARGETS) : $$@{$(PKGFORMAT:^".")}
$(MAKETARGETS){$(PKGFORMAT:^".")} : $(ADDDEPS)
.ENDIF # "$(MAKETARGETS:e)"=="" && "$(MAKETARGETS:s/_//)"!="$(MAKETARGETS)"
-.ENDIF # "$(MAKETARGETS)"!="" && "$(PKGFORMAT)"!=""
+.ENDIF # "$(MAKETARGETS)"!=""
broffice_%{$(PKGFORMAT:^".")} :
-.ELSE # "$(PKGFORMAT)"!=""
-broffice_% :
-.ENDIF # "$(PKGFORMAT)"!=""
- +$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p BrOffice -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles $(subst,xxx,$(@:e:s/.//) $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+ +$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p BrOffice -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -format $(@:e:s/.//) $(VERBOSESWITCH)
$(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl --buildid $(BUILD) --arch "$(RTL_ARCH)" --os "$(RTL_OS)" --lstfile $(PRJ)$/util$/openoffice.lst --product BrOffice --languages $(subst,$(@:s/_/ /:1)_, $(@:b)) $(PRJ)$/util$/update.xml > $(MISC)/$(@:b)_$(RTL_OS)_$(RTL_ARCH)$(@:e).update.xml
-.IF "$(PKGFORMAT)"!=""
$(foreach,i,$(alllangiso) brofficewithjre_$i) : $$@{$(PKGFORMAT:^".")}
brofficewithjre_%{$(PKGFORMAT:^".")} :
-.ELSE # "$(PKGFORMAT)"!=""
-brofficewithjre_% :
-.ENDIF # "$(PKGFORMAT)"!=""
- +$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p BrOffice_wJRE -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles $(subst,xxx,$(@:e:s/.//) $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+ +$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p BrOffice_wJRE -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -format $(@:e:s/.//) $(VERBOSESWITCH)
-.IF "$(PKGFORMAT)"!=""
$(foreach,i,$(alllangiso) brofficedev_$i) : $$@{$(PKGFORMAT:^".")}
brofficedev_%{$(PKGFORMAT:^".")} :
-.ELSE # "$(PKGFORMAT)"!=""
-brofficedev_% :
-.ENDIF # "$(PKGFORMAT)"!=""
- +$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p BrOffice_Dev -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles $(subst,xxx,$(@:e:s/.//) $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+ +$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p BrOffice_Dev -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -format $(@:e:s/.//) $(VERBOSESWITCH)
$(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl --buildid $(BUILD) --arch "$(RTL_ARCH)" --os "$(RTL_OS)" --lstfile $(PRJ)$/util$/openoffice.lst --product BrOffice_Dev --languages $(subst,$(@:s/_/ /:1)_, $(@:b)) $(PRJ)$/util$/update.xml > $(MISC)/$(@:b)_$(RTL_OS)_$(RTL_ARCH)$(@:e).update.xml
-.IF "$(PKGFORMAT)"!=""
$(foreach,i,$(alllangiso) broolanguagepack_$i) : $$@{$(PKGFORMAT:^".")}
broolanguagepack_%{$(PKGFORMAT:^".")} :
-.ELSE # "$(PKGFORMAT)"!=""
-broolanguagepack_% :
-.ENDIF # "$(PKGFORMAT)"!=""
- +$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p BrOffice -u $(OUT) -buildid $(BUILD) -msitemplate $(MSILANGPACKTEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -languagepack $(subst,xxx,$(@:e:s/.//) $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+ +$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p BrOffice -u $(OUT) -buildid $(BUILD) -msitemplate $(MSILANGPACKTEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -languagepack -format $(@:e:s/.//) $(VERBOSESWITCH)
.ELSE # "$(alllangiso)"!=""
openoffice:
@@ -343,11 +281,7 @@ openoffice:
.ENDIF # "$(alllangiso)"!=""
.IF "$(LOCALPYFILES)"!=""
-.IF "$(PKGFORMAT)"==""
-$(foreach,i,$(alllangiso) openoffice_$i openofficewithjre_$i openofficedev_$i broffice_$i brofficewithjre_$i brofficedev_$i sdkoo_$i) updatepack : $(LOCALPYFILES) $(BIN)$/cp1251.py $(BIN)$/iso8859_1.py
-.ELSE # "$(PKGFORMAT)"==""
-$(foreach,i,$(alllangiso) openoffice_$i{$(PKGFORMAT:^".")} openofficewithjre_$i{$(PKGFORMAT:^".")} openofficedev_$i{$(PKGFORMAT:^".")} broffice_$i{$(PKGFORMAT:^".")} brofficewithjre_$i{$(PKGFORMAT:^".")} brofficedev_$i{$(PKGFORMAT:^".")} sdkoo_$i{$(PKGFORMAT:^".")}) updatepack : $(LOCALPYFILES) $(BIN)$/cp1251.py $(BIN)$/iso8859_1.py
-.ENDIF # "$(PKGFORMAT)"==""
+$(foreach,i,$(alllangiso) openoffice_$i{$(PKGFORMAT:^".") .archive} openofficewithjre_$i{$(PKGFORMAT:^".")} openofficedev_$i{$(PKGFORMAT:^".")} broffice_$i{$(PKGFORMAT:^".")} brofficewithjre_$i{$(PKGFORMAT:^".")} brofficedev_$i{$(PKGFORMAT:^".")} sdkoo_$i{$(PKGFORMAT:^".")}) updatepack : $(LOCALPYFILES) $(BIN)$/cp1251.py $(BIN)$/iso8859_1.py
.ENDIF # "$(LOCALPYFILES)"!=""
$(BIN)$/%.py : $(SOLARSHAREDBIN)$/pyuno$/%.py
diff --git a/set_soenv.in b/set_soenv.in
index b8f3afc96d87..64815d418f99 100644
--- a/set_soenv.in
+++ b/set_soenv.in
@@ -72,12 +72,12 @@ my ( $BIG_SVX, $COM, $ARCH, $CPU, $CPUNAME, $CVER, $GLIBC, $GUI, $GUIBASE,
# Help variables.
my ( $USR, $ETC, $BIN, $LIB, $LIB64, $INC, $INCLUDE, $DEV, $OPT, $LOCAL, $SOLENV, $SOLVER, $CONFIG,
$USR_BIN, $USR_LIB, $USR_LOCAL, $USR_CCS, $JAVA_BIN, $JAVA_LIB, $JAVA_INCLUDE,
- $SOLARENVINC, $USR_DT, $USR_OPENWIN, $SHELL_PATH, $XLIB, $XINC,
+ $SOLARENVINC, $USR_DT, $USR_OPENWIN, $XLIB, $XINC,
$CYGWIN_PATH, $language, $dict, $ASM_PATH, $NSIS_PATH, $ps_STLPORT_LIB, $L_STLPORT_LIB,
$STLPORT_stlport, $STLPORT_inc_stlport, $PERL_PATH );
# Environment variables.
-my ( $oldPATH, $SRC_ROOT, $SO_HOME, $JAVA_HOME, $JDK, $JAVAFLAGS, $SHELL,
+my ( $oldPATH, $SRC_ROOT, $SO_HOME, $JAVA_HOME, $JDK, $JAVAFLAGS, $OOO_SHELL,
$UPD, $WORK_STAMP, $SOURCE_ROOT_DIR ,
$SOLARSRC, $DEVROOT, $SOLARVER, $SOLARVERSION, $SOLARENV,
$STAR_INIROOT, $STAR_INIROOTOLD, $STAR_STANDLST, $STAR_SSCOMMON, $STAR_SSOLARINI,
@@ -797,21 +797,7 @@ if ( $platform =~ m/cygwin|os2/ ) {
$JAVA_HOME =~ s/[\s\/]+$//; # remove trailing \n or \/ if there is any.
}
# 3. shell path.
-# Check whether autoconf found a valid shell path.
-if ("@USE_SHELL@" eq "tcsh")
-{ # SHELL as argument from autoconf.
- $SHELL_PATH = '@SHELLPATH@';
- $SHELL = '@SHELLPATH@'."\/tcsh";
-}
-elsif ("@USE_SHELL@" eq "bash")
-{
- $SHELL_PATH = '@SHELLPATH@';
- $SHELL = '@SHELLPATH@'."\/bash";
-}
-else {
- die "Not a recognized shell: @USE_SHELL@ !";
-}
-
+$OOO_SHELL = '@SHELLPATH@'."\/bash";
if ( '@STLPORT4@' eq $no_stl )
{
@@ -1101,7 +1087,6 @@ if ($platform =~ m/linux|netbsd|odf1|freebsd|aix|solaris/)
$PATH = GetCorrectPath ($PATH,
$COMPATH, $CC,
$PERL_PATH, 'perl',
- $SHELL_PATH, '@USE_SHELL@',
@javaBits);
}
@@ -1187,11 +1172,6 @@ elsif ($platform =~ m/cygwin/)
{
$PATH .= $ps.$tmppath;
}
- # Check if $SHELL_PATH is already set in PATH
- $tmppath = CygFormat($SHELL_PATH);
- if ( ( $PATH !~ /(?:[:]|\A)(?:$tmppath)(?:[:]|\Z)/ ) )
- { $PATH .= $ps.$tmppath;
- }
# Check if $CYGWIN_PATH is already set in PATH
$tmppath = CygFormat($CYGWIN_PATH);
if ( $PATH !~ /(?:[:]|\A)(?:$tmppath)(?:[:]|\Z)/ ) {
@@ -1507,7 +1487,7 @@ CreateFileHeader( *OUT, $UPD, $platform, "(t)csh", "#" );
CreateFileHeader( *OUT_SH, $UPD, $platform, "sh/bash/ksh", "#" );
ToFile( "SRC_ROOT", $SRC_ROOT, "e" );
-ToFile( "SHELL", $SHELL, "e" );
+ToFile( "OOO_SHELL", $OOO_SHELL, "e" );
ToFile( "JAVA_HOME", $JAVA_HOME, "e" );
ToFile( "ANT_HOME", PathFormat("@ANT_HOME@"), "e" );
ToFile( "ANT_LIB", PathFormat("@ANT_LIB@"), "e" );
@@ -1606,6 +1586,7 @@ ToFile( "ENABLE_MINIMIZER", "@ENABLE_MINIMIZER@","e" );
ToFile( "ENABLE_PRESENTER_SCREEN","@ENABLE_PRESENTER_SCREEN@","e" );
ToFile( "ENABLE_REPORTBUILDER","@ENABLE_REPORTBUILDER@","e" );
ToFile( "SYSTEM_JFREEREPORT","@SYSTEM_JFREEREPORT@","e" );
+ToFile( "OOO_JUNIT_JAR", "@OOO_JUNIT_JAR@", "e" );
ToFile( "SAC_JAR", "@SAC_JAR@", "e" );
ToFile( "LIBXML_JAR", "@LIBXML_JAR@", "e" );
ToFile( "FLUTE_JAR", "@FLUTE_JAR@", "e" );
@@ -1730,6 +1711,7 @@ if ( '@JDK@' ne '' )
ToFile( "JDK", "@JDK@", "e" );
ToFile( "JAVAFLAGS", "@JAVAFLAGS@", "e" );
ToFile( "JAVAINTERPRETER", PathFormat("@JAVAINTERPRETER@"), "e" );
+ ToFile( "JAVAIFLAGS", "@JAVAIFLAGS@", "e" );
ToFile( "JAVACOMPILER", PathFormat("@JAVACOMPILER@"), "e" );
ToFile( "JAVAAOTCOMPILER", PathFormat("@JAVAAOTCOMPILER@"), "e" );
ToFile( "JAVADOC", PathFormat("@JAVADOC@"), "e" );
@@ -1836,6 +1818,9 @@ ToFile( "XRANDR_DLOPEN", "@XRANDR_DLOPEN@", "e" );
ToFile( "SYSTEM_LIBWPD", "@SYSTEM_LIBWPD@", "e" );
ToFile( "LIBWPD_CFLAGS", "@LIBWPD_CFLAGS@", "e" );
ToFile( "LIBWPD_LIBS", "@LIBWPD_LIBS@", "e" );
+ToFile( "SYSTEM_CPPUNIT", "@SYSTEM_CPPUNIT@", "e" );
+ToFile( "CPPUNIT_CFLAGS", "@CPPUNIT_CFLAGS@", "e" );
+ToFile( "CPPUNIT_LIBS", "@CPPUNIT_LIBS@", "e" );
ToFile( "SYSTEM_LIBXML", "@SYSTEM_LIBXML@", "e" );
ToFile( "USE_FT_EMBOLDEN", "@USE_FT_EMBOLDEN@", "e" );
ToFile( "LIBXML_CFLAGS", "@LIBXML_CFLAGS@", "e" );
@@ -1951,8 +1936,6 @@ ToFile( "DELIVER", $perlpre."deliver.pl", "e" );
ToFile( "MKOUT", $perlpre."mkout.pl", "e" );
ToFile( "ZIPDEP", $perlpre."zipdep.pl", "e" );
-ToFile( "USE_SHELL", '@USE_SHELL@', "e" );
-
#
# Writing the aliases to file.
ToFile( "Aliases.", $empty, "c" );
@@ -2001,6 +1984,7 @@ if ($platform =~ m/os2/)
ToFile( "SWITCHAR", "-", "e");
}
ToFile( "SAL_ENABLE_FILE_LOCKING", "1", "e");
+ToFile( "DBGSV_INIT", "$SOLARENV/bin/dbgsv.ini", "e");
#
# Writing unset variables you might not need to file.
#
diff --git a/soldep/util/perl.mk b/soldep/util/perl.mk
index 733459a96394..8665ae89f379 100644
--- a/soldep/util/perl.mk
+++ b/soldep/util/perl.mk
@@ -26,13 +26,8 @@
#*************************************************************************
.IF "$(GUI)"=="WNT"
-.IF "$(USE_SHELL)"=="4nt"
-SOLARINC+=-I$(BUILD_TOOLS)$/perl$/lib$/core
-PERL_LIB=$(BUILD_TOOLS)$/perl$/lib$/core$/perl58.lib
-.ELSE # "$(USE_SHELL)"=="4nt"
SOLARINC+=-I$(BUILD_TOOLS)$/..$/perl$/lib$/core
PERL_LIB=$(BUILD_TOOLS)$/..$/perl$/lib$/core$/perl58.lib
-.ENDIF # "$(USE_SHELL)"=="4nt"
.ENDIF
.IF "$(OS)$(CPU)" == "LINUXI"
diff --git a/solenv/bin/addsym.awk b/solenv/bin/addsym.awk
index c7b02e15db35..52efcb4ab740 100644
--- a/solenv/bin/addsym.awk
+++ b/solenv/bin/addsym.awk
@@ -25,29 +25,17 @@
#
#*************************************************************************
-# Add symbol patterns _ZTI* and _ZTS* to the global section of version UDK_3_0_0
-# (and if that version is not yet present, add it). For C++ exception handling
-# to work across libraries, it is important that all libraries use those symbols
-# with the same version name.
-#
-# The below code fails with 'perverted' mapfiles (using a strange line layout,
-# or containing version UDK_3_0_0 without a global section, ...).
+# Add certain symbol patterns to the first global section.
BEGIN { state = 0 }
-END {
- if (state == 0) {
- print "# Weak RTTI symbols for C++ exceptions:"
- print "UDK_3_0_0 {"
- print "\tglobal:"
- print "\t_ZTI*; _ZTS*;"
- print "};"
- }
-}
+/\{/ && state == 1 { exit 1 } #TODO: print error explanation to stderr?
+/^[\t ]*UDK_3_0_0[\t ]*\{/ && state == 0 { state = 1 }
+/^[\t ]*global[\t ]*:/ && state == 1 { state = 2 }
+{ print }
state == 2 {
- print " _ZTI*; _ZTS*; # weak RTTI symbols for C++ exceptions"
+ print "_ZTI*; _ZTS*; # weak RTTI symbols for C++ exceptions"
+ if (ENVIRON["USE_SYSTEM_STL"] != "YES")
+ print "_ZN4_STL7num_put*; # for STLport"
state = 3
}
-# #i66636# - ???
-/^[\t ]*UDK_3_0_0[\t ]*\{/ { state = 1 }
-/^[\t ]*global[\t ]*:/ && state == 1 { state = 2 }
-{ print }
+END { if (state != 3) exit 1 } #TODO: print error explanation to stderr?
diff --git a/solenv/bin/checkapi b/solenv/bin/checkapi
deleted file mode 100755
index f86fcefb93d1..000000000000
--- a/solenv/bin/checkapi
+++ /dev/null
@@ -1,71 +0,0 @@
-#!/bin/bash
-
-PS=":"
-# cygwin:
-if [ "$GUI" = "WNT" ]; then
- PS=";"
-fi
-
-JARFOLDER=$SOLARVERSION/$INPATH/bin$UPDMINOREXT
-SOLVER_LIB=$SOLARVERSION/$INPATH/lib$UPDMINOREXT
-
-# it is possible to give an other OOoRunner.jar
-if [ -n "$RUNNERJAR" ]; then
- myCLASSPATH=$RUNNERJAR
-else
- myCLASSPATH=$JARFOLDER/OOoRunner.jar
-fi
-
-myCLASSPATH=$myCLASSPATH${PS}${JARFOLDER}/ridl.jar${PS}\
-${JARFOLDER}/unoil.jar${PS}\
-${JARFOLDER}/jurt.jar${PS}\
-${JARFOLDER}/juh.jar${PS}\
-${JARFOLDER}/java_uno.jar
-
-myCLASSPATH=$myCLASSPATH${PS}\
-/net/unoapi/export/unoapi/bin/mysql.jar${PS}\
-$SOLVER_LIB
-
-if [ -n "$JAVAI" ]; then
- JAVABIN=$JAVAI
-elif [ -n "$JAVA_HOME" ]; then
- if [ "$OS$CPUNAME$CPU" = SOLARISSPARCU ]; then
- JAVABIN=$JAVA_HOME/bin/sparcv9/java
- else
- JAVABIN=$JAVA_HOME/bin/java
- fi
-else
- # there seems to be some machines without real java
- JAVABIN=$(which java)
- if [ -z "$JAVABIN" ]; then
- echo "please set environment variable JAVA_HOME"
- exit 1
- fi
-fi
-
-if [ x${USER}x = xx ]; then
- if [ x${LOGNAME}x = xx ]; then
- echo "ERROR: could not determine username. Please export variable USER" >&2
- exit $EXIT_FAILURE
- else
- USER=$LOGNAME
- export USER
- fi
-fi
-
-PARAM="-cs pipe,name=$USER -SRC_ROOT $SRC_ROOT"
-
-if [ -n "$RUNNERPROPS" ]; then
- PARAM="$PARAM -runnerini $RUNNERPROPS"
-fi
-
-DEBUG_THE_API=""
-if [ -n "$DEBUGAPI" ]; then
- export DEBUGAPI="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=9002,suspend=y"
- DEBUG_THE_API=$DEBUGAPI
-fi
-
-COMMAND="$JAVABIN -Xmx120m $DEBUG_THE_API -cp $myCLASSPATH org.openoffice.Runner $PARAM $*"
-echo $COMMAND
-$COMMAND
-# if COMMAND fails, it returns also the exitcode
diff --git a/solenv/bin/checkapi.btm b/solenv/bin/checkapi.btm
deleted file mode 100644
index 7af444eb601f..000000000000
--- a/solenv/bin/checkapi.btm
+++ /dev/null
@@ -1,44 +0,0 @@
-@echo off
-
-setlocal
-
-SET JARFOLDER=%SOLARVERSION%\%INPATH%\bin%UPDMINOREXT%
-
-IFF "%RUNNERJAR%" != "" THEN
- SET APICLASSPATH=%RUNNERJAR%
-ELSE
- SET APICLASSPATH=%JARFOLDER%\OOoRunner.jar
-ENDIFF
-
-SET APICLASSPATH=%APICLASSPATH%;%JARFOLDER%\ridl.jar;%JARFOLDER%\unoil.jar;%JARFOLDER%\jurt.jar;%JARFOLDER%\juh.jar;%JARFOLDER%\java_uno.jar;\\unoapi\export\unoapi\bin\mysql.jar
-
-IFF "%JAVAI%" != "" THEN
- SET JAVABIN=%JAVAI%
-ELSEIFF "%JAVA_HOME%" != "" THEN
- SET JAVABIN=%JAVA_HOME%\bin\java
-ELSE
- echo please set environment variable JAVA_HOME
- exit 1
-ENDIFF
-
-SET PARAM=-cs pipe,name=%USERNAME% -SRC_ROOT %SRC_ROOT%
-
-IFF "%RUNNERPROPS%" != "" THEN
- SET PARAM=%PARAM% -runnerini %RUNNERPROPS%
-ENDIFF
-
-rem SET MYXDEBUG=""
-IFF "%XDEBUG%" != "" THEN
- REM SET XDEBUG=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8001
- SET MYXDEBUG=%XDEBUG%
-ENDIFF
-
-set COMMAND=%JAVABIN% -Xmx120m %MYXDEBUG% -cp %APICLASSPATH% org.openoffice.Runner %PARAM% %&
-
-
-echo %COMMAND
-%COMMAND
-
-endlocal
-
-quit
diff --git a/solenv/bin/cwscheckapi b/solenv/bin/cwscheckapi
deleted file mode 100755
index 63712be76623..000000000000
--- a/solenv/bin/cwscheckapi
+++ /dev/null
@@ -1,361 +0,0 @@
-#!/bin/bash
-#*************************************************************************
-#
-# 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.
-#
-#***********************************************************************/
-
-
-EXIT_SUCCESS=0
-EXIT_FAILURE=1
-EXIT_ERROR=2
-EXIT_BUG=10
-
-# report the given error parameter to cwstestresult if the is one.
-# 0: no error send ok or parameter $2
-# 1: failure
-# 2...: incomplete
-function reportError()
-{
- ERRORCODE=$1
- if [ -e $SOLARENV/bin/cwstestresult.pl ]; then
- if [ $ERRORCODE -eq 0 ]; then
- PT_STATUS=${2:-ok} # use default 'ok' or $2
- elif [ $ERRORCODE -eq 1 ]; then
- PT_STATUS=failed
- else
- PT_STATUS=incomplete
- fi
-
- if [ "$OSTYPE" == "cygwin" ]; then
- CWSENV=Windows
- elif [ "$OSTYPE" == "linux" ]; then
- CWSENV=Linux
- elif [ "$OSTYPE" == "solaris" ]; then
- CWSENV=SolarisX86
- else
- CWSENV=Unknown
- fi
- perl $SOLARENV/bin/cwstestresult.pl -c $CWS_WORK_STAMP -n CWSCheckAPI -p $CWSENV $PT_STATUS
- else
- echo "No cwstestresult.pl found."
- fi
-}
-
-usage() {
- echo "Usage: $SCRIPTNAME [-m MODULE1[,MODULEn]] [-k] [-o] [-h] [-d] [-u] [-t] [-s] [-a]" >&2
- echo "" >&2
- echo "[-m] list of modules to test like: '-m sw,sc,sd' or '-m all' for all modules" >&2
- echo "" >&2
- echo "[-k] keep Office installation, otherwise it will be removed after test" >&2
- echo "" >&2
- echo "[-o] force OpenOffice.org installation instead of StarOffice" >&2
- echo "" >&2
- echo "[-d] debug installation and UnoAPI-Tests" >&2
- # echo "" >&2
- # echo "[-i] debug installation" >&2
- echo "" >&2
- echo "[-t] debug UnoAPI-Tests" >&2
- echo "" >&2
- echo "[-s] skip installation of Office" >&2
- echo "" >&2
- echo "[-a] NoCwsAttach: do not attach UnoAPI-Test result to EIS database" >&2
- echo "" >&2
- echo "[-u] UseInstalledOffice: do not install an office" >&2
- echo "" >&2
- echo "further informations: http://wiki.services.openoffice.org/wiki/Cwscheckapi" >&2
- echo "" >&2
- exit $EXIT_FAILURE
-}
-
-# we start cwscheckapi
-reportError 0 running
-
-if [ "$PROEXT" != ".pro" ]; then
- echo "ERROR: cwscheckapi works only on pro-versions" >&2
- reportError 2
- exit $EXIT_FAILURE
-fi
-
-if [ x${USER}x = xx ]; then
- if [ x${LOGNAME}x = xx ]; then
- echo "ERROR: could not determine username. Please export variable USER" >&2
- reportError 2
- exit $EXIT_FAILURE
- else
- USER=$LOGNAME
- export USER
- fi
-fi
-
-
-
-#DEBUG_I=false
-DEBUG_T=false
-INSTALL=true
-ATTACH=true
-MODULES="auto"
-OOO=false
-KEEPOFFICE=false
-USE_INSTALLED_OFFICE=false
-
-while getopts ':m:dkutsaho' OPTION ; do
- case $OPTION in
- d)
-# DEBUG_I=true
- DEBUG_T=true
- ;;
- m)
- MODULES="$OPTARG"
- ;;
- k)
- KEEPOFFICE=true
- ;;
- o)
- OOO=true
- ;;
-# i)
-# DEBUG_I=true
-# ;;
- t)
- DEBUG_T=true
- ;;
- s)
- INSTALL=false
- ;;
- a)
- ATTACH=false
- ;;
- u)
- USE_INSTALLED_OFFICE=true
- INSTALL=false
- KEEPOFFICE=true
- echo "make sure your office is started with parameter -accept=pipe,name=$USER;urp;"
- ;;
- h)
- usage $EXIT_SUCCESS
- ;;
- \?)
- echo "unkown option \"-$OPTARG\"." >&2
- usage $EXIT_ERROR
- ;;
- *)
- echo "this is not possible...">&2
- usage $EXIT_BUG
- ;;
- esac
-done
-
-shift `expr $OPTIND - 1`
-
-if [ -d /export/home/$USER ]; then
- CWSCHECKAPIPATH=/export/home/$USER/cwscheckapi
-else
- if [ -w /export/home ]; then
- mkdir /export/home/$USER
- CWSCHECKAPIPATH=/export/home/$USER/cwscheckapi
- else
- CWSCHECKAPIPATH=/tmp/$USER/cwscheckapi
- fi
-fi
-
-# the following line is to cleanup old cwscheckapi-installations. It results form the first version of cwscheckapi
-# The disk space on /tmp is limited. If a lot of users run cwscheckapi a lot of installed offices are in /tmp
-# The new concept is to remove the offices after test. But old unused installations should be removed...
-if [ $CWSCHECKAPIPATH != /tmp/$USER/cwscheckapi ]; then
- rm -rf /tmp/$USER/cwscheckapi
-fi
-
-LOCALINSTALLDIR=$CWSCHECKAPIPATH/office
-LOCALUNPACKDIR=$CWSCHECKAPIPATH/unpack
-export LOCALINSTALLDIR
-export LOCALUNPACKDIR
-
-unset FORCE2ARCHIVE
-
-if [ $INSTALL = true ]; then
-
- date 2>&1
-
-# if [ $DEBUG_I = true ]; then
-# echo "start installation: `date`"
-# echo call "$SOLARENV/bin/installoffice.pl -cwscheckapi true -dest $LOCALINSTALLDIR -debug $DEBUG_I"
-# fi
- perl -w $SOLARENV/bin/installoffice.pl -cwscheckapi true -dest $LOCALINSTALLDIR -ooo $OOO -debug $DEBUG_I
-
- EXITVAL=$?
-
- if [ $EXITVAL -ne 0 ]; then
- echo "ERROR: could not install office"
- reportError 2
- exit $EXITVAL
- fi
- echo "`date` installation successfull, start testing...."
-fi
-
-SOFFICE="soffice"
-PS=":"
-CYGWIN=""
-
-SHELL="/bin/bash"
-# cygwin:
-if [ "$GUI" = "WNT" ]; then
- SOFFICE="soffice.exe"
- PS=";"
- CYGWIN="-Cygwin true"
- SHELL=$(which bash)
- SHELL=$(cygpath -w $SHELL)
- if [ ! -f $SHELL ]; then
- echo "could not determine bash shell"
- reportError 2
- exit 1
- fi
-fi
-
-# if [ $DEBUG_T = true ]; then
-# echo find $LOCALINSTALLDIR -name $SOFFICE
-# fi
-
-if [ $USE_INSTALLED_OFFICE = false ]; then
-
- OFFICEBIN=`find $LOCALINSTALLDIR -name $SOFFICE`
-
- if [ ! -f "$OFFICEBIN" ]; then
- echo "could not find 'soffice' in subfolders of $LOCALINSTALLDIR"
- reportError 2
- exit 1
- fi
-
- if [ "$GUI" = "WNT" ]; then
- # transform /tmp/... -> c:\tmp\...
- OFFICEBIN=`cygpath -w $OFFICEBIN`
- fi
-else
- OFFICEBIN=$SOFFICE
- echo "Use already installed and running office."
-fi
-
-JARFOLDER=$SOLARVERSION/$INPATH/bin$UPDMINOREXT
-SOLVER_LIB=$SOLARVERSION/$INPATH/lib$UPDMINOREXT
-
-myCLASSPATH=${PS}${JARFOLDER}/ridl.jar${PS}\
-${JARFOLDER}/unoil.jar${PS}\
-${JARFOLDER}/jurt.jar${PS}\
-${JARFOLDER}/juh.jar${PS}\
-${JARFOLDER}/java_uno.jar
-
-myCLASSPATH=$myCLASSPATH${PS}\
-${JARFOLDER}/OOoRunner.jar
-
-myCLASSPATH=$myCLASSPATH${PS}\
-/net/unoapi/export/unoapi/bin/mysql.jar${PS}\
-$SOLVER_LIB
-
-PARAM=""
-if [ -n "$JAVAI" ]; then
- JAVABIN=$JAVAI
-elif [ -n "$JAVA_HOME" ]; then
- if [ "$OS$CPUNAME$CPU" = SOLARISSPARCU ]; then
- JAVABIN=$JAVA_HOME/bin/sparcv9/java
- else
- JAVABIN=$JAVA_HOME/bin/java
- fi
-else
- echo "please set environment variable JAVA_HOME"
- reportError 2
- exit 1
-fi
-
-if [ -n "$WORK_STAMP" ]; then
- if [ -n "$CWS_WORK_STAMP" ]; then
- PARAM="$PARAM -Version cws_${CWS_WORK_STAMP}"
- else
- echo "######"
- echo CAUTION! You are working on the MWS
- echo "######"
- PARAM="$PARAM -Version ${WORK_STAMP}_${UPDMINOR}"
- fi
-fi
-
-PARAM="$PARAM -cmd '$OFFICEBIN -nofirststartwizard -accept=pipe,name=$USER;urp; -norestore -nocrashreport -nolockcheck -enableautomation'"
-PARAM="$PARAM -cs pipe,name=$USER"
-PARAM="$PARAM -NoOffice true"
-PARAM="$PARAM -SRC_ROOT $SRC_ROOT"
-PARAM="$PARAM -COMP_ENV $OUTPATH"
-PARAM="$PARAM -Shell $SHELL"
-PARAM="$PARAM $CYGWIN"
-PARAM="$PARAM -tb java_complex"
-PARAM="$PARAM -TimeOut 90000"
-PARAM="$PARAM -o complex.unoapi.CheckModuleAPI::module($MODULES)"
-if [ $ATTACH = false ]; then
- PARAM="$PARAM -nca true"
-fi
-if [ $DEBUG_T = true ]; then
- PARAM="$PARAM -debug true -log true"
-fi
-
-# Sample command
-# /so/env/Linux_JDK_1.5.0_06/bin/java
-# -Xmx120m $XDEBUG
-# -cp :/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/bin.m50/ridl.jar:/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/bin.m50/unoil.jar:/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/bin.m50/jurt.jar:/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/bin.m50/juh.jar:/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/bin.m50/java_uno.jar:/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/bin.m50/OOoRunner.jar:/net/unoapi/export/unoapi/bin/mysql.jar:/net/so-cwsserv02/export/cws/unoapi04/DEV300/unxlngi6.pro/lib.m50
-# org.openoffice.Runner
-# -Version cws_unoapi04
-# -cmd '/tmp/ll93751/cwscheckapi/office/staroffice9/program/soffice -nofirststartwizard -accept=pipe,name=ll93751;urp; -norestore -nocrashreport -nolockcheck -enableautomation'
-# -cs pipe,name=ll93751
-# -NoOffice true
-# -SRC_ROOT /net/so-cwsserv02/export/cws/unoapi04/DEV300/src.m50
-# -COMP_ENV unxlngi6
-# -Shell /bin/bash
-# -tb java_complex
-# -TimeOut 90000
-# -o 'complex.unoapi.CheckModuleAPI::module(auto)'
-
-# XDEBUG=" -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=9003,suspend=y "
-
-# set DEBUGAPI if you want to debug the checkapi
-# DEBUGAPI=t
-
-COMMAND="$JAVABIN -Xmx120m $XDEBUG -cp $myCLASSPATH org.openoffice.Runner $PARAM $*"
-echo "$COMMAND"
-
-LOGFILE=$CWSCHECKAPIPATH/cwscheckapi.log
-$COMMAND | tee $LOGFILE
-EXITVAL=$?
-
-if [ $KEEPOFFICE = false ]; then
- echo "remove office instrallation in $LOCALINSTALLDIR..."
- rm -rf $LOCALINSTALLDIR
-fi
-
-echo
-echo A logfile could be found here: $LOGFILE
-
-date 2>&1
-
-# send the results via cwstestresult.pl to EIS
-if [ $EXITVAL -eq 0 ]; then
- reportError 0 ok
-else
- reportError 1
-fi
diff --git a/solenv/bin/cwscheckapi.btm b/solenv/bin/cwscheckapi.btm
deleted file mode 100755
index 73f8da0e6d39..000000000000
--- a/solenv/bin/cwscheckapi.btm
+++ /dev/null
@@ -1,206 +0,0 @@
-@echo off
-REM **************************************************************************
-REM *
-REM * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-REM *
-REM * Copyright 2000, 2010 Oracle and/or its affiliates.
-REM *
-REM * OpenOffice.org - a multi-platform office productivity suite
-REM *
-REM * This file is part of OpenOffice.org.
-REM *
-REM * OpenOffice.org is free software: you can redistribute it and/or modify
-REM * it under the terms of the GNU Lesser General Public License version 3
-REM * only, as published by the Free Software Foundation.
-REM *
-REM * OpenOffice.org is distributed in the hope that it will be useful,
-REM * but WITHOUT ANY WARRANTY; without even the implied warranty of
-REM * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-REM * GNU Lesser General Public License version 3 for more details
-REM * (a copy is included in the LICENSE file that accompanied this code).
-REM *
-REM * You should have received a copy of the GNU Lesser General Public License
-REM * version 3 along with OpenOffice.org. If not, see
-REM * <http://www.openoffice.org/license.html>
-REM * for a copy of the LGPLv3 License.
-REM *
-REM ************************************************************************/
-
-rem echo on
-
-call reportErrorCheckAPI.btm 0 running
-
-iff "%PROEXT" != ".pro" THEN
- echo ERROR: cwscheckapi works only on pro-versions >&2
- call reportErrorCheckAPI.btm 2
- quit 1
-endiff
-
-SET DEBIG_I=false
-SET DEBUG_T=false
-SET INSTALL=true
-SET ATTACH=true
-SET MODULES=auto
-SET OOO=false
-SET KEEPOFFICE=false
-SET USE_INSTALLED_OFFICE=false
-
-for %opt in (%&%) DO (
- if "%opt%" == "-d" (SET DEBUG_I=true ^ SET DEBUG_T=true ^ shift)
- if "%opt%" == "-o" (SET OOO=true ^ shift)
- if "%opt%" == "-k" (SET KEEPOFFICE=true ^ shift)
- if "%opt%" == "-i" (SET DEBUG_I=true ^ shift)
- if "%opt%" == "-m" (SET MODULES=%2 ^ shift ^ shift)
- if "%opt%" == "-t" (SET DEBUG_T=true ^ shift)
- if "%opt%" == "-s" (SET INSTALL=false ^ shift)
- if "%opt%" == "-u" (SET USE_INSTALLED_OFFICE=true ^ SET INSTALL=false ^ SET KEEPOFFICE=true ^ shift)
- if "%opt%" == "-a" (SET attach=false ^ shift)
- if "%opt%" == "-h" goto usage
- if "%opt%" == "/h" goto usage
-)
-
-set tmppath=not_set
-for %LW in (e:\,d:\,c:\) DO (
- iff NOT ISDIR %tmppath% then
- iff ISDIR %LW then
- iff ISDIR %LW%temp then
- set tmppath=%LW%temp
- elseiff ISDIR %LW%tmp then
- set tmppath=%LW%tmp
- else
- mkdir %LW%temp
- set tmppath=%LW%temp
- endiff
- endiff
- endiff
-)
-
-SET CWSCHECKAPIPATH=%tmppath%\%USERNAME%\cwscheckapi
-SET LOCALINSTALLDIR=%CWSCHECKAPIPATH%\office
-SET LOCALUNPACKDIR=%CWSCHECKAPIPATH%\unpack
-
-iff "%INSTALL%" == "true" THEN
- call perl5 %SOLARENV%/bin/installoffice.pl -cwscheckapi true -dest %LOCALINSTALLDIR% -ooo %OOO% -debug %DEBUG_I%
-
- IFF %? NE 0 THEN
- echo ERROR: coud not install office >&2
- call reportErrorCheckAPI.btm 2
- quit %?
- ENDIFF
-ENDIFF
-
-setlocal
-
-IFF %USE_INSTALLED_OFFICE% == "false" then
-
- SET CWD=%_CWD%
- cdd %LOCALINSTALLDIR%
- SET ffindtxt="ffind.txt"
- ffind /s /f /m soffice.exe > %ffindtxt
- SET FindFile=%@FILEOPEN[%ffindtxt%, READ]
- SET OfficeBin=%@FILEREAD[%FindFile]
- set dummy=%@FILECLOSE[%FindFile]
- DEL /q %ffindtxt
- cdd %CWD
-
- IFF NOT EXIST %OFFICEBIN% THEN
- echo could not find 'soffice.exe' in subfolders of %OFFICEBIN% >&2
- call reportErrorCheckAPI.btm 2
- quit 1
- ENDIFF
-ELSE
- SET OFFICEBIN=soffice.exe
- echo "Use already installed office."
-ENDIFF
-
-SET JARFOLDER=%SOLARVERSION%\%INPATH%\bin%UPDMINOREXT%
-SET MYCLASSPATH=%JARFOLDER%\OOoRunner.jar;%JARFOLDER%\ridl.jar;%JARFOLDER%\unoil.jar;%JARFOLDER%\jurt.jar;%JARFOLDER%\juh.jar;%JARFOLDER%\java_uno.jar
-
-IFF "%JAVAI%" != "" THEN
- SET JAVABIN=%JAVAI%
-ELSEIFF "%JAVA_HOME%" != "" THEN
- SET JAVABIN=%JAVA_HOME%\bin\java
-ELSE
- echo please set environment variable JAVA_HOME >&2
- call reportErrorCheckAPI.btm 2
- quit 1
-ENDIFF
-
-IFF "%CWS_WORK_STAMP%" != "" THEN
- SET PARAM=-Version cws_%CWS_WORK_STAMP%
-ELSEIFF "%WORK_STAMP%" != "" THEN
- echo ###### >&2
- echo CAUTION! You\'re working on the MWS >&2
- echo ###### >&2
- SET PARAM=-Version %WORK_STAMP%_%UPDMINOR%
-ELSE
- echo ###### >&2
- echo ERROR: could not determine your CWS or MWS version >&2
- echo ###### >&2
- call reportErrorCheckAPI.btm 2
- quit 1
-ENDIFF
-
-SET KILLCOMMAND="%SOLARVERSION%\%INPATH%\bin%UPDMINOREXT%\kill.exe -9 soffice.bin^%SOLARVERSION%\%INPATH%\bin%UPDMINOREXT%\kill.exe -9 soffice.exe"
-
-SET PARAM=%PARAM% -cmd '\"%OFFICEBIN%\" -nofirststartwizard -norestore -nocrashreport -nolockcheck -enableautomation -accept=pipe,name=%USERNAME%;urp;'
-SET PARAM=%PARAM% -cs pipe,name=%USERNAME%
-SET PARAM=%PARAM% -NoOffice true
-SET PARAM=%PARAM% -SRC_ROOT %SRC_ROOT%
-SET PARAM=%PARAM% -COMP_ENV %OUTPATH%
-SET PARAM=%PARAM% -Shell %COMSPEC%
-SET PARAM=%PARAM% -tb java_complex
-SET PARAM=%PARAM% -o complex.unoapi.CheckModuleAPI::module(%MODULES%)
-SET PARAM=%PARAM% -TimeOut 200000
-SET PARAM=%PARAM% -AppKillCommand %KILLCOMMAND%
-IF "%ATTACH%" == "false" SET PARAM=%PARAM% -nca true
-IF "%DEBUG_T%" == "true" SET PARAM=%PARAM -debug true -log true
-
-set COMMANDO=%JAVABIN% -Xmx120m -cp %MYCLASSPATH% org.openoffice.Runner %PARAM% %&
-
-echo %COMMANDO
-SET LOGFILE=%CWSCHECKAPIPATH%\cwscheckapi.log
-%COMMANDO |& tee %LOGFILE%
-set EXITVAL=%?
-
-IFF %KEEPOFFICE% == "false" THEN
- echo remove office instrallation in %LOCALINSTALLDIR%...
- DEL /E/F/Q/K/S/X/Y/Z %LOCALINSTALLDIR%
-fi
-
-echo .
-echo A logfile could be found here: %LOGFILE%
-
-IFF %EXITVAL% NE 0 THEN
- call reportErrorCheckAPI.btm 1
-ELSE
- call reportErrorCheckAPI.btm 0 ok
-ENDIFF
-
-endlocal
-
-quit 0
-
-:usage
- echo.
- echo Usage: %0% [-m MODULE1[,MODULEn]] [-o] [-k] [-h] [-d] [-i] [-t] [-s] [-a] >&2
- echo.
- echo [-m] list of modules to test like: '-m "sw,sc,sd"' or '-m all' for all modules >&2
- echo. >&2
- echo [-o] force OpenOffice.org installation instead of StarOffice >&2
- echo. >&2
- echo [-k] keep Office installation, otherwise it will be removed after test >&2
- echo. >&2
- echo [-d] debug installation and UnoAPI-Tests >&2
- echo. >&2
- echo [-i] debug installation >&2
- echo. >&2
- echo [-t] debug UnoAPI-Tests >&2
- echo. >&2
- echo [-s] skip installation of Office >&2
- echo. >&2
- echo [-a] NoCwsAttach: do not attach UnoAPI-Test result to EIS database >&2
- echo. >&2
- echo further informations: http://wiki.services.openoffice.org/wiki/Cwscheckapi >&2
- echo. >&2
- quit 1
diff --git a/solenv/bin/dbgsv.ini b/solenv/bin/dbgsv.ini
new file mode 100644
index 000000000000..006dadf98a40
--- /dev/null
+++ b/solenv/bin/dbgsv.ini
@@ -0,0 +1,29 @@
+=*************************************************************************
+=
+= 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.
+=
+=***********************************************************************/
+
+[output]
+error=shell
diff --git a/solenv/bin/installoffice b/solenv/bin/installoffice
deleted file mode 100755
index 59ad271ee142..000000000000
--- a/solenv/bin/installoffice
+++ /dev/null
@@ -1,107 +0,0 @@
-#!/bin/bash
-#*************************************************************************
-#
-# 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.
-#
-#***********************************************************************/
-
-EXIT_SUCCESS=0
-EXIT_FAILURE=1
-EXIT_ERROR=2
-EXIT_BUG=10
-
-if [ x${SOLARENV}x = xx ]; then
- echo No environment found, please use 'configure' or 'setsolar'
- exit $EXIT_FAILURE
-fi
-usage() {
- echo "Usage: $SCRIPTNAME [-t DESTPATH] [-o] [-d] [-a]" >&2
- echo "" >&2
- echo "[-t] target path: path wehre tho office should installed to. The default is '$DESTPATH'" >&2
- echo "" >&2
- echo "[-o] force OpenOffice.org installation instead of StarOffice" >&2
- echo "" >&2
- echo "[-d] installation with debug output" >&2
- echo "" >&2
- echo "[-a] the office will be patched to run without FirstStartWizard" >&2
- echo "" >&2
- echo "[-i] impress should open documents without autopilot" >&2
- exit $EXIT_FAILURE
-}
-
-if [ x${USER}x = xx ]; then
- if [ x${LOGNAME}x = xx ]; then
- echo "ERROR: could not determine username. Please export variable USER" >&2
- exit $EXIT_FAILURE
- else
- USER=$LOGNAME
- export USER
- fi
-fi
-
-DESTPATH=/tmp/$USER
-PARAM=""
-
-while getopts ':mt:aicdhot' OPTION ; do
- case $OPTION in
- d) PARAM="$PARAM -debug true"
- ;;
- c) PARAM="$PARAM -cwscheckapi true"
- ;;
- o) PARAM="$PARAM -ooo true"
- ;;
- a) PARAM="$PARAM -autorun true"
- ;;
- i) PARAM="$PARAM -autoimpress true"
- ;;
- t) DESTPATH="$OPTARG"
- ;;
- h) usage $EXIT_SUCCESS
- ;;
- \?) echo "unkown option \"-$OPTARG\"." >&2
- usage $EXIT_ERROR
- ;;
- *) echo "this is not possible...">&2
- usage $EXIT_BUG
- ;;
- esac
-done
-
-shift `expr $OPTIND - 1`
-
-LOCALINSTALLDIR=$DESTPATH/office
-LOCALUNPACKDIR=$DESTPATH/unpack
-
-export LOCALINSTALLDIR
-export LOCALUNPACKDIR
-echo "export LOCALINSTALLDIR"
-echo "export LOCALUNPACKDIR"
-
-unset LD_LIBRARY_PATH
-unset FORCE2ARCHIVE
-
-echo "### $SOLARENV/bin/installoffice.pl $PARAM -cleanup true $@"
-exec perl -w $SOLARENV/bin/installoffice.pl $PARAM -cleanup true $@
-
-exit $?
diff --git a/solenv/bin/installoffice.btm b/solenv/bin/installoffice.btm
deleted file mode 100755
index a77f8defeb45..000000000000
--- a/solenv/bin/installoffice.btm
+++ /dev/null
@@ -1,120 +0,0 @@
-@echo off
-REM **************************************************************************
-REM *
-REM * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-REM *
-REM * Copyright 2000, 2010 Oracle and/or its affiliates.
-REM *
-REM * OpenOffice.org - a multi-platform office productivity suite
-REM *
-REM * This file is part of OpenOffice.org.
-REM *
-REM * OpenOffice.org is free software: you can redistribute it and/or modify
-REM * it under the terms of the GNU Lesser General Public License version 3
-REM * only, as published by the Free Software Foundation.
-REM *
-REM * OpenOffice.org is distributed in the hope that it will be useful,
-REM * but WITHOUT ANY WARRANTY; without even the implied warranty of
-REM * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-REM * GNU Lesser General Public License version 3 for more details
-REM * (a copy is included in the LICENSE file that accompanied this code).
-REM *
-REM * You should have received a copy of the GNU Lesser General Public License
-REM * version 3 along with OpenOffice.org. If not, see
-REM * <http://www.openoffice.org/license.html>
-REM * for a copy of the LGPLv3 License.
-REM *
-REM ************************************************************************/
-
-
-SET DESTPATH=%USERNAME%
-SET DEBUG=false
-SET OOO=false
-SET PARAM=
-
-for %opt in (%&%) DO (
- iff "%opt%" == "-d" THEN
- SET PARAM=%PARAM% -debug true
- shift
-
- elseiff "%opt%" == "-o" THEN
- SET PARAM=%PARAM% -ooo true
- shift
-
- elseiff "%opt%" == "-c" THEN
- SET PARAM=%PARAM% -cwscheckapi true
- shift
-
- elseiff "%opt%" == "-a" THEN
- SET PARAM=%PARAM% -autorun true
- shift
-
- elseiff "%opt%" == "-i" THEN
- SET PARAM=%PARAM% -autoimpress true
- shift
-
- elseiff "%opt%" == "-t" THEN
- SET DESTPATH=%2
- shift
- shift
-
- elseiff "%opt%" == "-h" THEN
- goto usage
-
- elseiff "%opt%" == "/h" THEN
- goto usage
-
- elseiff "%opt%" == "%DESTPATH%" THEN
- shift
-
- else
- echo wrong param: %opt%
- goto usage
- endiff
-)
-
-iff "%DESTPATH%" == "%USERNAME%" THEN
-iff EXIST e:\ then
- iff EXIST e:\temp then
- set temppath=e:\temp
- elseiff EXIST e:\tmp then
- set temppath=c:\tmp
- else
- mkdir e:\temp
- set tmppath=c:\temp
- endiff
-elseiff EXIST c:\tmp then
- set temppath=c:\tmp
-elseiff EXIST c:\temp then
- set temppath=c:\temp
-else
- set temppath=%TMP%
-endiff
- DESTPATH=%temppath%\%USERNAME%
-endiff
-
-SET LOCALINSTALLDIR=%DESTPATH%\office
-SET LOCALUNPACKDIR=%DESTPATH%\unpack
-echo LOCALINSTALLDIR=%LOCALINSTALLDIR%
-echo LOCALUNPACKDIR=%LOCALUNPACKDIR%
-
-echo call perl5 %SOLARENV%\bin\installoffice.pl -dest %LOCALINSTALLDIR% %PARAM% -cleanup true %&
-call perl5 %SOLARENV%\bin\installoffice.pl -dest %LOCALINSTALLDIR% %PARAM% -cleanup true %&
-
-quit %?
-
-:usage
- echo.
- echo Usage: %0% [-t DESTPATH] [-o] [-d] >&2
- echo.
- echo [-d] installation with debug output>&2
- echo.
- echo [-o] force OpenOffice.org installation instead of StarOffice>&2
- echo.
- echo [-t] target path: path where the office should installed to. The default is '%DESTPATH%'>&2
- echo.
- echo [-a] the office will be patched to run without FirstStartWizard >&2
- echo.
- echo [-i] impress should open documents without autopilot
- echo.
- quit 1
diff --git a/solenv/bin/installoffice.pl b/solenv/bin/installoffice.pl
deleted file mode 100755
index b6c852ae8624..000000000000
--- a/solenv/bin/installoffice.pl
+++ /dev/null
@@ -1,933 +0,0 @@
-:
-eval 'exec perl -wS $0 ${1+"$@"}'
- if 0;
-
-#*************************************************************************
-# 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.
-#
-#***********************************************************************/
-
-use strict;
-use File::Find;
-use File::Path;
-my $script = $0;
-
-( our $script_name = $script ) =~ s/^.*\b(\w+)\.pl$/$1/;
-( our $script_path = $script ) =~ s/$script_name.*//;
-
-# Prototypes
-sub installOffice();
-
-our $debug = 0; # run without executing commands
-
-our $is_command_infos = 1; # print command details before exec
-our $show_NoMessage = 0;
-our $show_Message = 1;
-
-# special handling for cwschackapi
-our $cwsCheckApi = 0;
-
-# remove existant office installation
-our $cleanup = 0;
-
-# should the office be startable without user interaction
-our $autorun = 0;
-
-# should impress open documents without autopilot
-our $autoimpress = 0;
-
-# force openOffice.org installation if StarOffice is available
-our $is_ooo = 0;
-
-parseArgs();
-
-our $is_admin_installation = 1;
-
-our $gui = $ENV{GUI};
-our $temp_path = $ENV{TEMP};
-if (!defined($temp_path)) {
- $temp_path = $ENV{TMP};
-}
-
-our $vcsid = $ENV{VCSID};
-our $sversion_saved = 0;
-our $FileURLPrefix = "file:///";
-our $userinstalldir = "UserInstallation";
-our $cygwin = "cygwin";
-our $prefered_lang = "en-US";
-our $global_instset_mask = "";
-#$smoketest_install = $ENV{SMOKETESTINSTALLSET};
-
-if (!defined($gui)) {
- print "The workstamp is missing. Please use setsolar\n";
- exit(1);
-}
-
-our $OfficeDestinationPath;
-our $is_do_deinstall;
-our $CygwinLineends;
-our $WinLineends;
-our $PS ;
-our $NewPathSeparator ;
-our $shell ;
-our $shellSetEnvVar;
-our $shellCommandSep;
-our $cdCommand;
-our $PERL ;
-our $REMOVE_DIR ;
-our $REMOVE_FILE ;
-our $LIST_DIR ;
-our $COPY_FILE ;
-our $COPY_DIR ;
-our $MK_DIR ;
-our $RENAME_FILE ;
-our $nul ;
-our $RESPFILE;
-our $SVERSION_INI ;
-our $SOFFICEBIN ;
-our $UNOPKGBIN;
-our $bootstrapini ;
-our $bootstrapiniTemp ;
-our $packpackage ;
-our $user;
-
-if ($gui eq "WNT") {
- $gui = $cygwin;
-}
-
-if ($gui eq "WNT") {
- $user = $ENV{USERNAME};
- $PS = '\\';
- $NewPathSeparator = ';';
- $shell = "$ENV{COMSPEC} -c ";
- $shellSetEnvVar = "set ";
- $shellCommandSep = "& ";
- $cdCommand="cd /d ";
- $PERL = "$shell $ENV{PERL}";
- $REMOVE_DIR = "$shell del /qsxyz";
- $REMOVE_FILE = "$shell del /q";
- $LIST_DIR = "$shell ls";
- $COPY_FILE = "$shell copy";
- $COPY_DIR = "$shell copy /s";
- $MK_DIR = "md";
- $RENAME_FILE = "ren";
- $nul = '> NUL';
- $RESPFILE="response_fat_wnt";
- $SVERSION_INI = $ENV{USERPROFILE} . $PS . "Anwendungsdaten" . $PS . "sversion.ini";
- $SOFFICEBIN = "soffice.exe";
- $bootstrapini = "bootstrap.ini";
- $UNOPKGBIN="unopkg.exe";
- $bootstrapiniTemp = $bootstrapini . "_";
- $packpackage = "msi";
- if (!defined($temp_path)) {
- print "temp value is missing. Please set temp-variable\n";
- exit(1);
- }
-}
-elsif ($gui eq "UNX") {
- $user = $ENV{USER};
- $is_do_deinstall = 0;
- $PS = '/';
- $shell = "/bin/sh -c ";
- $shellSetEnvVar = "export ";
- $shellCommandSep = ";";
- $cdCommand="cd ";
- $NewPathSeparator = ':';
- $shell = "";
- $PERL = "$ENV{PERL}";
- $REMOVE_DIR = "rm -rf";
- $REMOVE_FILE = "rm -f";
- $LIST_DIR = "ls";
- $COPY_FILE = "cp -f";
- $COPY_DIR = "cp -rf";
- $MK_DIR = "mkdir";
- $RENAME_FILE = "mv";
- $nul = '> /dev/null';
- $RESPFILE="response_fat_unx";
- $SVERSION_INI = $ENV{HOME} . $PS . ".sversionrc";
- $SOFFICEBIN = "soffice";
- $bootstrapini = "bootstraprc";
- $UNOPKGBIN="unopkg";
- $bootstrapiniTemp = $bootstrapini . "_";
- $packpackage = $ENV{PKGFORMAT};
- if (!defined($temp_path)) {
- $temp_path="/tmp";
- if (! -e $temp_path){
- print "temp value is missing. Please set temp-variable\n";
- exit(1);
- }
- }
-}
-elsif ($gui eq $cygwin) {
-
- $PS = '/';
- $NewPathSeparator = ':';
- $shell = "/bin/sh -c ";
- $shellSetEnvVar = "export ";
- $shellCommandSep = ";";
- $cdCommand = "cd ";
- $PERL = "$ENV{PERL}";
- $REMOVE_DIR = "rm -rf";
- $REMOVE_FILE = "rm -f";
- $LIST_DIR = "ls";
- $COPY_FILE = "cp -f";
- $COPY_DIR = "cp -rf";
- $MK_DIR = "mkdir";
- $RENAME_FILE = "mv";
- $nul = '> /dev/null';
- $RESPFILE="response_fat_wnt";
- $SVERSION_INI = $ENV{USERPROFILE} . $PS . "Anwendungsdaten" . $PS . "sversion.ini";
- $SOFFICEBIN = "soffice";
- $bootstrapini = "bootstrap.ini";
- $bootstrapiniTemp = $bootstrapini . "_";
- $CygwinLineends = $/;
- $WinLineends = "\r\n";
- &SetWinLineends();
- $packpackage = "msi";
- if (!defined($temp_path)) {
- $temp_path="/tmp";
- if (! -e $temp_path){
- print "temp value is missing. Please set temp-variable\n";
- exit(1);
- }
- }
-}
-else {
- print_error ("not supported system\n",1);
-}
-
-my %PRODUCT1 = (Name => "StarOffice", instset => "instset_native");
-my %PRODUCT2 = (Name => "OpenOffice", instset => "instsetoo_native");
-our @PRODUCT = (\%PRODUCT1, \%PRODUCT2);
-
-our $SHIP = defined $ENV{SHIPDRIVE} ? $ENV{SHIPDRIVE} . $PS : "shipdrive_not_set";
-
-if (defined($ENV{CWS_WORK_STAMP})){
- print " found CWS\n";
-}
-elsif (isLocalEnv()){
- print " local environment\n";
-}
-elsif (defined $ENV{SHIPDRIVE}) {
- print " master version\n";
-}
-elsif (defined $ENV{SOLARSRC}) {
- print " OpenOffice master version\n";
-}
-else {
- print "Could not determine environment. Exit\n";
- exit 1
-}
-
-
-our @error_messages = ( '',
- 'lock flag for pkgadd still exist. Installation not possible!',
- 'Error during installation!',
- 'Error: patching configuration failed!',
- 'Error: starting office failed or office crashed!',
- 'Error during testing',
- 'can not copy extension',
- 'Error in setup log',
- 'installationsset is not complete',
- 'can not copy all basic scripts',
- 'can not patch bottstrapini',
- 'msiexec failed. Maybe you have got an installed version',
- 'deinstallation is incomplete'
-);
-
-
-my $success = 0;
-$success = installOffice();
-
-if ($success != 0){
- exit(1);
-}
-exit(0);
-
-sub installOffice(){
-
- # <DISABLED>
- # my ($officeVersion, $instsetPath)= getInstset();
- # print "OFFICEVERSION:$officeVersion INSTSETPATH:$instsetPath\n" if $debug;
- # my $sourcePath=$instsetPath.$PS.$officeVersion;
- # </DISABLED>
- #
- # currently this installer does not install an office, it do pack a runnable office.
- # Therefore we do not need to search for an instSet
- my $sourcePath="dummy";
- my $officeVersion="dummy";
-
- my $destinationPath = getDestinationPath($officeVersion);
- print "destinationPath: $destinationPath\n" if $debug;
-
- removeOffice($destinationPath);
- mkdirs($destinationPath);
-
- my $installCommand = getInstallCommand($sourcePath, $destinationPath, $officeVersion);
- print "installCommand: $installCommand\n" if $debug;
-
- my $success=0;
- $success = system($installCommand);
- print "installoofice.pl::installoffice::success $success\n" if ($debug);
-
- if ($autorun) {
- makeAutoRun($destinationPath);
- }
-
- if ($autoimpress) {
- makeAutoImpress($destinationPath);
- }
-
- return $success;
-}
-
-sub makeAutoImpress(){
- my $destinationPath = shift;
-
- if (patchXCU ($destinationPath, $script_path.$script_name."_impress.oxt") != 0) {
- print_error("could not register ".$script_path.$script_name."_impress.oxt", "1");
- }
- return 0;
-}
-
-
-sub makeAutoRun(){
-
- my $destinationPath = shift;
-
- patchBootstraprc($destinationPath);
-
- if (patchXCU ($destinationPath, $script_path.$script_name.".oxt") != 0) {
- print_error("could not register ".$script_path.$script_name.".oxt", "1");
- }
- return 0;
-}
-
-
-sub patchBootstraprc(){
- my $destinationPath = shift;
- my $bootstraprc="";
-
- find sub { $bootstraprc=$File::Find::name if -e _ && /$bootstrapini$/ }, $destinationPath;
-
- print_error("could not find $bootstrapini", "1") if ( ! -e $bootstraprc );
-
- open(BSRC, "<$bootstraprc") or errorFromOpen(" for reading " .$bootstraprc);
- my @content = <BSRC>;
- close(BSRC);
- my @newContent;
- foreach(@content) {
- if ( /UserInstallation=./ ) {
- push(@newContent, "UserInstallation=\$ORIGIN/../UserInstallation\n");
- }
- else {
- push(@newContent,$_);
- }
- }
-
- chmod(0755,$bootstraprc);
-
- open OUTFILE, ">$bootstraprc" or return errorFromOpen (" for writing " . $bootstraprc);
- print OUTFILE @newContent;
- close OUTFILE;
-
-}
-
-sub patchXCU(){
- my $destinationPath = shift;
- my $oxt = shift;
- my $unopkg="";
-
- find sub { $unopkg=$File::Find::name if -e _ && /$UNOPKGBIN$/ }, $destinationPath;
-
- print_error("could not find $UNOPKGBIN", "1") if ( !-e $unopkg );
- print "unopkg: '$unopkg'\n" if $debug;
-
- if ($gui eq "WNT") {
- $unopkg = "\"$unopkg\"";
- }
-
- my $unopkgCommand = "$unopkg add $oxt";
- print "register oxt file ...\n" if $debug;
- print "call $unopkgCommand\n" if $debug;
- my $success=0;
- $success = system($unopkgCommand);
-
- return $success;
-}
-
-sub writeFile(){
- my $fileName = shift;
- my @content = @_;
-
- open OUTFILE, ">$fileName" or return errorFromOpen (" for writing " . $fileName);
-
- my $lf;
- if ($packpackage eq "msi"){
- $lf = "\r\n";
- } else {
- $lf = "\n";
- }
-
- my $line;
- foreach $line(@content) {
- print "LINE: $line\n" if $debug;
- print OUTFILE $line.$lf;
- }
- close(OUTFILE);
- return 0;
-}
-
-sub mkdirs(){
- my $directory = shift;
- my $splitter=$PS;
- if ( $PS eq "\\" ){
- $splitter="\\\\";
- }
- my @aFolder=split($splitter,$directory);
-
- my $dir;
- my $folder;
- foreach $folder(@aFolder){
- if ( (! defined($dir)) && ($PS eq "\\")){
- $dir=$folder;
- } else {
- $dir=$dir.$PS.$folder;
- }
- if (! -e $dir ){
- print "try to create $dir\n" if $debug;
- mkdir($dir);
- }
- }
-}
-
-sub removeOffice(){
-
- my $destPath=shift;
-
- if ($cleanup){
- print "remove old office installation...\n";
-
- print "remove $destPath...\n" if $debug;
- rmtree($destPath);
-
- }
-}
-
-sub getInstallCommand() {
- my $command;
- $command = getDmakeInstalledCommand(@_);
- # if ($packpackage eq "msi"){
- # $command = getWindowsInallCommand(@_);
- # } else {
- # $command = getUnixInstallCommand(@_);
- # }
- return $command;
-}
-
-sub getDmakeInstalledCommand(){
- my ($sourcePath, $destPath, $officeVersion) = @_;
- my $RootDir=$ENV{SRC_ROOT};
-
- my $ProductName;
- my $instset;
-
- # check if instset_native could be found
- foreach my $pointer (@PRODUCT) {
- $instset = $pointer->{'instset'};
- $ProductName = $pointer->{'Name'};
- my $instsetDir = "$RootDir$PS$instset";
- print "instsetDir: $instsetDir \n" if $debug;
-
- last if ($is_ooo && $ProductName eq "OpenOffice");
- last if ( ! $is_ooo && -e "$instsetDir");
- }
- print "Product: $ProductName\n" if $debug;;
-
- my $dmakeTarget=lc($ProductName)."_en-US";
-
- my $utilFolder = getInstsetUtilFolder($instset, $destPath, $RootDir);
- my $dmakeCommand = " $cdCommand \"$utilFolder\" $shellCommandSep dmake $dmakeTarget PKGFORMAT=installed -vt";
- my $envset;
- if ($gui eq "WNT") {
- $envset="set LOCALINSTALLDIR=$destPath & set LOCALUNPACKDIR=$destPath &";
- }else {
- $envset="LOCALINSTALLDIR=$destPath ; LOCALUNPACKDIR=$destPath ; export LOCALINSTALLDIR ; export LOCALUNPACKDIR ; ";
- }
- #my $command=$envset.$dmakeCommand;
- my $command=$dmakeCommand;
- return $command;
-}
-
-sub getInstsetUtilFolder(){
- my $instset = shift;
- my $destPath = shift;
- my $RootDir = shift;
-
- my $instsetFolder = $RootDir.$PS.$instset;
- my $utilFolder="";
-
- if( open(DATEI, ">$instsetFolder".$PS."touch"))
- {
- close(DATEI);
- unlink($instsetFolder.$PS."touch");
- print "$instsetFolder is writable \n" if $debug;
- $utilFolder = $RootDir.$PS.$instset.$PS."util";
- }
- else
- {
- print "$instsetFolder is NOT writable \n" if $debug;
- print "copy $instset to $destPath$PS..\n" if $debug;
- my $prjPath=$destPath.$PS."..";
-
- my $command = "$ENV{COPYPRJ} -x $instset $prjPath";
- print $command if $debug;
- system($command);
- $utilFolder=$prjPath.$PS.$ENV{WORK_STAMP}.$PS.$instset.$PS."util";
- }
- print "utilFolder: $utilFolder\n" if $debug;
- return $utilFolder;
-}
-
-# sub getInstsetFomInstsetNative(){
-# my (@DirArray, $TestDir1, $TestDir2);
-# my $instset;
-# my $ProductName;
-# my $instDir="";
-# my $lang;
-# my $RootDir=$ENV{SRC_ROOT};
-# my $StandDir = $ENV{SOLARSRC} . $PS;
-# #$RootDir=~s/\w+$//;
-
-# foreach my $pointer (@PRODUCT) {
-# $instset = $pointer->{'instset'};
-# $ProductName = $pointer->{'Name'};
-# @DirArray=();
-# $TestDir1 = "$RootDir$PS$instset$PS$ENV{INPATH}$PS$ProductName$PS$packpackage$PS" . "install$PS";
-# $TestDir2 = "$StandDir$instset$PS$ENV{INPATH}$PS$ProductName$PS$packpackage$PS" . "install$PS";
-# print "TestDir1: $TestDir1 \n";
-# print "TestDir2: $TestDir2 \n";
-# if (-e "$TestDir1") {
-# $instDir= $TestDir1;
-# }
-# elsif (-e "$TestDir2") {
-# $instDir="$TestDir2";
-# }
-# if ($instDir eq "") {
-# next;
-# }
-
-# getSubDirs ("$instDir", \@DirArray);
-# $lang = findSubDir (\@DirArray);
-# print "Lang-Sel: $lang\n" if $is_command_infos;
-# ;
-# if (($instDir ne "") and (-e $instDir)) {
-# return ($lang, $instDir, $ProductName, $instset);
-# }
-# }
-# print_error ("no installationset found\n",2);
-
-# }
-
-sub getWindowsInallCommand(){
- my ($sourcePath, $destPath) = @_;
- my $mask = "\\.msi\$";
- #my $DirArray;
- my @DirArray = ();
- getSubFiles ("$sourcePath", \@DirArray, $mask);
- if ($#DirArray == -1) {
- print_error ("Installationset in $sourcePath is incomplete", 2);
- }
- if ($#DirArray >= 1) {
- print_error ("Installationset in $sourcePath hat too many msi-files", 2);
- print "found the following msi-files: @DirArray\n" if $debug;
- }
- my $command = "msiexec.exe /a $sourcePath$PS$DirArray[0] -qn ALLUSERS=2 INSTALLLOCATION=$destPath";
-
- return $command;
-}
-
-sub getUnixInstallCommand() {
- my ($sourcePath, $destPath, $officeVersion) = @_;
-
- my $userland="unknown";
-
- if (defined($ENV{CWS_WORK_STAMP})){
- print " found CWS\n";
- $userland=$ENV{SOLARVERSION}.$PS.$ENV{INPATH}.$PS."bin".$ENV{UPDMINOREXT}.$PS."userscripts".$PS."install";
- }
- elsif (isLocalEnv()){
- print " local environment\n";
- }
- elsif (defined $ENV{SHIPDRIVE}) {
- print " master version\n";
- $userland=$ENV{SHIPDRIVE}.$PS.$ENV{INPATH}.$PS."UserScripts".$PS.$ENV{PKGFORMAT}.$PS.$officeVersion.$PS."install";
- }
- elsif (defined $ENV{SOLARSRC}) {
- print " OpenOffice master version\n";
- print " command to install Office not implementet yet\n";
- exit(1);
- }
- else {
- print "Could not determine environment. Exit\n";
- exit(1);
- }
- return "$userland $sourcePath $destPath";
-;
-
-}
-
-sub getDestinationPath {
- # if (defined $ENV{SOLARROOT}){
- # # seems to be a Sun environment
- # if (! -e $OfficeDestinationPath){
-
- # }
- # }
- my $officeVersion = shift;
- my $officename;
-
- if (defined($ENV{LOCALINSTALLDIR})){
- $OfficeDestinationPath=$ENV{LOCALINSTALLDIR};
- if(index($OfficeDestinationPath," ") >= 0) {
- my $msg="You environemt variable '\$LOCALINSTALLDIR=$OfficeDestinationPath' contains white spaces.";
- $msg = $msg." This is not allowed!";
- print_error($msg, "1");
- }
- }
- if (!defined($OfficeDestinationPath)){
- $officename = $officeVersion;
- if (defined($ENV{CWS_WORK_STAMP})){
- $officename=$ENV{CWS_WORK_STAMP};
- }
- $OfficeDestinationPath=$temp_path.$PS.$user.$PS."office".$PS.$officename;
- }
-
- return $OfficeDestinationPath;
-}
-
-# sub getInstset {
-
-# my ($INSTSET, $NEWINSTSET, $ProductName);
-
-# if (defined ($ENV{EPM}) && ($ENV{EPM} eq 'NO') && ($gui eq "UNX")) { # we do the install ourselves ...
-# return ();
-# }
-
-# print "get Instset\n" if $debug;
-# $NEWINSTSET = "";
-
-# if (!isLocalEnv() and !defined($ENV{CWS_WORK_STAMP}) and (-e $SHIP) and ($gui ne $cygwin)) {
-# ($NEWINSTSET, $INSTSET) = getSetFromServer();
-# }
-# else {
-# ($NEWINSTSET, $INSTSET, $ProductName) = getInstsetFomInstsetNative();
-# }
-# return ($NEWINSTSET, $INSTSET);
-# }
-
-# sub getSetFromServer {
-# my ($DirName, $SetupFullPath);
-# my $workspace = $ENV{WORK_STAMP};
-# my $platform = $ENV{INPATH};
-# my $latestset;
-# my (@DirArray, $mask, $buildid, $milestone);
-
-# foreach my $pointer (@PRODUCT) {
-# my $ProductName = $pointer->{'Name'};
-
-# print "##PRODUCT: $ProductName\n";
-# my $SetupFullPath = "$SHIP$ENV{INPATH}$PS$ProductName$PS$packpackage$PS";
-# if ( ! ( $workspace && $platform ) ) {
-# print_error ( "Error: environment not set correctly.", 1);
-# }
-# # get latest broadcastet milestone and pack number
-# ($milestone, $buildid) = get_milestoneAndBuildID( $workspace, $platform );
-
-# if (defined $ENV{CWS_WORK_STAMP}) {
-# # /unxlngi6.pro/StarOffice/rpm/ SRC680_m245_native_packed-2_en-US.9267/
-# $mask = "^$workspace" . "_" . $milestone . "_native_packed-(\\d+)_en-US\\.$buildid";
-# } else {
-# # cws03/os110/OOH680/src.m4/instset_native/unxlngi6.pro/StarOffice/rpm install/en-US/RPMS
-# $mask = "^$workspace" . "_" . $milestone . "_native_packed-(\\d+)_en-US\\.$buildid";
-# }
-# print "MASK: $mask\n";
-# $global_instset_mask = $mask;
-# getSubFiles ($SetupFullPath, \@DirArray, $mask);
-# @DirArray = sort InstsetSort @DirArray;
-
-# if ($#DirArray > -1) {
-# $latestset = $DirArray [$#DirArray];
-# $DirName = $latestset;
-# }
-# else {
-# print_error ("Cannot find install set $SetupFullPath for $workspace $milestone", 2);
-# }
-
-# print "Latest install sets: $latestset\n" if $debug;
-
-# print "$DirName\t $SetupFullPath\n" if $debug;
-# # compare with file system
-# # at the moment just the existence is checked. For security reasons it might be
-# # better to additionally check whether there are newer sets (this must not happen,
-# # but who knows ...)
-# if ( -d $SetupFullPath ) {
-# # if found => return and don't continue searching
-# # this is usefull to set a priority to find installsets in @PRODUCT
-# # first comes, first wins
-# return ($DirName, $SetupFullPath);
-# }
-# }
-
-# # compare with file system
-# # at the moment just the existence is checked. For security reasons it might be
-# # better to additionally check whether there are newer sets (this must not happen,
-# # but who knows ...)
-# if ( -d $SetupFullPath ) {
-# return ($DirName, $SetupFullPath);
-# } else {
-# print_error ("Cannot find install set $SetupFullPath for $workspace $milestone", 2);
-# }
-# }
-
-# sub get_milestoneAndBuildID {
-# my ( $ws, $pf ) = @_;
-# my ($milestone, $buildid, $upd, $path, $updext, $line);
-
-# if ( $ws =~ /^\D+(\d+)$/) {
-# $upd = $1;
-# }
-
-# if (defined ($ENV{UPDMINOREXT})) {
-# $updext = $ENV{UPDMINOREXT};
-# }
-# else {
-# $updext = "";
-# }
-
-# $path = "$ENV{SOLARVER}$PS$pf$PS" . "inc$updext$PS$upd" . "minor.mk";
-# print "$path\n" if $debug;
-# local *MINORMK;
-
-# if ( !open(MINORMK,$path) ) {
-# print "FATAL: can't open $path\n";
-# return (0,0);
-# }
-
-# if (!eof(MINORMK)) {
-# while ($line = <MINORMK>) {
-# chomp($line);
-# if ( $line =~ /LAST_MINOR=(\w+)/ ) {
-# $milestone = $1;
-# }
-# elsif ( $line =~ /BUILD=(\d+)/ ) {
-# $buildid = $1;
-# }
-# }
-
-# close(MINORMK);
-# }
-# if (!defined($milestone)) {
-# print_error ("Milestone ist not defined!", 2);
-# }
-# if (!defined($buildid)) {
-# print_error ("Build-ID ist not defined!", 2);
-# }
-
-# return ($milestone, $buildid);
-# }
-
-sub print_error
-{
- my $message = shift;
- my $error_code = shift;
-
- print STDERR "ERROR: $message\n";
- doExit($error_code);
-}
-
-sub getSubFiles {
- my ($startDir, $DirArray_ref, $mask) = @_;
- my ($dir);
- local *DIR;
- opendir(DIR,"$startDir");
- while($dir = readdir(DIR)) {
- if (($dir =~ /\.$/) or ($dir !~ /$mask/)) {
- next;
- }
- push (@{$DirArray_ref}, "$dir");
- }
- closedir(DIR);
-
-}
-
-sub InstsetSort {
- my ($a1, $b1);
- if ($a =~ /$global_instset_mask/) {
- $a1 = $1;
- }
- if ($b =~ /$global_instset_mask/) {
- $b1 = $1;
- }
- $a1 <=> $b1;
-}
-
-sub isLocalEnv {
- my $returnvalue = 0;
- if (defined ($ENV{SOL_TMP}) && defined ($ENV{SOLARVERSION})) {
- my $mask = $ENV{SOL_TMP};
- $mask =~ s/\\/\\\\/;
- print "Mask: $mask\n" if $debug;
- if ($ENV{SOLARVERSION}=~ /$mask/) {
- $returnvalue = 1;
- }
- }
- return $returnvalue;
-}
-
-sub getSubDirs {
- my ($startDir, $DirArray_ref) = @_;
- my ($dir);
- opendir(DIR,"$startDir");
- while($dir = readdir(DIR)) {
- if (($dir !~ /\.$/) and ( -d "$startDir$dir") ) {
- push (@{$DirArray_ref}, "$dir");
- }
- }
- closedir(DIR);
-
-}
-
-sub findSubDir {
- my ($DirArray_ref) = @_;
- my (@sortedArray, $dir, $instdir);
- @sortedArray = sort langsort @{$DirArray_ref};
- print "Langs: @sortedArray\n" if $is_command_infos;
- foreach $dir (@sortedArray) {
- if ($dir =~ /log$/) {
- next;
- }
- $instdir = "$dir";
- return $instdir;
- }
- return "";
-}
-
-sub langsort {
- if ($a eq $prefered_lang) {
- return -1;
- }
- elsif ($b eq $prefered_lang) {
- return 1;
- }
- else {
- $a cmp $b;
- }
-}
-
-sub doExit
-{
- my $error_code = shift;
- # if ($sversion_saved) {
- # restore_sversion ($SVERSION_INI);
- # }
- # if ($is_remove_on_error) {
- # if ($is_do_deinstall) {
- # deinstallInstallation ($installpath);
- # }
- # removeInstallation($installpath);
- # }
- # else {
- # print_notRemoved ($installpath);
- # }
- if ( $error_code ) {
- print STDERR "\nFAILURE: $script_name aborted.\n";
- }
- exit($error_code);
-
-}
-
-
-sub parseArgs
-{
- for (my $i=0; $i<=$#ARGV; $i++) {
- if ( $ARGV[$i] =~ /^-cwscheckapi$/ ) {
- my $value = $ARGV[++$i];
- if ($value =~ /^true$/ || ($value =~ /^1$/) ) {
- $cwsCheckApi = 1;
- $cleanup = 1;
- $autorun = 1;
- };
-
- }
-
- if ( $ARGV[$i] =~ /^-dest$/ ) {
- $OfficeDestinationPath = $ARGV[++$i];
- }
-
- if ( $ARGV[$i] =~ /^-cleanup$/ ) {
- my $value = $ARGV[++$i];
- if ($value =~ /^true$/ || ($value =~ /^1$/ )) { $cleanup = 1 };
- }
-
- if ( $ARGV[$i] =~ /^-autorun$/ ) {
- my $value = $ARGV[++$i];
- if ($value =~ /^true$/ || ($value =~ /^1$/ )) { $autorun = 1 };
- }
-
- if ( $ARGV[$i] =~ /^-autoimpress$/ ) {
- my $value = $ARGV[++$i];
- if ($value =~ /^true$/ || ($value =~ /^1$/ )) { $autoimpress = 1 };
- }
-
- if ( $ARGV[$i] =~ /^-debug$/ ) {
- my $value = $ARGV[++$i];
- if ($value =~ /^true$/ || ($value =~ /^1$/ )) { $debug = 1 };
- }
-
- if ( $ARGV[$i] =~ /^-ooo$/ ) {
- my $value = $ARGV[++$i];
- if ($value =~ /^true$/ || ($value =~ /^1$/ )) { $is_ooo = 1 };
- }
- }
-
-}
-
-sub getSubDirsFullPath {
- my ($startDir, $DirArray_ref) = @_;
- my ($dir);
- opendir(DIR,"$startDir");
- while($dir = readdir(DIR)) {
- if (($dir !~ /\.$/) and ( -d "$startDir$dir") ) {
- push (@{$DirArray_ref}, "$startDir$dir");
- }
- }
- closedir(DIR);
-}
-
-sub errorFromOpen {
- my ($file) = @_;
- print_error( "can not open $file", "1");
-}
-
diff --git a/solenv/bin/macosx-change-install-names.pl b/solenv/bin/macosx-change-install-names.pl
index b7530e4f5e98..6f824f34ff0c 100644
--- a/solenv/bin/macosx-change-install-names.pl
+++ b/solenv/bin/macosx-change-install-names.pl
@@ -39,13 +39,17 @@ sub action($$$)
'app/BRAND/OOO' => '@executable_path/../basis-link/program',
'app/NONE/URELIB' => '@__VIA_LIBRARY_PATH__',
'app/NONE/OOO' => '@__VIA_LIBRARY_PATH__',
+ 'app/NONE/NONE' => '@__VIA_LIBRARY_PATH__',
'shl/URELIB/URELIB' => '@loader_path',
'shl/OOO/URELIB' => '@loader_path/../ure-link/lib',
'shl/OOO/OOO' => '@loader_path',
- 'shl/OXT/URELIB' => '@executable_path/urelibs');
+ 'shl/OXT/URELIB' => '@executable_path/urelibs',
+ 'shl/NONE/URELIB' => '@__VIA_LIBRARY_PATH__',
+ 'shl/NONE/OOO' => '@__VIA_LIBRARY_PATH__',
+ 'shl/NONE/NONE' => '@__VIA_LIBRARY_PATH__');
my ($type, $loc1, $loc2) = @_;
my $act = $action{"$type/$loc1/$loc2"};
- die "illegal combination $type/$loc/$2" unless defined $act;
+ die "illegal combination $type/$loc1/$loc2" unless defined $act;
return $act;
}
diff --git a/solenv/bin/modules/installer/globals.pm b/solenv/bin/modules/installer/globals.pm
index 5e30b8aefd91..72ab0215dbcf 100644
--- a/solenv/bin/modules/installer/globals.pm
+++ b/solenv/bin/modules/installer/globals.pm
@@ -235,7 +235,7 @@ BEGIN
$mergefiles_added_into_collector = 0;
$creating_windows_installer_patch = 0;
- $strip = 1;
+ $strip = $ENV{DISABLE_STRIP} eq '';
$solarjava = 0;
$jdklib = "";
$jrepath = "";
@@ -515,13 +515,12 @@ BEGIN
if ( $plat =~ /darwin/i )
{
$libextension = "\.dylib";
- $archiveformat = ".dmg";
}
else
{
$libextension = "\.so";
- $archiveformat = ".tar.gz";
}
+ $archiveformat = ".tar.gz";
$quote = "\'";
$isunix = 1;
$iswin = 0;
diff --git a/solenv/bin/modules/installer/parameter.pm b/solenv/bin/modules/installer/parameter.pm
index e95df98e64cc..0961b598902f 100644
--- a/solenv/bin/modules/installer/parameter.pm
+++ b/solenv/bin/modules/installer/parameter.pm
@@ -276,7 +276,6 @@ sub setglobalvariables
if ( $installer::globals::compiler =~ /wnt(msc|gcc)i/ )
{
$installer::globals::iswindowsbuild = 1;
- if ( $installer::globals::installertypedir eq "" ) { $installer::globals::installertypedir = "msi"; }
}
if ( $installer::globals::compiler =~ /unxso[lg][siux]/ )
diff --git a/solenv/bin/modules/installer/simplepackage.pm b/solenv/bin/modules/installer/simplepackage.pm
index f151846445c1..9666ef3e1af5 100644
--- a/solenv/bin/modules/installer/simplepackage.pm
+++ b/solenv/bin/modules/installer/simplepackage.pm
@@ -354,13 +354,16 @@ sub replace_variables_in_scriptfile
#############################################
# Creating the "simple" package.
# "zip" for Windows
-# "dmg" on Mac OS X
# "tar.gz" for all other platforms
+# additionally "dmg" on Mac OS X
#############################################
sub create_package
{
- my ( $installdir, $packagename, $allvariables, $includepatharrayref, $languagestringref ) = @_;
+ my ( $installdir, $archivedir, $packagename, $allvariables, $includepatharrayref, $languagestringref, $format ) = @_;
+
+ installer::logger::print_message( "... creating $installer::globals::packageformat file ...\n" );
+ installer::logger::include_header_into_logfile("Creating $installer::globals::packageformat file:");
# moving dir into temporary directory
my $pid = $$; # process id
@@ -372,9 +375,9 @@ sub create_package
installer::systemactions::rename_directory($installdir, $tempdir);
# creating new directory with original name
- installer::systemactions::create_directory($installdir);
+ installer::systemactions::create_directory($archivedir);
- my $archive = $installdir . $installer::globals::separator . $packagename . $installer::globals::archiveformat;
+ my $archive = $archivedir . $installer::globals::separator . $packagename . $format;
if ( $archive =~ /zip$/ )
{
@@ -391,7 +394,6 @@ sub create_package
}
elsif ( $archive =~ /dmg$/ )
{
- installer::worker::put_scpactions_into_installset("$tempdir/$packagename");
my $folder = (( -l "$tempdir/$packagename/Applications" ) or ( -l "$tempdir/$packagename/opt" )) ? $packagename : "\.";
if ( $allvariables->{'PACK_INSTALLED'} ) {
@@ -606,10 +608,22 @@ sub create_simple_package
}
}
+ # Work around Windows problems with long pathnames (see issue 50885) by
+ # putting the to-be-archived installation tree into the temp directory
+ # instead of the module output tree (unless LOCALINSTALLDIR dictates
+ # otherwise, anyway); can be removed once issue 50885 is fixed:
+ my $tempinstalldir = $installdir;
+ if ( $installer::globals::iswindowsbuild &&
+ $installer::globals::packageformat eq "archive" &&
+ !$installer::globals::localinstalldirset )
+ {
+ $tempinstalldir = File::Temp::tempdir;
+ }
+
# Creating subfolder in installdir, which shall become the root of package or zip file
my $subfolderdir = "";
- if ( $packagename ne "" ) { $subfolderdir = $installdir . $installer::globals::separator . $packagename; }
- else { $subfolderdir = $installdir; }
+ if ( $packagename ne "" ) { $subfolderdir = $tempinstalldir . $installer::globals::separator . $packagename; }
+ else { $subfolderdir = $tempinstalldir; }
if ( ! -d $subfolderdir ) { installer::systemactions::create_directory($subfolderdir); }
@@ -756,23 +770,19 @@ sub create_simple_package
installer::logger::include_header_into_logfile("Registering extensions:");
register_extensions($subfolderdir, $languagestringref);
- # Adding scpactions for mac installations sets, that use not dmg format. Without scpactions the
- # office does not start.
-
- if (( $installer::globals::packageformat eq "installed" ) && ( $installer::globals::compiler =~ /^unxmacx/ ))
+ if ( $installer::globals::compiler =~ /^unxmacx/ )
{
installer::worker::put_scpactions_into_installset("$installdir/$packagename");
}
# Creating archive file
- if (( $installer::globals::packageformat eq "archive" ) || ( $installer::globals::packageformat eq "dmg" ))
+ if ( $installer::globals::packageformat eq "archive" )
+ {
+ create_package($tempinstalldir, $installdir, $packagename, $allvariables, $includepatharrayref, $languagestringref, $installer::globals::archiveformat);
+ }
+ elsif ( $installer::globals::packageformat eq "dmg" )
{
- # creating a package
- # -> zip for Windows
- # -> tar.gz for all other platforms
- installer::logger::print_message( "... creating $installer::globals::packageformat file ...\n" );
- installer::logger::include_header_into_logfile("Creating $installer::globals::packageformat file:");
- create_package($installdir, $packagename, $allvariables, $includepatharrayref, $languagestringref);
+ create_package($installdir, $installdir, $packagename, $allvariables, $includepatharrayref, $languagestringref, ".dmg");
}
# Analyzing the log file
diff --git a/solenv/bin/receditor b/solenv/bin/receditor
index 1011aeb5d826..1b4046010485 100755
--- a/solenv/bin/receditor
+++ b/solenv/bin/receditor
@@ -3,4 +3,4 @@ if [ x${SOLARENV}x = xx ]; then
echo No environment found, please use 'configure' or 'setsolar'
exit 1
fi
-exec java -DSOLARSRC=${SOLARSRC} -DWORK_STAMP=${WORK_STAMP} -DUSE_SHELL= -jar ${SOLARVER}/${INPATH}/bin${UPDMINOREXT}/receditor.jar
+exec java -DSOLARSRC=${SOLARSRC} -DWORK_STAMP=${WORK_STAMP} -jar ${SOLARVER}/${INPATH}/bin${UPDMINOREXT}/receditor.jar
diff --git a/solenv/bin/reportErrorCheckAPI.btm b/solenv/bin/reportErrorCheckAPI.btm
deleted file mode 100755
index 4340ad347259..000000000000
--- a/solenv/bin/reportErrorCheckAPI.btm
+++ /dev/null
@@ -1,17 +0,0 @@
-set ERRORCODE=%1%
-iff exist %SOLARENV%/bin/cwstestresult.pl then
- iff %ERRORCODE% EQ 0 then
- set PT_STATUS=%2%
- else
- iff %ERRORCODE% EQ 1 then
- set PT_STATUS=failed
- else
- set PT_STATUS=incomplete
- endiff
- endiff
-
- set CWSENV=Windows
- call perl5 %SOLARENV%/bin/cwstestresult.pl -c %CWS_WORK_STAMP% -n CWSCheckAPI -p %CWSENV% %PT_STATUS%
-else
- echo "No cwstestresult.pl found."
-endiff
diff --git a/solenv/bin/subsequenttests b/solenv/bin/subsequenttests
new file mode 100755
index 000000000000..f0d86db89101
--- /dev/null
+++ b/solenv/bin/subsequenttests
@@ -0,0 +1,131 @@
+eval 'exec "$PERL" -Sw "$0" "$@"'
+ if 0;
+#*************************************************************************
+#
+# 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.
+#
+#***********************************************************************/
+
+use lib("$ENV{SOLARENV}/bin/modules");
+use SourceConfig;
+
+my $max_running = 1;
+while (@ARGV) {
+ my $arg = shift(@ARGV);
+ if ($arg =~ /^-P([1-9]\d*)$/) {
+ $max_running = $1;
+ } elsif ($arg eq '--') {
+ last;
+ } else {
+ print STDERR "unknown argument \"$arg\"\n";
+ print STDERR "usage: $0 [-P<n>] [-- <args>]\n";
+ print STDERR " -P<n> number of parallel dmake invocations\n";
+ print STDERR " <args> are passed to dmake invocations\n";
+ exit(1);
+ }
+}
+
+my @testpaths = ();
+my $sc = SourceConfig->new();
+my $module;
+foreach $module ($sc->get_active_modules()) {
+ my $buildlst = $sc->get_module_build_list($module);
+ next unless defined($buildlst);
+ my %deps = ();
+ open(BUILDLST, $buildlst) or die("cannot open $buildlst");
+ while (<BUILDLST>) {
+ next unless
+ /^\s*\w+\s+(\S+)\s+nmake\s+-\s+all\s+(\S+)(\s+(:?\S+\s+)*)NULL\s*$/;
+ my ($dir, $id, $ids) = ($1, $2, $3);
+ $dir =~ s|\\|/|g;
+ $dir =~ s|^[^/]+||;
+ my $path = $sc->get_module_path($module) . $dir;
+ my $makefile = $path . '/makefile.mk';
+ open(MAKEFILE, $makefile) or die("cannot open $makefile");
+ while (<MAKEFILE>) {
+ if (/\bOOO_SUBSEQUENT_TESTS\b/) {
+ push(@testpaths, $path);
+ $deps{$id} = $ids;
+ last;
+ }
+ }
+ close(MAKEFILE);
+ }
+ close(BUILDLST);
+ my $id1;
+ foreach $id1 (keys(%deps)) {
+ my ($id2, $ids);
+ while (($id2, $ids) = each(%deps)) {
+ $ids !~ /\s\Q$id1\E\s/ or die("$module: $id2 depends on $id1");
+ }
+ }
+}
+
+my $cmd = 'dmake';
+foreach (@ARGV) {
+ s/'/'\''/g;
+ $cmd .= " '" . $_ . "'";
+}
+$cmd .= ' 2>&1 |';
+
+my %pids = ();
+my @failedpaths = ();
+my $running = 0;
+my $counter = 0;
+while (@testpaths || $running > 0) {
+ while (@testpaths && $running < $max_running) {
+ my $testpath = shift(@testpaths);
+ ++$counter;
+ print("$counter: make $testpath\n");
+ my $pid = fork();
+ defined($pid) or die("$counter: $!");
+ if ($pid == 0) {
+ chdir($testpath) or die("$counter: $!");
+ $ENV{'OOO_SUBSEQUENT_TESTS'} = 'x';
+ open(OUTPUT, $cmd) or die("$counter: $!");
+ while (<OUTPUT>) {
+ s/\r?\n$//;
+ print("$counter: $_\n");
+ }
+ close(OUTPUT);
+ exit($? == 0 ? 0 : 1);
+ }
+ $pids{$pid} = $testpath;
+ ++$running;
+ }
+ my $pid = wait();
+ $pid != -1 or die($!);
+ my $testpath = delete($pids{$pid});
+ defined($testpath) or die("unmatched PID $pid");
+ if ($? != 0) {
+ @testpaths = ();
+ push(@failedpaths, $testpath);
+ }
+ --$running;
+}
+my $failedpath;
+foreach $failedpath (@failedpaths) {
+ print STDERR "failed in $failedpath\n";
+}
+exit(scalar(@failedpaths) == 0 ? 0 : 1);
diff --git a/solenv/config/sdev300.ini b/solenv/config/sdev300.ini
index f91d003dc25e..878ae45c99f0 100644
--- a/solenv/config/sdev300.ini
+++ b/solenv/config/sdev300.ini
@@ -8,7 +8,7 @@ common
BIG_SVX TRUE
BMP_WRITES_FLAG TRUE
BUILD_SPECIAL TRUE
- BUILD_TYPE SO OOo EXT BINFILTER BITSTREAM_VERA_FONTS BSH CURL DICTIONARIES HSQLDB HUNSPELL HYPHEN JPEG LIBXML2 LIBXMLSEC LPSOLVE MOZ NEON TWAIN PYTHON ZLIB SANE UNIXODBC X11_EXTENSIONS LIBWPD EPM QADEVOOO ODK MSFONTEXTRACT MATHMLDTD BOOST EXPAT CRASHREP BERKELEYDB LIBXSLT SUN AGG GTK ICU SYSTRAY_GTK JAVAINSTALLER2 VIGRA OPENSSL JFREEREPORT APACHE_COMMONS TOMCAT REPORTBUILDER SDEXT SWEXT XPDF LUCENE REDLAND SAXON WRITER2LATEX NSS L10N GRAPHITE MYSQLCPPCONN MYSQLC
+ BUILD_TYPE SO OOo EXT BINFILTER BITSTREAM_VERA_FONTS BSH CURL DICTIONARIES HSQLDB HUNSPELL HYPHEN JPEG LIBXML2 LIBXMLSEC LPSOLVE MOZ NEON TWAIN PYTHON ZLIB SANE UNIXODBC X11_EXTENSIONS LIBWPD EPM QADEVOOO ODK MSFONTEXTRACT MATHMLDTD BOOST EXPAT CRASHREP BERKELEYDB LIBXSLT SUN AGG GTK ICU SYSTRAY_GTK JAVAINSTALLER2 VIGRA OPENSSL JFREEREPORT APACHE_COMMONS TOMCAT REPORTBUILDER SDEXT SWEXT XPDF LUCENE REDLAND SAXON WRITER2LATEX NSS L10N GRAPHITE MYSQLCPPCONN MYSQLC CPPUNIT
common_build TRUE
COMMON_OUTDIR common
CONFIG_PROJECT config_office
@@ -36,6 +36,7 @@ common
NEW_JAR_PACK TRUE
NO_REC_RES TRUE
OOODMAKEMODE YES
+ OOO_SHELL /bin/bash
PCLEAN_PATH xxx
RES_ENUS TRUE
RES_GER TRUE
@@ -105,11 +106,6 @@ common
{
LU_RFLAG r_only
}
- shell
- {
- SHELL %STAR_USE_SHELL%
- USE_SHELL %STAR_USE_SHELL%
- }
tmp
{
SOL_TMP %SOL_TMP_DIR%
@@ -126,7 +122,7 @@ common
SRC_ROOT
UPDATER
}
- order minorext common:2 common:3 pro:0 pro:1 common common:0 cwsname common:1 shell tmp crashdump maxproc hg r_only nosource
+ order minorext common:2 common:3 pro:0 pro:1 common common:0 cwsname common:1 tmp crashdump maxproc hg r_only nosource
reset
{
ALT_L10N_MODULE
@@ -170,7 +166,6 @@ common
pro
maxproc MAXPROCESS
r_only
- shell STAR_USE_SHELL
tmp SOL_TMP_DIR
verbose VERBOSE
}
@@ -205,6 +200,7 @@ finish
BISON_HAIRY %SOLARROOT%$/btools$/bison.hairy
BISON_SIMPLE %SOLARROOT%$/btools$/bison.simple
DPKG %BUILD_TOOLS%$/dpkg
+ OOO_JUNIT_JAR %SOLARROOT%$/btools$/junit-4.8.1.jar
PATH .$:$cp(%SOLARENV%$/bin)$:$cp(%COMMON_BUILD_TOOLS%)$:$cp(%BUILD_TOOLS%$/dmake412)$:$cp(%BUILD_TOOLS%)$:$cp(%COMMON_ENV_TOOLS%)$:$cp(%ENV_TOOLS%)$:$cp(%COMPATH%$/bin)$:$cp(%JDKPATH%)$:$cp(%PATHEXTRA%)$:%PATH%
PATH_SEPERATOR $;
SOLARINC -I%SOLAR_STLPATH% -I%SOLARVERSION%$/%INPATH%$/inc%UPDMINOREXT%$/external %SOLARINCLUDES%
@@ -212,6 +208,7 @@ finish
SOLARSRC %SRC_ROOT%
SOURCE_ROOT_DIR $expand(%SOLARSRC%/..)
ANT_HOME %COMMON_BUILD_TOOLS%$/apache-ant-1.7.1
+ DBGSV_INIT %SOLARENV%/bin/dbgsv.ini
}
common_2:0 IF X%CWS_WORK_STAMP%X == XX
{
@@ -2217,7 +2214,6 @@ unxubti8
SOLAR_PLUGIN TRUE
SO_PACK %SOLAR_ENV_ROOT%/pack/%WORK_STAMP%
SRC_ROOT %SOLAR_SOURCE_ROOT%/%WORK_STAMP%/ooo%UPDMINOREXT%
- USE_SHELL tcsh
VBA_EXTENSION NO
WITH_LANG en-US de
XAU_LIBS -lXau
@@ -2297,10 +2293,6 @@ unxubti8
{
PROSWITCH -DPRODUCT
}
- shell
- {
- USE_SHELL STAR_USE_SHELL
- }
sourceroot:0 IF X%SOURCE_ROOT%X != XX
{
SOLAR_SOURCE_ROOT %SOURCE_ROOT%
@@ -2442,7 +2434,6 @@ wntgcci1
{
SOLAR_ENV_ROOT r:
SOLAR_SOURCE_ROOT o:
- USE_SHELL bash
}
common1
{
@@ -2548,10 +2539,6 @@ wntgcci1
{
PSDK %STAR_PSDK%
}
- shell
- {
- USE_SHELL STAR_USE_SHELL
- }
sourceroot:0 if X%SOURCE_ROOT%X != XX
{
SOLAR_SOURCE_ROOT %SOURCE_ROOT%
@@ -2629,7 +2616,6 @@ wntgcci1
l10n L10N_framework
pro
psdk STAR_PSDK
- shell STAR_USE_SHELL
sourceroot
}
}
@@ -2718,7 +2704,6 @@ wntmsci11
BS_ROOT n:
SOLAR_ENV_ROOT r:
SOLAR_SOURCE_ROOT o:
- USE_SHELL 4nt
}
common1
{
@@ -2728,6 +2713,7 @@ wntmsci11
DSDK %SOLAR_ENV_ROOT%$/msvc8p$/DirectXSDK
FSDK %SOLAR_ENV_ROOT%$/msvc8p$/Sdk$/v2.0
PERL %SOLAR_ENV_ROOT%$/btw$/perl$/bin$/perl
+ PKGFORMAT msi
PSDK %SOLAR_ENV_ROOT%$/msvc8p$/PlatformSDK
SHARED_COM_SDK_PATH %SOLAR_ENV_ROOT%$/msvc8p$/Common7$/ide
SHARED_SOLARENV %SOLAR_SOURCE_ROOT%$/%WORK_STAMP%$/ooo%UPDMINOREXT%$/solenv
@@ -2827,10 +2813,6 @@ wntmsci11
{
PSDK %STAR_PSDK%
}
- shell
- {
- use_shell STAR_USE_SHELL
- }
sourceroot:0 if X%SOURCE_ROOT%X != XX
{
SOLAR_SOURCE_ROOT %SOURCE_ROOT%
@@ -2883,7 +2865,6 @@ wntmsci11
l10n L10N_framework
pro
psdk STAR_PSDK
- shell STAR_USE_SHELL
sourceroot
}
}
@@ -2992,8 +2973,6 @@ wntmsci12
BS_ROOT n:
SOLAR_ENV_ROOT r:
SOLAR_SOURCE_ROOT o:
- USE_SHELL bash
- STAR_USE_SHELL bash
BTOOLDIR %WORK_STAMP%$/cygtools
PERLDIR btw$/%WORK_STAMP%$/cygtools$/perl
}
@@ -3011,6 +2990,7 @@ wntmsci12
F20SDK %SOLAR_ENV_ROOT%$/msvc9p$/Sdk$/v2.0
NSIS_PATH %SOLAR_ENV_ROOT%$/NSIS_242_unicode
PERL %SOLAR_ENV_ROOT%$/%PERLDIR%
+ PKGFORMAT msi
PSDK %SOLAR_ENV_ROOT%$/msvc9p$/PlatformSDK$/V6.1
SHARED_COM_SDK_PATH %SOLAR_ENV_ROOT%$/msvc9p$/Common7$/ide
SHARED_SOLARENV %SOLAR_SOURCE_ROOT%$/%WORK_STAMP%$/ooo%UPDMINOREXT%$/solenv
@@ -3226,7 +3206,6 @@ wntmsci12
ojdk16path
pro
psdk STAR_PSDK
- shell STAR_USE_SHELL
sourceroot
tmp SOL_TMP_DIR
}
@@ -3336,8 +3315,6 @@ wntmsci13
BS_ROOT n:
SOLAR_ENV_ROOT r:
SOLAR_SOURCE_ROOT o:
- USE_SHELL bash
- STAR_USE_SHELL bash
BTOOLDIR %WORK_STAMP%$/cygtools
PERLDIR btw$/%WORK_STAMP%$/cygtools$/perl
}
@@ -3355,6 +3332,7 @@ wntmsci13
F20SDK %SOLAR_ENV_ROOT%$/msvc9p$/Sdk$/v2.0
NSIS_PATH %SOLAR_ENV_ROOT%$/NSIS_242_unicode
PERL %SOLAR_ENV_ROOT%$/%PERLDIR%
+ PKGFORMAT msi
PSDK %SOLAR_ENV_ROOT%$/msvc9p$/PlatformSDK$/V6.1
SHARED_COM_SDK_PATH %SOLAR_ENV_ROOT%$/msvc9p$/Common7$/ide
SHARED_SOLARENV %SOLAR_SOURCE_ROOT%$/%WORK_STAMP%$/ooo%UPDMINOREXT%$/solenv
@@ -3569,7 +3547,6 @@ wntmsci13
ojdk16path
pro
psdk STAR_PSDK
- shell STAR_USE_SHELL
sourceroot
tmp SOL_TMP_DIR
}
diff --git a/solenv/config/ssolar.cmn b/solenv/config/ssolar.cmn
index e8c0a71feaa6..54eda38b47f9 100644
--- a/solenv/config/ssolar.cmn
+++ b/solenv/config/ssolar.cmn
@@ -101,6 +101,7 @@ common
ENABLE_NAS
ENABLE_PCH
SYSTEM_CURL
+ SYSTEM_CPPUNIT
SYSTEM_FREETYPE
FREETYPE_CFLAGS
FREETYPE_LIBS
@@ -161,6 +162,8 @@ common
ODBCPATH
ODBCVER
OLD_CHAOS
+ OOO_JUNIT_JAR
+ OOO_SHELL
PACKMS
PCLEAN_PATH
PKGCONFIG_ROOT
@@ -243,7 +246,6 @@ common
USE_MAPFILES
USE_NEW_SDK
USE_PCH
- USE_SHELL
USE_SYSTEM_STL
use_cygcp
use_shl_versions
@@ -273,6 +275,7 @@ common
HAVE_LD_HASH_STYLE
JAVACOMPILER
JAVADOC
+ JAVAIFLAGS
JDK
NO_HIDS
PAM_LINK
@@ -283,7 +286,6 @@ common
SOLAR_PLUGIN
URE_BOOTSTRAP
USE_FT_EMBOLDEN
- USE_SHELL
USE_XINERAMA
VBA_EXTENSION
XINERAMA_LINK
diff --git a/solenv/inc/_cppunit.mk b/solenv/inc/_cppunit.mk
index 7aab2b0cdb13..8d9e45d33331 100644
--- a/solenv/inc/_cppunit.mk
+++ b/solenv/inc/_cppunit.mk
@@ -1,290 +1,120 @@
# 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
+ALLTAR : test1
+test1 .PHONY : $(SHL1TARGETN)
@echo ----------------------------------------------------------
- @echo - start unit test \#1 on library $(TEST1LIB)
+ @echo - start unit test \#1 on library $(SHL1TARGETN)
@echo ----------------------------------------------------------
-.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
- `which testshl2` $(TEST1LIB) $(TEST1OPT)
-.ELSE
- testshl2 $(TEST1LIB) $(TEST1OPT)
-.ENDIF
+ $(CPPUNITTESTER) $(SHL1TARGETN)
.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
+ALLTAR : test2
+test2 .PHONY : $(SHL2TARGETN)
@echo ----------------------------------------------------------
- @echo - start unit test \#2 on library $(TEST2LIB)
+ @echo - start unit test \#2 on library $(SHL2TARGETN)
@echo ----------------------------------------------------------
-.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
- `which testshl2` $(TEST2LIB) $(TEST2OPT)
-.ELSE
- testshl2 $(TEST2LIB) $(TEST2OPT)
-.ENDIF
+ $(CPPUNITTESTER) $(SHL2TARGETN)
.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
+ALLTAR : test3
+test3 .PHONY : $(SHL3TARGETN)
@echo ----------------------------------------------------------
- @echo - start unit test \#3 on library $(TEST3LIB)
+ @echo - start unit test \#3 on library $(SHL3TARGETN)
@echo ----------------------------------------------------------
-.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
- `which testshl2` $(TEST3LIB) $(TEST3OPT)
-.ELSE
- testshl2 $(TEST3LIB) $(TEST3OPT)
-.ENDIF
+ $(CPPUNITTESTER) $(SHL3TARGETN)
.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
+ALLTAR : test4
+test4 .PHONY : $(SHL4TARGETN)
@echo ----------------------------------------------------------
- @echo - start unit test \#4 on library $(TEST4LIB)
+ @echo - start unit test \#4 on library $(SHL4TARGETN)
@echo ----------------------------------------------------------
-.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
- `which testshl2` $(TEST4LIB) $(TEST4OPT)
-.ELSE
- testshl2 $(TEST4LIB) $(TEST4OPT)
-.ENDIF
+ $(CPPUNITTESTER) $(SHL4TARGETN)
.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
+ALLTAR : test5
+test5 .PHONY : $(SHL5TARGETN)
@echo ----------------------------------------------------------
- @echo - start unit test \#5 on library $(TEST5LIB)
+ @echo - start unit test \#5 on library $(SHL5TARGETN)
@echo ----------------------------------------------------------
-.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
- `which testshl2` $(TEST5LIB) $(TEST5OPT)
-.ELSE
- testshl2 $(TEST5LIB) $(TEST5OPT)
-.ENDIF
+ $(CPPUNITTESTER) $(SHL5TARGETN)
.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
+ALLTAR : test6
+test6 .PHONY : $(SHL6TARGETN)
@echo ----------------------------------------------------------
- @echo - start unit test \#6 on library $(TEST6LIB)
+ @echo - start unit test \#6 on library $(SHL6TARGETN)
@echo ----------------------------------------------------------
-.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
- `which testshl2` $(TEST6LIB) $(TEST6OPT)
-.ELSE
- testshl2 $(TEST6LIB) $(TEST6OPT)
-.ENDIF
+ $(CPPUNITTESTER) $(SHL6TARGETN)
.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
+ALLTAR : test7
+test7 .PHONY : $(SHL7TARGETN)
@echo ----------------------------------------------------------
- @echo - start unit test \#7 on library $(TEST7LIB)
+ @echo - start unit test \#7 on library $(SHL7TARGETN)
@echo ----------------------------------------------------------
-.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
- `which testshl2` $(TEST7LIB) $(TEST7OPT)
-.ELSE
- testshl2 $(TEST7LIB) $(TEST7OPT)
-.ENDIF
+ $(CPPUNITTESTER) $(SHL7TARGETN)
.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
+ALLTAR : test8
+test8 .PHONY : $(SHL8TARGETN)
@echo ----------------------------------------------------------
- @echo - start unit test \#8 on library $(TEST8LIB)
+ @echo - start unit test \#8 on library $(SHL8TARGETN)
@echo ----------------------------------------------------------
-.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
- `which testshl2` $(TEST8LIB) $(TEST8OPT)
-.ELSE
- testshl2 $(TEST8LIB) $(TEST8OPT)
-.ENDIF
+ $(CPPUNITTESTER) $(SHL8TARGETN)
.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
+ALLTAR : test9
+test9 .PHONY : $(SHL9TARGETN)
@echo ----------------------------------------------------------
- @echo - start unit test \#9 on library $(TEST9LIB)
+ @echo - start unit test \#9 on library $(SHL9TARGETN)
@echo ----------------------------------------------------------
-.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
- `which testshl2` $(TEST9LIB) $(TEST9OPT)
-.ELSE
- testshl2 $(TEST9LIB) $(TEST9OPT)
-.ENDIF
+ $(CPPUNITTESTER) $(SHL9TARGETN)
.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
+ALLTAR : test10
+test10 .PHONY : $(SHL10TARGETN)
@echo ----------------------------------------------------------
- @echo - start unit test \#10 on library $(TEST10LIB)
+ @echo - start unit test \#10 on library $(SHL10TARGETN)
@echo ----------------------------------------------------------
-.IF "$(OS)" == "LINUX" # full path needed by osl_getModuleURLFromAddress:
- `which testshl2` $(TEST10LIB) $(TEST10OPT)
-.ELSE
- testshl2 $(TEST10LIB) $(TEST10OPT)
-.ENDIF
+ $(CPPUNITTESTER) $(SHL10TARGETN)
.ENDIF
diff --git a/solenv/inc/_tg_shl.mk b/solenv/inc/_tg_shl.mk
index 93588874660f..3d91783988b9 100644
--- a/solenv/inc/_tg_shl.mk
+++ b/solenv/inc/_tg_shl.mk
@@ -143,7 +143,9 @@ SHL1VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL1VERSIONMAP)
$(USE_SHL1VERSIONMAP): $(SHL1OBJS) $(SHL1LIBS)
.ENDIF
-$(USE_SHL1VERSIONMAP): $(SHL1VERSIONMAP)
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL1VERSIONMAP) .ERRREMOVE: $(SHL1VERSIONMAP)
@@-$(RM) -f $@
# The following files will only be generated and needed on Mac OS X as temporary files
# in order to generate exported symbols list out of Linux/Solaris map files
@@ -693,7 +695,9 @@ SHL2VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL2VERSIONMAP)
$(USE_SHL2VERSIONMAP): $(SHL2OBJS) $(SHL2LIBS)
.ENDIF
-$(USE_SHL2VERSIONMAP): $(SHL2VERSIONMAP)
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL2VERSIONMAP) .ERRREMOVE: $(SHL2VERSIONMAP)
@@-$(RM) -f $@
# The following files will only be generated and needed on Mac OS X as temporary files
# in order to generate exported symbols list out of Linux/Solaris map files
@@ -1243,7 +1247,9 @@ SHL3VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL3VERSIONMAP)
$(USE_SHL3VERSIONMAP): $(SHL3OBJS) $(SHL3LIBS)
.ENDIF
-$(USE_SHL3VERSIONMAP): $(SHL3VERSIONMAP)
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL3VERSIONMAP) .ERRREMOVE: $(SHL3VERSIONMAP)
@@-$(RM) -f $@
# The following files will only be generated and needed on Mac OS X as temporary files
# in order to generate exported symbols list out of Linux/Solaris map files
@@ -1793,7 +1799,9 @@ SHL4VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL4VERSIONMAP)
$(USE_SHL4VERSIONMAP): $(SHL4OBJS) $(SHL4LIBS)
.ENDIF
-$(USE_SHL4VERSIONMAP): $(SHL4VERSIONMAP)
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL4VERSIONMAP) .ERRREMOVE: $(SHL4VERSIONMAP)
@@-$(RM) -f $@
# The following files will only be generated and needed on Mac OS X as temporary files
# in order to generate exported symbols list out of Linux/Solaris map files
@@ -2343,7 +2351,9 @@ SHL5VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL5VERSIONMAP)
$(USE_SHL5VERSIONMAP): $(SHL5OBJS) $(SHL5LIBS)
.ENDIF
-$(USE_SHL5VERSIONMAP): $(SHL5VERSIONMAP)
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL5VERSIONMAP) .ERRREMOVE: $(SHL5VERSIONMAP)
@@-$(RM) -f $@
# The following files will only be generated and needed on Mac OS X as temporary files
# in order to generate exported symbols list out of Linux/Solaris map files
@@ -2893,7 +2903,9 @@ SHL6VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL6VERSIONMAP)
$(USE_SHL6VERSIONMAP): $(SHL6OBJS) $(SHL6LIBS)
.ENDIF
-$(USE_SHL6VERSIONMAP): $(SHL6VERSIONMAP)
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL6VERSIONMAP) .ERRREMOVE: $(SHL6VERSIONMAP)
@@-$(RM) -f $@
# The following files will only be generated and needed on Mac OS X as temporary files
# in order to generate exported symbols list out of Linux/Solaris map files
@@ -3443,7 +3455,9 @@ SHL7VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL7VERSIONMAP)
$(USE_SHL7VERSIONMAP): $(SHL7OBJS) $(SHL7LIBS)
.ENDIF
-$(USE_SHL7VERSIONMAP): $(SHL7VERSIONMAP)
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL7VERSIONMAP) .ERRREMOVE: $(SHL7VERSIONMAP)
@@-$(RM) -f $@
# The following files will only be generated and needed on Mac OS X as temporary files
# in order to generate exported symbols list out of Linux/Solaris map files
@@ -3993,7 +4007,9 @@ SHL8VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL8VERSIONMAP)
$(USE_SHL8VERSIONMAP): $(SHL8OBJS) $(SHL8LIBS)
.ENDIF
-$(USE_SHL8VERSIONMAP): $(SHL8VERSIONMAP)
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL8VERSIONMAP) .ERRREMOVE: $(SHL8VERSIONMAP)
@@-$(RM) -f $@
# The following files will only be generated and needed on Mac OS X as temporary files
# in order to generate exported symbols list out of Linux/Solaris map files
@@ -4543,7 +4559,9 @@ SHL9VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL9VERSIONMAP)
$(USE_SHL9VERSIONMAP): $(SHL9OBJS) $(SHL9LIBS)
.ENDIF
-$(USE_SHL9VERSIONMAP): $(SHL9VERSIONMAP)
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL9VERSIONMAP) .ERRREMOVE: $(SHL9VERSIONMAP)
@@-$(RM) -f $@
# The following files will only be generated and needed on Mac OS X as temporary files
# in order to generate exported symbols list out of Linux/Solaris map files
@@ -5093,7 +5111,9 @@ SHL10VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL10VERSIONMAP)
$(USE_SHL10VERSIONMAP): $(SHL10OBJS) $(SHL10LIBS)
.ENDIF
-$(USE_SHL10VERSIONMAP): $(SHL10VERSIONMAP)
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL10VERSIONMAP) .ERRREMOVE: $(SHL10VERSIONMAP)
@@-$(RM) -f $@
# The following files will only be generated and needed on Mac OS X as temporary files
# in order to generate exported symbols list out of Linux/Solaris map files
diff --git a/solenv/inc/cppunit.mk b/solenv/inc/cppunit.mk
index 0659e68adad7..2173f1a9ff9a 100644
--- a/solenv/inc/cppunit.mk
+++ b/solenv/inc/cppunit.mk
@@ -27,15 +27,12 @@
# Helper makefile additional, to support
# dmake test
-# for testshl2 (cppunit testing)
+# for cppunittester (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
@@ -43,38 +40,17 @@
# $(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
+ALLTAR : test$(TNR)
+test$(TNR) .PHONY : $(SHL$(TNR)TARGETN)
@echo ----------------------------------------------------------
- @echo - start unit test \#$(TNR) on library $(TEST$(TNR)LIB)
+ @echo - start unit test \#$(TNR) on library $(SHL$(TNR)TARGETN)
@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
+ $(CPPUNITTESTER) $(SHL$(TNR)TARGETN)
.ENDIF
# unroll end
diff --git a/solenv/inc/installationtest.mk b/solenv/inc/installationtest.mk
new file mode 100644
index 000000000000..6aef79c1cd0f
--- /dev/null
+++ b/solenv/inc/installationtest.mk
@@ -0,0 +1,121 @@
+#*************************************************************************
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#***********************************************************************/
+
+.IF "$(OS)" == "WNT"
+my_file = file:///
+.ELSE
+my_file = file://
+.END
+
+# The following conditional is an approximation of: UPDATER set to YES and
+# SHIPDRIVE set and CWS_WORK_STAMP not set and either SOL_TMP not set or
+# SOLARENV set to a pathname of which SOL_TMP is not a prefix:
+.IF "$(UPDATER)" == "YES" && "$(SHIPDRIVE)" != "" && \
+ "$(CWS_WORK_STAMP)" == "" && "$(SOLARENV:s/$(SOL_TMP)//" == "$(SOLARENV)"
+my_instsets = $(shell ls -dt \
+ $(SHIPDRIVE)/$(INPATH)/OpenOffice/archive/$(WORK_STAMP)_$(UPDMINOR)_native_packed-*_$(defaultlangiso).$(BUILD))
+installationtest_instset = $(installationtest_instsets:1)
+.ELSE
+installationtest_instset = \
+ $(SOLARSRC)/instsetoo_native/$(INPATH)/OpenOffice/archive/install/$(defaultlangiso)
+.END
+
+.IF "$(OS)" == "WNT"
+installationtest_instpath = `cat $(MISC)/$(TARGET)/installation.flag`
+.ELSE
+installationtest_instpath = $(SOLARVERSION)/$(INPATH)/installation$(UPDMINOREXT)
+.END
+
+.IF "$(OS)" == "MACOSX"
+my_soffice = $(installationtest_instpath)/opt/OpenOffice.org.app/Contents/MacOS/soffice
+.ELIF "$(OS)" == "WNT"
+my_soffice = \
+ $(installationtest_instpath)'/opt/OpenOffice.org 3/program/soffice.exe'
+.ELSE
+my_soffice = $(installationtest_instpath)/opt/openoffice.org3/program/soffice
+.END
+
+.IF "$(OOO_LIBRARY_PATH_VAR)" != ""
+my_cppenv = \
+ -env:arg-env=$(OOO_LIBRARY_PATH_VAR)"$${{$(OOO_LIBRARY_PATH_VAR)+=$$$(OOO_LIBRARY_PATH_VAR)}}"
+my_javaenv = \
+ -Dorg.openoffice.test.arg.env=$(OOO_LIBRARY_PATH_VAR)"$${{$(OOO_LIBRARY_PATH_VAR)+=$$$(OOO_LIBRARY_PATH_VAR)}}"
+.END
+
+# Work around Windows problems with long pathnames (see issue 50885) by
+# installing into the temp directory instead of the module output tree (in which
+# case $(TARGET).installation.flag contains the path to the temp installation,
+# which is removed after smoketest); can be removed once issue 50885 is fixed;
+# on other platforms, a single installation to solver is created in
+# smoketestoo_native:
+.IF "$(OS)" == "WNT"
+$(MISC)/$(TARGET)/installation.flag : \
+ $(shell ls $(installationtest_instset)/OOo_*_install.zip)
+ $(MKDIRHIER) $(@:d)
+ my_tmp=$$(cygpath -m $$(mktemp -dt ooosmoke.XXXXXX)) && \
+ unzip $(installationtest_instset)/OOo_*_install.zip -d "$$my_tmp" && \
+ mv "$$my_tmp"/OOo_*_install "$$my_tmp"/opt && \
+ echo "$$my_tmp" > $@
+.END
+
+cpptest .PHONY : $(MISC)/$(TARGET)/services.rdb
+ $(RM) -r $(MISC)/$(TARGET)/user
+ $(MKDIRHIER) $(MISC)/$(TARGET)/user
+ $(CPPUNITTESTER) \
+ -env:UNO_SERVICES=$(my_file)$(PWD)/$(MISC)/$(TARGET)/services.rdb \
+ -env:UNO_TYPES=$(my_file)$(SOLARBINDIR)/types.rdb \
+ -env:arg-path=$(my_soffice) -env:arg-user=$(MISC)/$(TARGET)/user \
+ $(my_cppenv) $(OOO_CPPTEST_ARGS)
+ $(RM) -r $(MISC)/$(TARGET)/user
+.IF "$(OS)" == "WNT"
+ $(RM) -r $(installationtest_instpath) $(MISC)/$(TARGET)/installation.flag
+cpptest : $(MISC)/$(TARGET)/installation.flag
+.END
+
+$(MISC)/$(TARGET)/services.rdb :
+ $(MKDIRHIER) $(@:d)
+ $(RM) $@
+ $(REGCOMP) -register -r $@ -wop -c bridgefac.uno -c connector.uno \
+ -c remotebridge.uno -c uuresolver.uno
+
+.IF "$(SOLAR_JAVA)" == "TRUE" && "$(OOO_JUNIT_JAR)" != ""
+javatest .PHONY : $(JAVATARGET)
+ $(RM) -r $(MISC)/$(TARGET)/user
+ $(MKDIRHIER) $(MISC)/$(TARGET)/user
+ $(JAVAI) $(JAVAIFLAGS) $(JAVACPS) \
+ '$(OOO_JUNIT_JAR)$(PATH_SEPERATOR)$(CLASSPATH)' \
+ -Dorg.openoffice.test.arg.path=$(my_soffice) \
+ -Dorg.openoffice.test.arg.user=$(my_file)$(PWD)/$(MISC)/$(TARGET)/user \
+ $(my_javaenv) org.junit.runner.JUnitCore \
+ $(foreach,i,$(JAVATESTFILES) $(subst,/,. $(PACKAGE)).$(i:s/.java//))
+ $(RM) -r $(MISC)/$(TARGET)/user
+.IF "$(OS)" == "WNT"
+ $(RM) -r $(installationtest_instpath) $(MISC)/$(TARGET)/installation.flag
+javatest : $(MISC)/$(TARGET)/installation.flag
+.END
+.ELSE
+javatest .PHONY :
+ echo 'javatest needs SOLAR_JAVA=TRUE and OOO_JUNIT_JAR'
+.END
diff --git a/solenv/inc/javaunittest.mk b/solenv/inc/javaunittest.mk
index 8f9207fd3917..e129052a445e 100644
--- a/solenv/inc/javaunittest.mk
+++ b/solenv/inc/javaunittest.mk
@@ -80,8 +80,9 @@ $(TESTS): $(JAVACLASSFILES)
.ENDIF
%.test .PHONY: %.java
- $(JAVAI) $(JAVACPS) $(CLASSPATH) org.openoffice.Runner -TestBase java_complex \
- -NoOffice yes -o $(subst,/,. $(subst,.test, $(PACKAGE).$@))
+ $(JAVAI) $(JAVAIFLAGS) $(JAVACPS) $(CLASSPATH) org.openoffice.Runner \
+ -TestBase java_complex -NoOffice yes \
+ -o $(subst,/,. $(subst,.test, $(PACKAGE).$@))
.IF "$(IDLTESTFILES)" != ""
diff --git a/solenv/inc/libs.mk b/solenv/inc/libs.mk
index cbde1659ae5d..b835f526997f 100644
--- a/solenv/inc/libs.mk
+++ b/solenv/inc/libs.mk
@@ -266,8 +266,15 @@ JVMACCESSLIB = -ljvmaccess$(UDK_MAJOR)$(COMID)
.ELSE # "$(GUI)$(COM)"=="WNTGCC"
JVMACCESSLIB = -ljvmaccess$(COMID)
.ENDIF # "$(GUI)$(COM)"=="WNTGCC"
-CPPUNITLIB = -lcppunit$(DLLPOSTFIX)
-TESTSHL2LIB = -ltestshl2$(DLLPOSTFIX)
+.IF "$(OS)" == "WNT"
+CPPUNITLIB = -lcygcppunit-1-12-1
+.ELSE
+.IF "$(SYSTEM_CPPUNIT)"=="YES"
+CPPUNITLIB = $(CPPUNIT_LIBS)
+.ELSE
+CPPUNITLIB = -lcppunit
+.ENDIF
+.ENDIF
.IF "$(SYSTEM_LIBXSLT)"=="YES"
XSLTLIB=$(LIBXSLT_LIBS)
.ELSE
@@ -341,6 +348,7 @@ LPSOLVELIB=-llpsolve55
SOFFICELIB=-lsofficeapp
UNOPKGAPPLIB=-lunopkgapp
CONFIGMGRLIB=-lconfigmgr
+TESTLIB=-ltest
.ELSE # ("$(GUI)"=="UNX" || "$(COM)"=="GCC") && "$(GUI)"!="OS2"
@@ -475,8 +483,7 @@ FREETYPELIB=freetype.lib
PKGCHKLIB=ipkgchk.lib
HELPLINKERLIB=ihelplinker.lib
JVMACCESSLIB = ijvmaccess.lib
-CPPUNITLIB = cppunit.lib
-TESTSHL2LIB = testshl2.lib
+CPPUNITLIB = icppunit_dll.lib
XSLTLIB = libxslt.lib $(LIBXML2LIB)
.IF "$(GUI)"=="OS2"
REDLANDLIB = raptor.a rasqal.a rdf.a $(LIBXML2LIB) $(OPENSSLLIB) pthread.lib
@@ -523,5 +530,6 @@ LPSOLVELIB=lpsolve55.lib
SOFFICELIB=isofficeapp.lib
UNOPKGAPPLIB=iunopkgapp.lib
CONFIGMGRLIB=iconfigmgr.lib
+TESTLIB=itest.lib
.ENDIF # ("$(GUI)"=="UNX" || "$(COM)"=="GCC") && "$(GUI)"!="OS2"
diff --git a/solenv/inc/settings.mk b/solenv/inc/settings.mk
index 98704e038a8e..495720f9d038 100644
--- a/solenv/inc/settings.mk
+++ b/solenv/inc/settings.mk
@@ -38,11 +38,6 @@ force_dmake_to_error
# --- 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)"!=""
@@ -55,13 +50,6 @@ NETWORK_BUILD:=TRUE
.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
@@ -1029,6 +1017,18 @@ LNTFLAGSOUTOBJ=-os
.INCLUDE : os2.mk
.ENDIF
+.IF "$(OOO_LIBRARY_PATH_VAR)" != ""
+# Add SOLARLIBDIR to the end of a (potentially previously undefined) library
+# path (LD_LIBRARY_PATH, PATH, etc.; there is no real reason to prefer adding at
+# the end over adding at the start); the ": &&" in the bash case enables this to
+# work at the start of a recipe line that is not prefixed by "+" as well as in
+# the middle of an existing && chain:
+AUGMENT_LIBRARY_PATH = : && \
+ $(OOO_LIBRARY_PATH_VAR)=$${{$(OOO_LIBRARY_PATH_VAR)+$${{$(OOO_LIBRARY_PATH_VAR)}}:}}$(normpath, $(SOLARSHAREDBIN))
+AUGMENT_LIBRARY_PATH_LOCAL = : && \
+ $(OOO_LIBRARY_PATH_VAR)=$${{$(OOO_LIBRARY_PATH_VAR)+$${{$(OOO_LIBRARY_PATH_VAR)}}:}}$(normpath, $(PWD)/$(DLLDEST)):$(normpath, $(SOLARSHAREDBIN))
+.END
+
# remove if .Net 2003 support has expired
.IF "$(debug)"!=""
.IF "$(OS)$(COM)$(CPU)" == "WNTMSCI"
@@ -1054,7 +1054,7 @@ JAVAMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/javamaker
RDBMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/rdbmaker
CLIMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/climaker
-TESTSHL2=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/testshl2
+CPPUNITTESTER=$(AUGMENT_LIBRARY_PATH_LOCAL) $(SOLARBINDIR)/cppunittester
HELPEX=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/helpex
LNGCONVEX=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/lngconvex
HELPLINKER=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/HelpLinker
@@ -1349,6 +1349,10 @@ $(COMP9TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/x
XML_APIS_JAR*=$(SOLARBINDIR)/xml-apis.jar
XERCES_JAR*=$(SOLARBINDIR)/xercesImpl.jar
+.IF "$(SYSTEM_CPPUNIT)" != "YES"
+CPPUNIT_CFLAGS =
+.END
+
# workaround for strange dmake bug:
# if the previous block was a rule or a target, "\#" isn't recognized
# as an escaped "#". if it was an assignment, escaping works...
diff --git a/solenv/inc/startup/AIX/macros.mk b/solenv/inc/startup/AIX/macros.mk
deleted file mode 100644
index 5387b1940198..000000000000
--- a/solenv/inc/startup/AIX/macros.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-
-.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
deleted file mode 100644
index 5387b1940198..000000000000
--- a/solenv/inc/startup/FREEBSD/macros.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-
-.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
deleted file mode 100644
index 5387b1940198..000000000000
--- a/solenv/inc/startup/HPUX/macros.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-
-.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
deleted file mode 100644
index 5387b1940198..000000000000
--- a/solenv/inc/startup/IRIX/macros.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-
-.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
deleted file mode 100644
index 5387b1940198..000000000000
--- a/solenv/inc/startup/LINUX/macros.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-
-.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
deleted file mode 100644
index 5387b1940198..000000000000
--- a/solenv/inc/startup/MACOSX/macros.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-
-.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
deleted file mode 100644
index 5387b1940198..000000000000
--- a/solenv/inc/startup/NETBSD/macros.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-
-.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
index 08d2be3f9a48..2f1447e6e714 100644
--- a/solenv/inc/startup/OS2/macros.mk
+++ b/solenv/inc/startup/OS2/macros.mk
@@ -4,22 +4,6 @@
# 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
@@ -35,39 +19,12 @@ 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
+.MKSARGS *:= yes
+RM *= $(ROOTDIR)$/bin$/rm
+MV *= $(ROOTDIR)$/bin$/mv
+DIVFILE *= $(TMPFILE:s,/,${__.DIVSEP-sh-${USESHELL}})
+__.DIVSEP-sh-yes !:= \\\
+__.DIVSEP-sh-no !:= \\
NAMEMAX = 256
diff --git a/solenv/inc/startup/Readme b/solenv/inc/startup/Readme
index d0c38c7c75d5..63a023d10d3e 100644
--- a/solenv/inc/startup/Readme
+++ b/solenv/inc/startup/Readme
@@ -1,9 +1,6 @@
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
deleted file mode 100644
index 5387b1940198..000000000000
--- a/solenv/inc/startup/SOLARIS/macros.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-
-.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
deleted file mode 100644
index 7fa2f1b77d35..000000000000
--- a/solenv/inc/startup/UNIX/macros.mk
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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
index 96b6378db11f..b4aa9a74353a 100644
--- a/solenv/inc/startup/startup.mk
+++ b/solenv/inc/startup/startup.mk
@@ -33,7 +33,7 @@ CALLTARGETS=$(MAKETARGETS)
.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
+# .IMPORT .IGNORE : OS TMPDIR UPD INPATH OUTPATH GUI COM EX CLASSPATH PRODUCT GUIBASE SOLARENV SOLARVER GUIENV CPU CPUNAME CVER GVER COMPATH LIB INCLUDE TR SORT UNIQ ROOTDIR SED AWK TOUCH IENV ILIB PRODUCT_ENV COMEX UPD BUILD DEVROOT VCL SO3 ENVCFLAGS
.IF "$(OS)" == "" || "$(OS)" == "Windows_NT"
.ERROR : ; @echo Forced error: Environment variable OS has to be set for OOo build!
@@ -42,28 +42,35 @@ OS_variable_needed
# 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
+.IF "$(OS)" == "OS2"
+.INCLUDE: $(INCFILENAME:d)OS2/macros.mk
+.ELIF "$(OS)" == "WNT"
+.INCLUDE: $(INCFILENAME:d)wnt/macros.mk
+.END
# ----------------- Default Control Macro definitions -----------------------
# Select appropriate defaults for basic macros
- MAKE *= $(MAKECMD) $(MFLAGS)
- TMPDIR *:= $/tmp
- DIVFILE *= $(TMPFILE)
+MAKE *= $(MAKECMD) $(MFLAGS)
+TMPDIR *:= $/tmp
+DIVFILE *= $(TMPFILE)
MAXLINELENGTH = 65530
# Recipe execution configuration
- SHELL *:= $/bin$/sh
- SHELLFLAGS *:= -fc
- GROUPSHELL *:= $(SHELL)
- GROUPFLAGS *:=
- SHELLMETAS *:= |();&<>?*][$$:\\#`'"
- GROUPSUFFIX *:=
+SHELL := $(OOO_SHELL)
+SHELLFLAGS := -c
+SHELLMETAS := !"\#$$%&'()*;<=>?[\]`{{|}}~
+ # the colon (":") utility is typically only available as a shell built-in,
+ # so it should be included in SHELLMETAS; however, this would result in very
+ # many false positives on Windows where ":" is used in drive letter notation
+GROUPSHELL := $(SHELL)
+GROUPFLAGS :=
+GROUPSUFFIX :=
# Intermediate target removal configuration
- RM *:= $/bin$/rm
- RMFLAGS *= -f
- RMTARGET *= $<
+RM *:= rm
+RMFLAGS *= -f
+RMTARGET *= $<
# Default recipe that is used to remove intermediate targets.
.REMOVE :; #echo dummy remove #$(RM) $(RMFLAGS) $(RMTARGET)
@@ -80,7 +87,7 @@ NULLPRQ *:= __.NULLPRQ
E *:= # Executables
# Other Compilers, Tools and their flags
-MV *:= $/bin$/mv # File rename command
+MV *:= mv # File rename command
# Finally, define the default construction strategy
diff --git a/solenv/inc/startup/wnt/macros.mk b/solenv/inc/startup/wnt/macros.mk
index 35f903f60922..2d8181439e81 100644
--- a/solenv/inc/startup/wnt/macros.mk
+++ b/solenv/inc/startup/wnt/macros.mk
@@ -15,25 +15,10 @@ GUWCMD*=guw.exe
# 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 *:= \\
@@ -41,14 +26,6 @@ E *:= .exe # Executables
.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/target.mk b/solenv/inc/target.mk
index e446635be9a2..0319e92f3418 100644
--- a/solenv/inc/target.mk
+++ b/solenv/inc/target.mk
@@ -211,9 +211,7 @@ LOCALJARS:=$(foreach,i,$(shell @@-cd $(JARDIR) && ls -1 $(JARFILES) ) $(JARDIR)/
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)"!=""
+NEWCLASS+=$(EXTRAJARFILES)
.IF "$(GENJAVACLASSFILES)"!=""
NEWCLASS+=$(CLASSGENDIR)
.ENDIF # "$(GENJAVACLASSFILES)"!=""
diff --git a/solenv/inc/tg_ext.mk b/solenv/inc/tg_ext.mk
index b2d79b1200b5..e19c7124d4a7 100644
--- a/solenv/inc/tg_ext.mk
+++ b/solenv/inc/tg_ext.mk
@@ -43,11 +43,11 @@ LDFLAGS!:=$(EXTRA_LINKFLAGS) $(LDFLAGS)
.EXPORT : LDFLAGS
.ENDIF
-.IF "$(GUI)"=="WNT" && "$(USE_SHELL)"!="4nt"
+.IF "$(GUI)"=="WNT"
PATH!:=.:$(SOLARBINDIR:^"/cygdrive/":s/://):$(PATH)
-.ELSE # "$(GUI)"=="WNT" && "$(USE_SHELL)"!="4nt"
+.ELSE # "$(GUI)"=="WNT"
PATH!:=.$(PATH_SEPERATOR)$(SOLARBINDIR)$(PATH_SEPERATOR)$(PATH)
-.ENDIF # "$(GUI)"=="WNT" && "$(USE_SHELL)"!="4nt"
+.ENDIF # "$(GUI)"=="WNT"
.EXPORT : PATH
#override
@@ -79,10 +79,6 @@ 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
@@ -114,9 +110,9 @@ clean:
$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.tar.bz2
@-$(RM) $@
.IF "$(GUI)"=="UNX"
- @noop $(assign UNPACKCMD := sh -c "bzip2 -cd $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.bz2 $(TARFILE_FILTER) | $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - ")
+ @noop $(assign UNPACKCMD := sh -c "bzip2 -cd $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.bz2 $(TARFILE_FILTER) | $(GNUTAR) -x$(tar_verbose_switch)f - ")
.ELSE # "$(GUI)"=="UNX"
- @noop $(assign UNPACKCMD := bzip2 -cd $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.bz2 $(TARFILE_FILTER) | $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - )
+ @noop $(assign UNPACKCMD := bzip2 -cd $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.bz2 $(TARFILE_FILTER) | $(GNUTAR) -x$(tar_verbose_switch)f - )
.ENDIF # "$(GUI)"=="UNX"
@$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
@$(RENAME) $@.$(INPATH) $@
@@ -124,28 +120,28 @@ $(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.tar.bz2
$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.tar.Z
@-$(RM) $@
.IF "$(GUI)"=="UNX"
- @noop $(assign UNPACKCMD := sh -c "uncompress -c $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.Z | $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - ")
+ @noop $(assign UNPACKCMD := sh -c "uncompress -c $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.Z | $(GNUTAR) -x$(tar_verbose_switch)f - ")
.ELSE # "$(GUI)"=="UNX"
- @noop $(assign UNPACKCMD := uncompress -c $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.Z | $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - )
+ @noop $(assign UNPACKCMD := uncompress -c $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.Z | $(GNUTAR) -x$(tar_verbose_switch)f - )
.ENDIF # "$(GUI)"=="UNX"
@$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
@$(RENAME) $@.$(INPATH) $@
$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.tar.gz
@-$(RM) $@
- @noop $(assign UNPACKCMD := gzip -d -c $(subst,\,/ $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.gz) $(TARFILE_FILTER) | $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - )
+ @noop $(assign UNPACKCMD := gzip -d -c $(subst,\,/ $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar.gz) $(TARFILE_FILTER) | $(GNUTAR) -x$(tar_verbose_switch)f - )
@$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
@$(RENAME) $@.$(INPATH) $@
$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.tgz
@-$(RM) $@
- @noop $(assign UNPACKCMD := gzip -d -c $(subst,\,/ $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tgz) $(TARFILE_FILTER) | $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - )
+ @noop $(assign UNPACKCMD := gzip -d -c $(subst,\,/ $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tgz) $(TARFILE_FILTER) | $(GNUTAR) -x$(tar_verbose_switch)f - )
@$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
@$(RENAME) $@.$(INPATH) $@
$(MISC)/%.unpack : $(TARFILE_LOCATION2)/%.tar
@-$(RM) $@
- @noop $(assign UNPACKCMD := $(GNUTAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar)
+ @noop $(assign UNPACKCMD := $(GNUTAR) -x$(tar_verbose_switch)f $(TARFILE_LOCATION)/$(TARFILE_MD5)-$(TARFILE_NAME).tar)
@$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH)
@$(RENAME) $@.$(INPATH) $@
diff --git a/solenv/inc/tg_shl.mk b/solenv/inc/tg_shl.mk
index 2349a00609ad..170947c21c4a 100644
--- a/solenv/inc/tg_shl.mk
+++ b/solenv/inc/tg_shl.mk
@@ -172,7 +172,9 @@ SHL$(TNR)VERSIONMAPPARA=$(LINKVERSIONMAPFLAG) $(USE_SHL$(TNR)VERSIONMAP)
$(USE_SHL$(TNR)VERSIONMAP): $(SHL$(TNR)OBJS) $(SHL$(TNR)LIBS)
.ENDIF
-$(USE_SHL$(TNR)VERSIONMAP): $(SHL$(TNR)VERSIONMAP)
+# .ERRREMOVE is needed as a recipe line like "$(AWK) ... > $@" would create $@
+# even if the $(AWK) part fails:
+$(USE_SHL$(TNR)VERSIONMAP) .ERRREMOVE: $(SHL$(TNR)VERSIONMAP)
@@-$(RM) -f $@
# The following files will only be generated and needed on Mac OS X as temporary files
# in order to generate exported symbols list out of Linux/Solaris map files
diff --git a/solenv/inc/unitools.mk b/solenv/inc/unitools.mk
index b537bae59d29..7e12a9e2b225 100644
--- a/solenv/inc/unitools.mk
+++ b/solenv/inc/unitools.mk
@@ -62,26 +62,14 @@ 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"
@@ -191,10 +179,8 @@ 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"
+# The dmake $(PWD) apparantly produces paths with symlinks resolved, while the
+# bash pwd command by default produces paths with unresolved symlinks, so that
+# computing PATH_IN_MODULE in settings.mk would fail without the -P flag to the
+# bash pwd command:
PWDFLAGS = -P
-.ENDIF
diff --git a/solenv/inc/unx.mk b/solenv/inc/unx.mk
index c6d756343d79..eb27b51a6e6d 100644
--- a/solenv/inc/unx.mk
+++ b/solenv/inc/unx.mk
@@ -198,17 +198,4 @@ 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
+OOO_LIBRARY_PATH_VAR *= LD_LIBRARY_PATH
diff --git a/solenv/inc/unxmacx.mk b/solenv/inc/unxmacx.mk
index 571a7222e00d..6ea51ae6ccfe 100644
--- a/solenv/inc/unxmacx.mk
+++ b/solenv/inc/unxmacx.mk
@@ -206,7 +206,7 @@ LINKFLAGSRUNPATH_OOO=-install_name '@___________________________________________
LINKFLAGSRUNPATH_SDK=
LINKFLAGSRUNPATH_BRAND=
LINKFLAGSRUNPATH_OXT=
-LINKFLAGSRUNPATH_NONE=
+LINKFLAGSRUNPATH_NONE=-install_name '@__________________________________________________NONE/$(@:f)'
LINKFLAGS=$(LINKFLAGSDEFS)
# [ed] 5/14/02 If we're building for aqua, add in the objc runtime library into our link line
@@ -285,18 +285,4 @@ 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
+OOO_LIBRARY_PATH_VAR = DYLD_LIBRARY_PATH
diff --git a/solenv/inc/wnt.mk b/solenv/inc/wnt.mk
index 78f496927899..f369bd15ad30 100644
--- a/solenv/inc/wnt.mk
+++ b/solenv/inc/wnt.mk
@@ -69,9 +69,4 @@ 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
+OOO_LIBRARY_PATH_VAR = PATH
diff --git a/soltools/testhxx/create.pl b/soltools/testhxx/create.pl
index 325d0f896135..5c9f04118c78 100644
--- a/soltools/testhxx/create.pl
+++ b/soltools/testhxx/create.pl
@@ -66,27 +66,7 @@ if ($ENV{OS} eq 'LINUX') {
print STDOUT 'unlink ${my_tmp} || exit 1', "\n";
print STDOUT 'unlink ${my_tmp}.out || exit 1', "\n";
print STDOUT 'exit ${my_ret}', "\n";
-} elsif ($ENV{OS} eq 'WNT' and $ENV{USE_SHELL} eq '4nt') {
- 1 while $in =~ s!\s+-I\s*\.\S*\s*! !g; # discard relative includes
- $in =~ s!(\s+-I\s*)(?i:$solarversion)(\S*)!$1%SOLARVERSION%$2!og;
- # macrofy includes to solver
- $in =~ s!\s+-Fo\s*\S+! -Fo%my_tmp%.obj! || die 'bad input: no -Fo';
- $in =~ s!\s+-Zi\s! !;
- $in =~ s!\s+-Fd\s*\S+!!;
- $in =~ s!\S+\\testhxx.cxx!%my_tmp%!
- || die 'bad input: no source file';
- print STDOUT '@ECHO OFF', "\n";
- print STDOUT 'SET my_tmp=%TMP%\%_PID%_include.cc', "\n";
- print STDOUT 'ECHO #include "%@REPLACE[\\,/,%@FULL[%1]]" > %my_tmp%', "\n";
- print STDOUT $in, ' > %my_tmp%.out', "\n";
- print STDOUT 'SET my_ret=%ERRORLEVEL%', "\n";
- print STDOUT 'IF %my_ret% != 0',
- ' sed -e s!%@FILENAME[%my_tmp%]!%@REPLACE[\\,\\\\,%1]! %my_tmp%.out',
- ' 1>&2', "\n";
- print STDOUT 'DEL /EQ %my_tmp% %my_tmp%.obj %my_tmp%.pdb %my_tmp%.out',
- "\n";
- print STDOUT 'QUIT %my_ret%', "\n";
-} elsif ($ENV{OS} eq 'WNT' and $ENV{USE_SHELL} ne '4nt') {
+} elsif ($ENV{OS} eq 'WNT') {
if ($ENV{COM} eq 'GCC') {
1 while $in =~ s!\s+-I\s*\.\S*\s*! !g; # discard relative includes
$in =~ s!(\s+-I\s*)(?i:$solarversion)(\S*)!$1\${SOLARVERSION}$2!og;
diff --git a/soltools/testhxx/makefile.mk b/soltools/testhxx/makefile.mk
index 1b2a0ce42923..7a1ab97273e3 100644
--- a/soltools/testhxx/makefile.mk
+++ b/soltools/testhxx/makefile.mk
@@ -38,21 +38,13 @@ CAPTURE_OUTPUT = > $(MISC)$/testhxx.output && $(TOUCH) $(SLO)$/testhxx.obj
SLOFILES = $(SLO)$/testhxx.obj
-.IF "$(USE_SHELL)" == "4nt"
-MY_SCRIPT_EXT := .btm
-MY_EXECUTABLE := @ echo
-.ELSE
-MY_SCRIPT_EXT :=
-MY_EXECUTABLE := chmod +x
-.ENDIF
-
.INCLUDE: target.mk
-ALLTAR: $(BIN)$/$(TARGET)$(MY_SCRIPT_EXT)
+ALLTAR: $(BIN)$/$(TARGET)
-$(BIN)$/$(TARGET)$(MY_SCRIPT_EXT) .ERRREMOVE : $(MISC)$/testhxx.output create.pl
+$(BIN)$/$(TARGET) .ERRREMOVE : $(MISC)$/testhxx.output create.pl
$(PERL) -w create.pl < $(MISC)$/testhxx.output > $@
- $(MY_EXECUTABLE) $@
+ chmod +x $@
$(MISC)$/testhxx.output: $(SLO)$/testhxx.obj
$(TOUCH) $<
diff --git a/stlport/makefile.mk b/stlport/makefile.mk
index 4165a4a0dd7d..907c0935cbe8 100644
--- a/stlport/makefile.mk
+++ b/stlport/makefile.mk
@@ -102,10 +102,6 @@ $(INCCOM)$/stlport$/vector: systemstl$/$$(@:f)
# stl/_epilog.h.)
.ENDIF
-.IF "$(USE_SHELL)"=="4nt"
-TAR_EXCLUDES=*/SC5/*
-.ENDIF # "$(USE_SHELL)"=="4nt"
-
ADDITIONAL_FILES=src$/gcc-3.0.mak src$/gcc-3.0-freebsd.mak src$/sunpro8.mak src$/sunpro11.mak src$/gcc-3.0-mingw.mak \
src$/gcc-3.0-os2.mak src$/gcc-3.0-os2.def src$/common_macros_os2.mak
@@ -233,21 +229,13 @@ avoid_win32_patches :
force_dmake_to_error
$(PACKAGE_DIR)$/so_custom_patch : $(PACKAGE_DIR)$/$(PATCH_FLAG_FILE)
-.IF "$(USE_SHELL)"=="4nt"
win32_custom.bat $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@
-.ELSE # "$(USE_SHELL)"=="4nt"
- win32_custom.sh $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@
-.ENDIF # "$(USE_SHELL)"=="4nt"
$(PACKAGE_DIR)$/$(CONFIGURE_FLAG_FILE) : $(PACKAGE_DIR)$/so_custom_patch
.IF "$(USE_NEW_SDK)"!=""
$(PACKAGE_DIR)$/win32_sdk_patch : $(PACKAGE_DIR)$/$(PATCH_FLAG_FILE)
-.IF "$(USE_SHELL)"=="4nt"
win32_sdk.bat $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@
-.ELSE # "$(USE_SHELL)"=="4nt"
- win32_sdk.sh $(PACKAGE_DIR) $(BACK_PATH) && $(TOUCH) $@
-.ENDIF # "$(USE_SHELL)"=="4nt"
$(PACKAGE_DIR)$/$(CONFIGURE_FLAG_FILE) : $(PACKAGE_DIR)$/win32_sdk_patch
.ENDIF # "$(USE_NEW_SDK)"!=""