From ef24d45e6cdbd435c61e8a7ee73f060ff2436730 Mon Sep 17 00:00:00 2001
From: rillig
@@ -163,17 +166,17 @@ builds)
CFLAGS
?Makefile
s
Makefile
variables
@@ -227,25 +230,25 @@ builds)
PLIST
generationPLIST_SRC
-
PKG_SYSCONFDIR
is set
mk.conf
-
bootstrap-pkgsrc
: Bootstrap kitsdistfiles
: The distributed source filesiso
: Currently emptymisc
: Miscellaneous thingspackages
: Binary packagesreports
: Bulk build reportscurrent
,
-pkgsrc-200
:
+x
Qy
CFLAGS
)LDFLAGS
)${LOCALBASE}
${VARBASE}
CFLAGS
?CFLAGS
)LDFLAGS
)The rest of this section is rather old. Don't rely on it -too much.
+There are two ways of doing a bulk build. The old-style +one and the new-style “pbulk”. The latter is the recommended +way.
/usr/sandbox/usr/pkgsrc/packages
and
.../distfiles
point somewhere
appropriate. NFS- and/or nullfs-mounts may come in handy!
-Edit mk.conf
, see Section 7.3.1.2, “mk.conf
”.
Edit mk.conf
, see Section 7.3.1.2, “???”.
Adjust mk/bulk/build.conf
to suit your needs.
When the chroot sandbox is set up, you can start
@@ -2941,10 +2951,41 @@ nbftp% chmod 755 .
Running a pbulk-style bulk build works roughly as follows:
+First, build the pbulk infrastructure in a fresh pkgsrc location.
Then, build each of the packages from a clean installation directory using the infrastructure.
First, you need to create a pkgsrc installation for the pbulk infrastructure. No matter on which platform you are (even on NetBSD), you should bootstrap into its own directory. Let's take the directory /usr/pbulk-outer
or $HOME/pbulk-outer
for it. This installation will be bootstrapped and all the tools that are required for the bulk build will be installed there.
+$+cd /usr/pkgsrc
+$./bootstrap/bootstrap --prefix=/usr/pbulk --varbase=/usr/pbulk/var --workdir=/tmp/pbulk-bootstrap
+$rm -rf /tmp/pbulk-bootstrap
+
Now the basic environment for the pbulk infrastructure is installed. The specific tools are still missing. This is a good time to edit the pkgsrc configuration file /usr/pbulk/etc/mk.conf
to fit your needs. Typical things you might set now are:
, to enable many consistency checks,PKG_DEVELOPER
=yes
, to keep WRKOBJDIR
=/tmp/pbulk-outer/usr/pkgsrc
free from any modifications,
, to have only one directory in which all distfiles (for the infrastructure and for the actual packages) are downloaded,DISTDIR
=/distfiles
, to select some licenses additional to the usual Free/Open Source licenses that are acceptable to you,ACCEPTABLE_LICENSES
+=...
, to accept all licenses, no matter how restrictive they are._ACCEPTABLE
=yes
Now you are ready to build the rest of the pbulk infrastructure.
++$+cd pkgtools/pbulk
+$/usr/pbulk/bin/bmake install
+$rm -rf /tmp/pbulk-outer
+
Now the pbulk infrastructure is built and installed. It still needs to be configured, and after some more preparation, we will be able to start the real bulk build.
+chmod 755 .
Table of Contents
The files that are installed by pkgsrc are organized in a way that @@ -3147,17 +3188,17 @@ currently running.
CFLAGS
?This section contains hints, tips & tricks on special things in
@@ -3588,8 +3629,8 @@ anymore, you can remove that file and run cvs -q u
-
Makefile
distinfo
work*
files/*
Makefile
s
Makefile
variables
@@ -3625,25 +3666,25 @@ anymore, you can remove that file and run cvs -q u
PLIST
generationPLIST_SRC
-
PKG_SYSCONFDIR
is set
mk.conf
Table of Contents
Makefile
distinfo
work*
files/*
Whenever you're preparing a package, there are a number of
@@ -4219,7 +4260,7 @@ converters games mbone print x11
DYNAMIC_MASTER_SITES
,
DIST_SUBDIR
, EXTRACT_SUFX
and DISTFILES
are discussed in detail in
- Section 17.5, “The fetch phase”.
The second section contains information about separately
downloaded patches, if any.
@@ -4393,7 +4434,7 @@ converters games mbone print x11
directory to patches/
.
When you have finished a package, remember to generate
the checksums for the patch files by using the make
- makepatchsum command, see Section 11.2, “distinfo
”.
When adding a patch that corrects a problem in the distfile (rather than e.g. enforcing pkgsrc's view of where man pages should go), send the patch as a bug report to the @@ -4721,7 +4762,7 @@ FILESDIR=${.CURDIR}/../xemacs/files
Table of Contents
Makefile
variablesTable of Contents
PLIST
generationPLIST_SRC
Table of Contents
@@ -5733,7 +5774,7 @@ PREFER_NATIVE= getopt skey tcp_wrappersPKG_SYSCONFDIR
is setNO
.
Table of Contents
bsd.options.mk
The CREATE_WRKDIR_SYMLINK
definition takes either
the value yes or no and defaults
- to yes. It indicates whether a symbolic link to the
+ to no. It indicates whether a symbolic link to the
WRKDIR
is to be created in the pkgsrc entry's directory.
If users would like to have their pkgsrc trees behave in a
read-only manner, then the value of
@@ -7343,7 +7384,7 @@ ${FETCH_CMD} ${FETCH_BEFORE_ARGS} ${site}${file} ${FETCH_AFTER_ARGS}
PLIST
, as the “find
-newer” command used by this target won't catch
them!
See Section 13.3, “Tweaking output of make print-PLIST” for more +
See Section 13.3, “Tweaking output of make print-PLIST” for more information on this target.
18.4.1.
+18.4.1.
How do I add a new tool?
18.4.2.
+18.4.2.
How do I get a list of all available tools?
18.4.3.
+18.4.3.
How can I get a list of all the tools that a package is using while being built? I want to know whether it @@ -7532,7 +7573,7 @@ TOOLS_PLATFORM.true?= true # shell builtin
mk.conf
Include
- ../../textproc/rarian/omf.mk
+ ../../textproc/scrollkeeper/omf.mk
instead of its buildlink3.mk
file. This
takes care of rebuilding the scrollkeeper database at
installation and deinstallation time, and disallows any access
@@ -9259,7 +9300,7 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist
package.
Look at the Makefile
, fix if
- necessary; see Section 11.1, “Makefile
”.
Generate a PLIST
:
#
make install
@@ -9521,7 +9562,7 @@ do?- 22.1.
+22.1.
What is the difference between
MAKEFLAGS
,.MAKEFLAGS
and @@ -9537,7 +9578,7 @@ do?- 22.2.
+22.2.
What is the difference between
MAKE
,GMAKE
and @@ -9555,7 +9596,7 @@ do?- 22.3.
+22.3.
What is the difference between
CC
,PKG_CC
and @@ -9573,7 +9614,7 @@ do?- 22.4.
+22.4.
What is the difference between
BUILDLINK_LDFLAGS
, @@ -9586,7 +9627,7 @@ do?- 22.5.
+22.5.
Why does make show-var VARNAME=BUILDLINK_PREFIX.
foo
@@ -9602,7 +9643,7 @@ do?- 22.6.
+22.6.
What does
${MASTER_SITE_SOURCEFORGE:=package/}
mean? I @@ -9626,7 +9667,7 @@ do?- 22.7.
+22.7.
@@ -9651,7 +9692,7 @@ do? Which mailing lists are there for package developers?
- 22.8.
+22.8.
@@ -9699,7 +9740,7 @@ do? Where is the pkgsrc documentation?
- 22.9.
+22.9.
@@ -10052,8 +10093,8 @@ details. I have a little time to kill. What shall I do?
- 24.6. The order in which files are loaded
- 25. Regression tests
@@ -10095,8 +10136,8 @@ details.- 24.6. The order in which files are loaded
- @@ -10524,7 +10565,7 @@ CFLAGS+= -Wall
- A.1.1. Makefile
- A.1.2. DESCR
- A.1.3. PLIST
-- A.1.4. Checking a package with pkglint
+- A.1.4. Checking a package with pkglint
- A.2. Steps for building, installing, packaging
@@ -10825,14 +10866,14 @@ Registering depends:.@@ -10923,7 +10964,7 @@ source packages C.6.Table of Contents
-
- C.1.
-bootstrap-pkgsrc
: Bootstrap kits- C.2.
-distfiles
: The distributed source files- C.3.
-iso
: Currently empty- C.4.
-misc
: Miscellaneous things- C.5.
-packages
: Binary packages- C.6.
-reports
: Bulk build reports- C.7.
current
, -pkgsrc-200
: +x
Qy
- C.1. bootstrap-pkgsrc: Bootstrap kits
+- C.2. distfiles: The distributed source files
+- C.3. iso: Currently empty
+- C.4. misc: Miscellaneous things
+- C.5. packages: Binary packages
+- C.6. reports: Bulk build reports
+- C.7. current, +pkgsrc-200xQy: source packages
reports
: Bulk build reportsHere are the reports from bulk builds, for those who want to fix packages that didn't build on some of the platforms. The - structure of subdirectories should look like the one in Section C.5, “
+ structure of subdirectories should look like the one in Section C.5, “packages: Binary packages”.packages
: Binary packages”.-- cgit v1.2.3