Commit graph

136 commits

Author SHA1 Message Date
joerg
8d0d604bc5 bmake is supposed to be standalone and we don't document a requirement
of make, so build libnbcompat after bmake using bmake.
2008-10-14 22:50:54 +00:00
joerg
6e80035f26 Use /usr/xpg4/bin/id on Solaris to get user id and group id.
Reported by David H. Gutter and based on the suggestion from salo
in PR 39235.
2008-07-31 13:42:57 +00:00
dbj
079359e425 previous commit also accidentally added default fetch_cmd=/usr/bin/ftp on darwin. 2008-07-20 23:57:36 +00:00
dbj
ddd4c9aaf3 support NBPAX_PROGRAM_PREFIX variable in TOOLS_PLATFORM.{pax,tar}
leave default value unset to preserve existing behavior.
you can now set NBPAX_PROGRAM_PREFIX=nb (for example) in your mk.conf
to have the bootstrap install and use nbpax/nbtar/nbcpio which don't conflict
with system provided tools.
2008-07-20 23:54:48 +00:00
joerg
da712f263e Add a marker for bootstrap packages to allow special cases them during
bulk builds.
2008-06-19 18:36:51 +00:00
sketch
045e6bc85b Bail out if passed --abi on a platform for which we do special-case handling. 2008-06-17 12:11:59 +00:00
sketch
8bb177563e Save SUNWSPROBASE if provided. 2008-06-17 11:50:45 +00:00
sketch
7465f6ce76 Add --abi to set $ABI correctly, avoids the need for CFLAGS hacks. 2008-06-17 11:38:52 +00:00
sketch
eeaed4ba57 If $need_ksh, set TOOLS_PLATFORM.ksh too, else packages with USE_TOOLS+=ksh
overwrite the installed dependancy, breaking bulk builds.
2008-06-11 12:47:07 +00:00
tnn
d510667ede Build install-sh a bit earlier, so it's available before pdksh. 2008-05-24 13:38:33 +00:00
tnn
2be145ec3b Set need_ksh=yes for SunOS as well. Asked by joerg@ 2008-05-23 18:06:44 +00:00
tnn
499593f589 - Update bootstrap stuff to build shells/pdksh if need_ksh=yes
- set need_ksh=yes for OSF1
- rebootstrap the early bmake after having built ksh, so it's more
  likely to have a working shell for later use.
2008-05-23 17:49:52 +00:00
agc
8dd14e552e It's been possible to use case-insensitive file systems for Mac OS X for
about a year now. In celebration of this, remove the check and error message
when ensuring a case- sensitive filesystem on Mac OS X.

Keep the check for Interix.
2008-05-09 18:35:35 +00:00
minskim
6952c62e96 Set packagemaker so that the .pkg is built on Darwin.
This functionality disappeared when mkbinarykit was merged into bootstrap.
Still need to revive support for universal binary.
2008-04-30 03:14:55 +00:00
minskim
a82566f9af Make the --binary-macpkg option compatible with the other binary-kit options. 2008-04-29 22:03:19 +00:00
jlam
84fa8ca684 + Remove pkgtools/pax and pkgtools/tnftp as they are no longer different
from archivers/pax and net/tnftp, respectively.  In the past, the
  pkgtools version of these packages installed into ${PKG_TOOLS_BIN},
  but this was changed in:

	pkgtools/pax/Makefile:1.15
	pkgtools/tnftp/Makefile:1.3

+ Get rid of archivers/pax/Makefile.common and net/tnftp/Makefile.common
  by merging them into their respective Makefiles.  The Makefile.common
  files existed solely for inclusion by the pkgtools versions of these
  packages, but with the removal of those packages, these files are
  now unnecessary.

+ Add full DESTDIR support to archivers/pax and net/tnftp.

+ Modify the bootstrap to build archivers/pax and net/tnftp instead of
  the pkgtools versions of these packages.
2008-03-06 04:45:58 +00:00
tron
5acb5cbde8 Try to fix PR pkg/26143 with caution:
- Set "CC" to "gcc -isystem /usr/include" during bootstrap.
- Add "-isystem /usr/include" to the Darwin specific "CPPFLAGS".
2008-01-30 22:57:31 +00:00
joerg
e5ec1e7ace Change default pathes to more sane values:
- /var as varbase is only used for privileged builds without prefix
  or when prefix is explicitly set to /usr/pkg
