Re: hwcap 0 nosegneg in FC6 ld.so.cache
On 2007-06-19, Peter O'Gorman <[EMAIL PROTECTED]> wrote: > I am inclined to vote for (1) for now. It might be worth a figuring out > how to have ldconfig (or some other utility) output the real search path > that the dynamic linker uses for the future, parsing ld.so.conf and > friends seems to be fragile, this is not the first time that it has had > problems. That reminded me that I have this patch lying around, which I'd been meaning to put forward. The motivation behind this was that libtool currently doesn't know about systems where ldconfig has extra default trusted directories (such as /usr/lib64) so libtool sets an rpath for libraries installed in these directories, which is against the policies of most Linux distros, and fixing this currently requires hackery in packaging scripts. But it nicely solves this issue too. Patch is against the 1.5 branch, because that's where I was trying this out, but if you think this approach is suitable for inclusion, I'm happy to update it for HEAD and try to provide a suitable ChangeLog entry. Index: libtool.m4 === RCS file: /sources/libtool/libtool/Attic/libtool.m4,v retrieving revision 1.314.2.181 diff -p -u -r1.314.2.181 libtool.m4 --- libtool.m4 18 Jun 2007 02:07:45 - 1.314.2.181 +++ libtool.m4 23 Jun 2007 14:37:02 - @@ -1618,10 +1618,10 @@ linux* | k*bsd*-gnu) # before this can be enabled. hardcode_into_libs=yes - # Append ld.so.conf contents to the search path - if test -f /etc/ld.so.conf; then -lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` -sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" + # Extract search path from ldconfig + ldconfig_search_path=`/sbin/ldconfig -N -X -v 2>/dev/null|sed 's,^\(/.*\):\( (.*)\)\?$,\1,p;d'` + if test -n "$ldconfig_search_path"; then +sys_lib_dlsearch_path_spec=$ldconfig_search_path fi # We used to test for /lib/ld.so.1 and disable shared libraries on Cheers, Olly ___ http://lists.gnu.org/mailman/listinfo/libtool
Re: Making shared libraries (DLLs) on Windows: -no-undefined
On Sat, 2007-06-23 at 17:37 +, Olly Betts wrote: > [A somewhat belated reply, but I only just noticed this thread...] > > On 2007-05-01, Ralf Wildenhues <[EMAIL PROTECTED]> wrote: > > Generally I think you should be able to just use it everywhere. The > > Libtool testsuite uses it throughout and I cannot remember a test > > failure due to it. I'm however not sure whether there was an issue with > > C++ code some time ago (so this data point may be FUD; sorry for not > > investigating now). > > I encountered problems on Mac OS X with C++ code. I don't have access > to OS X to check, but this is what I have in configure.ac from working > on this before: > -no-undefined on Mac OS X should work as advertised and fail to link if there are undefined symbols. It is a pity that you don't have the error any longer, we might be able to find the root cause. Anyway, good that you found a solution for your case :) Peter ___ http://lists.gnu.org/mailman/listinfo/libtool
Re: hwcap 0 nosegneg in FC6 ld.so.cache
On Sat, 2007-06-23 at 14:45 +, Olly Betts wrote: > -lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s > 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < > /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / > /g;/^$/d' | tr '\n' ' '` > -sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" > + # Extract search path from ldconfig > + ldconfig_search_path=`/sbin/ldconfig -N -X -v 2>/dev/null|sed > 's,^\(/.*\):\( (.*)\)\?$,\1,p;d'` > + if test -n "$ldconfig_search_path"; then > +sys_lib_dlsearch_path_spec=$ldconfig_search_path >fi /sbin/ldconfig -N -X -v takes quite a while on my system, but it does seem to provide true results. Might be a good solution, thanks. Peter ___ http://lists.gnu.org/mailman/listinfo/libtool
Re: Making shared libraries (DLLs) on Windows: -no-undefined
[A somewhat belated reply, but I only just noticed this thread...] On 2007-05-01, Ralf Wildenhues <[EMAIL PROTECTED]> wrote: > Generally I think you should be able to just use it everywhere. The > Libtool testsuite uses it throughout and I cannot remember a test > failure due to it. I'm however not sure whether there was an issue with > C++ code some time ago (so this data point may be FUD; sorry for not > investigating now). I encountered problems on Mac OS X with C++ code. I don't have access to OS X to check, but this is what I have in configure.ac from working on this before: dnl -no-undefined causes problems on Mac OS X with at least some dnl MACOSX_DEPLOYMENT_TARGET settings, so only pass -no-undefined on dnl platforms where it is required in order to link a shared library at dnl all (Windows is the main one). NO_UNDEFINED= if test unsupported = "$allow_undefined_flag" ; then NO_UNDEFINED=-no-undefined fi AC_SUBST(NO_UNDEFINED) This approach seems to work everywhere I've tried it, though it would be nicer if -no-undefined just worked on OS X too in this situation. Cheers, Olly ___ http://lists.gnu.org/mailman/listinfo/libtool
Re: hwcap 0 nosegneg in FC6 ld.so.cache
On Tue, 2007-06-19 at 21:17 +0200, Ralf Wildenhues wrote: > If my above reasoning is right, then remains the question *how* to > implement (1). I don't see what regression the sed command > /^[ ]*hwcap[]/d > Hi Ralf, I applied this. Thanks, Peter 2007-06-22 Ralf Wildenhues <[EMAIL PROTECTED]> * libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [linux]: Ignore lines in ld.so.conf starting with 'hwcap '. Index: libtool.m4 === RCS file: /sources/libtool/libtool/Attic/libtool.m4,v retrieving revision 1.314.2.181 diff -u -r1.314.2.181 libtool.m4 --- libtool.m4 18 Jun 2007 02:07:45 - 1.314.2.181 +++ libtool.m4 24 Jun 2007 02:10:38 - @@ -1620,7 +1620,7 @@ # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then -lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi ___ http://lists.gnu.org/mailman/listinfo/libtool
libtool-1.5.24
Looks like this is not going to happen tonight, I can't upload to gnu.org. Peter ___ http://lists.gnu.org/mailman/listinfo/libtool