From 5f634a9eba3271cb3e546fdf158b92da5167aee9 Mon Sep 17 00:00:00 2001 From: Ralf Wildenhues Date: Mon, 16 Oct 2006 05:00:33 +0000 Subject: [PATCH] * lib/am/header-vars.am (pkglibexecdir): New variable. * automake.in (%standard_prefix): Add it. * doc/automake.texi (Uniform): Document it. (Program Sources): Adjust. * NEWS: Update. * tests/libexec.test: New test. * tests/Makefile.am: Update. Suggested by Eric Blake. --- ChangeLog | 11 +++++++++ Makefile.in | 3 ++- NEWS | 4 ++++ automake.in | 4 ++-- doc/Makefile.in | 3 ++- doc/automake.texi | 22 +++++++++--------- doc/stamp-vti | 6 ++--- doc/version.texi | 6 ++--- lib/Automake/Makefile.in | 3 ++- lib/Automake/tests/Makefile.in | 3 ++- lib/Makefile.in | 3 ++- lib/am/Makefile.in | 3 ++- lib/am/header-vars.am | 3 ++- m4/Makefile.in | 3 ++- tests/Makefile.am | 1 + tests/Makefile.in | 4 +++- tests/libexec.test | 41 ++++++++++++++++++++++++++++++++++ 17 files changed, 96 insertions(+), 27 deletions(-) create mode 100755 tests/libexec.test diff --git a/ChangeLog b/ChangeLog index c7f0f5231..fa263b254 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2006-10-16 Ralf Wildenhues + + * lib/am/header-vars.am (pkglibexecdir): New variable. + * automake.in (%standard_prefix): Add it. + * doc/automake.texi (Uniform): Document it. + (Program Sources): Adjust. + * NEWS: Update. + * tests/libexec.test: New test. + * tests/Makefile.am: Update. + Suggested by Eric Blake. + 2006-10-15 Alexandre Duret-Lutz * configure.ac, NEWS: Bump version to 1.10a. diff --git a/Makefile.in b/Makefile.in index 9d7a111dc..ad3d4907c 100644 --- a/Makefile.in +++ b/Makefile.in @@ -16,8 +16,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c diff --git a/NEWS b/NEWS index 905c661e7..2b222ace8 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,8 @@ New in 1.10a: + +* Miscellaneous changes: + + - New shorthand `$(pkglibexecdir)' for `$(libexecdir)/@PACKAGE@'. New in 1.10: diff --git a/automake.in b/automake.in index 090edf66b..985948c6a 100755 --- a/automake.in +++ b/automake.in @@ -240,8 +240,8 @@ my %standard_prefix = map { $_ => 1 } (qw(bin data dataroot dvi exec html include info lib libexec lisp localstate man man1 man2 man3 man4 man5 man6 man7 man8 man9 oldinclude pdf - pkgdatadir pkgincludedir pkglibdir ps sbin - sharedstate sysconf)); + pkgdatadir pkgincludedir pkglibdir pkglibexecdir + ps sbin sharedstate sysconf)); # Copyright on generated Makefile.ins. my $gen_copyright = "\ diff --git a/doc/Makefile.in b/doc/Makefile.in index 800904c81..19d535356 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -16,8 +16,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c diff --git a/doc/automake.texi b/doc/automake.texi index 00ba26c5b..da3741117 100644 --- a/doc/automake.texi +++ b/doc/automake.texi @@ -1864,13 +1864,15 @@ the @dfn{primary}. For instance, the primary @code{PROGRAMS} holds a list of programs that are to be compiled and linked. @vindex PROGRAMS -@cindex @code{pkglibdir}, defined -@cindex @code{pkgincludedir}, defined @cindex @code{pkgdatadir}, defined +@cindex @code{pkgincludedir}, defined +@cindex @code{pkglibdir}, defined +@cindex @code{pkglibexecdir}, defined -@vindex pkglibdir -@vindex pkgincludedir @vindex pkgdatadir +@vindex pkgincludedir +@vindex pkglibdir +@vindex pkglibexecdir @cindex @code{PACKAGE}, directory A different set of names is used to decide where the built objects @@ -1878,9 +1880,9 @@ should be installed. These names are prefixes to the primary, and they indicate which standard directory should be used as the installation directory. The standard directory names are given in the GNU standards (@pxref{Directory Variables, , , standards, The GNU Coding Standards}). -Automake extends this list with @code{pkglibdir}, @code{pkgincludedir}, -and @code{pkgdatadir}; these are the same as the non-@samp{pkg} -versions, but with @samp{$(PACKAGE)} appended. For instance, +Automake extends this list with @code{pkgdatadir}, @code{pkgincludedir}, +@code{pkglibdir}, and @code{pkglibexecdir}; these are the same as the +non-@samp{pkg} versions, but with @samp{$(PACKAGE)} appended. For instance, @code{pkglibdir} is defined as @samp{$(libdir)/$(PACKAGE)}. @cindex @code{EXTRA_}, prepending @@ -4393,9 +4395,9 @@ programs. Most of the comments about these also apply to libraries In a directory containing source that gets built into a program (as opposed to a library or a script), the @code{PROGRAMS} primary is used. Programs can be installed in @code{bindir}, @code{sbindir}, -@code{libexecdir}, @code{pkglibdir}, or not at all (@code{noinst_}). -They can also be built only for @samp{make check}, in which case the -prefix is @samp{check_}. +@code{libexecdir}, @code{pkglibdir}, @code{pkglibexecdir}, or not at all +(@code{noinst_}). They can also be built only for @samp{make check}, in +which case the prefix is @samp{check_}. For instance: diff --git a/doc/stamp-vti b/doc/stamp-vti index 790cf3a70..54b69b33b 100644 --- a/doc/stamp-vti +++ b/doc/stamp-vti @@ -1,4 +1,4 @@ -@set UPDATED 15 October 2006 +@set UPDATED 16 October 2006 @set UPDATED-MONTH October 2006 -@set EDITION 1.10 -@set VERSION 1.10 +@set EDITION 1.10a +@set VERSION 1.10a diff --git a/doc/version.texi b/doc/version.texi index 790cf3a70..54b69b33b 100644 --- a/doc/version.texi +++ b/doc/version.texi @@ -1,4 +1,4 @@ -@set UPDATED 15 October 2006 +@set UPDATED 16 October 2006 @set UPDATED-MONTH October 2006 -@set EDITION 1.10 -@set VERSION 1.10 +@set EDITION 1.10a +@set VERSION 1.10a diff --git a/lib/Automake/Makefile.in b/lib/Automake/Makefile.in index 1aa4db9bd..55095eef7 100644 --- a/lib/Automake/Makefile.in +++ b/lib/Automake/Makefile.in @@ -16,8 +16,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c diff --git a/lib/Automake/tests/Makefile.in b/lib/Automake/tests/Makefile.in index e03e767cf..2a4e8f051 100644 --- a/lib/Automake/tests/Makefile.in +++ b/lib/Automake/tests/Makefile.in @@ -15,8 +15,9 @@ @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c diff --git a/lib/Makefile.in b/lib/Makefile.in index 844a8ee02..cccebadb1 100644 --- a/lib/Makefile.in +++ b/lib/Makefile.in @@ -16,8 +16,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c diff --git a/lib/am/Makefile.in b/lib/am/Makefile.in index 919fdfdd2..92a95e089 100644 --- a/lib/am/Makefile.in +++ b/lib/am/Makefile.in @@ -16,8 +16,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c diff --git a/lib/am/header-vars.am b/lib/am/header-vars.am index ee7b3cacb..fe79f81bc 100644 --- a/lib/am/header-vars.am +++ b/lib/am/header-vars.am @@ -31,8 +31,9 @@ VPATH = @srcdir@ ## Some derived variables that have been found to be useful. pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 diff --git a/m4/Makefile.in b/m4/Makefile.in index 2f211d5d6..ef93d6b16 100644 --- a/m4/Makefile.in +++ b/m4/Makefile.in @@ -16,8 +16,9 @@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c diff --git a/tests/Makefile.am b/tests/Makefile.am index 1a9d9fd35..468d73d76 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -301,6 +301,7 @@ lex2.test \ lex3.test \ lex4.test \ lex5.test \ +libexec.test \ libobj2.test \ libobj3.test \ libobj4.test \ diff --git a/tests/Makefile.in b/tests/Makefile.in index 9e5779a23..80b3c19b4 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -15,8 +15,9 @@ @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c @@ -433,6 +434,7 @@ lex2.test \ lex3.test \ lex4.test \ lex5.test \ +libexec.test \ libobj2.test \ libobj3.test \ libobj4.test \ diff --git a/tests/libexec.test b/tests/libexec.test new file mode 100755 index 000000000..acc9875ca --- /dev/null +++ b/tests/libexec.test @@ -0,0 +1,41 @@ +#! /bin/sh +# Copyright (C) 2006 Free Software Foundation, Inc. +# +# This file is part of GNU Automake. +# +# GNU Automake is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# GNU Automake is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Automake; see the file COPYING. If not, write to +# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +# Boston, MA 02110-1301, USA. + +# PROGRAMS and LIBRARIES can be installed in (pkg)libexecdir. + +. ./defs || exit 1 + +set -e + +cat > Makefile.am << 'END' +libexec_PROGRAMS = foo +pkglibexec_PROGRAMS = bar +END + +cat >> configure.in << 'END' +AC_PROG_CC +AC_OUTPUT +END + +: > foo.c +: > bar.c + +$ACLOCAL +$AUTOMAKE -- 2.47.2