- if prefix is set to a non-standard value, derive varbase from it
- derive pkgdbdir from varbase

Based on the discussion in PR 37796 and with jlam@.
2008-01-24 14:48:02 +00:00
joerg
1d688ef264 Add --binary-kit, --gzip-binary-kit and --binary-macpkg to bootstrap
and retire mkbinarkit. The options take the desired output name as
argument.
2008-01-23 21:12:41 +00:00
rillig
cb7ca2f08d Make sure that the files found by check_prog are really regular files
and nothing else. This prevents bootstrap from exiting just because
there is a subdirectory named "awk" (or another tool) in one of the PATH
directories.

Fixes PR 37806.
2008-01-20 19:55:29 +00:00
rillig
d2ef0e68c4 Renamed the ignoreusercheck variable to unprivileged, since it does more
than just checking whether the bootstrap is run by root. No other
visible changes.
2007-11-01 23:18:54 +00:00
rillig
30bae8ae69 Added some very basic sanity checks for the arguments to bootstrap. This
code should have been here since the very beginning of bootstrap.
Additionally, the paths are checked that they only contain characters
from the "Portable Filename Character Set" (IEEE 2003.1, definition 3.276).

Motivated by http://mail-index.netbsd.org/pkgsrc-users/2007/10/17/0000.html
2007-10-17 02:45:42 +00:00
rillig
b1ef808a1a Fixed a typo in the bootstrap program. Now it is possible to specify an
alternative fetch_cmd.

Patch provided by Pierre Bourgin in PR 37081.
2007-10-09 01:10:19 +00:00
rillig
711951595a Mention --unprivileged, since pkgsrc runs (almost) great as unprivileged
user.
2007-09-29 15:50:16 +00:00
rillig
470ab0a92f Removed the warning about pkg_add or pkg_delete "not running as root"
completely. It only made the code more bloated, and a user trying to add
or delete packages would get lots of "Permission denied" warnings
anyway.
2007-09-08 09:58:14 +00:00
rillig
716ddb1f45 In unprivileged builds, the user running pkg_add and pkg_delete is
almost always an unprivileged user. So there's no point in printing a
warning in that case.
2007-09-07 15:45:14 +00:00
joerg
b3671133c5 Add QNX configuration. From Sean Boudreau. 2007-09-06 20:13:44 +00:00
joerg
181bacec05 Try to force a proper shell on Solaris by extending bmake to
expect full path names. Use the default locations in /bin unless
overriden explicitly. Bump revision of bmake.

On Solaris, use /usr/xpg4/bin/sh if it exists.
2007-09-06 19:23:25 +00:00
schwarz
7b0b779d9f do not add preset CFLAGS, CPPFLAGS or LDFLAGS to BOOTSTRAP_MKCONF since on
bootstrap time these variables are already set as shell variables. As a
result, they were doubled for bootstrap compiling.
An alternative solution to that issue would be to explicitly empty those
shell variables once they have been added to BOOTSTRAP_MKCONF, but that
approach would use more lines of shell code :-)
2007-08-18 11:01:28 +00:00
rillig
97cad8f63b Replaced the hard-coded /bin/bash with an environment variable. 2007-08-14 00:26:58 +00:00
rillig
66cc628334 s/POSIX/BSD/ for echo(1). 2007-08-13 22:48:59 +00:00
tnn
7b838717d9 Interix: Install xargs script in $wrkdir, not $prefix, for bootstrapping. 2007-08-05 16:12:15 +00:00
joerg
86c5c8668d In preparation for the libarchivification of pkg_create, pass down
--enable-bootstrap to pkg_install's configure for the first build phase.
2007-08-03 11:54:31 +00:00
joerg
929fd21498 Only write FETCH_CMD to mk.conf, if it is set already. 2007-07-31 14:31:27 +00:00
joerg
d9dc032976 Add --mk-fragment option to bootstrap. This allows including a fragment
after the automatic options and makes it simpler to rebuild the bootstrap
automatically from pbulk.
2007-07-29 17:09:47 +00:00
joerg
07eedea6c2 Split bootstrap into two phases:
- phase one builds the essential tools in the bare minimal version
  needed by the infrastructure to run "make install".
