[Libreoffice-commits] .: 4 commits - configure.in download set_soenv.in solenv/inc

Tor Lillqvist tml at kemper.freedesktop.org
Wed May 11 02:47:30 PDT 2011


 configure.in             |   56 ++++++++++++++++++++++++++++++++++++++++++-----
 download                 |    4 ---
 set_soenv.in             |   11 +++++++++
 solenv/inc/set_wntx64.mk |    4 +--
 solenv/inc/tg_wntx64.mk  |   49 ++++++++++++++++++-----------------------
 5 files changed, 87 insertions(+), 37 deletions(-)

New commits:
commit b2aa08bbf1a2edaa7953e637033dde7823cc5618
Author: Tor Lillqvist <tlillqvist at novell.com>
Date:   Wed May 11 12:46:47 2011 +0300

    AC_SUBST also OOOBLOGGER_EXTENSION_PACK as set_soenv.in uses it

diff --git a/configure.in b/configure.in
index 02f2bda..8aa4ab0 100755
--- a/configure.in
+++ b/configure.in
@@ -7312,6 +7312,7 @@ else
   SCPDEFS="$SCPDEFS -DWITH_EXTENSION_OOOBLOGGER"
   OOOBLOGGER_EXTENSION_PACK="b7b2d0e04e142f26dd96119c80757d1f-oooblogger_0.1.oxt"
 fi
+AC_SUBST(OOOBLOGGER_EXTENSION_PACK)
 
 dnl ===================================================================
 dnl Test whether to include Sun Professional Template Pack
commit 2670460a7c611216a9159711d150e7ee603e4f0c
Author: Tor Lillqvist <tlillqvist at novell.com>
Date:   Wed May 11 12:34:37 2011 +0300

    Don't print misleading messages

diff --git a/download b/download
index 41dfc28..d45489c 100755
--- a/download
+++ b/download
@@ -255,15 +255,13 @@ if [ "$GUI" = "WNT" -a -n "$md5sum" ]; then
 fi
 
 # OxygenOffice extras
-echo "Unpacking OxygenOffice extras ..."
 for pack in $OOOP_FONTS_PACK $OOOP_GALLERY_PACK $OOOP_SAMPLES_PACK $OOOP_TEMPLATES_PACK ; do
     check_file $TARFILE_LOCATION/$pack
-    echo "Unpacking $pack ..."
+    echo "Unpacking OxygenOffice extra '$pack' ..."
     unzip -o -q $TARFILE_LOCATION/$pack -d $SRC_ROOT/extras/source
 done
 
 # Extensions copy
-echo "Copy extensions to their location ..."
 for pack in $BARCODE_EXTENSION_PACK $DIAGRAM_EXTENSION_PACK $VALIDATOR_EXTENSION_PACK $WATCH_WINDOW_EXTENSION_PACK $NUMBERTEXT_EXTENSION_PACK $HUNART_EXTENSION_PACK $TYPO_EXTENSION_PACK $GOOGLE_DOCS_EXTENSION_PACK $OOOBLOGGER_EXTENSION_PACK $LIGHTPROOF_HU_PACK $LIGHTPROOF_EN_US_PACK $SUNTEMPLATES_DE_PACK $SUNTEMPLATES_EN_US_PACK $SUNTEMPLATES_ES_PACK $SUNTEMPLATES_FR_PACK $SUNTEMPLATES_HU_PACK $SUNTEMPLATES_IT_PACK; do
     check_file $TARFILE_LOCATION/$pack
     packfilename=`echo "$pack" | cut -f 2- -s -d - | cut -f 1 -d _`
commit 289a4c810a8e97dd73f1910ae1b0562b02909809
Author: Tor Lillqvist <tlillqvist at novell.com>
Date:   Wed May 11 12:25:50 2011 +0300

    Fix building of the 64-bit Windows Explorer extension, fdo#36950
    
    Don't confuse the 64-bit Explorer extension with a 64-bit LibreOffice,
    which is unfinished and highly experimental work. OOo has been
    building and distributing a 64-bit Explorer extension since long, and
    we should too. They used some secret Hamburg sauce when building it,
    though, but hopefully now it works here, too.

