automake-patches
[Top][All Lists]
Advanced

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

man pages not renamed as documented


From: Alexandre Duret-Lutz
Subject: man pages not renamed as documented
Date: 13 Apr 2002 20:59:11 +0200
User-agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7

The manual says

|    For instance, consider this example:
|      man1_MANS = rename.man thesame.1 alsothesame.1c
| 
|    In this case, `rename.man' will be renamed to `rename.1' when
| installed, but the other files will keep their names.

However, in Automake 1.6.1 `rename.man' is installed as `rename.man'.

Either Automake or it's documentation is broken.  I guess nobody
relies on `rename.man' being renamed as `rename.1' (Has it ever
worked?  AFAICT it doesn't work in Automake 1.4 either).

Is this worth supporting unused features, or shall we simply fix
the doc?

2002-04-13  Alexandre Duret-Lutz  <address@hidden>

        * tests/man2.test: New file.
        * tests/Makefile.am (TESTS): Add man2.test.
        * lib/am/mans.am (install-man%SECTION%): Change the extension
        of the man pages being installed, as documented.

Index: lib/am/mans.am
===================================================================
RCS file: /cvs/automake/automake/lib/am/mans.am,v
retrieving revision 1.23
diff -u -r1.23 mans.am
--- lib/am/mans.am      6 May 2001 05:40:47 -0000       1.23
+++ lib/am/mans.am      13 Apr 2002 18:52:36 -0000
@@ -46,9 +46,14 @@
 ## Find the file.
          if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
          else file=$$i; fi; \
+## Change the extension if needed.
+         ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+         case "$$ext" in \
+           %SECTION%*) ;; \
+           *) ext='%SECTION%' ;; \
+         esac; \
 ## Extract basename of man page and run it through the program rename
 ## transform.
-         ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
          inst=`echo $$inst | sed -e 's/^.*\///'`; \
          inst=`echo $$inst | sed '$(transform)'`.$$ext; \
Index: tests/Makefile.am
===================================================================
RCS file: /cvs/automake/automake/tests/Makefile.am,v
retrieving revision 1.386
diff -u -r1.386 Makefile.am
--- tests/Makefile.am   12 Apr 2002 15:28:14 -0000      1.386
+++ tests/Makefile.am   13 Apr 2002 18:52:37 -0000
@@ -212,6 +212,7 @@
 make.test \
 makevars.test \
 man.test \
+man2.test \
 mclean.test \
 mdate.test \
 mdate2.test \
Index: tests/man2.test
===================================================================
RCS file: tests/man2.test
diff -N tests/man2.test
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ tests/man2.test     13 Apr 2002 18:52:37 -0000
@@ -0,0 +1,31 @@
+#! /bin/sh
+
+# Make sure that man pages listed in man_MANS are installed and
+# renamed as documented.
+
+. $srcdir/defs || exit 1
+
+set -e
+
+echo AC_OUTPUT >> configure.in
+
+cat > Makefile.am << 'END'
+man_MANS = foo.2
+man4_MANS = foo.4 bar.man
+END
+
+: > foo.2
+: > foo.4
+: > bar.man
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
+
+# Let's play with $DESTDIR too, it shouldn't hurt.
+./configure --prefix=''
+$MAKE DESTDIR=$PWD/=inst install
+
+test -f ./=inst/man/man2/foo.2
+test -f ./=inst/man/man4/foo.4
+test -f ./=inst/man/man4/bar.4

-- 
Alexandre Duret-Lutz




reply via email to

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