Re: libicudata in non-standard directory linking issues.

2012-06-26 Thread Norbert Thiebaud
On Mon, Jun 25, 2012 at 4:48 PM, Michael Stahl mst...@redhat.com wrote:
 On 22 June 2012 09:57, Jonathan Adams t12nsloo...@gmail.com wrote:
 i'm not sure if adding a defined(__IBMC__) etc. is the right approach
 but if it doesn't break anything...

 they added that line for z/OS ... which, I may be wrong, I believe to
 be an IBM system ... looking around wikipedia; I found references to
 what defines are set when compiling on z/OS ...

 hmmm z/OS is apparently why that was initially added, but you never know
 what later happened to develop a dependency on this setting...


FYI __IBMC__ is defined on z/OS but also on AIX when using IBM's xlc compiler.

Norbert
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: libicudata in non-standard directory linking issues.

2012-06-25 Thread Jonathan Adams
yeah, that compiled icu fine, and I didn't even have to copy the icu
libs to the solver ...

compiled for a long time after that ...

tools_test fails though ...

If you can look through the debug file (sorry 1.7Mb
https://docs.google.com/open?id=0B6o_jmGQm0dWd3VMWEc5alhJaWc ) and
give me pointers I'd be grateful ... if you can't then I'll leave it
as is for now and try when I get access to a new compiler/updated
LibreOffice source.

Jon

On 22 June 2012 09:57, Jonathan Adams t12nsloo...@gmail.com wrote:
 i'm not sure if adding a defined(__IBMC__) etc. is the right approach
 but if it doesn't break anything...

 they added that line for z/OS ... which, I may be wrong, I believe to
 be an IBM system ... looking around wikipedia; I found references to
 what defines are set when compiling on z/OS ...

 there is code a little further down to set _XOPEN_SOURCE_EXTENDED to 0
 on Solaris, but Solaris just checks to see if _XOPEN_SOURCE_EXTENDED
 is defined ... I guess I could fix it by changing the following
 statement to an undef.

 you should try to update your ICU bug with the new patch as well, to get
 upstream's opinion and hopefully a fixed next ICU version.

 I updated the patch before I posted the email ... :)

 I'll do a git pull and then re-autogen it.

 Jon
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: libicudata in non-standard directory linking issues.

2012-06-25 Thread Michael Stahl
On 25/06/12 12:38, Jonathan Adams wrote:
 yeah, that compiled icu fine, and I didn't even have to copy the icu
 libs to the solver ...

great!

 compiled for a long time after that ...
 
 tools_test fails though ...
 
 If you can look through the debug file (sorry 1.7Mb
 https://docs.google.com/open?id=0B6o_jmGQm0dWd3VMWEc5alhJaWc ) and

[ hmm for some reason i can't look at that in my browser profile which
has my google account cookies, but i can look at it in another browser
profile that doesn't allow any google cookies... go figure... ]

 give me pointers I'd be grateful ... if you can't then I'll leave it
 as is for now and try when I get access to a new compiler/updated
 LibreOffice source.

anyway it looks like you're actually failing in sw_swdoc_test, which
means that you must have compiled Writer, which means you've come pretty
damn far :)

don't have an immediate idea why it crashes (it says in
SwDoc::GetVbaEventProcessor), but if this is just a problem in one or a
few tests, then i suggest to just comment out these tests for now, or
put them in a ifneq ($(OS),SOLARIS) check (edit e.g. sw/Module_sw.mk);
if on the other hand all unit tests crash somehow then you've got a
bigger problem...

to better diagnose the crashes it would help to build with debug, i.e.
the --enable-debug configure option; be aware that this will need 25GB
of space, and linking will need some GBs of RAM (you will run out of RAM
if you have less than 2GB, i think it's best to have at least 4GB but
you may get by with 2 or even less if you disable parallel build).

 On 22 June 2012 09:57, Jonathan Adams t12nsloo...@gmail.com wrote:
 i'm not sure if adding a defined(__IBMC__) etc. is the right approach
 but if it doesn't break anything...

 they added that line for z/OS ... which, I may be wrong, I believe to
 be an IBM system ... looking around wikipedia; I found references to
 what defines are set when compiling on z/OS ...

hmmm z/OS is apparently why that was initially added, but you never know
what later happened to develop a dependency on this setting...

well it seems our tinderboxes can build it on Linux and Mac OS X, so
it's probably good enough, and we don't care at all if e.g. HP/UX fails
with the patch :)
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: libicudata in non-standard directory linking issues.

