This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Attn: cygport maintainer [was: Re: Libtool 2.2.2]


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Charles Wilson wrote:
| Yaakov (Cygwin Ports) wrote:
|> AU_DEFUN([AC_PROG_LIBTOOL],
|> [LT_INIT
|> LT_OUTPUT
|> AC_DIAGNOSE([obsolete],
|> [$0: Remove this warning and the call to LT_OUTPUT if you do not need
|> libtool to exist before AC_OUTPUT.])
|> ])
|>
|> AU_ALIAS([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL])
|
| That looks OK to me. I'll include something like this in the next
| version of libtool2.2 (or "libtool" test: 2.2).

One more patch will be required, namely, to define OBJDUMP where
necessary.  I've rolled these two patches together, as attached.

Explanation:

The AC_LIBTOOL_WIN32_DLL macro was supposed to be used in packages which
built on Win32 platforms, in order to create DLLs.  This macro tested
for as, dlltool, and objdump.  The latter is used in the file_magic test
to determine if a .a is a static or import library.

In 1.5 libtool worked anyway without it, because among other variables,
OBJDUMP was given a "sane default" near the beginning of libtool.m4 and
was always exported, and AS and DLLTOOL weren't needed.

But in 2.2, the "sane defaults" have been minimized, and OBJDUMP is no
longer defined by default, so without the win32-dll arg to LT_INIT (or
the AC_LIBTOOL_WIN32_DLL compat macro), libtool refuses to link shared
libs against non-libtoolized shared libs, because the file_magic test on
the implib fails due to an undefined OBJDUMP variable.  Assuring that
OBJDUMP is defined is therefore necessary for compatibility with
previous behaviour.

Not only that, but this may fix another possible bug on Linux ELF
systems, as there is a test on that platform (line 2461 after the patch)
which uses OBJDUMP, which I don't see where it would have been defined.



Yaakov

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFIAeHppiWmPGlmQSMRCLo1AKDx1ENwmwMhmKvL12avJ1RuVJfBHACg2g69
NKjvebLP38bbNdqP/cis8GI=
=Z4Tf
-----END PGP SIGNATURE-----
--- libltdl/m4/libtool.m4	2008-04-01 13:20:04.000000000 -0500
+++ /usr/share/aclocal/libtool.m4	2008-04-13 05:21:22.296875000 -0500
@@ -99,8 +99,15 @@
 ])# LT_INIT
 
 # Old names:
-AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
-AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
+AU_DEFUN([AC_PROG_LIBTOOL],
+[LT_INIT
+LT_OUTPUT
+AC_DIAGNOSE([obsolete],
+[$0: Remove this warning and the call to LT_OUTPUT if you do not need
+libtool to exist before AC_OUTPUT.])
+])
+
+AU_ALIAS([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL])
 dnl aclocal-1.4 backwards compatibility:
 dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
 dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
@@ -2026,6 +2033,7 @@
 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
 m4_require([_LT_DECL_EGREP])dnl
 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
+m4_require([_LT_DECL_OBJDUMP])dnl
 m4_require([_LT_DECL_SED])dnl
 AC_MSG_CHECKING([dynamic linker characteristics])
 m4_if([$1],
@@ -2947,6 +2955,7 @@
 #  -- PORTME fill in with the dynamic library characteristics
 m4_defun([_LT_CHECK_MAGIC_METHOD],
 [m4_require([_LT_DECL_EGREP])
+m4_require([_LT_DECL_OBJDUMP])
 AC_CACHE_CHECK([how to recognize dependent libraries],
 lt_cv_deplibs_check_method,
 [lt_cv_file_magic_cmd='$MAGIC_CMD'
@@ -6961,6 +6970,18 @@
 ])
 
 
+# _LT_DECL_OBJDUMP
+# --------------
+# If we don't have a new enough Autoconf to choose the best objdump
+# available, choose the one first in the user's PATH.
+m4_defun([_LT_DECL_OBJDUMP],
+[AC_CHECK_TOOL(OBJDUMP, objdump, false)
+test -z "$OBJDUMP" && OBJDUMP=objdump
+_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
+AC_SUBST([OBJDUMP])
+])
+
+
 # _LT_DECL_SED
 # ------------
 # Check for a fully-functional sed program, that truncates

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]