- phase two runs "make install" for all the bootstrap packages.

Set WRKOBJDIR for the second phase, we never want to leave garbage
around.

This increases the time for running bootstrap, but gives more
deterministic results. It also means that e.g. configuration files
in pkg_install can be handled normally. It is a prerequirement to
sanely allow pkg_install some more extended work like building
its own libarchive without having to worry too much about limitations
on some platforms.

This fixes the expansion of @gzcat@ in the download-vulnerability-list
script.

Tested by tnn@ on Interix and myself on DragonFly.
2007-07-27 10:43:24 +00:00
joerg
370e455e33 mtree is no longer needed or used by the pkgsrc infrastructure. 2007-07-02 14:59:19 +00:00
tnn
0234d40e0a xargs(1) on Interix is broken. It executes the utility on the command line
even if standard input is the empty string. Install a wrapper script
bundled with pkgtools/bootstrap-extras to deal with this. This is an
attempt at a permanent workaround for the problem described in PR pkg/25777
which has regressed since it was initially fixed.

We can now bootstrap again on Interix 3.5.
2007-07-01 23:27:43 +00:00
schmonz
7235907039 We no longer need to check $pkgsrcdir for case-sensitivity.
XXX Is it time we stopped checking $prefix, too? IMO, yes.
2007-05-30 01:42:59 +00:00
schmonz
bef8568825 tnftp means to link with its own libedit, but on OS X the linker's
search order means that the system libedit gets found first. This
hasn't been much of a problem until now, but the system libedit
lacks support for Apple's 64-bit architectures, which breaks the
Universal build. Therefore, force linking with tnftp's internal
libedit by replacing "-ledit" in ${LIBS} with "../libedit/libedit.a".
Workaround suggested by tls.
2007-05-23 04:20:36 +00:00
tnn
cb6e83f784 hpux: machine_arch is hppa, not 9000. 2007-04-25 13:24:24 +00:00
tnn
146da1286c Teach pkgsrc about HP-UX. 2007-04-14 14:17:49 +00:00
joerg
2dfcdbab0c Change bootstrap to register bmake as package. Change bmake to
use inplace libnbcompat like the direct build from bootstrap
does. Fix a long-standing bug in mkbinarykit. The default work
directory was "work" (relative) and therefore MAKECONF=work/...
was passed down, effectively making it a nop. That resulted in
digest being incorrectly installed during the bootstrap.

Tested on DragonFly by myself and on OSF by tnn@, discussed with jlam@
2007-04-12 20:31:04 +00:00
joerg
2a722b785e When calling bootstrap-register from the bootstrap script for the
various packages, pass down PKG_PRESERVE. Remove the default setting of
PKG_PRESERVE, it makes perfect sense to install e.g. pkgtools/mtree
and be able to remove it again, if it is not an essientiel tool.

OK jlam@
2007-04-12 14:36:40 +00:00
wiz
f93aa15197 Remove references to pkgmanpages package and packages(7). Noted by reed@. 2007-03-02 16:48:48 +00:00
rillig
860cfa817b In the bootstrap script, MAKECONF must be overridden, so that the
settings from there don't influence the bootstrap process.

Fixes PR 33188.
2007-02-22 23:29:02 +00:00
rillig
262f062106 Added a fix for the case when /bin/sh is a (symlink to) dash. 2007-01-26 15:48:42 +00:00
rillig
416baedaae The example mk.conf is installed automatically if there isn't already a
mk.conf. This makes using pkgsrc a bit easier.
2007-01-26 07:57:04 +00:00
tv
f91b394772 Add lang/nawk and sysutils/install-sh to the "don't blow away" package
list for bulk builds.  (Revert previous on bootstrap; the PKG_PRESERVE
hack didn't work as expected.)
2006-11-06 21:08:42 +00:00
tv
e03538189e Set PKG_PRESERVE on install-sh, nbsed, nawk if installed for the current
platform as a bootstrap tool.  These cannot be nuked as part of the bulk
build clean cycles, or else parts of the .mk infrastructure won't work.
2006-11-06 21:01:42 +00:00