Commit graph

154 commits

Author SHA1 Message Date
dmcmahill
5fb18e1827 Add some notes with thoughts on what a parallel bulk build system should do. 2003-03-16 13:45:12 +00:00
cjep
895c1a56cf Use CVS_USER for RSYNC options. 2003-03-09 15:46:00 +00:00
dmcmahill
4e23ffd1d9 correct the 'broken due to depends' processing. This change makes the
summary email list correctly the packages which are broken because of
their dependencies.  Problem noted on Huberts most recent bulk build.
2003-02-13 22:51:03 +00:00
kei
2a95fc68a5 honor PKG_SKIP_REASON as well as PKG_FAIL_REASON, like normal build does. 2003-02-08 23:27:00 +00:00
dmcmahill
98812f4595 move bulk/{mkreadme,genreadme.awk} to scripts/ as this is a more suitable
location.  They are not really part of the bulk build stuff.
2003-01-04 21:13:34 +00:00
cjep
3bcfb29272 Introduce a variable called kernel which is either empty or contains the
full pathname to the kernel file (e.g. for NetBSD /netbsd, OpenBSD /bsd, etc)
2002-12-31 17:46:12 +00:00
cjep
7b08a3ada9 Loopback mount /proc on SunOS. shells/tcsh successfully builds in the sandbox
except for one peculiar thing: bmake does not pick up a definition for CC.
Something is missing (for SunOS).
2002-12-31 17:42:32 +00:00
cjep
9c42c5520e Add /usr/ccs, /usr/ucb and /usr/xpg4 for SunOS in sandboxDirs.
Provided that I copy a working gcc and the binaries from the bootstrap kit
into the sandbox manually, this gets me as far as having a pkgsrc
sandbox that can build pkg_tools/pkg_install.
2002-12-31 15:33:56 +00:00
cjep
c892115b8e 1. On SunOS populate /dev in the sandbox with devfsadm and ucblinks.
2. Introduce sandboxDirs, a list of directories that need to be
null mounted. This is different (e.g. on SunOS).
2002-12-31 15:09:01 +00:00
cjep
a00ddfac74 1. Introduce mountflags so that we can tune the mount command for Solaris
(et al.).
2. Use the loopback filesystem on Solaris.
2002-12-31 13:52:50 +00:00
cjep
bdb0556788 Introduce idprog so that Solaris survives the root test. 2002-12-31 13:41:16 +00:00
cjep
6259f8a7b2 If the pkg tools are not update, upgrade them. 2002-12-31 12:42:37 +00:00
schmonz
a2849a9dca Replace IGNORE into PKG_FAIL_REASON and PKG_SKIP_REASON, so pkgsrc
can stop builds when a dependency is broken, yet continue builds
when a dependency is merely skipped (usually because it duplicates
functionality in the base system). Thus IGNORE_FAIL, the
oft-misunderstood and naught-documented option, goes away.

This addresses many people's complaints on tech-pkg@ and other
lists, as well as PR pkg/18157.
2002-12-07 02:37:56 +00:00
agc
d9242dfee4 Apply patches from Sergey Svishchev in PR 19221 to get the correct value
for localpatches and to make that directory available in the sandbox.
2002-12-03 18:49:39 +00:00
dmcmahill
d77e699759 add some more error checking. In particular if the bulk-cache creation
fails, then abort the build.
2002-12-01 05:53:43 +00:00
agc
7f9686ba08 Fixes from Robert Elz to:
+ umount filesystems in the reverse order from that which they were mounted

+ null-mount /lib and /libexec in a way more consistent with the original
2002-11-20 16:23:09 +00:00
dmcmahill
9c4f6cfe7f - When listing the current version of the package, don't create a hyperlink
back to the current page, just list it as regular text.

- Put each dependency hyperlink on a separate line in the README.html file.

These were both noted by Thomas Klausner in a private email.
2002-11-16 02:15:15 +00:00
dmcmahill
35b7efca9b - when creating a new database, make sure that the old one is gone first to
avoid simply appending to it.