diff --git a/configure.in b/configure.in
index ed7cec3..02f2bda 100755
--- a/configure.in
+++ b/configure.in
@@ -449,7 +449,7 @@ AC_ARG_ENABLE(zenity,
 
 AC_ARG_ENABLE(cl-x64,
     AS_HELP_STRING([--enable-cl-x64],
-        [Use the Microsoft C/C++ x64 compiler instead of the default x86 one.]),
+        [Build a 64-bit LibreOffice using the Microsoft C/C++ x64 compiler.]),
 ,)
 
 AC_ARG_ENABLE(extra-gallery,
@@ -1556,8 +1556,8 @@ if test "$_os" = "WINNT"; then
    dnl Include twain scanners
    BUILD_TYPE="$BUILD_TYPE TWAIN"
 
-   dnl Set the CL_X64 variable.
-   AC_MSG_CHECKING([whether to use the Microsoft C/C++ x64 compiler])
+   dnl Set the CL_X64 variable if we are building a 64-bit LibreOffice.
+   AC_MSG_CHECKING([whether to build a 64-bit LibreOffice])
    if test "z$enable_cl_x64" = "z" -o "$enable_cl_x64" = "no"; then
       CL_X64=""
       AC_MSG_RESULT([no])
@@ -2189,7 +2189,7 @@ if test "$_os" = "WINNT"; then
             AC_PATH_PROG(CC, cl.exe)
         fi
 
-          if test -e "$CC"; then
+        if test -e "$CC"; then
             # This gives us a posix path with 8.3 filename restrictions
             CC=`cygpath -d "$CC"`
             CC=`cygpath -u "$CC"`
@@ -2205,7 +2205,7 @@ if test "$_os" = "WINNT"; then
             export INCLUDE=`cygpath -d "$COMPATH/Include"`
             dnl  Check which Microsoft C/C++ compiler is found
             AC_MSG_CHECKING([the Version of Microsoft C/C++ Compiler])
-dnl      The following find microsoft, matches nn.nn.nnnn then pulls numbers out.
+	    # The following finds Microsoft, matches nn.nn.nnnn then pulls numbers out.
             CCNUMVER=`$CC 2>&1 | $AWK "/Microsoft/ && /..\\...\\...../ {
                             x = match( \\\$0, /..\\...\\...../ )
                             CCversion = substr( \\\$0, RSTART, RLENGTH)
@@ -2227,6 +2227,51 @@ dnl      The following find microsoft, matches nn.nn.nnnn then pulls numbers out
         else
             AC_MSG_ERROR([Microsoft C/C++ Compiler not found. Use --with-cl-home or set path to cl.exe.])
         fi
+
+	# Check for 64-bit (cross-)compiler to use to build the 64-bit
+	# version of the Explorer extension (and maybe other small
+	# bits, too) needed when installing a 32-bit LibreOffice on a
+	# 64-bit OS. The 64-bit Explorer extension is a feature that
+	# has been present since long in OOo. Don't confuse it with
+	# building LibreOffice itself as 64-bit code, which is
+	# unfished work and highly experimental.
+
+	AC_MSG_CHECKING([for a x64 compiler])
+	BUILD_X64=
+	CC_X64_BINARY=
+	LINK_X64_BINARY=
+	LIBMGR_X64_BINARY=
+
+	# Prefer native x64 compiler to cross-compiler, in case we are running
+	# the build on a 64-bit OS.
+	if "$with_cl_home/bin/amd64/cl.exe" -? </dev/null >/dev/null 2>&1; then
+            BUILD_X64=TRUE
+	    CC_X64_BINARY="$with_cl_home/bin/amd64/cl.exe"
+	    CXX_X64_BINARY="$with_cl_home/bin/amd64/cl.exe"
+	    LINK_X64_BINARY="$with_cl_home/bin/amd64/link.exe"
+	    LIBMGR_X64_BINARY="$with_cl_home/bin/amd64/lib.exe"
+	elif "$with_cl_home/bin/x86_amd64/cl.exe" -? </dev/null >/dev/null 2>&1; then
+            BUILD_X64=TRUE
+	    CC_X64_BINARY="$with_cl_home/bin/x86_amd64/cl.exe"
+	    CXX_X64_BINARY="$with_cl_home/bin/x86_amd64/cl.exe"
+	    LINK_X64_BINARY="$with_cl_home/bin/x86_amd64/link.exe"
+	    LIBMGR_X64_BINARY="$with_cl_home/bin/x86_amd64/lib.exe"
+	fi
+	if test "$BUILD_X64" = TRUE; then
+	    AC_MSG_RESULT([found])
+	else
+	    AC_MSG_RESULT([not found])
+	    AC_MSG_WARN([Installation set will not contain the 64-bit Explorer extension])
+	fi
+	AC_SUBST(BUILD_X64)
+
+	# These are passed to the environment through set_soenv.in as usual, and then 
+	# used in set_wntx64.mk
+	AC_SUBST(CC_X64_BINARY)
+	AC_SUBST(CXX_X64_BINARY)
+	AC_SUBST(LINK_X64_BINARY)
+	AC_SUBST(LIBMGR_X64_BINARY)
+
     else
         AC_MSG_CHECKING([the MinGW C++ Compiler])
         if test `$CC -dumpmachine | $SED -e 's/^.*-//'` = "mingw32"; then
diff --git a/set_soenv.in b/set_soenv.in
index c7b6b79..a517aeb 100755
--- a/set_soenv.in
+++ b/set_soenv.in
@@ -1661,6 +1661,17 @@ if ( $platform =~ m/cygwin/ )
    ToFile( "DISABLE_ACTIVEX",   "@DISABLE_ACTIVEX@","e" );
    ToFile( "DISABLE_ATL",   "@DISABLE_ATL@","e" );
    ToFile( "USE_NEW_SDK",       $USE_NEW_SDK,       "e" );
+   # Variables used when building the parts that needs to be available
+   # also as 64-bit versions in a 32-bit LibreOffice build, like
+   # the Explorer extension. If the configure script hasn't
+   # found the 64-bit (cross-)compiler, then @BUILD_X64@ will be empty.
+   ToFile( "BUILD_X64",         "@BUILD_X64@",      "e" );
+   if ( "@BUILD_X64@" eq "TRUE" ) {
+       ToFile( "CC_X64_BINARY", "@CC_X64_BINARY@",  "e" );
+       ToFile( "CXX_X64_BINARY","@CXX_X64_BINARY@", "e" );
+       ToFile( "LINK_X64_BINARY","@LINK_X64_BINARY@","e" );
+       ToFile( "LIBMGR_X64_BINARY","@LIBMGR_X64_BINARY@","e" );
+   }
 
    # Hack around dmake's mktmp not generating DOS paths.
    my $tmpdir = qx{cygpath -m "/tmp"};
diff --git a/solenv/inc/set_wntx64.mk b/solenv/inc/set_wntx64.mk
index 0cad0a3..bf30d63 100644
--- a/solenv/inc/set_wntx64.mk
+++ b/solenv/inc/set_wntx64.mk
@@ -46,7 +46,7 @@ USE_CFLAGS_X64=-c -nologo -Gs $(NOLOGO) -Zm500 -Zc:forScope,wchar_t- -GR
 # Stack buffer overrun detection.
 CFLAGS+=-GS
 
-USE_CDEFS_X64+= -DWIN32 -D_AMD64_=1 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS
+USE_CDEFS_X64+= -D$(OS) -D$(GUI) -D$(GVER) -D$(COM) -DX86_64 -DWIN32 -D_AMD64_=1 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS
 .IF "$(debug)"!=""
 USE_CFLAGS_X64+=-Zi -Fd$(MISC_X64)/$(@:b).pdb
 USE_CDEFS_X64+=-DDEBUG
@@ -114,7 +114,7 @@ STDSLOCUI_X64=
 
 IMPLIBFLAGS_X64=-machine:X64
 
-LIBPATH_X64=$(PSDK)/lib/x64
+LIBPATH_X64=$(PSDK_HOME)/lib/x64
 LIBPATH_VC_X64=$(COMPATH)/lib/amd64
 
 ADVAPI32LIB_X64=$(LIBPATH_X64)/advapi32.lib
commit ec002f7558d774ea33c96b1f38bd3617c45dd24f
Author: Tor Lillqvist <tlillqvist at novell.com>
Date:   Wed May 11 12:24:51 2011 +0300

    Use MKDIRHIER consistently

diff --git a/solenv/inc/tg_wntx64.mk b/solenv/inc/tg_wntx64.mk
index 85f60c0..05a3155 100644
--- a/solenv/inc/tg_wntx64.mk
+++ b/solenv/inc/tg_wntx64.mk
@@ -24,14 +24,12 @@
 # for a copy of the LGPLv3 License.
 #
 #*************************************************************************
-###############################################
-#        Windows 64 bit special
-#	only used for 64 bit shell extension
-#          ( Windows Vista )
-# ---------------------------------------------
-# THIS FILE WILL BE DELETED when a fully ported
-# Windows 64 bit version is available
-###############################################
+##############################################################################################
+#       Used when building 64-bit Windows code for the 64-bit Explorer shell extension
+#	in an otherwise 32-bit LibreOffice build. Don't confuse with
+#	building a completely 64-bit LibreOffice on Windows, which is unfinished
+#	and highly experimental work.
+##############################################################################################
 
 .IF "$(BUILD_X64)"!=""
 
@@ -43,7 +41,7 @@ $(SLOTARGET_X64): $(SLOFILES_X64) $(IDLSLOFILES_X64)
 .ENDIF
     @echo ------------------------------
     @echo Making: $@
-    @-$(MKDIR) $(SLB_X64)
+    @-$(MKDIRHIER) $(SLB_X64)
 .IF "$(LIBTARGET)"!="NO"
     @-$(TYPE) $(mktmp $(&:+"\n")) > $(@:s/.lib/.lin/)
 .ENDIF          # "$(LIBTARGET)"!="NO"
@@ -73,10 +71,7 @@ SHL1IMPLIBN_X64=$(LB_X64)/$(SHL1IMPLIB_X64).lib
 .ENDIF # "$(SLOFILES_X64)$(OBJFILES_X64)"!=""
 
 make_x64_dirs :
-    -$(MKDIR) $(BIN_X64)
-    -$(MKDIR) $(MISC_X64)
-    -$(MKDIR) $(LB_X64)
-    -$(MKDIR) $(SLB_X64)
+    $(MKDIRHIER) $(BIN_X64) $(MISC_X64) $(LB_X64) $(SLB_X64)
 
 
 .IF "$(LIBTARGET)" == ""
@@ -92,7 +87,7 @@ $(LIB1TARGET_X64) :	$(LIB1FILES_X64) \
     @echo using: $(LIB1TARGET_X64)
     @echo ------------------------------
     @echo Making: $@
-    -$(MKDIR) $(SLB_X64)
+    $(MKDIRHIER) $(SLB_X64)
     @@-$(RM) $@
     $(LIBMGR_X64) $(LIBFLAGS_X64) /OUT:$@ @$(mktmp $(LIB1FILES_X64) $(LIB1OBJFILES_X64))
     @-$(RM) $(@:s/.lib/.lin/)
@@ -113,7 +108,7 @@ $(LIB2TARGET_X64) :	$(LIB2FILES_X64) \
     @echo using: $(LIB2TARGET_X64)
     @echo ------------------------------
     @echo Making: $@
-    -$(MKDIR) $(SLB_X64)
+    $(MKDIRHIER) $(SLB_X64)
     @@-$(RM) $@
     $(LIBMGR_X64) $(LIBFLAGS_X64) /OUT:$@ @$(mktmp $(LIB2FILES_X64) $(LIB2OBJFILES_X64))
     @-$(RM) $(@:s/.lib/.lin/)
@@ -131,7 +126,7 @@ $(LIB2TARGET_X64) :	$(LIB2FILES_X64) \
 $(DEF1TARGETN_X64) : \
         $(DEF1DEPN_X64) \
         $(DEF1EXPORTFILE_X64)
-        @-$(MKDIR) $(MISC_X64)
+        @-$(MKDIRHIER) $(MISC_X64)
     @-$(RM) $@.tmpfile
     @echo ------------------------------
     @echo Making Module-Definitionfile : $@
@@ -169,7 +164,7 @@ $(DEF1TARGETN_X64) : \
 $(DEF2TARGETN_X64) : \
         $(DEF2DEPN_X64) \
         $(DEF2EXPORTFILE_X64)
-    @-$(MKDIR) $(MISC_X64)
+    @-$(MKDIRHIER) $(MISC_X64)
     @-$(RM) $@.tmpfile
     @echo Making Module-Definitionfile : $@
     @echo LIBRARY	  $(EMQ)"$(SHL2TARGETN:f)$(EMQ)" 								 >$@.tmpfile
@@ -325,7 +320,7 @@ $(SHL1IMPLIBN_X64):	\
                     $(USELIBDEPN_X64)
     @echo Making: $(SHL1IMPLIBN_X64)
 # bei use_deffile implib von linker erstellt
-    @-mkdir $(LB_X64)
+    @-$(MKDIRHIER) $(LB_X64)
 .IF "$(USE_DEFFILE_X64)"==""
     $(IMPLIB_X64) $(IMPLIBFLAGS_X64) @$(mktmp -out:$(SHL1IMPLIBN_X64) \
     -def:$(SHL1DEF_X64) )
@@ -469,7 +464,7 @@ $(SHL2IMPLIBN_X64):	\
                     $(USELIBDEPN_X64)
     @echo Making: $(SHL2IMPLIBN_X64)
 # bei use_deffile implib von linker erstellt
-    @-mkdir $(LB_X64)
+    @-$(MKDIRHIER) $(LB_X64)
 .IF "$(USE_DEFFILE_X64)"==""
     $(IMPLIB_X64) $(IMPLIBFLAGS_X64) @$(mktmp -out:$(SHL2IMPLIBN_X64) \
     -def:$(SHL2DEF_X64) )
@@ -484,21 +479,21 @@ $(SLO_X64)/%.obj : %.cpp
     @echo ------------------------------
     @echo Making: $@
     @@-$(RM) $@ >& $(NULLDEV)
-    -$(MKDIR) $(@:d)
-    @-$(MKDIR) $(MISC_X64)
+    -$(MKDIRHIER) $(@:d)
+    @-$(MKDIRHIER) $(MISC_X64)
     $(CAPTURE_COMMAND) $(CXX_X64) $(USE_CFLAGS_X64) $(INCLUDE_X64) $(CFLAGSCXX_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CDEFSMT_X64) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cpp $(CAPTURE_OUTPUT)
 
 $(SLO_X64)/%.obj : %.cxx
     @echo Making: $@
     @@-$(RM) $@ >& $(NULLDEV)
-    $(COMMAND_ECHO)-$(MKDIR) $(@:d)
-    $(COMMAND_ECHO)@-$(MKDIR) $(MISC_X64)
+    $(COMMAND_ECHO)$(MKDIRHIER) $(@:d)
+    $(COMMAND_ECHO)-$(MKDIRHIER) $(MISC_X64)
     $(COMMAND_ECHO)$(CAPTURE_COMMAND) $(CXX_X64) $(USE_CFLAGS_X64) $(INCLUDE_X64) $(CFLAGSCXX_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CDEFSMT_X64) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx $(CAPTURE_OUTPUT)
 
 $(SLO_X64)/%.obj : $(MISC)/%.c
     @echo Making: $@
-    $(COMMAND_ECHO)-$(MKDIR) $(@:d)
-    $(COMMAND_ECHO)@-$(MKDIR) $(MISC_X64)
+    $(COMMAND_ECHO)$(MKDIRHIER) $(@:d)
+    $(COMMAND_ECHO)$(MKDIRHIER) $(MISC_X64)
     @@-$(RM) $@
     @$(TYPE) $(mktmp $(CC_X64) $(USE_CFLAGS_X64) $(INCLUDE_C) $(CFLAGSCC_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CFLAGSAPPEND_X64) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(MISC)/$*.c )
     @$(ECHONL)
@@ -506,8 +501,8 @@ $(SLO_X64)/%.obj : $(MISC)/%.c
 
 $(SLO_X64)/%.obj : %.c
     @echo Making: $@
-    $(COMMAND_ECHO)-$(MKDIR) $(@:d)
-    $(COMMAND_ECHO)@-$(MKDIR) $(MISC_X64)
+    $(COMMAND_ECHO)$(MKDIRHIER) $(@:d)
+    $(COMMAND_ECHO)$(MKDIRHIER) $(MISC_X64)
     @@-$(RM) $@
     $(COMMAND_ECHO)$(CC_X64) @$(mktmp $(USE_CFLAGS_X64) $(INCLUDE_C) $(CFLAGSCC_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CDEFSMT_X64) $(CFLAGSAPPEND_X64) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $*.c )
 


More information about the Libreoffice-commits mailing list