2012-06-22 Thread Jonathan Adams
 i'm not sure if adding a defined(__IBMC__) etc. is the right approach
 but if it doesn't break anything...

they added that line for z/OS ... which, I may be wrong, I believe to
be an IBM system ... looking around wikipedia; I found references to
what defines are set when compiling on z/OS ...

there is code a little further down to set _XOPEN_SOURCE_EXTENDED to 0
on Solaris, but Solaris just checks to see if _XOPEN_SOURCE_EXTENDED
is defined ... I guess I could fix it by changing the following
statement to an undef.

 you should try to update your ICU bug with the new patch as well, to get
 upstream's opinion and hopefully a fixed next ICU version.

I updated the patch before I posted the email ... :)

I'll do a git pull and then re-autogen it.

Jon
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: libicudata in non-standard directory linking issues.

2012-06-21 Thread Michael Stahl
On 20/06/12 00:15, Jonathan Adams wrote:
 to get icu working on Openindiana/Illumos/Solaris ...
 
 http://bugs.icu-project.org/trac/ticket/9390
 
 I downloaded the very latest icu4c from icu-project and then worked
 through the source till I compiled it ... :)
 
 I put a patch on their bug system to get it to compile on Solaris ...
 although someone would need to check if that actually fixed it for
 other platforms.

can you try to add this patch to the internal ICU build?

i.e. something like

 diff -ur misc/build/icu-unpatched/ misc/build/icu/  solarisgcc.patch

then add that patch in icu/makefile.mk to the PATCH_FILES variable.

that would allow you to use the internal ICU.

 I do set PATH and LD_LIBRARY_PATH before autogen/configure/gmake ...
 this specific batch of commands is especially annoying because it
 overrides the default LD_LIBRARY_PATH, rather than setting
 'LD_LIBRARY_PATH=$O/lib:$LD_LIBRARY_PATH' or similar.

yes that is kind of sub-optimal, but if LO can't use the library on the
system then eventually we'll need to build our bundled one so we can put
it into the installation set anyway...
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: libicudata in non-standard directory linking issues.

2012-06-21 Thread Jonathan Adams
umm ... it's 14Mb worth of patch ... oh, I've compiled 4.0.1 (i wonder
how I got to that version ...) ... downloading and working through
49.1.2 ...

compiled ...

running a check ...

[All tests passed successfully...]
Elapsed Time: 00:00:24.619

Ok, applying to the in-tree icu ... not quite the same icu ... ok

copying the intree, making the changes, makefile.mk modified to use
the solaris patch ...

