solenv/bin/make_installer.pl | 2 +- solenv/bin/modules/installer/control.pm | 16 +++++++++++++++- solenv/bin/modules/installer/globals.pm | 2 +- solenv/bin/modules/installer/windows/msiglobal.pm | 2 +- 4 files changed, 18 insertions(+), 4 deletions(-)
New commits: commit e8ddf693e69ea768e4cb1bd4c0445990149af07d Author: Jan Holesovsky <ke...@suse.cz> Date: Tue Jul 24 17:29:28 2012 +0200 Cross-compiling-msi-related changes; not finished. Change-Id: Ib0d3d43a291f01c4c0d9c5adb0055c180b3ab40a diff --git a/solenv/bin/make_installer.pl b/solenv/bin/make_installer.pl index e58bd4d..1a7dd57 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' || $ENV{'PKGFORMAT'} eq 'msi')) { installer::control::check_makecab_version(); } +if ( $installer::globals::iswindowsbuild && (!defined($ENV{'CROSS_COMPILING'}) || $ENV{'CROSS_COMPILING'} ne 'YES' || $installer::globals::packageformat eq 'msi')) { installer::control::check_makecab_version(); } ########################################################## # Getting the include path from the settings in zip list diff --git a/solenv/bin/modules/installer/control.pm b/solenv/bin/modules/installer/control.pm index efc6331..57659a1 100644 --- a/solenv/bin/modules/installer/control.pm +++ b/solenv/bin/modules/installer/control.pm @@ -79,6 +79,12 @@ sub check_system_path # All platforms: zip # Windows only: "msiinfo.exe", "msidb.exe", "uuidgen.exe", "makecab.exe", "msitran.exe", "expand.exe" for msi database and packaging + if ($ENV{'CROSS_COMPILING'} eq 'YES') + { + # we build our own msi* etc. tools when cross-compiling + $ENV{'PATH'} .= $installer::globals::pathseparator . $ENV{'OUTDIR_FOR_BUILD'} . '/bin'; + } + my $onefile; my $error = 0; my $pathvariable = $ENV{'PATH'}; @@ -103,7 +109,11 @@ sub check_system_path if (($installer::globals::iswin) && ($installer::globals::iswindowsbuild)) { - @needed_files_in_path = ("zip.exe", "msiinfo.exe", "msidb.exe", "uuidgen.exe", "makecab.exe", "msitran.exe", "expand.exe"); + @needed_files_in_path = ("zip.exe", "msiinfo.exe", "msidb.exe", "uuidgen", "makecab.exe", "msitran.exe", "expand.exe"); + } + elsif ($installer::globals::isunix && $installer::globals::packageformat eq 'msi') + { + @needed_files_in_path = ("zip", "msiinfo.exe", "msidb.exe", "uuidgen", "makecab.exe", "msitran.exe", "cabextract"); } elsif ($installer::globals::iswin) { @@ -168,6 +178,10 @@ sub get_makecab_version my $makecabversion = -1; my $systemcall = "makecab.exe |"; + if ( $installer::globals::isunix ) + { + $systemcall = "$ENV{'OUTDIR_FOR_BUILD'}/bin/makecab.exe |"; + } my @makecaboutput = (); open (CAB, $systemcall); diff --git a/solenv/bin/modules/installer/globals.pm b/solenv/bin/modules/installer/globals.pm index ddc2e21..09b3b2d 100644 --- a/solenv/bin/modules/installer/globals.pm +++ b/solenv/bin/modules/installer/globals.pm @@ -462,7 +462,7 @@ BEGIN $libextension = "\.dll"; $isunix = 0; $iswin = 1; - $archiveformat = ".zip"; + $archiveformat = ".zip"; %savedmapping = (); %savedrevmapping = (); %savedrev83mapping = (); diff --git a/solenv/bin/modules/installer/windows/msiglobal.pm b/solenv/bin/modules/installer/windows/msiglobal.pm index 93cc78c..e9bd828 100644 --- a/solenv/bin/modules/installer/windows/msiglobal.pm +++ b/solenv/bin/modules/installer/windows/msiglobal.pm @@ -1272,7 +1272,7 @@ sub get_guid_list # "-c" for uppercase output my $systemcall = "$uuidgen -n$number |"; - if ( $ENV{'CROSS_COMPILING'} eq 'YES' ) + if ( $installer::globals::isunix ) { # -n is not present in the non-windows uuidgen $systemcall = "for I in `seq 1 $number` ; do uuidgen ; done |"; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits