installed via binaries (if possible), even if there is no binary
pkg available for the current pkg.
Implementation still allows overriding DEPENDS_TARGET=build (etc.)
to force installation of dependencies by compiling if desired.
Patch submitted by Marko Schuetz <MarkoSchuetz@web.de> in private mail.
force a package to be installed into ${X11BASE} if it uses Motif. As a
side effect, the xemacs and xemacs-current packages no longer install into
${X11BASE} but into ${LOCALBASE}, which matches what they used to do before
being converted to use Motif dialogs.
header files. It defines MACHINE_ENDIAN which is one of three values:
little, big, or unknown.
This file is used in package Makefiles as follows:
.include "../../mk/endian.mk"
.if ${MACHINE_ENDIAN} == "big"
# ...big endian stuff...
.elif ${MACHINE_ENDIAN} == "little"
# ...little endian stuff...
.else
BROKEN= "Unknown endianness"
.endif
version of the package, and an attempt is made to install the package,
first "make clean" and then "make build" to pick up the new version of
the package before continuing with "make install", rather than printing
an error message and dying.
${WRKDIR} every time with "mkdir -p" - instead, use the ${WRKDIR}
target, so that any symlinks to it are created properly.
Also, when creating the ${DLIST} file in the update target, don't pipe
the output of pkg_info -R through "tail -n +4" - simply use pkg_info -qR
to achieve the same results.
GENERATE_PLIST is a sequence of commands, terminating in a semicolon,
that outputs contents for a PLIST to stdout and is appended to the
contents of ${PLIST_SRC}.
Convert the perl5 packlist handling to use GENERATE_PLIST.
- remove unwanted entries earlier by using ${GREP} -v
- substitute more specific bits before lesser ones: ${MACHINE_GNU_PLATFORM}
before ${MACHINE_ARCH} and ${MACHINE_GNU_ARCH}
- substitute *after* the sort so substitution does not move the
pathnames around
- add substitution of ${PKGVERSION}
- substitute ${PKGLOCALEDIR}/locale (this can help actually catching PLIST,
configuration, build, ... problems with respect to the correct locale
directory varying from platform to platform)
Enable this package for all platforms.
Added GAWK_ENABLE_PORTALS to mk/bsd.pkg.defaults.mk to enable/disable gawk
handling file names that start with `/p/' as a 4.4 BSD type portal file.
Changes from 3.0.4 to 3.0.5:
- bug fix release only.
Changes from 3.0.5 to 3.0.6:
- bug fix release only.
Changes from 3.0.6 to 3.1.0:
- A new PROCINFO array provides info about the process. The non-I/O /dev/xxx
files are now obsolete, and their use always generates a warning.
- A new `mktime' builtin function was added for creating time stamps. The
`mktime' function written in awk was removed from the user's guide.
- New `--gen-po' option creates GNU gettext .po files for strings marked
with a leading underscore.
- Gawk now completely interprets special file names internally, ignoring the
existence of real /dev/stdin, /dev/stdout files, etc.
- The mmap code was removed. It was a worthwhile experiment that just
didn't work out.
- The BINMODE variable is new; on non-UNIX systems it affects how gawk
opens files for text vs. binary.
- Gawk no longer supports `next file' as two words.
- On systems that support it, gawk now sets the `close on exec' flag on all
files and pipes it opens. This makes sure that child processes run via
system() or pipes have plenty of file descriptors available.
- If `--posix' is in effect, newlines are not allowed after ?:.
- Weird OFMT/CONVFMT formats no longer cause fatal errors.
- Diagnostics about array parameters now include the parameter's name,
not just its number.
- It is now possible to open a two-way pipe via the `|&' operator.
See the discussion in the manual about putting `sort' into such a pipeline,
though. (NOTE! This is borrowed from ksh: it is not the same as
the same operator in csh!)
- The close() function now takes an optional second string argument
that allows closing one or the other end of the two-way pipe to
a co-process. This is needed to use `sort' in a co-process, see
the doc.
- If TCP/IP is available, special file names beginning with `/inet'
can be used with `|&' for IPC.
- With `--enable-portals' on the configure command line, gawk will also
treat file names that start with `/p/' as a 4.4 BSD type portal file,
i.e., a two-way pipe for `|&'.
- Unrecognized escapes, such as "\q" now always generate a warning.
- The LINT variable is new; it provides dynamic control over the --lint
option.
- Lint warnings can be made fatal by using --lint=fatal or `LINT = "fatal"'.
Use this if you're really serious about portable code.
- A number of lint warnings have been added. Most notably, gawk will
detect if a variable is used before assigned to. Warnings for
when a string that isn't a number gets converted to a number are
in the code but disabled; they seem to be too picky in practice.
Also, gawk will now warn about function parameter names that shadow
global variable names.
- It is now possible to dynamically add builtin functions on systems
that support dlopen. This facility is not (yet) as portable or well
integrated as it might be. *** WARNING *** THIS FEATURE WILL EVOLVE!
- Profiling has been added! A separate version of gawk, named pgawk, is
built and generates a run-time execution profile. The --profile option
can be used to change the default output file. In regular gawk, this
option pretty-prints the parse tree.
- Gawk has been internationalized, using GNU gettext. Translations for
future distributions are most welcome.
- New asort() function for sorting arrays. See the doc for details.
- The match function takes an optional array third argument to hold
the text matched by parenthesized sub-expressions.
- The bit op functions and octal and hex source code constants are on by
default, no longer a configure-time option. Recognition of non-decimal
data is now enabled at runtime with --non-decimal-data command line option.
- Internationalization features available at the awk level: new TEXTDOMAIN
variable and bindtextdomain() and dcgettext() functions. printf formats
may contain the "%2$3.5d" kind of notation for use in translations. See
the texinfo manual for details.
- The return value from close() has been rationalized. Most notably,
closing something that wasn't open returns -1 but remains non-fatal.
- The array effeciency change from 3.0.5 was reverted; the semantics were
not right. Additionally, index values of previously stored elements
can no longer change dynamically.
- The new option --dump-variables dumps a list of all global variables and
their final types and values to a file you give, or to `awkvars.out'.
- Gawk now uses a recent version of random.c courtesy of the FreeBSD
project.
- The gawk source code now uses ANSI C function definitions (new style),
with ansi2knr to translate code for old compilers.
- `for (iggy in foo)' loops should be more robust now in the face of
adding/deleting elements in the middle; they loop over just the elements
that are present in the array when the loop starts.
This is mostly to get the improved/fixed version number handling provided
by this version of the tools, but see the log of
pkgsrc/pkgtools/pkg_install/Makefile revision 1.47 for a summary of
changes.
+ Check for the existence of pkg_tarup, and fail if it can't be found.
+ Place the binary package of the replaced-package in the ${WRKDIR},
rather than overwriting any instance in ${PKGREPOSITORY}.
+ Don't make a binary package when undoing the replacement.
libraries the following could occur
- a.out platforms: c++rt0.o would be missing and therefore
global contstructors would not work.
- ELF platforms libstdc++ and libm would not be explicitly
linked in.
This affected notably libqt and explains the build failure of kdelibs2 on
arm32.
Bump PKGREVISION and require it.
fails because otherwise the next invokation of the "update" target will
not attempt to remove the package again. Fix provided by Aaron J. Grier
in PR pkg/15827.
${X11BASE} instead of checking for -I or -L in front of it. This is okay
because ${BUILDLINK_X11_DIR} should just never appear in any installed
files regardless of its prefix. Problem noted in private email by Mark
Davies <mark@mcs.vuw.ac.nz>.
$${file} is a libtool archive (*.la). It allows libtool to properly
interact with buildlink at link time by linking against the libraries
pointed to by symlinks in ${BUILDLINK_DIR}.
This change has been tested by me on NetBSD-1.5ZA/i386 and by Mark
Davies <mark@mcs.vuw.ac.nz> on Solaris.
a.out but are now ELF, in a way that's consistent with bsd.own.mk in
NetBSD-current. This, incidently, makes the gcc package build again on
NetBSD-1.5.3_ALPHA/i386.
the package revision added. Replace "PKGNAME" in package list with this
value because the installed software doesn't know anything about package
system revision. This fixes package list problems in e.g. the "xemacs"
package.
We *must* record the version of "${.CURDIR}/Makefile" because we otherwise
only record the version of the wrong "Makefile" e.g.
"x11/xscreensaver-gnome/../xscreensaver/Makefile" for the
"xscreensaver-gnome" package. This will break the update target horribly.
When constructing the build version information, avoid problems
when there is a filename with an embedded space in the directory.
With thanks to Stoned Elipot for the practical help.
- - For "fetch", move the assignment of the "getsite.sh" script to a more
natural place, to get the full benefit of, and consistent handling for,
setting MASTER_SORT and MASTER_SORT_REGEX
- - For "fetch-list", embed the "getsite.sh" script into the generated
script, so that the calculation can be properly done at run-time.
("fetch-list" also respects MASTER_SORT and MASTER_SORT_REGEX.)
FOO_SED is user-appendable.
_FOO_SED = ${_FOO_PRE_SED} ${FOO_SED} ${_FOO_POST_SED}
_FOO_SED is used when actually making sed(1) substitutions.
This allows tweaking _FOO_{PRE,POST}_SED to alter the total sed expression.
"check-depends" target is what used to install dependencies before fetching
any files. ("install-depends" continues to perform that function for the
other main targets.)
only emit a message and don't actually fetch anything. This allows
us to make the output of "fetch-list" for these packages consistent
with other packages.
While we're in here, integrate DYNAMIC_MASTER_SITES with the
${ORDERED_SITES} macro. The only functional change here is that
${MASTER_SITE_OVERRIDE} is now respected. Still to do -- something
appropriate for "fetch-list" for these packages, like sourcing
"getsites.sh" into the generated script. (Well, "package", but there
are two others that do something similar in their "Makefile".)
Also eliminate the misbegotten _FETCH_ALLFILES macro -- now that only
"fetch" uses it, move it's functionality directly under "do-fetch".
replace - this target updates a package in place, fixing up references
to and from other packages to the updated package.
undo-replace - undoes all the work of the previous replace operation.
For this target to work, the ${WRKDIR} must be preserved.
The replace target first makes a binary package of the existing
installed package, then a copy of the +REQUIRED_BY file is taken, if
it exists, and then the existing package is deleted. The new package
is installed, and the preserved +REQUIRED_BY file is copied back into
place, using its contents to modify the +CONTENTS files of all the
packages which require it. The undo-replace shares code with the
replace target, and does the same operation, but in reverse.
Warnings are displayed when either of these targets is used, since
they are experimental targets right now.
of BSD-makefile'd packages.
By tuning MANINSTALL, passing it to a package's build process by
way of MAKE_ENV, one can retains the man related entries in
${PLIST_SRC} while keeping a correct generated ${PLIST}. This is
mostly intended for packages being compiled on non-NetBSD platforms
when "andoc man pages" are difficult or impossible to process i.e.
depending on groff package is not realistic.
many suggestions made by Bernd Ernesti on "tech-pkg". Closes PR pkg/15539.
- - Partially revert 1.895, which made 'fetch-list' ape 'fetch', so instead
check if a file exists on the building host before emitting anything
for it into the generated script. Update to use the new 'fetch' procedure
on the fetching host, once it is determined that the file is needed,
and generally clean up the output, so that it's a human readable shell
script with comments.
- - Introduce utility target 'show-all-depends-dirs', to do the necessary
recursing over dependencies quickly and correctly. Add a couple of
variations to show how it's done, and bracket the whole thing with
".if make()", so it's invisible to the dependency graph for all the
other targets. The key improvement over the old way, is that it utilizes
an "awk" associative array to guarantee that no package subdirectory
is visited twice. For the package with the hairiest dependency graph,
"x11/gnome", this leads to something like a 1,000-fold improvement!
- - "sort -u" over the result of 'fetch-list-one-pkg' goes bye-bye. The new
"awk" post-processor begins emitting output as soon as there is a file
to fetch, so the user doesn't have to wait for the whole thing to finish
before he sees anything.
- - Get rid of the old hook for non-recursing for a top-level 'fetch-list',
which was never used. Previously, a top-level 'fetch-list' couldn't work
anyway, because the progress reports ruined the shell script. Remove
'fetch-list' from the targets that recurse from the top, and instead
use a different 'fetch-list' target in "bsd.pkg.subdir.mk" to do the right
thing. Currently, that right thing includes recursing in the single-category
case, or if ${SPECIFIC_PKGS} is set, and not recursing in the top-level,
all packages case (where it would be perfectly pointless).
when there is a filename with an embedded space in the directory.
Fixes PR 15755 from Simon Burge (simonb@wasabisystems.com).
Whilst I'm here, only include the build information for the package
Makefile once.
extracts the contents of archive named by the shell variable
"extract_file" based on the file extension of the archive. The contents
are dumped into the current directory.
* Unify the EXTRACT_CMD handling. We now define the default EXTRACT_CMD
to be ${_SHELL_EXTRACT} (see above). Otherwise, if it's already defined
in the package Makefile, then that EXTRACT_CMD is used to extract all of
the archives.
* Rearrange the locking code so that it's localized instead of interspersed
in the extraction code.
* Add EXTRACT_CMD definitions for files that are only compressed (foo.c.gz)
that decompress the file into ${WRKDIR}.
Summary of changes:
- removal of USE_GTEXINFO
- addition of mk/texinfo.mk
- inclusion of this file in package Makefiles requiring it
- `install-info' substituted by `${INSTALL_INFO}' in PLISTs
- tuning of mk/bsd.pkg.mk:
removal of USE_GTEXINFO
INSTALL_INFO added to PLIST_SUBST
`${INSTALL_INFO}' replace `install-info' in target rules
print-PLIST target now generate `${INSTALL_INFO}' instead of `install-info'
- a couple of new patch files added for a handful of packages
- setting of the TEXINFO_OVERRIDE "switch" in packages Makefiles requiring it
- devel/cssc marked requiring texinfo 4.0
- a couple of packages Makefiles were tuned with respect of INFO_FILES and
makeinfo command usage
See -newly added by this commit- section 10.24 of Packages.txt for
further information.
If you need to download from a dynamic URL you can set DYNAMIC_MASTER_SITES
and a 'make fetch' will call files/getsite.sh with the name of each file
to download as an argument, expecting it to output the URL of the directory
from which to download it. graphics/ns-cult3d is an example of this usage.
PKG_SYSCONFVAR is the special suffix used to distinguish any overriding
values for a particular package (see next item). It defaults to
${PKGNAME}, but for a collection of related packages that should
all have the same PKG_SYSCONFDIR value, it can be set in each of
the package Makefiles to a common value.
PKG_SYSCONFDIR.${PKG_SYSCONFVAR} overrides the value of ${PKG_SYSCONFDIR}
for packages with the same value for PKG_SYSCONFVAR.
Package maintainers may want to set PKG_SYSCONFVAR to a common value for
related packages, e.g. all of the amanda packages set PKG_SYSCONFVAR=amanda
so that the PKG_SYSCONFDIR for all of them may be tweaked by just setting
PKG_SYSCONFDIR.amanda in /etc/mk.conf.
automatically DEPENDed if EXTRACT_SUFX is set to a known suffix but
EXTRACT_ONLY is set to an empty value. This should fix the problems for
audio/guspatches and textproc/iso8879 in the 2002-01-28 i386 bulk-build
results.
packages themselves, as /etc/mk.conf may contain harmful settings for
package builds. Just to clarify, /etc/mk.conf is still included by the
Makefiles in pkgsrc, just not by the Makefiles used to build the software
itself. This should fix pkg/15297 by gabriel rosenkoetter
<gr@grappa.eclipsed.net>.
shouldn't be set as the environment for a make process invoked at the
package (${.CURDIR}) level during the install phase because it can contain
harmful settings.
putting them all into one large case statement instead of successive if
statements, and by removing the creation and constant testing of a temp
file to mark when the distfile is extracted.
This will pass -mieee to those package which obey CFLAGS and FFLAGS.
paraphrasing an email from Ross:
The executive summary is: if i386 uses it (and
it does) then alpha should also, or some programs will SIGFPE out
on alpha when they don't on i386.
If anyone asks, the details are as follows:
The actual effect of -mieee is to put a software completion code
bit into every floating point instruction, and to put trap barrier
instructions in the code as necessary to ensure that traps are
delivered before branches or other instructions make it impossible
to trace backwards to the trapping op.
The code bits have little effect on the hardware, mainly what
happens is that when the hardware and palcode deliver a trap, they
tell the trap handler whether the faulting op had a completion
code. If it did, the kernel is suppose to trace backwards, find
the op, and interpret it in SW, doing all the wacky ieee stuff that
most chips don't do, stuff like denormal arithmetic and the generation
of magic values (infinity, NaN) and the sticky flags. We do all
that now except for a couple of truly obscure things that SoftFloat
didn't support and which I haven't yet added. (And these are things
that happen ONLY when you are taking overflow and underflow traps,
which no one has every really done AFAICT. If you have the default
behavior of gradual underflow and nontrapping infinity generation,
we do everything.)
This brings up the question of -mieee libraries, but that's not a
pkgsrc problem. (Except to the extent that I recommend that libraries
from pkgsrc, like everything else, also be compiled with -mieee.
And in the case of libraries, it might be worth individually
modifying the Makefile for the "not easy" case.)
The primary purpose is so when a package is broken due to broken depends,
there are links to the build logs of the broken dependencies.
Suggested by Brook Milligan on tech-pkg.
up version of the bare-bones code in PR 7590, from David Maxwell.
The definition governing the type of locking used is PKGSRC_LOCKTYPE,
which can take any of the values "none", "sleep", and "once". The
default is "none". If "sleep" locking is used, and process A is
building a package, when process B attempts to build the same package,
process B will sleep for PKGSRC_SLEEPSECS seconds, and attempt to grab
the lock again.
Coarse-grained locking uses the OBJHOSTNAME definition to ensure that
the PID space is regular for shlock(1) to do its work. The
pkgsrc/pkgtools/shlock package has been provided for environments
where shlock is not standard.
extract all of the files listed in ${EXTRACT_ONLY}. This is so that a
package author doesn't have to grub through bsd.pkg.mk in order to find
how to override the extraction method. Problem noted by Antti Kantee in
private email.
When OBJHOSTNAME is set, the various cache files and log files will include
the hostname in their names. Useful when multiple machines of the same
architecture share pkgsrc.
If set, the first component of the hostname (up to the first '.', if any),
will be appended to "work." to form the WRKDIR_BASENAME.
OBJHOSTNAME takes precedence over OBJMACHINE.
ceremony, as we can use SITES_foo instead, as is now documented in
Packages.txt. The former were only ever used by exactly three packages
(ghostscript, ghostscript-nox11, and kterm).
motivation is to make the order that sites are hit more sane, and
especially to prevent hitting sites that aren't ever expected to have
the sought after file.
Now, ${MASTER_SITE_OVERRIDE} is always hit first. If that fails, then
the sites designated for that file, then ${MASTER_SITE_BACKUP}, are hit
(by default), but with the order subject to ${MASTER_SORT_REGEX} and
${MASTER_SORT_AWK}. The "designated sites" are usually ${MASTER_SITES}
for files in ${DISTFILES}, and ${PATCH_SITES} for files in ${PATCH_FILES}.
However, defining a variable `${SITES_foo}' in the package "Makefile"
overrides that for file "foo". [The use of ${MASTER_SITES_foo} and
${PATCH_SITES_foo}, which is currently only used by a couple of packages
for the same purpose, is deprecated, and will be shortly unsupported.]
Also eliminate redundancy in the do-fetch and fetch-list-one-pkg targets,
by making them use a single, common macro (escaped with `:Q' in the
fetch-list-one-pkg case), so "make fetch-list-one-pkg | sh" now does
exactly the same thing as "make do-fetch".
well as the normal shared objects. This means that the new toolchain, that
links in libgcc_pic.a, will build proper shared objects again.
Bump to nb5 and make this the required version.
Fixes pkg/15120 from Matthias Scheler <tron@colwyn.zhadum.de>
chokes on the construct. This was a pasto that's been there for a while
but was uncaught. Thanks for David Brownlee <abs@netbsd.org> for noting
the problem and the solution.
--suexec-* configure options that are passed directly to the Apache
configure script. This may be used to tune the suEXEC configuration
in more restrictive ways, e.g. --suexec-uidmin=1000. This solution
is more open-ended than the fix proposed in pkg/14973. Also, we
don't duplicate all of the options from the Apache configure script
in pkgsrc bsd.pkg.defaults.mk. This closes pkg/14973 by Eric
Schnoebelen <eric@cirr.com>
(2) For namespace consistency, deprecate APACHE_USER in favor of
APACHE_SUEXEC_USER. Move APACHE_USER into bsd.pkg.obsolete.mk.
(3) Create the suEXEC user when the functionality is enabled in the server
so that CGI scripts will work properly. This closes pkg/14903 by
Wojciech Puchar <wojtek@3miasto.net>
using either the native pthread implementation or using a package pthread
implementation instead, e.g. pth, ptl2, mit-pthreads, etc. The only
currently supported package pthread implementation is pth as it's the only
one with a buildlink.mk file. An example usage is:
USE_PTHREAD= native pth
.include "../../mk/pthread.buildlink.mk"
or a fancier example is:
USE_PTHREAD= native
.include "../../mk/bsd.prefs.mk"
.if defined(PTHREAD_TYPE) && (${PTHREAD_TYPE} == "none")
CONFIGURE_ARGS+= --without-pthreads
.endif
.include "../../mk/pthread.buildlink.mk"
autoconf-2.5* by touching some more files. Thanks to YAMAMOTO Takashi
<yamt@mwd.biglobe.ne.jp> for pointing out the error in private e-mail.
Also list several packages on which to verify this code after making
changes to the AUTOMAKE*_PATTERNS.
touch some files before the configure script is run, and some more
afterwards. We touch the files afterwards since the configure script can
get modified after it is run, and touching some files afterwards prevents
them from being regenerated if they depend on the configure script.
suffices listed in ${_EXTRACT_SUFFICES}. Currently, _EXTRACT_SUFFICES has
.tar.bz2, .tbz, .tar.gz, .tgz, .tar, .zip, .lzh, and .lha. If the file
doesn't end in any of these suffices, then we use the old code to do the
extraction. This rids us of the mild annoyance where if you have several
distfiles, some ending in .tar.bz2, some in .tar.gz, and others in .zip,
then you have to create a post-extract target to extract all of the ones
not ending in the suffix that you designate in EXTRACT_SUFX.
I've tested this with some representative packages: archivers/gtar-base,
print/cups, www/surfraw, and print/ghostscript-nox11.
as standard.
Hoist the default definition of ${GMAKE} from bsd.pkg.mk into the different
defs.${OPSYS}.mk files.
A non-standard location or name for GMAKE can still be specified in
/etc/mk.conf.
print/lprng, we make a new variable USE_CUPS that is used by packages to
determine whether depend on print/cups and to compile in support for CUPS.
USE_CUPS may be either "YES" or undefined. Deprecate SAMBA_WITH_CUPS as
its purpose is superseded by USE_CUPS. Convert net/samba and net/samba20
to use USE_CUPS and make x11/kdelibs2 respect USE_CUPS.
fact that they don't do anything unless the appropriate variables are set
in rc.conf, people really dislike the warning emitted at startup. For
users that do want the pkg_* tools to handle automatically copying and
removing the rc.d scripts, the mk.conf variable to set is
INSTALL_RCD_SCRIPTS=YES.
the cache files used during a bulk pkgsrc build.
- replace the code in the build script that used to create the cache
files with a 'make bulk-cache' call.
references of the pkglint package.
_PKGSRCDIR is an internal definition in bsd.pkg.mk, and a few packages
which would like to refer to other packages in the build tree. It should
not be set by users, but neither should it stop a user from building a
package if it is defined, so make it obvious that this is the case.
Makefiles during the build process by touching various auto{conf,make}
source files to make them up-to-date. Packages that require regenerating
the configure script and Makefile.in files should make the appropriate
calls to auto{conf,make} in a pre-configure target. This allows the
various targets listed in ${_CONFIG_PREREQ} to modify the generated files
without triggering the GNU auto* tools and having the modifications be
overwritten.
Syntax:
MASTER_SITES_completefilename= http://specific.master/site
and similarly for PATCH_SITES.
Convert print/ghostscript-nox11 and x11/kterm to take advantage of this.
currently only occurs for packages that use bsd.pkg.install.mk.
There are two new targets, pre-install-script and post-install-script, that
default to doing nothing. The order of targets called for a "make install"
is:
pre-install-script
pre-install
do-install
post-install
post-install-script
The new targets are defined in bsd.pkg.install.mk to call the INSTALL
script with the PRE-INSTALL and POST-INSTALL options.
LIBTOOL_OVERRIDE steps into a separate do-libtool-override target. Create
a new variable _CONFIGURE_POSTREQ that currently lists do-libtool-override.
Also add some documentation for the two _CONFIGURE_* variables:
_CONFIGURE_PREREQ is a list of targets to run after pre-configure but before
do-configure. These targets typically edit the files used by the
do-configure target.
_CONFIGURE_POSTREQ is a list of targets to run after do-configure but before
post-configure. These targets typically edit the files generated by
the do-configure target that are used during the build phase.