bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

noinst_LTLIBRARIES multiply defined in condition TRUE


From: Simon Josefsson
Subject: noinst_LTLIBRARIES multiply defined in condition TRUE
Date: Wed, 29 Nov 2006 12:11:53 +0100
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.91 (gnu/linux)

With recent gnulib, I get this during autoreconf:

gl/Makefile.am:24: noinst_LTLIBRARIES multiply defined in condition TRUE ...
gl/Makefile.am:16: ... `noinst_LTLIBRARIES' previously defined here

The Makefile.am reads:

AUTOMAKE_OPTIONS = 1.5 gnits

noinst_LTLIBRARIES = libgnu.la

libgnu_la_SOURCES =
libgnu_la_LIBADD = $(gl_LTLIBOBJS)
libgnu_la_DEPENDENCIES = $(gl_LTLIBOBJS)
EXTRA_libgnu_la_SOURCES =
libgnu_la_LDFLAGS = $(AM_LDFLAGS)
noinst_HEADERS =
noinst_LTLIBRARIES =
EXTRA_DIST =
BUILT_SOURCES =
SUFFIXES =
MOSTLYCLEANFILES = core *.stackdump
MOSTLYCLEANDIRS =
CLEANFILES =
DISTCLEANFILES =
MAINTAINERCLEANFILES =

Which seems clearly wrong.

The culprit seems to be the patch below, which makes gnulib-tool read:

  if grep "^[a-zA-Z0-9_]*_${perhapsLT}LIBRARIES *= *$libname\\.$libext\$" 
allsnippets.tmp > /dev/null; then
    # One of the snippets already specifies an installation location for the
    # library. Don't confuse automake by saying it should not be installed.
    :
  else
    # By default, the generated library should not be installed.
    echo "noinst_${perhapsLT}LIBRARIES $assign $libname.$libext"
  fi
  echo
  echo "${libname}_${libext}_SOURCES ="
  # Here we use $(LIBOBJS), not @address@hidden The value is the same. However,
  # automake during its analyses looks for $(LIBOBJS), not for @address@hidden
  echo "${libname}_${libext}_LIBADD = \$(${macro_prefix}_${perhapsLT}LIBOBJS)"
  echo "${libname}_${libext}_DEPENDENCIES = 
\$(${macro_prefix}_${perhapsLT}LIBOBJS)"
  echo "EXTRA_${libname}_${libext}_SOURCES ="
  if test "$libtool" = true; then
    echo "${libname}_${libext}_LDFLAGS = \$(AM_LDFLAGS)"
  fi
  if test -z "$makefile_name"; then
    echo "noinst_HEADERS ="
    echo "noinst_LTLIBRARIES ="

Thus outputting two noinst_LTLIBRARIES statements.  Bruno, what is the
reason for this change?

Index: gnulib-tool
===================================================================
RCS file: /sources/gnulib/gnulib/gnulib-tool,v
retrieving revision 1.197
retrieving revision 1.198
diff -u -p -r1.197 -r1.198
--- gnulib-tool 15 Nov 2006 20:47:09 -0000      1.197
+++ gnulib-tool 27 Nov 2006 14:22:11 -0000      1.198
@@ -22,7 +22,7 @@
 
 progname=$0
 package=gnulib
-cvsdatestamp='$Date: 2006/11/15 20:47:09 $'
+cvsdatestamp='$Date: 2006/11/27 14:22:11 $'
 last_checkin_date=`echo "$cvsdatestamp" | sed -e 's,^\$[D]ate: ,,'`
 version=`echo "$last_checkin_date" | sed -e 's/ .*$//' -e 's,/,-,g'`
 nl='
@@ -1256,6 +1256,7 @@ func_emit_lib_Makefile_am ()
   fi
   if test -z "$makefile_name"; then
     echo "noinst_HEADERS ="
+    echo "noinst_LTLIBRARIES ="
     # Automake versions < 1.9b create an empty pkgdatadir at installation time
     # if you specify pkgdata_DATA to empty. This is a workaround.
     if grep '^pkgdata_DATA *+=' allsnippets.tmp > /dev/null; then

/Simon




reply via email to

[Prev in Thread] Current Thread [Next in Thread]