[Libreoffice-commits] .: 4 commits - configure.in instsetoo_native/util README.cross setup_native/source solenv/bin

Jan Holesovsky kendy at kemper.freedesktop.org
Tue Jul 24 04:43:38 PDT 2012


 README.cross                                           |   10 
 configure.in                                           |  172 +++++++++--------
 instsetoo_native/util/makefile.mk                      |    9 
 setup_native/source/win32/wintools/makecab/makefile.mk |    2 
 setup_native/source/win32/wintools/msidb/makefile.mk   |    2 
 setup_native/source/win32/wintools/msiinfo/makefile.mk |    2 
 setup_native/source/win32/wintools/msimsp/makefile.mk  |    2 
 setup_native/source/win32/wintools/msitran/makefile.mk |    2 
 solenv/bin/make_installer.pl                           |    2 
 9 files changed, 116 insertions(+), 87 deletions(-)

New commits:
commit 22d551b3f636c15468e9411b93872f7ab3aecdea
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Tue Jul 24 13:42:06 2012 +0200

    Check for makecab in case we are cross-building .msi.
    
    Change-Id: I57cb8cc9d0173c50f789533a479d55972bdb14b4

diff --git a/solenv/bin/make_installer.pl b/solenv/bin/make_installer.pl
index 06ff6b9..e58bd4d 100644
--- a/solenv/bin/make_installer.pl
+++ b/solenv/bin/make_installer.pl
@@ -261,7 +261,7 @@ if (!($installer::globals::is_copy_only_project)) { installer::ziplist::set_manu
 # Checking version of makecab.exe
 ##############################################
 
-if ( $installer::globals::iswindowsbuild && (!defined($ENV{'CROSS_COMPILING'}) || $ENV{'CROSS_COMPILING'} ne 'YES')) { installer::control::check_makecab_version(); }
+if ( $installer::globals::iswindowsbuild && (!defined($ENV{'CROSS_COMPILING'}) || $ENV{'CROSS_COMPILING'} ne 'YES' || $ENV{'PKGFORMAT'} eq 'msi')) { installer::control::check_makecab_version(); }
 
 ##########################################################
 # Getting the include path from the settings in zip list
commit f7fd0e0198bd78c4af07918f5c900b898d4f13a6
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Tue Jul 24 12:40:35 2012 +0200

    Kill FORCE2ARCHIVE.
    
    Change-Id: Ie72dcc8ef9e82da1f0aa328648f20f9ed4a20482

diff --git a/configure.in b/configure.in
index 2baafb4..ddbb22f 100644
--- a/configure.in
+++ b/configure.in
@@ -5953,7 +5953,12 @@ elif test "$enable_epm" = "yes"; then
         AC_MSG_ERROR([unknown system])
     esac
 else
-    PKGFORMAT=native
+    if test "$WITH_MINGW" = "yes"; then
+        # when tested, we should default this to 'msi', instead of 'archive'
+        PKGFORMAT=archive
+    else
+        PKGFORMAT=native
+    fi
 fi
 AC_MSG_RESULT([$PKGFORMAT])
 AC_SUBST(PKGFORMAT)
diff --git a/instsetoo_native/util/makefile.mk b/instsetoo_native/util/makefile.mk
index 54e399d..a4dc1f9 100644
--- a/instsetoo_native/util/makefile.mk
+++ b/instsetoo_native/util/makefile.mk
@@ -41,11 +41,6 @@ PYTHONPATH:=$(PWD)$/$(BIN):$(SOLARLIBDIR):$(SOLARLIBDIR)$/python:$(SOLARLIBDIR)$
 .ENDIF			# "$(GUI)"=="WNT"
 .EXPORT: PYTHONPATH
 
-.IF "$(OS)$(COM)" == "WNTGCC"
-# i.e. cross-compiling
-FORCE2ARCHIVE=TRUE
-.ENDIF
-
 ENABLE_DOWNLOADSETS*=TRUE
 
 .EXPORT: ENABLE_DOWNLOADSETS
@@ -128,10 +123,6 @@ ALLTAR : openofficedev_$(defaultlangiso) ooodevlanguagepack $(eq,$(OS),MACOSX $(
 .ENDIF # "$(ENABLE_RELEASE_BUILD)"=="TRUE"
 .ENDIF			# "$(GUI)"!="WNT" && "$(EPM)"=="NO"
 
-.IF "$(FORCE2ARCHIVE)" == "TRUE"
-PKGFORMAT = archive
-.END
-
 .IF "$(MAKETARGETS:e)"!=""
 PKGFORMAT+=$(MAKETARGETS:e:s/.//)
 .ENDIF			# "$(MAKETARGETS:e)"!=""
commit cd93b227491a1e481452e79aee18b52fc558f368
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Tue Jul 24 11:43:14 2012 +0200

    Allow specification of --with-package-format=msi regardless of EPM setting.
    
    Change-Id: I32c80cb7ffd6cedee854d03f198f21afd94a664c

diff --git a/configure.in b/configure.in
index 73f07d0..2baafb4 100644
--- a/configure.in
+++ b/configure.in
@@ -2364,24 +2364,6 @@ if test "$_os" != "WINNT" -o "$WITH_MINGW" = "yes"; then
     AC_PROG_CC
 fi
 
-dnl We need winegcc when building MinGW build to be able to cross-build msi tools
-AC_PATH_PROG(WINEGCC, winegcc)
-if test "$WITH_MINGW" = "yes" ; then
-    if test "$WINEGCC" = ""; then
-        AC_MSG_ERROR([winegcc was not found, please install wine-devel, or wine-devel-32bit])
-    fi
-    CC_save="$CC"
-    CC="$WINEGCC -m32"
-    AC_LINK_IFELSE([AC_LANG_PROGRAM([
-#include <stdio.h>
-        ],[
-printf ("hello world\n");
-        ])],,
-        [AC_MSG_ERROR([winegcc cannot build 32bit binaries, please install glibc-devel-32bit and gcc-32bit])]
-    )
-    CC="$CC_save"
-fi
-
 COMPATH=`dirname "$CC"`
 if test "$COMPATH" = "."; then
     AC_PATH_PROGS(COMPATH, $CC)
@@ -5904,13 +5886,85 @@ else
 fi
 AC_SUBST(BUILD_DMAKE)
 
+dnl ===================================================================
+dnl Test which package format to use
+dnl ===================================================================
+AC_MSG_CHECKING([which package format to use])
+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 | archive | dmg | installed | msi)
+            ;;
+        *)
+            AC_MSG_ERROR([unsupported format $i. Supported by EPM are:
+aix - AIX software distribution
+bsd - FreeBSD, NetBSD, or OpenBSD 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
+
+LibreOffice additionally supports:
+archive - .tar.gz or .zip
+dmg - Mac OS X .dmg
+installed - installation tree
+msi - Windows .msi
+        ])
+            ;;
+        esac
+    done
+    PKGFORMAT="$with_package_format"
+elif test "$enable_epm" = "yes"; then
+    # defaults
+    case "$_os" in
+    Darwin)
+        PKGFORMAT=dmg
+        ;;
+    SunOS)
+        PKGFORMAT=pkg
+        ;;
+    Linux)
+        # if building on Debian, default should be deb...
+        if test -e /etc/debian_version; then
+            PKGFORMAT=deb
+        else
+            PKGFORMAT=rpm
+        fi
+        ;;
+    AIX)
+        PKGFORMAT=rpm
+        ;;
+    OpenBSD|DragonFly)
+        PKGFORMAT=portable
+        ;;
+    *BSD)
+        PKGFORMAT=bsd
+        ;;
+    WINNT)
+        PKGFORMAT=msi
+        ;;
+    # we never should get here since we check the arciecture/os at the beginning,
+    # but go sure...
+    *)
+        AC_MSG_ERROR([unknown system])
+    esac
+else
+    PKGFORMAT=native
+fi
+AC_MSG_RESULT([$PKGFORMAT])
+AC_SUBST(PKGFORMAT)
+
+dnl ===================================================================
+dnl Check for epm (not needed for Windows)
+dnl ===================================================================
 AC_MSG_CHECKING([whether to enable EPM for packing])
 BUILD_EPM=NO
 if test "$enable_epm" = "yes"; then
     AC_MSG_RESULT([yes])
