Commit graph

330 commits

Author SHA1 Message Date
joerg
c802ed4e34 Provide a better mkdir -p replacement for the early build for platforms
that don't have it.
Explicitly bail out if the work directory exists already.
2009-04-21 14:21:10 +00:00
joerg
d4f61b3a35 Don't install ftp -- it is no longer a dependency of bootstrap
components, so it doesn't need the special threatment.
2009-04-06 14:21:05 +00:00
joerg
abd77ea1ca Remove LIBNBCOMPAT_STYLE for nbsed, it is not used anywhere. 2009-02-05 18:53:03 +00:00
joerg
60f2e49122 Make life easier and pull in bdb and getopt for the initial build during
the bootstrap as well. Fixes the remainining part of PR 40544.
2009-02-04 07:44:58 +00:00
joerg
c8381772dc - retire fnmatch magic
- drop tnftp and pax from bootstrap, they can be installed as normal
dependencies now that pkg_install doesn't need them.
2009-02-02 13:01:29 +00:00
sketch
7ff985072a tyop 2009-01-26 10:02:19 +00:00
sketch
2d44a8903e Add default CC, CXX and CPP to mk.conf for Sun Studio. Ideally none of
these would have to be set here and instead default in mk/compiler but
the legacy share/*.mk stuff won't allow that yet.
2009-01-21 00:07:40 +00:00
adrianp
b0a5bee584 +sendmail 2009-01-19 20:34:33 +00:00
adrianp
3fcbff5331 We need printf too 2009-01-17 21:56:13 +00:00
adrianp
51d191d616 Add a note about additional packages required if bootstrap is in a Solaris
Zone.
2009-01-17 21:32:12 +00:00
sketch
6c43cf49d5 /usr/ucb/install cannot handle a Solaris zone with a read-only /usr but
writeable /usr/pkg, so use install-sh on Solaris instead.
2008-11-19 16:35:23 +00:00
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
reed
f2dfdebea7 Mention that if the default mk.conf doesn't already exist, the example is
copied into place.
2008-06-23 21:12:16 +00:00
reed
b7e90fd789 Remove old note about mk.conf.example file. 2008-06-23 21:11:39 +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
dmcmahill
fa85ed5bcc Document the issue and workaround for missing /lib/libattr.la on some RHEL
systems.
2008-06-18 21:37:31 +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
8bb95ad74e Update notes for using Sun's compiler and 64-bit support. 2008-06-17 11:59:08 +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
23ee2f813b Remove the text which warns against using a case-insensitive file system
on Mac OS X - that hasn't been true for about a year.
2008-05-09 18:39:54 +00:00
agc
f3b1199e8a Remove the text which asserts that pkgsrc cannot be used on
case-insensitive file systems - it hasn't been true for about a year.
2008-05-09 18:37:54 +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
rtr
9c42693d00 note that if you intend to use gcc 4 on Tiger that you need to download
the xcode 2.5 development package. gcc4 that comes with xcode 2.0 builds
broken pkg_install tools.
2008-04-20 02:58:51 +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
tnn
41c4b93e60 Update URL for GCC toolchain kit. 2008-01-14 21:32:29 +00:00
minskim
1f53f80860 Make mkbinarykit work on Mac OS X 10.5. 2007-11-03 17:51:08 +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
tnn
31a9294f62 We can nowadays bootstrap using the native compiler, so note this.
g/c some obsolete text.
2007-10-15 22:32:56 +00:00
martti
bd986edbc7 Remove trailing spaces. 2007-10-09 19:19:08 +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
heinz
218b20f444 Pkgsrc bootstrap installs gzip-base on AIX automatically, thus making it
unnecessary to provide it outside of pkgsrc.

This solves PR pkg/37030 by Matthew Clarke.
2007-10-02 18:29:55 +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
501d7d17a4 Allow mkbinarykit to pass down --compiler. 2007-08-01 14:03:49 +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
tnn
5649a6315a Update URLs for Documentation->docs move. 2007-07-02 19:05:29 +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
tnn
98dc400c93 Improve HP-UX specific documentation 2007-06-30 10:54:37 +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
2452b41ca1 Mac OS X fixes:
* Build Universal iff a suitable SDK for the host system is present.
    From tron.
* Handle the case where where PKG_DBDIR is under PREFIX.
2007-05-27 19:55:58 +00:00
schmonz
1e8e0b5466 Entab. 2007-05-23 19:42:19 +00:00
schmonz
956c789358 Add a --universal switch to enable building Universal binaries on
Mac OS X (off by default).
2007-05-23 19:41:05 +00:00
schmonz
380b35feb5 Remove no-op variable (doubly so, it's incorrectly spelled) for AIX. 2007-05-23 13:54:15 +00:00
schmonz
7c876411d5 Find and replace %DATE% in the Mac .pkg. Oh, and build everything
as Universal binaries.
2007-05-23 05:06:03 +00:00
schmonz
1db7c81ad8 Replace hardcoded date with a token for sed to update. 2007-05-23 05:00:40 +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
schmonz
1da550d9bb On OS X, build a double-clickable Mac package. 2007-05-22 17:48:32 +00:00
schmonz
f87da5554f Add Mac OS X PackageMaker project file for bootstrap tools. Created
with /Developer/Applications/Utilities/PackageMaker.app, then
converted from blob to the equivalent XML with:

$ plutil -convert xml1 macpkg.pmproj

mkbinarykit will run this file through a bit of sed, then use the
result to generate a double-clickable Mac package.
2007-05-22 17:43:33 +00:00
tnn
cb6e83f784 hpux: machine_arch is hppa, not 9000. 2007-04-25 13:24:24 +00:00
tnn
6c1669a945 hpux support 2007-04-21 01:27:44 +00:00
tnn
6eb1d9d995 update OSF1 bootstrap documentation 2007-04-20 13:16:01 +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
ffe432cecd Remove absolutely useless functionality to build source kits. This is
unlikely to work with the changes in bootstrap itself anyway.
2007-04-12 18:44:54 +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
jschauma
6551e7578c don't assume that tar can compress, instead pipe to gzip 2007-01-28 01:40:49 +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
tron
2a80b9c275 Bump suggested disk image size to 1GB. 2007-01-22 13:07:05 +00:00
rillig
b94b66aebd Changed the URL for downloading gcc, since the old one gives a 404. 2007-01-11 03:34:10 +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
rillig
d7aa920f48 Added --unprivileged as an alias for --ignore-user-check, aligning with
the wording in many other places. Also added --quiet to the usage text,
which I had forgotten before.
2006-10-13 19:09:53 +00:00
rillig
56b5590c2f Added the --quiet option.
Made the code simpler by defining a register_package function.
2006-10-02 16:26:54 +00:00
rillig
beba035f61 Typo. 2006-09-18 13:27:15 +00:00
rillig
d84e87b5c4 Fixed a bug that prevented the definition of ${ID} to be written into
the example mk.conf.

The explanation for setting DBG to the empty value is written to the
mk.conf file to inform the uninitiated pkgsrc user about its purpose.
2006-09-18 12:35:44 +00:00
schwarz
aa38134c13 ${X11BASE} can now be set to /usr, so just do so for IRIX and OSF1. No need
for any artificial symlinking any more in bootstrap.
2006-09-10 20:14:43 +00:00
schwarz
ed33e64104 gcc 3.4.6 is known to compile on IRIX 5.3 2006-09-03 14:30:26 +00:00
schwarz
bb77fff061 fix typo 2006-09-02 11:15:49 +00:00
schwarz
b396fa74ce make sure that no default optimizer flags are set via DBG if CFLAGS is
specified
2006-09-02 11:14:48 +00:00
schmonz
f3398823b2 Catch up to the Guide. 2006-08-30 04:51:05 +00:00
schmonz
3e66a7cf3d If creating a disk image on Darwin 7.0 or newer, create a case-sensitive
HFS+ rather than a UFS. The result performs better, among other things.
2006-08-30 04:36:10 +00:00