diff options
-rw-r--r-- | configure.in | 47 | ||||
-rw-r--r-- | set_soenv.in | 4 | ||||
-rw-r--r-- | solenv/bin/macosx-change-install-names.pl | 8 | ||||
-rw-r--r-- | solenv/bin/modules/macosxotoolhelper.pm | 2 | ||||
-rw-r--r-- | solenv/config/sdev300.ini | 4 | ||||
-rw-r--r-- | solenv/config/ssolar.cmn | 1 | ||||
-rw-r--r-- | solenv/inc/tg_ext.mk | 8 | ||||
-rw-r--r-- | solenv/inc/unitools.mk | 7 |
8 files changed, 71 insertions, 10 deletions
diff --git a/configure.in b/configure.in index d447e30f2fcf..b66be4e664a3 100644 --- a/configure.in +++ b/configure.in @@ -258,6 +258,9 @@ AC_ARG_WITH(mozilla-toolkit, [ --with-mozilla-toolkit Choose which GUI toolkit to use while building mozilla components. Default: gtk2 ],,) +AC_ARG_ENABLE(nss_module, +[ --disable-nss-module Whether to use provided NSS module +],,enable_nss_module=yes) AC_ARG_ENABLE(kde, [ --enable-kde Determines whether to use Qt/KDE vclplug on platforms where Qt and KDE are available. @@ -652,6 +655,12 @@ AC_ARG_WITH(directx-home, Usage: --with-directx-home=<absolute path to Microsoft DirectX SDK> ],,) +AC_ARG_WITH(mozilla-build, +[ --with-mozilla-build For Windows users, please supply the path to the + mozilla build tools. + + Usage: --with-mozilla-build=<absolute path to mozilla build tools> +],[MOZILLABUILD=$withval],) AC_ARG_WITH(local-solenv, [ --with-local-solenv If you have solenv in a location other than ./solenv, please supply the path here. @@ -4071,6 +4080,7 @@ AC_MSG_CHECKING([whether to enable build of Mozilla/Mozilla NSS-using components if test "$enable_mozilla" = "no"; then AC_MSG_RESULT([no]) WITH_MOZILLA=NO + ENABLE_NSS_MODULE=NO else AC_MSG_RESULT([yes]) WITH_MOZILLA=YES @@ -4140,6 +4150,8 @@ AC_MSG_CHECKING([which mozilla to use]) if test -n "$with_system_mozilla" && test "$with_system_mozilla" != "no"; then AC_MSG_RESULT([external]) SYSTEM_MOZILLA=YES + ENABLE_NSS_MODULE=NO + enable_nss_module=no AC_MSG_CHECKING([which Mozilla flavour to use]) if test -n "$with_system_mozilla" && test "$with_system_mozilla" = "libxul"; then MOZ_FLAVOUR=libxul @@ -4226,6 +4238,8 @@ Please recompile $tmp with --enable-ldap or use --with-openldap.]) elif test "$enable_mozilla" = "no"; then AC_MSG_RESULT([none]) WITH_MOZILLA=NO + ENABLE_NSS_MODULE=NO + enable_nss_module=no else AC_MSG_RESULT([internal]) SYSTEM_MOZILLA=NO @@ -4281,6 +4295,37 @@ else AC_MSG_RESULT([no]) fi +AC_MSG_CHECKING([whether to build provided NSS module]) +if test "$enable_nss_module" != "no"; then + ENABLE_NSS_MODULE="YES" + BUILD_TYPE="$BUILD_TYPE NSS" + AC_MSG_RESULT([yes]) + if test "$_os" = "WINNT"; then + AC_MSG_CHECKING([for Mozilla build tooling]) + if test -z "$MOZILLABUILD" ; then +AC_MSG_ERROR([Mozilla build tooling not found. Use --with-mozilla-build=<absolut path to mozilla build tooling (mozilla-build)>]) + else + if test \( "$WITH_MINGWIN" = "yes" \) ; then + if test ! -d "$MOZILLABUILD" ; then +AC_MSG_ERROR([Mozilla build tooling incomplete!]) + else + AC_MSG_RESULT([ok]) + fi + else + if test ! -d "$MOZILLABUILD/moztools" \ + -o ! -d "$MOZILLABUILD/msys" ; then +AC_MSG_ERROR([Mozilla build tooling incomplete!]) + else + AC_MSG_RESULT([ok]) + fi + fi + fi + fi +else + ENABLE_NSS_MODULE="NO" + AC_MSG_RESULT([no]) +fi + if test "$BUILD_MOZAB" = "TRUE"; then if test "$_os" = "WINNT"; then if test "$WITH_MINGWIN" != "yes"; then @@ -4359,6 +4404,8 @@ fi AC_SUBST(BUILD_MOZAB) fi +AC_SUBST(ENABLE_NSS_MODULE) +AC_SUBST(MOZILLABUILD) AC_SUBST(SYSTEM_MOZILLA) AC_SUBST(MOZ_FLAVOUR) AC_SUBST(MOZ_INC) diff --git a/set_soenv.in b/set_soenv.in index 39f4db5eb023..4fae3c17255d 100644 --- a/set_soenv.in +++ b/set_soenv.in @@ -88,7 +88,7 @@ my ( $oldPATH, $SRC_ROOT, $SO_HOME, $JAVA_HOME, $JDK, $JAVAFLAGS, $SHELL, $COMP_ENV, $ILIB, $JAVAHOME, $PSDK_HOME, $DIRECTXSDK_LIB, $USE_NEW_SDK, $FRAME_HOME, $USE_DIRECTX5, $ATL_LIB, $ATL_INCLUDE, $MFC_LIB, $MFC_INCLUDE, $NO_HIDS, $TMPDIR, $COMMON_BUILD_TOOLS, $WIN_GREP, $WIN_FIND, $WIN_LS, - $WIN_GNUCOPY, $WIN_TOUCH, $STLPORT4, $MOZILLA_VERSION, $MOZILLA_TOOLKIT, $PREBUILD_MOZAB, + $WIN_GNUCOPY, $WIN_TOUCH, $STLPORT4, $MOZILLA_VERSION, $MOZILLA_TOOLKIT, $PREBUILD_MOZAB, $MOZILLABUILD, $PROEXT, $SYSTEM_PYTHON, $PYTHONPATH, $SYSTEM_MOZILLA, $EPM_FLAGS); # @@ -1646,6 +1646,8 @@ ToFile( "BUILD_MOZAB", "@BUILD_MOZAB@", "e" ); ToFile( "PREBUILD_MOZAB", $PREBUILD_MOZAB, "e" ); ToFile( "MOZILLA_VERSION", $MOZILLA_VERSION, "e" ); ToFile( "DEFAULT_MOZILLA_TOOLKIT", $MOZILLA_TOOLKIT, "e" ); +ToFile( "ENABLE_NSS_MODULE", "@ENABLE_NSS_MODULE@", "e" ); +ToFile( "MOZILLABUILD", "@MOZILLABUILD@", "e" ); ToFile( "BUILD_VER_STRING", "@BUILD_VER_STRING@", "e" ); ToFile( "ENABLE_VBA", "@ENABLE_VBA@", "e" ); ToFile( "VBA_EXTENSION", "@VBA_EXTENSION@", "e" ); diff --git a/solenv/bin/macosx-change-install-names.pl b/solenv/bin/macosx-change-install-names.pl index fcda2621abc5..5e7064631ec0 100644 --- a/solenv/bin/macosx-change-install-names.pl +++ b/solenv/bin/macosx-change-install-names.pl @@ -61,16 +61,18 @@ if ($type eq "extshl") { $type = "shl"; my $change = ""; + my %inames; foreach $file (@ARGV) { - otoolD($file) =~ m'^(.*?([^/]+))\n$' or + my $iname = otoolD($file); + (defined $iname ? $iname : $file . "\n") =~ m'^(.*?([^/]+))\n$' or die "unexpected otool -D output"; $change .= " -change $1 " . action($type, $loc, $loc) . "/$2"; - $iname{$file} = $2; + $inames{$file} = $2; } foreach $file (@ARGV) { - my $call = "install_name_tool$change -id \@__________________________________________________$loc/$iname{$file} $file"; + my $call = "install_name_tool$change -id \@__________________________________________________$loc/$inames{$file} $file"; system($call) == 0 or die "cannot $call"; } } diff --git a/solenv/bin/modules/macosxotoolhelper.pm b/solenv/bin/modules/macosxotoolhelper.pm index 9c787f372dc0..c8d30c52e473 100644 --- a/solenv/bin/modules/macosxotoolhelper.pm +++ b/solenv/bin/modules/macosxotoolhelper.pm @@ -41,7 +41,7 @@ sub otoolD($) { my $line = <IN>; $line =~ /^$file:\n$/ or die "unexpected otool -D output (\"$line\", expecting \"$file:\")"; - $line = <IN> or die "unexpected otool -D output"; + $line = <IN>; <IN> == undef or die "unexpected otool -D output"; close(IN); return $line; diff --git a/solenv/config/sdev300.ini b/solenv/config/sdev300.ini index 133646e53bed..f12d91bfd699 100644 --- a/solenv/config/sdev300.ini +++ b/solenv/config/sdev300.ini @@ -13,7 +13,7 @@ common BMP_WRITES_FLAG TRUE BTARGET 1 BUILD_SPECIAL TRUE - BUILD_TYPE SO OOo EXT BINFILTER BITSTREAM_VERA_FONTS BSH CURL DICTIONARIES HSQLDB HUNSPELL 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 L10N + BUILD_TYPE SO OOo EXT BINFILTER BITSTREAM_VERA_FONTS BSH CURL DICTIONARIES HSQLDB HUNSPELL 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 common_build TRUE COMMON_OUTDIR common CONFIG_PROJECT config_office @@ -28,6 +28,7 @@ common ENABLE_GTK TRUE ENABLE_MEDIAWIKI YES ENABLE_MINIMIZER YES + ENABLE_NSS_MODULE YES ENABLE_RANDR TRUE ENABLE_REPORTBUILDER YES ENABLE_SVCTAGS YES @@ -3544,6 +3545,7 @@ wntmsci12 GUIBASE WIN GVER NT351 INPATH wntmsci12%PROEXT% + MOZILLABUILD %SOLARROOT%/mozilla-build-1.3 OS WNT OUTPATH wntmsci12 PACKMS %SO_PACK%$/wntmsci12$/MS diff --git a/solenv/config/ssolar.cmn b/solenv/config/ssolar.cmn index aa1442cc649d..2e7e8fb12c79 100644 --- a/solenv/config/ssolar.cmn +++ b/solenv/config/ssolar.cmn @@ -84,6 +84,7 @@ common ENABLE_KDE ENABLE_MEDIAWIKI ENABLE_MINIMIZER + ENABLE_NSS_MODULE ENABLE_PASF ENABLE_RANDR ENABLE_REPORTBUILDER diff --git a/solenv/inc/tg_ext.mk b/solenv/inc/tg_ext.mk index 058dfadcc608..ced838d44000 100644 --- a/solenv/inc/tg_ext.mk +++ b/solenv/inc/tg_ext.mk @@ -134,13 +134,13 @@ $(MISC)$/%.unpack : $(PRJ)$/download$/%.tar.Z $(MISC)$/%.unpack : $(PRJ)$/download$/%.tar.gz @-$(RM) $@ - @noop $(assign UNPACKCMD := gzip -d -c $(BACK_PATH)$(fake_back)download$/$(TARFILE_NAME).tar.gz $(TARFILE_FILTER) | $(TAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - ) + @noop $(assign UNPACKCMD := gzip -d -c $(subst,\,/ $(BACK_PATH)$(fake_back)download$/$(TARFILE_NAME).tar.gz) $(TARFILE_FILTER) | $(TAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - ) @$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH) @$(RENAME) $@.$(INPATH) $@ $(MISC)$/%.unpack : $(PRJ)$/download$/%.tgz @-$(RM) $@ - @noop $(assign UNPACKCMD := gzip -d -c $(BACK_PATH)$(fake_back)download$/$(TARFILE_NAME).tgz $(TARFILE_FILTER) | $(TAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - ) + @noop $(assign UNPACKCMD := gzip -d -c $(subst,\,/ $(BACK_PATH)$(fake_back)download$/$(TARFILE_NAME).tgz) $(TARFILE_FILTER) | $(TAR) $(TAR_EXCLUDE_SWITCH) -x$(tar_verbose_switch)f - ) @$(TYPE) $(mktmp $(UNPACKCMD)) > $@.$(INPATH) @$(RENAME) $@.$(INPATH) $@ @@ -171,7 +171,7 @@ $(PACKAGE_DIR)$/$(UNTAR_FLAG_FILE) : $(PRJ)$/$(ROUT)$/misc$/$(TARFILE_NAME).unpa $(IFEXIST) $(PACKAGE_DIR)$/$(TARFILE_ROOTDIR) $(THEN) $(RENAME:s/+//) $(PACKAGE_DIR)$/$(TARFILE_ROOTDIR) $(PACKAGE_DIR)$/$(TARFILE_ROOTDIR)_removeme $(FI) -rm -rf $(PACKAGE_DIR)$/$(TARFILE_ROOTDIR)_removeme @-$(MKDIRHIER) $(PACKAGE_DIR)$(fake_root_dir) - cd $(PACKAGE_DIR)$(fake_root_dir) && ( $(shell @$(TYPE) $(PRJ)$/$(ROUT)$/misc$/$(TARFILE_NAME).unpack)) && $(TOUCH) $(UNTAR_FLAG_FILE) + cd $(PACKAGE_DIR)$(fake_root_dir) && ( $(shell $(TYPE) $(PRJ)$/$(ROUT)$/misc$/$(TARFILE_NAME).unpack)) && $(TOUCH) $(UNTAR_FLAG_FILE) @echo make writeable... .IF "$(GUI)"=="UNX" || "$(USE_SHELL)"!="4nt" @cd $(PACKAGE_DIR) && chmod -R +rw $(TARFILE_ROOTDIR) && $(TOUCH) $(UNTAR_FLAG_FILE) @@ -293,7 +293,7 @@ $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE) : $(PACKAGE_DIR)$/$(INSTALL_FLAG_FILE) @-$(MKDIR) $(foreach,i,$(OUTDIR2INC) $(INCCOM)$/$(i:b)) @echo copied $(foreach,i,$(OUTDIR2INC) $(shell @$(COPY) $(COPYRECURSE) $(PACKAGE_DIR)$/$(TARFILE_ROOTDIR)$/$i$/* $(INCCOM)$/$(i:b) >& $(NULLDEV) && echo $i)) .ELSE # "$(USE_SHELL)"=="4nt" - $(COPY) $(COPYRECURSE) $(foreach,i,$(OUTDIR2INC) $(PACKAGE_DIR)$/$(TARFILE_ROOTDIR)$/$i) $(INCCOM) + $(COPY) $(DEREFERENCE) $(COPYRECURSE) $(foreach,i,$(OUTDIR2INC) $(PACKAGE_DIR)$/$(TARFILE_ROOTDIR)$/$i) $(INCCOM) .ENDIF # "$(USE_SHELL)"=="4nt" .ENDIF # "$(OUTDIR2INC)"!="" .IF "$(OUT2BIN)"!="" diff --git a/solenv/inc/unitools.mk b/solenv/inc/unitools.mk index 052e4c7d61de..1a684330aa54 100644 --- a/solenv/inc/unitools.mk +++ b/solenv/inc/unitools.mk @@ -128,6 +128,7 @@ CDD=cd # expect cygwin tools to exist COPY*=cp COPYRECURSE=-r +DEREFERENCE=-L COPYUPDATE=-u ECHON=echo -n ECHONL=echo @@ -179,16 +180,22 @@ PERL*=perl TYPE=cat CDD=cd COPY=cp -f +.IF "$(OS)"=="MACOSX" +COPYRECURSE=-R +.ELSE #"$(OS)"=="MACOSX" COPYRECURSE=-r +.ENDIF .IF "$(OS)"=="SOLARIS" AWK*=nawk GNUCOPY*=gnucp GNUPATCH*=gnupatch GNUTAR*=gtar +DEREFERENCE= .ELSE # "$(OS)"=="SOLARIS" AWK*=awk GNUCOPY*=cp GNUPATCH*=patch +DEREFERENCE=-L .ENDIF # "$(OS)"=="SOLARIS" .IF "$(OS)"=="LINUX" || "$(OS)"=="MACOSX" GNUMAKE*=make |