[Top][All Lists]
[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