- add some additional error checks when using the -r/--restart options to
make sure that the database exists and give a useful error message if it
doesn't
2002-11-14 14:05:46 +00:00
dmcmahill
24b3feedec add a 'SINGLEPKG' variable which can be set on the command line to the
directory of a single package (e.g. graphics/gimp) for which a README.html
is to be generated.  This provides the required hook to be able to use this
script to generate a README.html file for a single package as well as
for all packages.
2002-11-14 07:10:05 +00:00
dmcmahill
0204d6ca73 move the pruning of readme's to the very end of the job. 2002-11-13 15:12:17 +00:00
dmcmahill
218cd311ec - add some more error checking. In particular, if any of the template files
don't exist, exit with a fatal error and don't try and make empty README.html
  files.

- fix a bug which caused some duplication in category README.html files.
  Problem noted on netbsd-help@ by Nicolas Saurbier ( Nicolas dot Saurbier at biodata dot de)
2002-11-13 15:08:29 +00:00
dmcmahill
1e48a03c4b add a -S,--save-database option which doesn't delete the database files
after the run.  Useful for debugging since this preserves the intermediate
result of the most time consuming portion of the script.
2002-11-13 11:12:04 +00:00
dmcmahill
429e45ec44 only update the README-IPv6.html file if it has changed 2002-11-13 10:14:04 +00:00
dmcmahill
6415f887e0 - replace & with &amp; _before_ replacing < with &lt; and > with &gt; when
escaping html output.

- properly escape the URL in the link and the displayed URL in the vulnerability
  list to handle the '&' character in URL's.
2002-11-13 01:05:03 +00:00
dmcmahill
afa9aa5dd4 start warning output on a new line to make it easier to read 2002-11-13 00:59:35 +00:00
dmcmahill
54a10c8ebb - added progress meter when extracting database. Useful for those of us
with slow machines.

- fix minor bug which left some temp files laying around in /tmp/mkreadme.
2002-11-12 13:45:36 +00:00
dmcmahill
1629f82b0b add timestamp to output messages 2002-11-12 02:17:58 +00:00
dmcmahill
3d2524d328 add scripts for generating the README.html files in a much more efficient
way than the previous recursive make approach.  The 'mkreadme' script is
the top level script.  'mkreadme -h' or 'mkreadme --help' for complete
documentation on its use.  Generates README.html files more than two orders
of magnitude faster than the recursive make approach by only calling make(1)
once per pkg.
2002-11-11 21:51:04 +00:00
seb
ca66a9af3a Take care of -current's /lib and /libexec.
Noted by Julio Merino <jmmv at menta dot net> in PR pkg/18968, I had this
in my trees for weeks and I forgot about it...
2002-11-08 10:26:51 +00:00
hubertf
a536eabe59 Actually pass CVS_FLAGS propperly to the su'd "cvs update" 2002-11-03 22:59:21 +00:00
dmcmahill
b89364002b fix typo in comment and an error in the usage output (position of
bar and libbar were swapped).
2002-10-06 20:15:05 +00:00
jlam
b119dbc8ef Merge pkgsrc/mk from the buildlink2 branch back into the main trunk. 2002-08-22 08:21:26 +00:00
hubertf
7508b153db Add CVS_FLAGS that will be passed to 'cvs update' before builds.
Allows specifying a branch ("-rnetbsd-1-6") or the trunk ("-A") easily
from the build.conf file.
2002-08-20 02:17:56 +00:00
seb
ae89e1a1e1 Actually Alistair was right: $packages and $distfiles also need to be
$mkdirprog'ed, it helps on a fresh/virgin/cleaned up bulk building system.
2002-08-15 10:42:19 +00:00
agc
a4d0d788d6 Make sure that /var/games exists in the sandbox, and has the correct
permissions.
2002-08-12 16:33:11 +00:00
seb
9ddc0ee2a9 New feature: this script now create $sandbox/sandbox, a shell script
to ease the use of the sandbox.

