[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: bug in m4/mkdirp.m4
From: |
Alexandre Duret-Lutz |
Subject: |
Re: bug in m4/mkdirp.m4 |
Date: |
Mon, 03 Oct 2005 22:48:02 +0200 |
User-agent: |
Gnus/5.110003 (No Gnus v0.3) Emacs/22.0.50 (gnu/linux) |
>>> "PO" == Peter O'Gorman <address@hidden> writes:
PO> Alexandre Duret-Lutz wrote:
PO> 2005-??-?? Peter O'Gorman <address@hidden>
PO> * lib/am/distdir.am: Remove $(SHELL) when calling install_sh
PO> * m4/strip.m4: Ditto.
PO> * m4/install-sh.m4: Add $(SHELL) to the definition of install_sh
>> Thanks for the patch. Can you explain how the x bit vanished?
>> This looks like the bug we should fix first.
PO> Welcome back Alexandre.
PO> Yeah, the executable bit vanishing has nothing to do with automake. If an
PO> upstream source tarball does not use the autotools, it is sometimes easier
PO> to build if it is modified to use them. Then a patch is generated, and
PO> applied to the unpacked clean sources during the build. patch(1) knows
PO> nothing about permissions, so executable bits etc can disappear.
Sorry for the delay. I'm installing the following on HEAD.
2005-10-03 Alexandre Duret-Lutz <address@hidden>
* tests/nobase.test: Exercise previous patch.
2005-10-03 Peter O'Gorman <address@hidden> (tiny change)
* lib/am/distdir.am: Remove $(SHELL) when calling install_sh
* m4/strip.m4: Ditto.
* m4/install-sh.m4: Add $(SHELL) to the definition of install_sh
Index: lib/am/distdir.am
===================================================================
RCS file: /cvs/automake/automake/lib/am/distdir.am,v
retrieving revision 1.61
diff -u -r1.61 distdir.am
--- lib/am/distdir.am 14 May 2005 20:28:53 -0000 1.61
+++ lib/am/distdir.am 3 Oct 2005 20:46:11 -0000
@@ -1,5 +1,5 @@
## automake - create Makefile.in from Makefile.am
-## Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+## Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
## 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
@@ -212,7 +212,7 @@
-find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {}
\; \
+ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r $(distdir)
if %?FILENAME_FILTER%
@if find $(distdir) -type f -print | \
Index: m4/install-sh.m4
===================================================================
RCS file: /cvs/automake/automake/m4/install-sh.m4,v
retrieving revision 1.4
diff -u -r1.4 install-sh.m4
--- m4/install-sh.m4 9 Jan 2005 14:46:21 -0000 1.4
+++ m4/install-sh.m4 3 Oct 2005 20:46:11 -0000
@@ -10,5 +10,5 @@
# Define $install_sh.
AC_DEFUN([AM_PROG_INSTALL_SH],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-install_sh=${install_sh-"$am_aux_dir/install-sh"}
+install_sh=${install_sh-"\$(SHELL) $am_aux_dir/install-sh"}
AC_SUBST(install_sh)])
Index: m4/strip.m4
===================================================================
RCS file: /cvs/automake/automake/m4/strip.m4,v
retrieving revision 1.8
diff -u -r1.8 strip.m4
--- m4/strip.m4 9 Jan 2005 14:46:21 -0000 1.8
+++ m4/strip.m4 3 Oct 2005 20:46:11 -0000
@@ -24,5 +24,5 @@
if test "$cross_compiling" != no; then
AC_CHECK_TOOL([STRIP], [strip], :)
fi
-INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
AC_SUBST([INSTALL_STRIP_PROGRAM])])
Index: tests/nobase.test
===================================================================
RCS file: /cvs/automake/automake/tests/nobase.test,v
retrieving revision 1.13
diff -u -r1.13 nobase.test
--- tests/nobase.test 14 May 2005 20:28:55 -0000 1.13
+++ tests/nobase.test 3 Oct 2005 20:46:11 -0000
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc.
#
# This file is part of GNU Automake.
#
@@ -108,12 +108,22 @@
EOF
cp source.c source2.c
+rm install-sh
+
libtoolize
$ACLOCAL
$AUTOCONF
-$AUTOMAKE -a
+$AUTOMAKE -a --copy
./configure --prefix `pwd`/inst --program-prefix=p
+# Remove the 'x' bits just for fun. (Peter O'Gorman said: "If an
+# upstream source tarball does not use the autotools, it is sometimes
+# easier to build if it is modified to use them. Then a patch is
+# generated, and applied to the unpacked clean sources during the
+# build. patch(1) knows nothing about permissions, so executable bits
+# etc can disappear.")
+chmod -x install-sh
+
$MAKE
$MAKE test-install-data
$MAKE test-install-exec
--
Alexandre Duret-Lutz
Shared books are happy books. http://www.bookcrossing.com/friend/gadl
- Re: bug in m4/mkdirp.m4,
Alexandre Duret-Lutz <=