-    dnl ===================================================================
-    dnl Check for epm - not needed for Windows
-    dnl ===================================================================
     if test "$_os" != "WINNT"; then
         if test -n "$with_epm"; then
             EPM=$with_epm
@@ -5955,71 +6009,6 @@ if test "$enable_epm" = "yes"; then
         fi
     fi
 
-    # test which package format to use
-    AC_MSG_CHECKING([which package format to use])
-
-    # defaults
-    case "$_os" in
-    Darwin)
-        PKGFORMAT=dmg
-        ;;
-    SunOS)
-        PKGFORMAT=pkg
-        ;;
-    Linux)
-        # if building on Debian, default should be deb...
-        if test -e /etc/debian_version; then
-            PKGFORMAT=deb
-        else
-            PKGFORMAT=rpm
-        fi
-        ;;
-    AIX)
-        PKGFORMAT=rpm
-        ;;
-    OpenBSD|DragonFly)
-        PKGFORMAT=portable
-        ;;
-    *BSD)
-        PKGFORMAT=bsd
-        ;;
-    WINNT)
-        PKGFORMAT=msi
-        ;;
-    # we never should get here since we check the arciecture/os at the beginning,
-    # but go sure...
-    *)
-        AC_MSG_ERROR([unknown system])
-    esac
-    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 | archive | dmg | installed | msi)
-                ;;
-            *)
-                AC_MSG_ERROR([unsupported format $i. Supported by EPM are:
-aix - AIX software distribution
-bsd - FreeBSD, NetBSD, or OpenBSD 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
-LibreOffice additionally supports:
-archive - .tar.gz or .zip
-dmg - Mac OS X .dmg
-installed - installation tree
-msi - Windows .msi
-            ])
-                ;;
-            esac
-        done
-        PKGFORMAT="$with_package_format"
-    fi
-    AC_MSG_RESULT([$PKGFORMAT])
     if echo "$PKGFORMAT" | $EGREP rpm 2>&1 >/dev/null; then
         AC_MSG_CHECKING([for rpm])
         for a in "$RPM" rpmbuild rpm; do