compiled successfully ... apart from these errors:
gmake[2]: Leaving directory
`/home/sal/LibreOffice/libo/icu/unxsogi/misc/build/icu/source'
cp: cannot stat
`./unxsogi/misc/build/icu/source/lib/libicudata.so.4.0.1': No such
file or directory
cp: cannot stat `./unxsogi/misc/build/icu/source/lib/libicudata.so.4':
No such file or directory
cp: cannot stat
`./unxsogi/misc/build/icu/source/lib/libicuuc.so.4.0.1': No such file
or directory
cp: cannot stat `./unxsogi/misc/build/icu/source/lib/libicuuc.so.4':
No such file or directory
cp: cannot stat
`./unxsogi/misc/build/icu/source/lib/libicui18n.so.4.0.1': No such
file or directory
cp: cannot stat `./unxsogi/misc/build/icu/source/lib/libicui18n.so.4':
No such file or directory
cp: cannot stat
`./unxsogi/misc/build/icu/source/lib/libicule.so.4.0.1': No such file
or directory
cp: cannot stat `./unxsogi/misc/build/icu/source/lib/libicule.so.4':
No such file or directory
cp: cannot stat
`./unxsogi/misc/build/icu/source/lib/libicutu.so.4.0.1': No such file
or directory
cp: cannot stat `./unxsogi/misc/build/icu/source/lib/libicutu.so.4':
No such file or directory
dmake:  Error code 1, while making './unxsogi/misc/build/so_predeliver_so_icu'

diff attached ...

Jon

On 21 June 2012 13:51, Michael Stahl mst...@redhat.com wrote:
 On 20/06/12 00:15, Jonathan Adams wrote:
 to get icu working on Openindiana/Illumos/Solaris ...

 http://bugs.icu-project.org/trac/ticket/9390

 I downloaded the very latest icu4c from icu-project and then worked
 through the source till I compiled it ... :)

 I put a patch on their bug system to get it to compile on Solaris ...
 although someone would need to check if that actually fixed it for
 other platforms.

 can you try to add this patch to the internal ICU build?

 i.e. something like

  diff -ur misc/build/icu-unpatched/ misc/build/icu/  solarisgcc.patch

 then add that patch in icu/makefile.mk to the PATCH_FILES variable.

 that would allow you to use the internal ICU.

 I do set PATH and LD_LIBRARY_PATH before autogen/configure/gmake ...
 this specific batch of commands is especially annoying because it
 overrides the default LD_LIBRARY_PATH, rather than setting
 'LD_LIBRARY_PATH=$O/lib:$LD_LIBRARY_PATH' or similar.

 yes that is kind of sub-optimal, but if LO can't use the library on the
 system then eventually we'll need to build our bundled one so we can put
 it into the installation set anyway...


icu4c-solarisgcc.patch
Description: Binary data
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: libicudata in non-standard directory linking issues.

2012-06-21 Thread Michael Stahl
On 21/06/12 16:54, Jonathan Adams wrote:
 umm ... it's 14Mb worth of patch ... oh, I've compiled 4.0.1 (i wonder
 how I got to that version ...) ... downloading and working through
 49.1.2 ...
 
 compiled ...
 
 running a check ...
 
 [All tests passed successfully...]
 Elapsed Time: 00:00:24.619
 
 Ok, applying to the in-tree icu ... not quite the same icu ... ok
 
 copying the intree, making the changes, makefile.mk modified to use
 the solaris patch ...
 
 compiled successfully ... apart from these errors:

great!

 gmake[2]: Leaving directory
 `/home/sal/LibreOffice/libo/icu/unxsogi/misc/build/icu/source'
 cp: cannot stat
 `./unxsogi/misc/build/icu/source/lib/libicudata.so.4.0.1': No such
 file or directory

it looks like it still has the version numbers from your system ICU
stored somewhere... you need to re-run configure, perhaps pass
--without-system-icu and ensure that the config_host.mk doesn't include
anything related to your system ICU.

 diff attached ...

i've added it to icu/makefile.mk and pushed it to master

i'm not sure if adding a defined(__IBMC__) etc. is the right approach
but if it doesn't break anything...

you should try to update your ICU bug with the new patch as well, to get
upstream's opinion and hopefully a fixed next ICU version.
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: libicudata in non-standard directory linking issues.

2012-06-19 Thread Caolán McNamara
On Tue, 2012-06-19 at 17:55 +0100, Jonathan Adams wrote:
 I have an issue with compiling tail_build on certain
 modules because they redefine the LD)LIBRARY_PATH:
 
 S=/home/sal/LibreOffice/libo  O=$S/solver/unxsogi 
 W=$S/workdir/unxsogi   LD_LIBRARY_PATH=$O/lib
 
 can anyone tell me where this is defined in the source code

Well, grepping for LD_LIBRARY_PATH in solenv/gbuild gives...
gb_Helper_LIBRARY_PATH_VAR := LD_LIBRARY_PATH among other things and
grepping for gb_Helper_set_ld_path gives...
gb_Helper_set_ld_path :=
$(gb_Helper_LIBRARY_PATH_VAR)=$(OUTDIR_FOR_BUILD)/lib among other
things so that's probably where its coming from, that
gb_Helper_set_ld_path thing.

But if you're building with a system icu, hopefully configuring with
--with-system-icu with /opt/your/system/icu/bin in the path would
*hopefully* set enough magic smoke to make it work, but I guess its
quite possible that noone jumped through all the hoops to make it work
out of the box for non-standard install locations of a system icu.

Maybe just setting a LD_LIBRARY_PATH=/opt/your/system/icu/lib before a
configure --with-system-icu or some such might be sufficient.

C.

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: libicudata in non-standard directory linking issues.

2012-06-19 Thread Eike Rathke
Hi Jonathan,

On Tuesday, 2012-06-19 17:55:09 +0100, Jonathan Adams wrote:

 Having had trouble getting icu compiled on Solaris with GCC, I
 compiled it out of tree and placed it in /opt/icu on my computer (I
 want to know what specifically needs to attach to non-standard
 libraries on my system for portability)

We'd like to learn how you solved your problems compiling ICU and why it
didn't compile in-tree :)
Btw, on current master and 3-6 we switched to ICU 49, maybe that solves
your problem already?

 however I noticed that although LibreOffice is happy to know it exists
 it seems to go out of it's way not to try and include it in any paths
 (LD_LIBRARY or CFLAGS).
 
 whilst I can hack config_host.mk to make sure that it includes
 -I/opt/icu/include and set my LD_LIBRARY_PATH so that it includes
 the /opt/icu/lib, I have an issue with compiling tail_build on certain
 modules because they redefine the LD)LIBRARY_PATH:

This sounds actually like a mix of --with-system-icu but without icu
being a system library, i.e. not registered with ldconfig. Quite
a corner case I'd say..

Despite that, for your scenario those places would indeed have to
augment and extend LD_LIBRARY_PATH instead of replacing it.

 can anyone tell me where this is defined in the source code, and how
 to tell it to go away, or how to tell the system to include the ICU
 path given to it via icu-config?

Detection source is in configure.in ICU* variables, icu-config is used
there to obtain the system's path. The gencoll_rule calls during build
you mentioned are emitted through gb_Helper_execute somewhere in
solenv/gbuild/*, it's the $(call gb_Helper_execute,gencoll_rule) in
i18npool/CustomTarget_collator.mk

  Eike

-- 
LibreOffice Calc developer. Number formatter stricken i18n transpositionizer.
GnuPG key 0x293C05FD : 997A 4C60 CE41 0149 0DB3  9E96 2F1A D073 293C 05FD


pgpuBNiNWOvCK.pgp
Description: PGP signature
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: libicudata in non-standard directory linking issues.

2012-06-19 Thread Jonathan Adams
to get icu working on Openindiana/Illumos/Solaris ...

http://bugs.icu-project.org/trac/ticket/9390

I downloaded the very latest icu4c from icu-project and then worked
through the source till I compiled it ... :)

I put a patch on their bug system to get it to compile on Solaris ...
although someone would need to check if that actually fixed it for
other platforms.

I do set PATH and LD_LIBRARY_PATH before autogen/configure/gmake ...
this specific batch of commands is especially annoying because it
overrides the default LD_LIBRARY_PATH, rather than setting
'LD_LIBRARY_PATH=$O/lib:$LD_LIBRARY_PATH' or similar.

yeah, it finds icu-config, but it doesn't appear to do anything with
the output because if I grep for /opt/icu it can't find it.

the only information in config_host.mk related to icu are these 3 lines:
export SYSTEM_GENBRK=/opt/icu/bin/genbrk
export SYSTEM_GENCCODE=/opt/icu/sbin/genccode
export SYSTEM_GENCMN=/opt/icu/sbin/gencmn

I then add extra includes and libs to the SOLARINC,
SOLARINC_FOR_BUILD, SOLARLIB and SOLARLIB_FOR_BUILD defs.
I'm still hoping that I can get a full build of LibreOffice on
OpenIndiana, but I'll still have to wait to see if it works after I
compile it :)

Jon

On 19 June 2012 22:26, Eike Rathke er...@redhat.com wrote:
 Hi Jonathan,

 On Tuesday, 2012-06-19 17:55:09 +0100, Jonathan Adams wrote:

 Having had trouble getting icu compiled on Solaris with GCC, I
 compiled it out of tree and placed it in /opt/icu on my computer (I
 want to know what specifically needs to attach to non-standard
 libraries on my system for portability)

 We'd like to learn how you solved your problems compiling ICU and why it
 didn't compile in-tree :)
 Btw, on current master and 3-6 we switched to ICU 49, maybe that solves
 your problem already?

 however I noticed that although LibreOffice is happy to know it exists
 it seems to go out of it's way not to try and include it in any paths
 (LD_LIBRARY or CFLAGS).

 whilst I can hack config_host.mk to make sure that it includes
 -I/opt/icu/include and set my LD_LIBRARY_PATH so that it includes
 the /opt/icu/lib, I have an issue with compiling tail_build on certain
 modules because they redefine the LD)LIBRARY_PATH:

 This sounds actually like a mix of --with-system-icu but without icu
 being a system library, i.e. not registered with ldconfig. Quite
 a corner case I'd say..

 Despite that, for your scenario those places would indeed have to
 augment and extend LD_LIBRARY_PATH instead of replacing it.

 can anyone tell me where this is defined in the source code, and how
 to tell it to go away, or how to tell the system to include the ICU
 path given to it via icu-config?

 Detection source is in configure.in ICU* variables, icu-config is used
 there to obtain the system's path. The gencoll_rule calls during build
 you mentioned are emitted through gb_Helper_execute somewhere in
 solenv/gbuild/*, it's the $(call gb_Helper_execute,gencoll_rule) in
 i18npool/CustomTarget_collator.mk

  Eike

 --
 LibreOffice Calc developer. Number formatter stricken i18n transpositionizer.
 GnuPG key 0x293C05FD : 997A 4C60 CE41 0149 0DB3  9E96 2F1A D073 293C 05FD
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice