diff options
author | jlam <jlam> | 2006-03-20 01:48:57 +0000 |
---|---|---|
committer | jlam <jlam> | 2006-03-20 01:48:57 +0000 |
commit | a1f40fe5ef676654c5817c7e144bc1ed1a4711f3 (patch) | |
tree | ae13569d46a666109d6041531b50702a8539f819 /mk/plist/plist.mk | |
parent | 76ffdfa744f2bae43c57cb87e0e1564badab6d40 (diff) | |
download | pkgsrc-a1f40fe5ef676654c5817c7e144bc1ed1a4711f3.tar.gz |
* Creates a new variable PKGINFODIR (named similarly to PKGMANDIR)
that is a purely user-settable variable to represent the relative
path under ${PREFIX} where info files are stored and "dir" files
are managed. PKGINFODIR defaults to "info". INFO_DIR still works,
but will be obsoleted after the 2006Q1 branch.
* Modify GNU_CONFIGURE_INFODIR to only honor ${PKGINFODIR} if the
package installs directly into ${PREFIX} and not some subdirectory
under ${PREFIX}. This fixes packages that don't really honor
$(infodir) all that well, and also avoids PLIST problems relating
to directory removal for those packages.
* Since the majority of Emacs Lisp packages use GNU_CONFIGURE, just
set GNU_CONFIGURE_INFODIR directly to ${EMACS_INFOPREFIX}, which is
the Emacs-distro-specific location for info files. Also pass
EMACS_INFOPREFIX through PLIST_SUBST for PLIST substitution.
* INFO_FILES should be defined if the package installs info files.
If the info files are not listed in the PLIST, then INFO_FILES
must list the filenames for the info files installed by the package,
which are assumed to be located in ${PREFIX}/${PKGINFODIR}.
* The plist module can now better detect info files listed in PLISTs
and exports a command to the pkginstall module to append info file
names to the +INFO_FILES scriptlet at install-time.
* The print-PLIST target is updated to properly list info files in
the auto-generated PLIST.
* The check-files code is updated to skip all "dir" Info database files.
Diffstat (limited to 'mk/plist/plist.mk')
-rw-r--r-- | mk/plist/plist.mk | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/mk/plist/plist.mk b/mk/plist/plist.mk index 1639fa6d740..6d982ccc0bb 100644 --- a/mk/plist/plist.mk +++ b/mk/plist/plist.mk @@ -1,4 +1,4 @@ -# $NetBSD: plist.mk,v 1.6 2006/03/14 17:14:47 jlam Exp $ +# $NetBSD: plist.mk,v 1.7 2006/03/20 01:48:58 jlam Exp $ # # This Makefile fragment handles the creation of PLISTs for use by # pkg_create(8). @@ -92,7 +92,7 @@ MAKEVARS+= _IGNORE_INFO_PATH # _PLIST_AWK_ENV+= IMAKE_MANINSTALL=${_IMAKE_MANINSTALL:Q} _PLIST_AWK_ENV+= IGNORE_INFO_PATH=${_IGNORE_INFO_PATH:Q} -_PLIST_AWK_ENV+= INFO_DIR=${INFO_DIR:Q} +_PLIST_AWK_ENV+= PKGINFODIR=${PKGINFODIR:Q} _PLIST_AWK_ENV+= LIBTOOLIZE_PLIST=${LIBTOOLIZE_PLIST:Q} _PLIST_AWK_ENV+= LIBTOOL_EXPAND=${_LIBTOOL_EXPAND:Q} _PLIST_AWK_ENV+= LS=${TOOLS_LS:Q} @@ -145,6 +145,9 @@ _PLIST_AWK+= -f ${.CURDIR}/../../mk/plist/plist-man.awk _PLIST_AWK+= -f ${.CURDIR}/../../mk/plist/plist-libtool.awk _PLIST_AWK+= -f ${.CURDIR}/../../mk/plist/plist-default.awk +_PLIST_INFO_AWK+= -f ${.CURDIR}/../../mk/plist/plist-functions.awk +_PLIST_INFO_AWK+= -f ${.CURDIR}/../../mk/plist/plist-info.awk + _PLIST_SHLIB_AWK= -f ${_SHLIB_AWKFILE.${SHLIB_TYPE}} _SHLIB_AWKFILE.COFF= ${.CURDIR}/../../mk/plist/shlib-none.awk _SHLIB_AWKFILE.ELF= ${.CURDIR}/../../mk/plist/shlib-elf.awk @@ -188,9 +191,8 @@ _INFO_GENERATE_PLIST= ${TRUE}; # adding the named files to the PLIST. # _PLIST_IGNORE_FILES+= +* # package metadata files -_PLIST_IGNORE_FILES+= info/dir -. if defined(INFO_DIR) && empty(INFO_DIR:Minfo) -_PLIST_IGNORE_FILES+= ${INFO_DIR}/dir +. if defined(INFO_FILES) +_PLIST_IGNORE_FILES+= ${PKGINFODIR}/dir . endif _PLIST_IGNORE_FILES+= *[~\#] *.OLD *.orig *,v # scratch config files . if !empty(CONF_DEPENDS) @@ -238,3 +240,14 @@ ${PLIST}: ${SETENV} ${_PLIST_AWK_ENV} ${AWK} ${_PLIST_AWK} | \ ${SETENV} ${_PLIST_AWK_ENV} ${AWK} ${_PLIST_SHLIB_AWK} \ > ${.TARGET} + +.if defined(INFO_FILES) +. if empty(INFO_FILES) +INFO_FILES_cmd= \ + ${CAT} ${PLIST} | \ + ${SETENV} ${_PLIST_AWK_ENV} ${AWK} ${_PLIST_INFO_AWK} | \ + ${AWK} '($$0 !~ "-[0-9]*(\.gz)?$$") { print }' +. else +INFO_FILES_cmd= ${TRUE} +. endif +.endif |