Re: [libtool 2.2] testsuite: 33 34 35 36 44 45 46 48 49 50 51 52 53 57 58 60 61 62 failed [NetBSD IA-32]
Hello Nelson, Peter, * Peter O'Gorman wrote on Thu, Mar 06, 2008 at 06:49:39AM CET: > Nelson H. F. Beebe wrote: > > > ./old-m4-iface.at:85: CONFIG_SHELL=$SHELL $SHELL ./configure > > $configure_options > > stderr: > > stdout: > > ./old-m4-iface.at:85: $MAKE > > stderr: > > make[4]: *** No targets specified and no makefile found. Stop. > > Hmm. 'CONFIG_SHELL=$SHELL $SHELL ./configure $configure_options' does > not appear to do anything? I suppose 'autoconf' is not doing its job right. Nelson, which Autoconf and Automake versions do you have installed? > I think Ralf has seen this before, if not I will look at it. Not sure I remember. On the NetBSD system I tested, everything went through just fine. But I did use recent pristine Autoconf and Automake. Cheers, Ralf ___ Bug-libtool mailing list Bug-libtool@gnu.org http://lists.gnu.org/mailman/listinfo/bug-libtool
Re: libtool 2.2 - import library detection failure when cross compiling to mingw32
Hello Jakub, Thanks for the bug report. * Jakub Bogusz wrote on Wed, Mar 12, 2008 at 11:23:16PM CET: > > I noticed that libtool sometimes rejects to create shared library using -l... > to link with some import libraries failing to recognize those import > libraries as such. > > It happens if AC_CANONICAL_HOST is not issued before AC_PROG_LIBTOOL/LT_INIT > - because libtool macros AC_REQUIRE([AC_CANONICAL_HOST]) _after_ processing > LT_INIT options, and that's win32-dll LT_INIT option processing which > calls AC_CHECK_TOOL for objdump, which is used to recognize type of ar > archives. > > When AC_CHECK_TOOL is issued before AC_CANONICAL_HOST, instead of finding > cross version of objdump it finds native (Linux/x86 in my case) objdump, > which can't recognize archive which contains PE objects. Can you post a (preferably small) example that exposes this, plus the error output you see? If the example is large, then post a link to it. This should have a testsuite test addition so we don't regress in the future. Thanks, Ralf ___ Bug-libtool mailing list Bug-libtool@gnu.org http://lists.gnu.org/mailman/listinfo/bug-libtool
libtool 2.2 - import library detection failure when cross compiling to mingw32
Hello, I noticed that libtool sometimes rejects to create shared library using -l... to link with some import libraries failing to recognize those import libraries as such. It happens if AC_CANONICAL_HOST is not issued before AC_PROG_LIBTOOL/LT_INIT - because libtool macros AC_REQUIRE([AC_CANONICAL_HOST]) _after_ processing LT_INIT options, and that's win32-dll LT_INIT option processing which calls AC_CHECK_TOOL for objdump, which is used to recognize type of ar archives. When AC_CHECK_TOOL is issued before AC_CANONICAL_HOST, instead of finding cross version of objdump it finds native (Linux/x86 in my case) objdump, which can't recognize archive which contains PE objects. So I see two possible solutions: - move AC_REQUIRE([AC_CANONICAL...]) from _LT_SETUP to beginning of LT_INIT - instead of calling AC_CHECK_TOOL in option processing, set some variable to call them later, after ensuring AC_CANONICAL_HOST is called -- Jakub Boguszhttp://qboosh.pl/ ___ Bug-libtool mailing list Bug-libtool@gnu.org http://lists.gnu.org/mailman/listinfo/bug-libtool
Re: [patch #6416] AmigaOS4 support in libtool
Thank you Ralf I hope that I will find some more time to make some more tests/changes in about week. Best regards, Henning > Hello Henning, > > I have applied your patch now, including a NEWS entry, as below, and put > you in THANKS. Please check that I did not make any errors, thanks. > > Gathering from the testsuite failure, the shared library support has > some work ahead yet. > > Cheers, > Ralf > > 2008-03-12 Henning Nielsen Lund <[EMAIL PROTECTED]> > > * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) > (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [amigaos]: Port to > AmigaOS4 shared libraries on powerpc. > * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [amigaos]: > Likewise. > * THANKS, NEWS: Update. > > Index: NEWS > === > RCS file: /cvsroot/libtool/libtool/NEWS,v > retrieving revision 1.222 > diff -u -r1.222 NEWS > --- NEWS 4 Mar 2008 22:31:33 - 1.222 > +++ NEWS 12 Mar 2008 19:47:00 - > @@ -2,6 +2,10 @@ > > New in 2.3b: 2008-??-??: CVS version 2.3a, Libtool team: > > +* Changes in supported systems or compilers: > + > + - Initial shared library support for AmigaOS4 on powerpc. > + > * Bug fixes: > >- Fix 2.2 regression in libltdl that causes memory corruption upon > Index: libltdl/m4/libtool.m4 > === > RCS file: /cvsroot/libtool/libtool/libltdl/m4/libtool.m4,v > retrieving revision 1.142 > diff -u -r1.142 libtool.m4 > --- libltdl/m4/libtool.m4 8 Mar 2008 12:14:15 - 1.142 > +++ libltdl/m4/libtool.m4 12 Mar 2008 19:47:04 - > @@ -2150,13 +2150,18 @@ >;; > > amigaos*) > - if test "$host_cpu" = m68k; then > + case $host_cpu in > + powerpc) > +# Since July 2007 AmigaOS4 officially supports .so libraries. > +# When compiling the executable, add -use-dynld -Lsobjs: to the > compileline. > +library_names_spec='${libname}${release}${shared_ext}$versuffix > ${libname}${release}${shared_ext}$major $libname${shared_ext}' > +;; > + m68k) > library_names_spec='$libname.ixlibrary $libname.a' > # Create ${libname}_ixlibrary.a entries in /sys/libs. > finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do > libname=`$ECHO "X$lib" | $Xsed -e > '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM > /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib > ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib > ${libname}_ixlibrary.a || exit 1; done' > - else > -dynamic_linker=no > - fi > +;; > + esac >;; > > beos*) > @@ -3524,14 +3529,22 @@ > _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' >fi >;; > + > amigaos*) > - if test "$host_cpu" = m68k; then > -# FIXME: we need at least 68020 code to build shared libraries, > but > -# adding the `-m68020' flag to GCC prevents building anything > better, > -# like `-m68040'. > -_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 > -malways-restore-a4' > - fi > + case $host_cpu in > + powerpc) > +# see comment about AmigaOS4 .so support > +_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' > +;; > + m68k) > +# FIXME: we need at least 68020 code to build shared > libraries, but > +# adding the `-m68020' flag to GCC prevents building anything > better, > +# like `-m68040'. > +_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 > -malways-restore-a4' > +;; > + esac >;; > + > beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) ># PIC is the default for these OSes. >;; > @@ -3816,12 +3829,18 @@ >;; > > amigaos*) > - if test "$host_cpu" = m68k; then > -# FIXME: we need at least 68020 code to build shared libraries, > but > -# adding the `-m68020' flag to GCC prevents building anything > better, > -# like `-m68040'. > -_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 > -malways-restore-a4' > - fi > + case $host_cpu in > + powerpc) > +# see comment about AmigaOS4 .so support > +_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' > +;; > + m68k) > +# FIXME: we need at least 68020 code to build shared > libraries, but > +# adding the `-m68020' flag to GCC prevents building anything > better, > +# like `-m68040'. > +_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 > -malways-restore-a4' > +;; > + esac >;; > > beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) > @@ -4228,19 +4247,18 @@ >;; > > amigaos*) > - if test "$host_cpu" = m68k; then > -_LT_TAGVAR(archive_cmds, $1)='$RM > $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > > $output_objdir/a2ixlibra
Re: [patch #6416] AmigaOS4 support in libtool
Hello Henning, I have applied your patch now, including a NEWS entry, as below, and put you in THANKS. Please check that I did not make any errors, thanks. Gathering from the testsuite failure, the shared library support has some work ahead yet. Cheers, Ralf 2008-03-12 Henning Nielsen Lund <[EMAIL PROTECTED]> * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [amigaos]: Port to AmigaOS4 shared libraries on powerpc. * libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [amigaos]: Likewise. * THANKS, NEWS: Update. Index: NEWS === RCS file: /cvsroot/libtool/libtool/NEWS,v retrieving revision 1.222 diff -u -r1.222 NEWS --- NEWS4 Mar 2008 22:31:33 - 1.222 +++ NEWS12 Mar 2008 19:47:00 - @@ -2,6 +2,10 @@ New in 2.3b: 2008-??-??: CVS version 2.3a, Libtool team: +* Changes in supported systems or compilers: + + - Initial shared library support for AmigaOS4 on powerpc. + * Bug fixes: - Fix 2.2 regression in libltdl that causes memory corruption upon Index: libltdl/m4/libtool.m4 === RCS file: /cvsroot/libtool/libtool/libltdl/m4/libtool.m4,v retrieving revision 1.142 diff -u -r1.142 libtool.m4 --- libltdl/m4/libtool.m4 8 Mar 2008 12:14:15 - 1.142 +++ libltdl/m4/libtool.m4 12 Mar 2008 19:47:04 - @@ -2150,13 +2150,18 @@ ;; amigaos*) - if test "$host_cpu" = m68k; then + case $host_cpu in + powerpc) +# Since July 2007 AmigaOS4 officially supports .so libraries. +# When compiling the executable, add -use-dynld -Lsobjs: to the compileline. +library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +;; + m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' - else -dynamic_linker=no - fi +;; + esac ;; beos*) @@ -3524,14 +3529,22 @@ _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; + amigaos*) - if test "$host_cpu" = m68k; then -# FIXME: we need at least 68020 code to build shared libraries, but -# adding the `-m68020' flag to GCC prevents building anything better, -# like `-m68040'. -_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' - fi + case $host_cpu in + powerpc) +# see comment about AmigaOS4 .so support +_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' +;; + m68k) +# FIXME: we need at least 68020 code to build shared libraries, but +# adding the `-m68020' flag to GCC prevents building anything better, +# like `-m68040'. +_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' +;; + esac ;; + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; @@ -3816,12 +3829,18 @@ ;; amigaos*) - if test "$host_cpu" = m68k; then -# FIXME: we need at least 68020 code to build shared libraries, but -# adding the `-m68020' flag to GCC prevents building anything better, -# like `-m68040'. -_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' - fi + case $host_cpu in + powerpc) +# see comment about AmigaOS4 .so support +_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' +;; + m68k) +# FIXME: we need at least 68020 code to build shared libraries, but +# adding the `-m68020' flag to GCC prevents building anything better, +# like `-m68040'. +_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' +;; + esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) @@ -4228,19 +4247,18 @@ ;; amigaos*) - if test "$host_cpu" = m68k; then -_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' -_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -_L