@@ -6100,11 +6089,29 @@ msi - Windows .msi
 else
     AC_MSG_RESULT([no])
     EPM=NO
-    PKGFORMAT=native
 fi
 AC_SUBST(EPM)
 AC_SUBST(BUILD_EPM)
-AC_SUBST(PKGFORMAT)
+
+dnl ===================================================================
+dnl We need winegcc when building MinGW build to be able to cross-build msi tools
+dnl ===================================================================
+if test "$WITH_MINGW" = "yes" -a "$PKGFORMAT" = "msi" ; then
+    AC_PATH_PROG(WINEGCC, winegcc)
+    if test "$WINEGCC" = ""; then
+        AC_MSG_ERROR([winegcc was not found, please install wine-devel, or wine-devel-32bit])
+    fi
+    CC_save="$CC"
+    CC="$WINEGCC -m32"
+    AC_LINK_IFELSE([AC_LANG_PROGRAM([
+#include <stdio.h>
+        ],[
+printf ("hello world\n");
+        ])],,
+        [AC_MSG_ERROR([winegcc cannot build 32bit binaries, please install glibc-devel-32bit and gcc-32bit])]
+    )
+    CC="$CC_save"
+fi
 
 dnl ===================================================================
 dnl Check for gperf
commit 063afe5104a4db1d97a3bcaa215f5fe87698ed70
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Mon Jul 23 18:16:46 2012 +0200

    Check for the msi* build requirements in configure.in + update README.cross.
    
    Change-Id: I0da3e604ebd0665c5405174957d852677195126b

diff --git a/README.cross b/README.cross
index ee0b0f7..1142ab9 100644
--- a/README.cross
+++ b/README.cross
@@ -93,6 +93,16 @@ zypper in mingw32-cross-gcc mingw32-cross-gcc-c++ mingw32-python-devel \
     mingw32-libcppunit-devel mingw32-libredland mingw32-libredland-devel \
     mingw32-libmythes mingw32-libmythes-devel
 
+You also need wine, ideally:
+
+zypper ar http://download.opensuse.org/repositories/Emulators:/Wine/<your_os>/Emulators:Wine.repo
+
+zypper in wine wine-devel wine-devel-32bit
+
+And in order to be able to use 'winegcc -m32', also
+
+zypper in glibc-devel-32bit gcc-32bit
+
 There might be more that are missing, please read carefully what autogen.sh
 tells you, and either remove one of the --with-system-*, or install the
 missing dependency.
diff --git a/configure.in b/configure.in
index 264c6c6..73f07d0 100644
--- a/configure.in
+++ b/configure.in
@@ -74,8 +74,6 @@ else
 fi
 AC_SUBST(CROSS_COMPILING)
 
-AC_PATH_PROG(WINEGCC, winegcc)
-
 AC_PROG_EGREP
 # AC_PROG_EGREP doesn't set GREP on all systems as well
 AC_PATH_PROG(GREP, grep)
@@ -2366,6 +2364,24 @@ if test "$_os" != "WINNT" -o "$WITH_MINGW" = "yes"; then
     AC_PROG_CC
 fi
 
+dnl We need winegcc when building MinGW build to be able to cross-build msi tools
+AC_PATH_PROG(WINEGCC, winegcc)
+if test "$WITH_MINGW" = "yes" ; then
+    if test "$WINEGCC" = ""; then
+        AC_MSG_ERROR([winegcc was not found, please install wine-devel, or wine-devel-32bit])
+    fi
+    CC_save="$CC"
+    CC="$WINEGCC -m32"
+    AC_LINK_IFELSE([AC_LANG_PROGRAM([
+#include <stdio.h>
+        ],[
+printf ("hello world\n");
+        ])],,
+        [AC_MSG_ERROR([winegcc cannot build 32bit binaries, please install glibc-devel-32bit and gcc-32bit])]
+    )
+    CC="$CC_save"
+fi
+
 COMPATH=`dirname "$CC"`
 if test "$COMPATH" = "."; then
     AC_PATH_PROGS(COMPATH, $CC)
