diff options
author | hubertf <hubertf> | 2001-03-27 03:19:43 +0000 |
---|---|---|
committer | hubertf <hubertf> | 2001-03-27 03:19:43 +0000 |
commit | f63de72ad91a5e675f6b4da410b4fc8333fc0d81 (patch) | |
tree | 387535a43617bd882ee1e20ce4779c6544f8925b /Packages.txt | |
parent | 8f8631769bc10d6d2843a57e8f6ca7d8c8fa63da (diff) | |
download | pkgsrc-f63de72ad91a5e675f6b4da410b4fc8333fc0d81.tar.gz |
Change BUILD_DEPENDS semantics:
first component is now a package name+version/pattern, no more
executable/patchname/whatnot.
While there, introduce BUILD_USES_MSGFMT as shorthand to pull in
devel/gettext unless /usr/bin/msgfmt exists (i.e. on post-1.5 -current).
Patch by Alistair Crooks <agc@netbsd.org>
Diffstat (limited to 'Packages.txt')
-rw-r--r-- | Packages.txt | 91 |
1 files changed, 51 insertions, 40 deletions
diff --git a/Packages.txt b/Packages.txt index 8439460cff4..1c4f8e524b6 100644 --- a/Packages.txt +++ b/Packages.txt @@ -1,4 +1,4 @@ -# $NetBSD: Packages.txt,v 1.146 2001/03/23 17:11:17 skrll Exp $ +# $NetBSD: Packages.txt,v 1.147 2001/03/27 03:19:43 hubertf Exp $ ########################################################################### ========================== @@ -1591,64 +1591,75 @@ not the same as FreeBSD's deprecated one, and NetBSD does not use the FreeBSD LIB_DEPENDS definition any more - it proved problematic on ELF NetBSD platforms). -[In the following examples, the BUILD_DEPENDS dependencies have the format: -<file>:<directory containing package to build>[:<stage>] If the <stage> -isn't specified, it defaults to ``install''. If the file contains a '/', it -is interpreted as a regular file - otherwise, the name is taken to be an -executable file, and the PATH is searched for <file>. If the regular file -is not found, or the executable file is not in the path, then the -pre-requisite package will be built from the sources in <directory -containing the package to build>. The DEPENDS definition specifies a -package name (which contains its version number), and the directory -containing the package to build if this version of the package is not -installed.] - -(a) If your package needs files from another package to build, see the -print/ghostscript5 package (it relies on the jpeg sources being -present in source form during the build): - -BUILD_DEPENDS+= ../../graphics/jpeg/${WRKDIR:T}/jpeg-6a:../../graphics/jpeg:extract - -(b) If your package needs to use another package to build itself, this -is specified using the BUILD_DEPENDS definition, but without -specifying the stage ``:extract'' in (a) above. An example is the -print/lyx package, which uses the latex binary during its build -process: - -BUILD_DEPENDS+= latex:../../print/teTeX - -(c) If your package needs a library with which to link, this is +The basic difference between the two definitions is as follows: the +DEPENDS definition registers that pre-requisite in the binary package, +whilst the BUILD_DEPENDS definition does not. + +This means that if you only need a package present whilst you are building, +it should be noted as a BUILD_DEPENDS. + +The format for a BUILD_DEPENDS and a DEPENDS definition is: + + <pre-req-package-name>:../../<category>/<pre-req-package> + +Please note that the "pre-req-package-name" may include any of the wildcard +version numbers recognised by pkg_info(1). + +(a) If your package needs to use another package to build itself, this +is specified using the BUILD_DEPENDS definition. + + BUILD_DEPENDS+= autoconf-2.13:../../devel/autoconf + +(b) If your package needs a library with which to link, this is specified using the DEPENDS definition. An example of this is the print/lyx package, which uses the xpm library, version 3.4j to build. -DEPENDS+= xpm-3.4j:../../graphics/xpm + DEPENDS+= xpm-3.4j:../../graphics/xpm You can also use wildcards in package dependences: -DEPENDS+= xpm-*:../../graphics/xpm + DEPENDS+= xpm-*:../../graphics/xpm + +Note that such wildcard dependencies are retained when creating binary +packages. The dependency is checked when installing the binary +package and any package which matches the pattern will be used. +Wildard dependencies should be used with care. -Note that such wildcard dependencies are retained when creating -binary package. The dependency is checked when installing the binary -package and any package which matches the pattern would be used. -Beware that wildard dependencies should be used with a bit of care. -Simple example for package which needs some version of Tk installed, -but doesn't care which exactly - dependency +For example, if a package needs any version of Tk installed, but does +not require an explicit version of Tk: -DEPENDS+= tk-*:../../x11/tk80 + DEPENDS+= tk-*:../../x11/tk80 would also match e.g. tk-postgresql-6.5.3, which is not what was -needed. ALWAYS ensure that the wildcard doesn't match more than it should. +needed. ALWAYS ensure that the wildcard doesn't match more than it should, +and perhaps use version numbers to make certain: + + BUILD_DEPENDS+= perl-5.*:../../lang/perl -(d) If your package needs some executable to be able to run correctly, this +(c) If your package needs some executable to be able to run correctly, this is specified using the DEPENDS definition. The print/lyx package needs to be able to execute the latex binary from the teTex package when it runs, and that is specified: -DEPENDS+= teTex-*:../../print/teTeX + DEPENDS+= teTex-*:../../print/teTeX The comment about wildcard dependencies from previous paragraph applies here, too. +If your package needs files from another package to build, see the +first part of the "do-configure" target print/ghostscript5 package (it +relies on the jpeg sources being present in source form during the +build): + + if [ ! -e ${BUILD_ROOT}/graphics/jpeg/${WRKDIR:T}/jpeg-6b ]; then \ + cd ../../graphics/jpeg && ${MAKE} extract; \ + fi + +Please also note the BUILD_USES_MSGFMT definition, which is provided +as a convenience definition. This definition works out whether +msgfmt(1) is part of the base system, and, if it isn't, installs the +devel/gettext package. + 9.13 Conflicts with other packages ================================== |