$sandbox/sandbox umount
  Umount the null mounts from the sandbox
$sandbox/sandbox mount
  Mount the null mounts required by the sandbox (useful across reboots, ...).
$sandbox/sandbox whatever
  Runs the command passed as arguments, chrooted into the sandbox.
  Typical usage would be `$sandbox/sandbox /my/favourite/shell'.
$sandbox/sandbox
  Same as `$sandbox/sandbox /bin/sh'

Approved by agc.
2002-08-12 15:19:49 +00:00
seb
5670256c19 - Remove $sandbox/etc/localtime before copying /usr/share/zoneinfo/GMT over.
This prevent surprise when /etc/localtime -previously copied over in the
  sandbox by pax/tar- is a symlink to /usr/share/zoneinfo/whatever.
- Improve somewhat some messages.
- Make sure $sandbox/$packages and $sandbox/$distfiles are created instead of
  $packages and $distfiles.
2002-08-12 14:47:07 +00:00
agc
e9822c16a7 In the build script, set BATCH=1 and DEPENDS_TARGET=bulk-install in the
environment, and pass them down to the bulk build. This means that the
/etc/mk.conf (or $MAKECONF) can be shared between ordinary builds and
bulk builds.
2002-08-12 14:20:59 +00:00
agc
335e691b7a Don't null-mount all of /var - just do /var/mail for just now, so that
the packages which expect a sane mail delivery set up can configure and
build within the sandbox.
2002-08-12 10:12:09 +00:00
agc
c57f1d48cf Also null-mount /var from inside the sandbox 2002-08-12 09:55:35 +00:00
agc
7832e64d14 Don't assume that this is a shell script - instead, realise that it's
written in perl, and call the environment variable "BMAKE" accordingly
(it's set to the name of the NetBSD make(1) program).
2002-08-12 08:46:54 +00:00
agc
7d725beb1b Correct the position of a closing parenthesis in a comment 2002-08-07 12:14:12 +00:00
agc
742d20ca58 A small shell script to set up a sandbox (usually for a pkgsrc bulk
build), using null mounts.
2002-08-07 12:03:00 +00:00
agc
9a4f22c0ba Make these scripts useful on platforms other than NetBSD by using a BMAKE
environment variable, which contains the name of the make(1) program to
invoke - suggestion by Julien Letessier some time ago, the confusion mine,
since I thought he was referring to something else completely.

Don't rely on there being a POSIX tr(1) in the path by default - test
explicitly for both "yes" and "YES".

Set the default for PRUNEDISTFILES to "no", since we can't assume that
the user wants us to delete something which he may have been keeping
around, and there are other ways of accomplishing this aim (lintpkgsrc
-o, for example).

Clean up some superfluous white space at the end of lines.
2002-08-07 10:56:11 +00:00
agc
b1e763d5bc Add a missing "-o" from the compound test in the if statement 2002-08-06 18:14:49 +00:00
mrauch
740ad47954 Make bulk builds aware of packages with INTERACTIVE_STAGE and mark them as
"not packaged" instead of "broken".
2002-07-21 11:53:18 +00:00
dmcmahill
187edbfd07 don't hard code the start time stamp file as .start.${arch} but allow
OBJMACHINE and OBJHOSTNAME to work.  Also don't hardcode /usr/pkg and
/usr/X11R6 for LOCALBASE and X11BASE.  Finally, fix a few typos in messages
while here.
2002-06-29 03:33:34 +00:00
agc
d770bff3a2 fix typo 2002-06-28 08:46:38 +00:00
agc
33334d61db Don't hardcode the value /var/db/pkg - this may not be the desired value
of PKG_DBDIR. Instead, get the value using "make show-var".
Pass this value down through the environment to pkg_info and pkg_delete
2002-06-28 07:54:36 +00:00
hubertf
507d240872 Allow restarting a chrooted build:
sh mk/bulk/do-chroot-build restart
2002-03-16 10:00:17 +00:00