diff --git a/setup_native/source/win32/wintools/makecab/makefile.mk b/setup_native/source/win32/wintools/makecab/makefile.mk
index b30a520..c7f277b 100644
--- a/setup_native/source/win32/wintools/makecab/makefile.mk
+++ b/setup_native/source/win32/wintools/makecab/makefile.mk
@@ -27,7 +27,7 @@ TARGET=sn_makecab
 $(BIN)/makecab.exe.so: $(BIN)/makecab.exe
 
 $(BIN)/makecab.exe:
-	$(WINEGCC) -o $(BIN)/makecab.exe makecab.c parseddf.c -mconsole -lmsi 
+	$(WINEGCC) -o $(BIN)/makecab.exe makecab.c parseddf.c -m32 -mconsole -lmsi
 
 # --- Targets --------------------------------------------------------------
 
diff --git a/setup_native/source/win32/wintools/msidb/makefile.mk b/setup_native/source/win32/wintools/msidb/makefile.mk
index 6c1f0f3..96c100f 100644
--- a/setup_native/source/win32/wintools/msidb/makefile.mk
+++ b/setup_native/source/win32/wintools/msidb/makefile.mk
@@ -27,7 +27,7 @@ TARGET=sn_msidb
 $(BIN)/msidb.exe.so: $(BIN)/msidb.exe
 
 $(BIN)/msidb.exe:
-	$(WINEGCC) -o $(BIN)/msidb.exe msidb.c -municode -lmsi 
+	$(WINEGCC) -o $(BIN)/msidb.exe msidb.c -m32 -municode -lmsi
 
 # --- Targets --------------------------------------------------------------
 
diff --git a/setup_native/source/win32/wintools/msiinfo/makefile.mk b/setup_native/source/win32/wintools/msiinfo/makefile.mk
index d7aab3b..8faf933 100644
--- a/setup_native/source/win32/wintools/msiinfo/makefile.mk
+++ b/setup_native/source/win32/wintools/msiinfo/makefile.mk
@@ -27,7 +27,7 @@ TARGET=sn_msiinfo
 $(BIN)/msiinfo.exe.so: $(BIN)/msiinfo.exe
 
 $(BIN)/msiinfo.exe:
-	$(WINEGCC) -o $(BIN)/msiinfo.exe msiinfo.c -mconsole -municode -lmsi 
+	$(WINEGCC) -o $(BIN)/msiinfo.exe msiinfo.c -m32 -mconsole -municode -lmsi
 
 # --- Targets --------------------------------------------------------------
 
diff --git a/setup_native/source/win32/wintools/msimsp/makefile.mk b/setup_native/source/win32/wintools/msimsp/makefile.mk
index a793662..8ecb5fc 100644
--- a/setup_native/source/win32/wintools/msimsp/makefile.mk
+++ b/setup_native/source/win32/wintools/msimsp/makefile.mk
@@ -27,7 +27,7 @@ TARGET=sn_msimsp
 $(BIN)/msimsp.exe.so: $(BIN)/msimsp.exe
 
 $(BIN)/msimsp.exe:
-	$(WINEGCC) -o $(BIN)/msimsp.exe msimsp.c -mconsole -lmsi 
+	$(WINEGCC) -o $(BIN)/msimsp.exe msimsp.c -m32 -mconsole -lmsi
 
 # --- Targets --------------------------------------------------------------
 
diff --git a/setup_native/source/win32/wintools/msitran/makefile.mk b/setup_native/source/win32/wintools/msitran/makefile.mk
index 4b5ed73..910f8c5 100644
--- a/setup_native/source/win32/wintools/msitran/makefile.mk
+++ b/setup_native/source/win32/wintools/msitran/makefile.mk
@@ -27,7 +27,7 @@ TARGET=sn_msitran
 $(BIN)/msitran.exe.so: $(BIN)/msitran.exe
 
 $(BIN)/msitran.exe:
-	$(WINEGCC) -o $(BIN)/msitran.exe msitran.c -mconsole -lmsi 
+	$(WINEGCC) -o $(BIN)/msitran.exe msitran.c -m32 -mconsole -lmsi
 
 # --- Targets --------------------------------------------------------------
 


More information about the Libreoffice-commits mailing list