libtool-patches
[Top][All Lists]
Advanced

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

Fix mdemo-dryrun failure with OpenBSD make


From: Ralf Wildenhues
Subject: Fix mdemo-dryrun failure with OpenBSD make
Date: Mon, 11 Feb 2008 22:52:06 +0100
User-agent: Mutt/1.5.13 (2006-08-11)

Inside mdemo/Makefile.am, the dependencies for toplevel
libltdl/libltdlc.la were bogus, thus make was always entering toplevel
to rebuild the library.  GNU make checks afterwards for updated time
stamps, but BSD make does not.  So, then, with 'make install' in the
dryrun case, we end up rerunning the rules for mdemo and mdemo_static,
and since they go like this:

mdemo$(EXEEXT): $(mdemo_OBJECTS) $(mdemo_DEPENDENCIES)
        @rm -f mdemo$(EXEEXT)
        $(mdemo_LINK) $(mdemo_OBJECTS) $(mdemo_LDADD) $(LIBS)

the 'rm -f' will cause the mdemo and mdemo_static executables to
disappear.  Nice, huh?  Fixed as shown below.  No, I do not care to list
all of the source files of libltdl there: toplevel check-local already
depends on libltdl/libltdlc.la, so it should anyway be up to date before
running the mdemo tests.

Cheers,
Ralf

2008-02-11  Ralf Wildenhues  <address@hidden>

        * tests/mdemo/Makefile.am (@LIBLTDL@): Update outdated
        dependencies.
        ($(top_distdir)/libltdl/libtool): Remove.
        Fixes spurious mdemo-dryrun failure with OpenBSD make.

Index: tests/mdemo/Makefile.am
===================================================================
RCS file: /cvsroot/libtool/libtool/tests/mdemo/Makefile.am,v
retrieving revision 1.12
diff -u -r1.12 Makefile.am
--- tests/mdemo/Makefile.am     31 Jan 2008 16:19:17 -0000      1.12
+++ tests/mdemo/Makefile.am     11 Feb 2008 21:48:59 -0000
@@ -1,6 +1,6 @@
 ## Makefile.am -- Process this file with automake to produce Makefile.in
 ##
-##   Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation
+##   Copyright (C) 2003, 2004, 2005, 2007, 2008 Free Software Foundation
 ##   Written by Gary V. Vaughan, 2003
 ##
 ##   This file is part of GNU Libtool.
@@ -54,13 +54,12 @@
 ## use @LIBLTDL@ because some broken makes do not accept macros in targets
 ## we can only do this because our LIBLTDL does not contain ${top_builddir}
 top_distdir = ../..
address@hidden@: $(top_distdir)/libtool $(top_distdir)/libltdl/libtool \
-    $(top_distdir)/libltdl/config.h $(srcdir)/$(top_distdir)/libltdl/ltdl.c \
address@hidden@: $(top_distdir)/libtool \
+    $(top_distdir)/config.h $(srcdir)/$(top_distdir)/libltdl/ltdl.c \
     $(srcdir)/$(top_distdir)/libltdl/ltdl.h
        (cd $(top_distdir); $(MAKE) `echo $(LIBLTDL) | sed 
's,.*\.\./libltdl/,libltdl/,g'`)
-# Without the following line, the check may fail if libltdl/libtool is
-# removed after libltdl is configured
-$(top_distdir)/libltdl/libtool $(top_distdir)/libltdl/config.h:
+# Do not error out if toplevel config.h does not exist:
+$(top_distdir)/config.h:
 
 # Create a version of mdemo that does dlopen.
 mdemo_SOURCES = main.c




reply via email to

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