[Libreoffice-commits] .: 2 commits - README.cross solenv/bin

Jan Holesovsky kendy at kemper.freedesktop.org
Tue Sep 27 03:03:48 PDT 2011


 README.cross      |   26 ++++++++++++++++++++++++++
 solenv/bin/linkoo |   35 +++++++++++++++++++++--------------
 2 files changed, 47 insertions(+), 14 deletions(-)

New commits:
commit 07a7e3a76a2b64735f5c96a399d1da78a6209dd8
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Tue Sep 27 12:02:01 2011 +0200

    Add MinGW debugging hints.

diff --git a/README.cross b/README.cross
index 5325a4f..a3966da 100644
--- a/README.cross
+++ b/README.cross
@@ -172,6 +172,32 @@ CXX_FOR_BUILD=ccache g++
 --without-helppack-integration
 --without-myspell-dicts
 
+Once you have compiled it, you may want to try to run it:
+
+$ cd instsetoo_native/wntgcci.pro/LibreOffice_Dev/archive/install/en-US
+$ tar xf LibO-Dev_OOO350m1_Win_x86_install-arc_en-US.tar.gz
+$ cd LibO-Dev_OOO350m1_Win_x86_install-arc_en-US/LibO-dev\ 3.5/program
+$ cp /usr/i686-w64-mingw32/sys-root/mingw/bin/* ./
+$ wine soffice.exe
+
+And if you are brave enough, you can even debug it.  First you have to add the
+URE dll's to the wine's PATH using 'wine regedit' - see
+http://www.winehq.org/docs/wineusr-guide/environment-variables, and add
+Z:\local\libreoffice\master-mingw32\instsetoo_native\wntgcci.pro\LibreOffice_Dev\archive\install\en-US\LibO-Dev_OOO350m1_Win_x86_install-arc_en-US\LibO-dev 3.5\URE\bin
+to "Path".
+
+Then run linkoo, so that when you rebuild something, you can directly see the
+changes the next time you run it:
+
+solenv/bin/linkoo '<your_clone_dir>/instsetoo_native/wntgcci.pro/LibreOffice_Dev/archive/install/en-US/LibO-Dev_OOO350m1_Win_x86_install-arc_en-US/LibO-dev 3.5' <your_clone_dir>
+
+And start debugging:
+
+$ winedbg soffice.bin
+
+Would be great to be able to use winedbg --gdb, but it was crashing here :-( -
+but maybe you'll be more lucky.
+
 TODO:
 
 - installation
commit abc08aefee5e7e93b86fa484ddbbea0b29aa3f37
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Tue Sep 27 11:56:58 2011 +0200

    Add MinGW handling to linkoo.

diff --git a/solenv/bin/linkoo b/solenv/bin/linkoo
index 2a43dfd..51d9351 100755
--- a/solenv/bin/linkoo
+++ b/solenv/bin/linkoo
@@ -69,24 +69,28 @@ my $LIBVER;
 my $OOO_BUILD;
 my $OOO_INSTALL;
 
-my $program_dir = 'basis-link/program';
+my $basis_dir = 'basis-link/program';
+my $win_basis_dir = 'Basis/program';
 my $brand_program_dir = 'program';
-my $ure_misc_dir = 'basis-link/ure-link/share/misc';
-my $ure_java_dir = 'basis-link/ure-link/share/java';
 my $ure_lib_dir = 'basis-link/ure-link/lib';
+my $win_ure_lib_dir = 'URE/bin';
 
 my @exceptions = ( 'cppuhelper', 'sunjavaplugin', 'libjvmfwk' );
 
-my $dllre = '\.so$';
-
 my %replaceable = (
-    $brand_program_dir => "$dllre",
-    $program_dir => "\\.rdb",
-    $ure_lib_dir => "($dllre|\\.so\\.3\$)",
-    $program_dir . '/resource' => '\.res$',
-    $program_dir . '/classes' => '\.jar$',
+    $brand_program_dir => "(\\.so|\\.dll|\\.exe|\\.bin|\\.com)\$",
+    $basis_dir => "\\.rdb",
+    $win_basis_dir => "\\.rdb",
+    $ure_lib_dir => "(\\.so\$|\\.so\\.3\$)",
+    $win_ure_lib_dir => "(\\.dll|\\.exe|\\.bin|\\.com)\$",
+    $basis_dir . '/resource' => '\.res$',
+    $basis_dir . '/classes' => '\.jar$',
+    $win_basis_dir . '/resource' => '\.res$',
+    $win_basis_dir . '/classes' => '\.jar$',
     'basis-link/share/config' => '\.zip$',
-    'ure/share/misc' => '\.rdb'
+    'Basis/share/config' => '\.zip$',
+    'ure/share/misc' => '\.rdb$',
+    'URE/misc' => '\.rdb$'
 #    'share/uno_packages' => '\.zip$'
 );
 
@@ -176,7 +180,7 @@ sub do_link($$$$@)
 	    if (!$dry_run) {
 		# re-write the link
 		unlink ("$dest/$dest_name");
-		symlink ("$src/$src_name", "$dest/$dest_name") || die "Failed to symlink: $!";
+		symlink ("$src/$src_name", "$dest/$dest_name") || die "Failed to symlink $src/$src_name: $!";
 		print " [$dest_name]";
 	    } else {
 		print "re-make link $src/$src_name => $dest/$dest_name\n";
@@ -191,7 +195,7 @@ sub do_link($$$$@)
 	    rename ("$dest/$dest_name", "$dest/linked/$dest_name") ||
 		defined $dont_check_link || die "Failed rename of $dest/$dest_name: $!";
 
-	    symlink ("$src/$src_name", "$dest/$dest_name") || die "Failed to symlink: $!";
+	    symlink ("$src/$src_name", "$dest/$dest_name") || die "Failed to symlink $src/$src_name: $!";
 	    print " $dest_name";
 	} else {
 	    print "move / symlink $src/$src_name => $dest/$dest_name\n";
@@ -306,6 +310,8 @@ sub evilness($)
 
 sub link_gdb_py()
 {
+    return if ($TARGET eq 'wntgcci.pro');
+
     print "Special gdb.py helpers case: ";
     my $dirh;
     my @basis;
@@ -337,6 +343,8 @@ sub link_gdb_py()
 
 sub link_pagein_files()
 {
+    return if ($TARGET eq 'wntgcci.pro');
+
     print "pagein case:";
     my $src  = "$OOO_BUILD/solver/$TARGET/bin";
     my $dest = "$OOO_INSTALL/" . $brand_program_dir;
@@ -380,7 +388,6 @@ substr ($OOO_BUILD, 0, 1)   eq '/' || die "linkoo requires absolute paths ($OOO_
 -d $OOO_INSTALL || die "No such directory $OOO_INSTALL";
 -w $OOO_INSTALL || die "You need write access to $OOO_INSTALL";
 -d $OOO_BUILD || die "No such directory $OOO_BUILD";
--d "$OOO_INSTALL/" . $program_dir . "/resource" || die "$OOO_INSTALL doesn't look like an OO install";
 
 ($TARGET, $LIBVER, $LANG) = sniff_target ($OOO_BUILD);
 


More information about the Libreoffice-commits mailing list