+Thu Oct 3 20:11:16 1996 Tom Tromey <tromey@cygnus.com>
+
+ * automake.in (read_am_file): Define all variables after reading
+ .am file. Test vpath.test. Reported by Anthony Green.
+
Mon Sep 30 08:31:51 1996 Tom Tromey <tromey@cygnus.com>
+ * texinfos.am: Run install-info.
+
* automake.in (variable_value_as_list): Just return if comment
seen. Report from Mark Galassi.
(handle_options): Don't bother with explicit comment checking.
else : ; fi; \
done; \
done
+ $(POST_INSTALL)
+ if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
+ for file in $(INFO_DEPS); do \
+ install-info --info-dir=$(infodir) $$file; \
+ done; \
+ else : ; fi
uninstall-info:
cd $(srcdir) && for file in *.info*; do \
people:
Andreas Schwab <schwab@lamothe.informatik.uni-dortmund.de>
+Anthony Green <green@cygnus.com>
David A. Swierczek <swiercze@mr.med.ge.com>
Dieter Baron <dillo@stieltjes.smc.univie.ac.at>
François Pinard <pinard@iro.umontreal.ca>
- yacc -vs- .h
- documentation
+* test install-info
+ add install-info --remove
+
Further:
- texinfo/info changes
- Per's suggestion
- man page fixes
+Avoid loops when installing; instead unroll them in automake
+
+allow `EXTRA_DIST = foo/bar'; too many requests to ignore
+
+Franc,ois> * ansi2knr was uselessly compiled, and it might be an
+Franc,ois> Automake problem:
+
+MUST look @ Franc,ois' run-time-replacement code
+
From David A Swierczek: automake should notice (eg) AC_CHECK_PROG and
auto-generate Makefile substitution:
AC_CHECK_PROG(AR, ...)
{
local ($amfile) = @_;
- # Compute relative location of the top object directory.
- local (@topdir) = ();
- foreach (split (/\//, $relative_dir))
- {
- next if $_ eq '.' || $_ eq '';
- if ($_ eq '..')
- {
- pop @topdir;
- }
- else
- {
- push (@topdir, '..');
- }
- }
- @topdir = ('.') if ! @topdir;
-
- $top_builddir = join ('/', @topdir);
- local ($build_rx);
- ($build_rx = $top_builddir) =~ s/(\W)/\\$1/g;
- local ($header_vars) =
- &file_contents_with_transform
- ('s/\@top_builddir\@/' . $build_rx . '/g',
- 'header-vars');
-
- # Generate some useful variables when AC_CANONICAL_* used.
- if ($seen_canonical)
- {
- local ($curs, %vars);
- $vars{'host_alias'} = 'host_alias';
- $vars{'host_triplet'} = 'host';
- if ($seen_canonical == $AC_CANONICAL_SYSTEM)
- {
- $vars{'build_alias'} = 'build_alias';
- $vars{'build_triplet'} = 'build';
- $vars{'target_alias'} = 'target_alias';
- $vars{'target_triplet'} = 'target';
- }
- foreach $curs (keys %vars)
- {
- $header_vars .= "$curs = \@$vars{$curs}\@\n";
- $contents{$curs} = "\@$vars{$curs}\@";
- }
- }
-
open (AM_FILE, $amfile) || die "automake: couldn't open \`$amfile': $!\n";
print "automake: reading $amfile\n" if $verbose;
- $output_vars .= ("# $in_file_name generated automatically by automake "
- . $VERSION . " from $am_file_name\n");
+ $output_vars = ("# $in_file_name generated automatically by automake "
+ . $VERSION . " from $am_file_name\n");
# Generate copyright for generated Makefile.in.
$output_vars .= $gen_copyright;
}
}
- $output_vars .= $comment . "\n" . $header_vars;
+ $output_vars .= $comment . "\n";
$comment = '';
$spacing = "\n";
+ local ($am_vars) = '';
local ($is_ok_macro);
while ($_)
}
else
{
- $output_vars .= $_;
+ $am_vars .= $_;
$saw_bk = /\\$/;
# Chop newline and backslash if this line is
# continued. FIXME: maybe ensure trailing whitespace
$contents{$1} = $2;
}
$content_lines{$1} = $.;
- $output_vars .= $comment . $spacing . $_;
+ $am_vars .= $comment . $spacing . $_;
$comment = $spacing = '';
$saw_bk = /\\$/;
}
$output_trailer .= $comment;
+
+ # Compute relative location of the top object directory.
+ local (@topdir) = ();
+ foreach (split (/\//, $relative_dir))
+ {
+ next if $_ eq '.' || $_ eq '';
+ if ($_ eq '..')
+ {
+ pop @topdir;
+ }
+ else
+ {
+ push (@topdir, '..');
+ }
+ }
+ @topdir = ('.') if ! @topdir;
+
+ $top_builddir = join ('/', @topdir);
+ local ($build_rx);
+ ($build_rx = $top_builddir) =~ s/(\W)/\\$1/g;
+ $output_vars .= &file_contents_with_transform
+ ('s/\@top_builddir\@/' . $build_rx . '/g',
+ 'header-vars');
+
+ # Generate some useful variables when AC_CANONICAL_* used.
+ if ($seen_canonical)
+ {
+ local ($curs, %vars);
+ $vars{'host_alias'} = 'host_alias';
+ $vars{'host_triplet'} = 'host';
+ if ($seen_canonical == $AC_CANONICAL_SYSTEM)
+ {
+ $vars{'build_alias'} = 'build_alias';
+ $vars{'build_triplet'} = 'build';
+ $vars{'target_alias'} = 'target_alias';
+ $vars{'target_triplet'} = 'target';
+ }
+ foreach $curs (keys %vars)
+ {
+ $output_vars .= "$curs = \@$vars{$curs}\@\n";
+ $contents{$curs} = "\@$vars{$curs}\@";
+ }
+ }
+
+ $output_vars .= $am_vars;
}
################################################################
$(INSTALL_DATA) $(srcdir)/$$ifile $(infodir)/$$ifile; \
else : ; fi; \
done; \
-## We need the 'else' because in some broken versions of sh 'if' will
-## return false if the test fails. We use ':' because the GNU
-## standards prohibit us from using 'true'.
-## FIXME: no one has install-info, so for now we just comment it out.
-## FIXME: when we do have install-info, this will have to be split
-## into a separate loop. See libraries.am for reasons.
-## $(POST_INSTALL); \
-## if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
-## install-info --dir-file=$(infodir)/dir $$d/$$file; \
-## else :; fi; \
done
+ $(POST_INSTALL)
+## Only run this code if install-info actually exists.
+ if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
+ for file in $(INFO_DEPS); do \
+ install-info --info-dir=$(infodir) $$file; \
+ done; \
+ else : ; fi
uninstall-info:
cd $(srcdir) && for file in *.info*; do \
+Thu Oct 3 19:55:23 1996 Tom Tromey <tromey@cygnus.com>
+
+ * vpath.test: New file.
+
Mon Sep 30 08:34:07 1996 Tom Tromey <tromey@cygnus.com>
* comment2.test: New file.
exsource.test canon4.test dup.test defun.test cxxlink.test cxxnoc.test \
order.test libobj2.test interp.test alllib.test block.test libobj3.test \
gnits.test interp2.test colneq.test implicit.test spell.test spell2.test \
-confsub.test primary.test primary2.test depend2.test spell3.test comment2.test
+confsub.test primary.test primary2.test depend2.test spell3.test \
+comment2.test vpath.test
EXTRA_DIST = defs $(TESTS)
exsource.test canon4.test dup.test defun.test cxxlink.test cxxnoc.test \
order.test libobj2.test interp.test alllib.test block.test libobj3.test \
gnits.test interp2.test colneq.test implicit.test spell.test spell2.test \
-confsub.test primary.test primary2.test depend2.test spell3.test comment2.test
+confsub.test primary.test primary2.test depend2.test spell3.test \
+comment2.test vpath.test
EXTRA_DIST = defs $(TESTS)
mkinstalldirs = $(top_srcdir)/mkinstalldirs
--- /dev/null
+#! /bin/sh
+
+# Test to make sure VPATH can be overridden.
+# Report from Anthony Green.
+
+. $srcdir/defs || exit 1
+
+cat > Makefile.am << 'END'
+VPATH = zardoz
+END
+
+$AUTOMAKE || exit 1
+
+grep 'VPATH.*@srcdir@' Makefile.in && exit 1
+exit 0
$(INSTALL_DATA) $(srcdir)/$$ifile $(infodir)/$$ifile; \
else : ; fi; \
done; \
-## We need the 'else' because in some broken versions of sh 'if' will
-## return false if the test fails. We use ':' because the GNU
-## standards prohibit us from using 'true'.
-## FIXME: no one has install-info, so for now we just comment it out.
-## FIXME: when we do have install-info, this will have to be split
-## into a separate loop. See libraries.am for reasons.
-## $(POST_INSTALL); \
-## if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
-## install-info --dir-file=$(infodir)/dir $$d/$$file; \
-## else :; fi; \
done
+ $(POST_INSTALL)
+## Only run this code if install-info actually exists.
+ if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
+ for file in $(INFO_DEPS); do \
+ install-info --info-dir=$(infodir) $$file; \
+ done; \
+ else : ; fi
uninstall-info:
cd $(srcdir) && for file in *.info*; do \