diff options
author | seb <seb@pkgsrc.org> | 2003-06-19 21:41:13 +0000 |
---|---|---|
committer | seb <seb@pkgsrc.org> | 2003-06-19 21:41:13 +0000 |
commit | 5ab8be8066273669ac731b3a0f60adee2c6fa7d9 (patch) | |
tree | a2fb7483e3a18fa8f83edeb1496c00f88dff6039 /Packages.txt | |
parent | 4c7c717eed7b924103792374e8c81cc3608d302c (diff) | |
download | pkgsrc-5ab8be8066273669ac731b3a0f60adee2c6fa7d9.tar.gz |
Introduce a new framework to handle info files, install-info and
makeinfo commands.
The goal of the new framework is twofold:
- reduce the number of '@exec' and '@unexec' in PLIST by
using INSTALL/DEINSTALL scripts to handle entries addition/removal
Info directory file.
- achieve lighter dependencies by avoiding unnecessary run-time
dependency on the gtexinfo package and if needed with the help of the
standalone install-info command provided by the recently imported package
pkgtools/pkg_install-info.
A package must be sightly updated to use this new framework and
must define the variable USE_NEW_TEXINFO. This variable will
be removed from the pkgsrc tree when all package would have been
updated.
For details see section 10.24 of Packages.txt, comments in
mk/{texinfo.mk,buildlink2/bsd.buildlink2.mk} and upcoming mail to
<tech-pkg at netbsd dot org>.
Diffstat (limited to 'Packages.txt')
-rw-r--r-- | Packages.txt | 88 |
1 files changed, 41 insertions, 47 deletions
diff --git a/Packages.txt b/Packages.txt index ed1bf8362b9..6a4e8ae1fbd 100644 --- a/Packages.txt +++ b/Packages.txt @@ -1,4 +1,4 @@ -# $NetBSD: Packages.txt,v 1.294 2003/06/05 17:32:13 jmmv Exp $ +# $NetBSD: Packages.txt,v 1.295 2003/06/19 21:41:13 seb Exp $ ########################################################################### ========================== @@ -2298,49 +2298,46 @@ examples. =================================== Some packages install info files or use the makeinfo or install-info -commands. In such cases, the makefile fragment mk/texinfo.mk should be -included in the package Makefile before the inclusion of mk/bsd.pkg.mk. -Newer versions of texinfo (version 4 and above) are, unfortunately, -incompatible from previous versions at the command line level and some -extensions were introduced in the TeXinfo macro set. So the package creator -should ensure that the correct binaries are selected, rather than relying -on the contents of the PATH variable in the shell. - -The main info directory file needs to be updated to reflect the -installation of info files. Some packages' installation processes take care -of this for you. Otherwise the NetBSD Packages Collection has an INFO_FILES -definition which can be used to do this. Simply use the - - INFO_FILES= ident.info - -definition in the package Makefile, where "ident.info" is the name of the -info file which installs an info dir entry. - -A package creator should also take care that the package build and install -process uses the correct version of the makeinfo and install-info commands. -Some Makefiles and configure scripts from recent software packages include -the pathnames to the makeinfo and install-info commands. Unfortunately, -older software packages tend not to do this, and, should this be the case, -further action is required of the package creator. - -The mk/texinfo.mk makefile fragment will ensure that the proper makeinfo -and install-info commands are available on the system as well as help the -configure and build process of the package to use known binaries for these -commands. - -If a minimum version of makeinfo and install-info commands are required, -define TEXINFO_REQD in the package's Makefile to this minimum version. - -If a package is not well behaved (i.e., it does not pick MAKEINFO or -INSTALL_INFO in the environment at configure or build time) you should do -one of the following, whichever is more appropriate: - a) patch the package files so MAKEINFO or INSTALL_INFO are picked from the - environment at configure or build time and get used instead of - relying on makeinfo or install-info being accessible in PATH; - b) put TEXINFO_OVERRIDE=YES in the package Makefile to let some sed - manipulation happen on some packages source files (see contents of - mk/texinfo.mk). - +commands. Each info files: + - is considered to be installed in the directory + ${PREFIX}/${INFO_DIR}; + - is registered in the Info directory file + ${PREFIX}/${INFO_DIR}/dir; + - and must be listed as a filename in the INFO_FILES variable + in the package Makefile. + +INFO_DIR defaults to `info' and can be overridden in the package Makefile. +INSTALL and DEINSTALL scripts will be generated for handling registration +of the info files in the Info directory file. +The command install-info used for the info files registration is either +provided by the system or by a special purpose package automatically +added as dependency if needed. + +A package which need the makeinfo command at build time must define +the variable USE_MAKEINFO in its Makefile. If a minimum version of the +makeinfo command is needed it should be noted with the TEXINFO_REQD variable +in the package Makefile. By default a minimum version of 3.12 is required. +If the system does not provide a makeinfo command or if it does not match +the required minimum a build dependency on the devel/gtexinfo package is +added. + +The installation process of the software provided by the package must not +use the install-info as the registration of info files +is the task of the package INSTALL SCRIPT, and it must use +the right makeinfo command. + +If the package use buildlink2 framework no special action should be needed +to achieve this goal. + +If the package does not use the buildlink2 framework patch files are likely +to be needed so the build and installation process of the software +picks up the -possibly dummys- values of INSTALL_INFO and MAKEINFO in the +environment. + +*NOTE* Temporally the variable USE_NEW_TEXINFO must be defined in the +package Makefile. Previously info files, install-info and makeinfo +were handled somewhat differently and the two ways will coexist for +a short period of time until all older packages are updated. 10.25 Packages whose distfiles aren't available for plain downloading ===================================================================== @@ -2653,7 +2650,6 @@ The file contents in this section must be used without the "> " prefix. GNU_CONFIGURE= yes INFO_FILES= bison.info - .include "../../mk/texinfo.mk" .include "../../mk/bsd.pkg.mk" @@ -2671,14 +2667,12 @@ The file contents in this section must be used without the "> " prefix. @comment <$>NetBSD<$> bin/bison man/man1/bison.1.gz - @unexec install-info --delete %D/info/bison.info %D/info/dir info/bison.info info/bison.info-1 info/bison.info-2 info/bison.info-3 info/bison.info-4 info/bison.info-5 - @exec install-info %D/info/bison.info %D/info/dir share/bison.simple share/bison.hairy |