summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--Makefile.in6
-rwxr-xr-xautomake.in24
-rw-r--r--lib/am/texinfos.am5
-rw-r--r--m4/Makefile.in6
-rw-r--r--tests/ChangeLog1
-rw-r--r--tests/Makefile.am2
-rw-r--r--tests/Makefile.in9
-rwxr-xr-xtests/remake.test20
-rw-r--r--texinfos.am5
10 files changed, 65 insertions, 22 deletions
diff --git a/ChangeLog b/ChangeLog
index 5d4f465d2..f6cc8716f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
Thu Dec 5 02:52:20 1996 Tom Tromey <tromey@cygnus.com>
+ Suggestion from Mark Galassi:
+ * texinfos.am (DVIPS): New macro.
+ (.dvi.ps): New rule.
+
+ * automake.in (handle_dependencies): Check to make sure
+ --build-directory specified before searching for .P files.
+ (handle_configure): Correctly handle ":" syntax when running
+ config.status.
+
* remake.am: Removed rules to regenerate Makefile and Makefile.in;
now handled by handle_configure.
diff --git a/Makefile.in b/Makefile.in
index 77ba8de59..ba7eb245f 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -95,7 +95,7 @@ default: all
.SUFFIXES:
.SUFFIXES: .texi .texinfo .info .dvi
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in
+$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in
cd $(top_srcdir) && automake --gnits Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
@@ -173,6 +173,8 @@ automake.info: automake.texi version.texi
automake.dvi: automake.texi version.texi
+DVIPS = dvips
+
.texi.info:
cd $(srcdir) \
&& $(MAKEINFO) `echo $< | sed 's,.*/,,'`
@@ -187,6 +189,8 @@ automake.dvi: automake.texi version.texi
.texinfo.dvi:
TEXINPUTS=$(srcdir):$$TEXINPUTS $(TEXI2DVI) $<
+.dvi.ps:
+ $(DVIPS) $< -o $@
install-info-am: $(INFO_DEPS)
$(NORMAL_INSTALL)
diff --git a/automake.in b/automake.in
index 7b7307936..11d8b73c3 100755
--- a/automake.in
+++ b/automake.in
@@ -1168,7 +1168,7 @@ sub handle_lib_objects
elsif ($lsearch eq '@LEXLIB@')
{
# FIXME: variable_value_as_list requires us to force
- # @LEXLIB@ here, where we're really prefer $(LEXLIB).
+ # @LEXLIB@ here, where we'd really prefer $(LEXLIB).
# Nasty -- this will have to wait until many cleanups are
# made, I think.
$lex_ok = 1;
@@ -2199,11 +2199,8 @@ sub handle_dependencies
}
}
}
- else
+ elsif ($build_directory ne '')
{
- # FIXME: consider requiring --build-dir here. What about case
- # where this is done via an option?
-
# Include any auto-generated deps that are present. Note that
# $build_directory ends in a "/".
if (-d ($build_directory . $relative_dir . "/.deps")
@@ -2353,6 +2350,10 @@ sub handle_configure
# Handle $local:$input syntax again.
local ($amfile, $infile, $colon_infile);
+
+ $input = &basename ($input);
+ $local = &basename ($local);
+
$amfile = $input . '.am';
# We know we can always add '.in' because it really should be an
# error if the .in was missing originally.
@@ -2380,7 +2381,6 @@ sub handle_configure
. "\n"
. "\tcd \$(top_builddir) \\\n"
. "\t && CONFIG_FILES="
- # FIXME: is this right?
. (($relative_dir eq '.') ? '$@' : '$(subdir)/$@')
. $colon_infile
. ' CONFIG_HEADERS= $(SHELL) ./config.status'
@@ -2500,15 +2500,16 @@ sub handle_configure
@inputs = &rewrite_inputs_into_dependencies (@inputs);
- # FIXME: when using autoconf ":" syntax, should we set CONFIG_FILES
- # to $local:$input?
$output_rules .= ($local . ': '
. '$(top_builddir)/config.status '
. join (' ', @inputs) . "\n"
. "\t"
. 'cd $(top_builddir) && CONFIG_FILES='
. ($relative_dir eq '.' ? '' : '$(subdir)/')
- . '$@ CONFIG_HEADERS= ./config.status'
+ . '$@' . (length (@inputs) > 1
+ ? (':' . join (':', @inputs))
+ : '')
+ . ' CONFIG_HEADERS= ./config.status'
. "\n");
push (@actual_other_files, $local);
@@ -3074,10 +3075,7 @@ sub handle_tests
{
push (@check_tests, 'check-TESTS');
push (@phony, 'check-TESTS');
- # FIXME: use $(SHELL) here? That is what Ulrich suggests.
- # Maybe a new macro, $(TEST_SHELL), a la $(CONFIG_SHELL)? For
- # now we just execute the file directly; this allows test
- # files which are compiled -- a possibly useful feature.
+
$output_rules .= 'check-TESTS: $(TESTS)
@failed=0; all=0; \\
srcdir=$(srcdir); export srcdir; \\
diff --git a/lib/am/texinfos.am b/lib/am/texinfos.am
index 60ca82386..cc21db2a6 100644
--- a/lib/am/texinfos.am
+++ b/lib/am/texinfos.am
@@ -42,6 +42,11 @@ CYGNUS $(MAKEINFO) $<
.texinfo.dvi:
TEXINPUTS=$(srcdir):$$TEXINPUTS $(TEXI2DVI) $<
+## The way to make PostScript, for those who want it.
+DVIPS = dvips
+.dvi.ps:
+ $(DVIPS) $< -o $@
+
## Look in both . and srcdir because the info pages might have been
## rebuilt in the build directory. Can't cd to srcdir; that might
## break a possible install-sh reference.
diff --git a/m4/Makefile.in b/m4/Makefile.in
index 369153d68..8ee40f9af 100644
--- a/m4/Makefile.in
+++ b/m4/Makefile.in
@@ -65,10 +65,10 @@ TAR = tar
default: all
.SUFFIXES:
-$(srcdir)/m4/Makefile.in: m4/Makefile.am $(top_srcdir)/configure.in
- cd $(top_srcdir) && automake --gnits m4/Makefile
+$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in
+ cd $(top_srcdir) && automake --gnits Makefile
-m4/Makefile: $(srcdir)/m4/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
diff --git a/tests/ChangeLog b/tests/ChangeLog
index 32ce21747..97b716b5a 100644
--- a/tests/ChangeLog
+++ b/tests/ChangeLog
@@ -1,5 +1,6 @@
Thu Dec 5 18:23:17 1996 Tom Tromey <tromey@cygnus.com>
+ * remake.test: New file.
* colon3.test: New file.
* colon2.test: New file.
* cxxo.test: New file.
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 08a8f95c5..372d6f42e 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -19,7 +19,7 @@ confsub.test primary.test primary2.test depend2.test spell3.test \
comment2.test vpath.test symlink.test discover.test acinclude.test req.test \
acsilent.test distdir.test lex2.test libobj4.test libobj5.test version.test \
ranlib.test confvar.test confvar2.test stdlib.test cxxo.test colon2.test \
-colon3.test
+colon3.test remake.test
EXTRA_DIST = defs $(TESTS)
diff --git a/tests/Makefile.in b/tests/Makefile.in
index d04975787..06071e532 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -57,7 +57,8 @@ gnits.test interp2.test colneq.test implicit.test spell.test spell2.test \
confsub.test primary.test primary2.test depend2.test spell3.test \
comment2.test vpath.test symlink.test discover.test acinclude.test req.test \
acsilent.test distdir.test lex2.test libobj4.test libobj5.test version.test \
-ranlib.test confvar.test confvar2.test stdlib.test cxxo.test colon2.test
+ranlib.test confvar.test confvar2.test stdlib.test cxxo.test colon2.test \
+colon3.test remake.test
EXTRA_DIST = defs $(TESTS)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
@@ -75,10 +76,10 @@ TAR = tar
default: all
.SUFFIXES:
-$(srcdir)/tests/Makefile.in: tests/Makefile.am $(top_srcdir)/configure.in
- cd $(top_srcdir) && automake --gnits tests/Makefile
+$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in
+ cd $(top_srcdir) && automake --gnits Makefile
-tests/Makefile: $(srcdir)/tests/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
diff --git a/tests/remake.test b/tests/remake.test
new file mode 100755
index 000000000..cf2876516
--- /dev/null
+++ b/tests/remake.test
@@ -0,0 +1,20 @@
+#! /bin/sh
+
+# Make sure remaking rules in subdir are correctly generated.
+
+. $srcdir/defs || exit 1
+
+cat > configure.in << 'END'
+PACKAGE=nonesuch
+VERSION=nonesuch
+AC_ARG_PROGRAM
+AC_PROG_INSTALL
+AC_OUTPUT(sub/Makefile)
+END
+
+mkdir sub
+: > sub/Makefile.am
+
+$AUTOMAKE || exit 1
+
+grep '^Makefile' sub/Makefile.in
diff --git a/texinfos.am b/texinfos.am
index 60ca82386..cc21db2a6 100644
--- a/texinfos.am
+++ b/texinfos.am
@@ -42,6 +42,11 @@ CYGNUS $(MAKEINFO) $<
.texinfo.dvi:
TEXINPUTS=$(srcdir):$$TEXINPUTS $(TEXI2DVI) $<
+## The way to make PostScript, for those who want it.
+DVIPS = dvips
+.dvi.ps:
+ $(DVIPS) $< -o $@
+
## Look in both . and srcdir because the info pages might have been
## rebuilt in the build directory. Can't cd to srcdir; that might
## break a possible install-sh reference.