automake-patches
[Top][All Lists]
Advanced

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

Re: automake 1.7 branch & DJGPP [PATCH]


From: Alexandre Duret-Lutz
Subject: Re: automake 1.7 branch & DJGPP [PATCH]
Date: Tue, 11 Feb 2003 00:51:34 +0100
User-agent: Gnus/5.090008 (Oort Gnus v0.08) Emacs/21.2 (i386-pc-linux-gnu)

>>> "Richard" == Richard Dawe <address@hidden> writes:

 Richard> Hello.
 Richard> I just tried the CVS branch of automake 1.7 for the first time.
 Richard> I couldn't bootstrap, because:

 Richard> * 'bootstrap' uses symlinks. DJGPP 2.03 doesn't support symlinks.
 Richard> (DJGPP 2.04 will.)

 Richard> * 'bootstrap' doesn't substitute a Unixy shell for $SHELL
 Richard> in automake.in.

 Richard> I also discovered that the build process doesn't substitute
 Richard> for @SHELL@ when automake.in -> automake.

Damn, I forgot all this machinery.   Thanks for fixing these.

[...]

 Richard> Index: ChangeLog
 Richard> ===================================================================
 Richard> RCS file: /cvs/automake/automake/ChangeLog,v
 Richard> retrieving revision 1.2024.2.93
 Richard> diff -p -u -3 -r1.2024.2.93 ChangeLog
 Richard> --- ChangeLog 10 Feb 2003 21:48:22 -0000      1.2024.2.93
 Richard> +++ ChangeLog 10 Feb 2003 22:48:59 -0000
 Richard> @@ -1,3 +1,14 @@
 Richard> +2003-02-10  Richard Dawe  <address@hidden>
 Richard> +
 Richard> +     * Makefile.am: Substitute @SHELL@ in automake.in and aclocal.in.
 Richard> +     This makes the setting of SHELL work for DJGPP.
 Richard> +

I've installed this as-is.

 Richard> +     * bootstrap: Don't require support for symlinks - copy instead.
 Richard> +     Override $SHELL with DJGPP's bash, if running DJGPP.  Substitute
 Richard> +     @SHELL@ in automake.in and aclocal.in.  This makes the setting
 Richard> +     of SHELL work for DJGPP.
 Richard> +

(Presently we don't write ChangeLog entry for non-distributed
files like HACKING and bootstrap, or generated files.)

I edited this part slightly as follows.  Let me know if I broke
something else.

Index: bootstrap
===================================================================
RCS file: /cvs/automake/automake/bootstrap,v
retrieving revision 1.4
diff -u -r1.4 bootstrap
--- bootstrap   20 Oct 2002 06:59:38 -0000      1.4
+++ bootstrap   10 Feb 2003 23:30:03 -0000
@@ -2,7 +2,7 @@
 
 # This script helps bootstrap automake, when checked out from CVS.
 #
-# Copyright 2002 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2003  Free Software Foundation, Inc.
 # written by Pavel Roskin <address@hidden> September 2002
 #
 # This program is free software; you can redistribute it and/or modify
@@ -47,6 +47,15 @@
 PACKAGE=automake
 datadir=.
 
+# Override SHELL.  This is required on DJGPP so that Perl's system()
+# uses bash, not COMMAND.COM which doesn't quote arguments properly.
+# It's not used otherwise.
+if test -n $DJGPP; then
+    BOOTSTRAP_SHELL=/dev/env/DJDIR/bin/bash.exe
+else
+    BOOTSTRAP_SHELL=/bin/sh
+fi
+
 # Read the rule for calculating APIVERSION and execute it
 apiver_cmd=`sed -ne 's/\[\[/[/g;s/\]\]/]/g;/^APIVERSION=/p' configure.in`
 eval $apiver_cmd
@@ -66,7 +75,10 @@
 rm -rf aclocal-$APIVERSION
 mkdir aclocal-$APIVERSION
 rm -rf automake-$APIVERSION
-ln -s lib automake-$APIVERSION
+ln -s lib automake-$APIVERSION || {
+  mkdir automake-$APIVERSION
+  cp -arf lib/* automake-$APIVERSION
+}
 
 # Create temporary replacement for aclocal
 sed -e "address@hidden@%$PERL%g" \
@@ -74,6 +86,7 @@
     -e "address@hidden@%$APIVERSION%g" \
     -e "address@hidden@%$PACKAGE%g" \
     -e "address@hidden@%$datadir%g" \
+    -e "address@hidden@%$BOOTSTRAP_SHELL%g" \
     aclocal.in >aclocal.tmp
 
 # Create temporary replacement for amversion.m4
@@ -93,6 +106,7 @@
     -e "address@hidden@%$APIVERSION%g" \
     -e "address@hidden@%$PACKAGE%g" \
     -e "address@hidden@%$datadir%g" \
+    -e "address@hidden@%$BOOTSTRAP_SHELL%g" \
     automake.in >automake.tmp
 
 # Run automake
-- 
Alexandre Duret-Lutz





reply via email to

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