Applied to HEAD and branch-2-0.

Even with {115.116}-gary-* applied, the installed
$prefix/share/libtool/libltdl tree wasn't preserving timestamps
as libtool was installed.  So time based dependencies would still
trigger spuriously in the users tree after libtoolize --copy --ltdl.
This patch uses the same tar piping technique to preserve the
timestamps at that end too.

I'll propose a full patch for branch-1-5 presently.

Cheers,
        Gary.
-- 
Gary V. Vaughan      ())_.  [EMAIL PROTECTED],gnu.org}
Research Scientist   ( '/   http://tkd.kicks-ass.net
GNU Hacker           / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook
Index: ChangeLog
from  Gary V. Vaughan  <[EMAIL PROTECTED]>

	Preserving the installed timestamps for libltdl sources from
	`libtoolize --ltdl --copy' is pointless if they are not preserved
	from the libtool source tree at install time:

	* libltdl/Makefile.am, libltdl/loaders/Makefile.am
	(nobase_ltdldata_DATA): Renamed to...
	(ltdldatafiles): ...this.
	(install-data-local): New rule to install libltdl tree with tar to
	preserve timestamps.

Index: libltdl/Makefile.am
===================================================================
RCS file: /cvsroot/libtool/libtool/libltdl/Makefile.am,v
retrieving revision 1.69
diff -u -p -r1.69 Makefile.am
--- libltdl/Makefile.am 23 Jan 2005 17:10:12 -0000 1.69
+++ libltdl/Makefile.am 23 Feb 2005 14:37:56 -0000
@@ -1,6 +1,6 @@
 ## Process this file with automake to produce Makefile.in
 ##
-## Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004 Free Software Foundation
+## Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005 Free Software Foundation
 ##
 ## This program is free software; you can redistribute it and/or modify
 ## it under the terms of the GNU General Public License as published by
@@ -71,12 +71,19 @@ libltdlc_la_LIBADD	= $(libdlloader_la_LI
 ## These are installed as a subdirectory of pkgdatadir so that
 ## libtoolize --ltdl can find them later:
 ltdldatadir		= $(pkgvdatadir)/libltdl
-nobase_ltdldata_DATA	= COPYING.LIB Makefile.am README configure.ac \
+ltdldatafiles		= COPYING.LIB Makefile.am README configure.ac \
 			  $(libltdl_la_SOURCES) $(libdlloader_la_SOURCES) \
 			  lt__dirent.c libltdl/lt__dirent.h \
                           lt__strl.c libltdl/lt__strl.h \
 			  argz_.h argz.c
 
+## To avoid spurious reconfiguration when the user installs these files
+## with libtoolize, we have to preserve their timestamps carefully:
+install-data-local:
+	$(mkinstalldirs) $(ltdldatadir)
+	$(AMTAR) cf - $(ltdldatafiles) \
+	  | ( cd $(ltdldatadir) && $(AMTAR) xf -; )
+
 ## Make sure these will be cleaned even when they're not built by default:
 CLEANFILES		= libltdl.la libltdlc.la libdlloader.la
 
Index: libltdl/loaders/Makefile.am
===================================================================
RCS file: /cvsroot/libtool/libtool/libltdl/loaders/Makefile.am,v
retrieving revision 1.5
diff -u -p -r1.5 Makefile.am
--- libltdl/loaders/Makefile.am 23 Nov 2004 12:15:21 -0000 1.5
+++ libltdl/loaders/Makefile.am 23 Feb 2005 14:37:56 -0000
@@ -1,6 +1,6 @@
 ## Process this file with automake to produce Makefile.in
 ##
-## Copyright (C) 2004 Free Software Foundation
+## Copyright (C) 2004, 2005 Free Software Foundation
 ##
 ## This program is free software; you can redistribute it and/or modify
 ## it under the terms of the GNU General Public License as published by
@@ -51,8 +51,15 @@ dld_link_la_LIBADD	= ../libdlloader.la -
 ## These are installed as a subdirectory of pkgdatadir so that
 ## libtoolize --ltdl can find them later:
 ltdldatadir		= $(pkgvdatadir)/libltdl/loaders
-ltdldata_DATA		= Makefile.am dld_link.c dlopen.c dyld.c \
+ltdldatafiles		= Makefile.am dld_link.c dlopen.c dyld.c \
 			  load_add_on.c loadlibrary.c shl_load.c
 
+## To avoid spurious reconfiguration when the user installs these files
+## with libtoolize, we have to preserve their timestamps carefully:
+install-data-local:
+	$(mkinstalldirs) $(ltdldatadir)
+	$(AMTAR) cf - $(ltdldatafiles) \
+	  | ( cd $(ltdldatadir) && $(AMTAR) xf -; )
+
 ../libdlloader.la:
 	cd ..; $(MAKE) $(AM_MAKEFLAGS) libdlloader.la

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to