Commit graph

549 commits

Author SHA1 Message Date
nia
0c533fc369 README.Solaris: be better at prioritizing information, don't
talk about "Sun gcc" any more, NetBSD capitalization police
2022-04-05 06:44:21 +00:00
gdt
0191df16b8 bootstrap/README.Solaris: prune binutils comment
as not supported by other evidence, and explain that illumos-* comes
with gcc.
2022-04-04 12:55:03 +00:00
gdt
0f935043fc bootstrap: Rototill README.Solaris
Fix an earlier error, and separate/organize the two compiler sections.
2022-04-04 12:35:43 +00:00
gutteridge
737383487a README.Solaris: also mention OmniOS by name 2022-04-04 01:22:09 +00:00
gdt
d809e9bb36 README.Solaris: Modernize slightly and add subtypes
Add text from Cygnus X-1 via pkgsrc-users@, add an overview, and
attempt to hoist details to the right level.

This needs some editing by people who know more about Solaris than I
do.  A lot seems off, like gcc 2.95 being ok, and I would expect one
needs a C++ compiler too.
2022-04-04 00:26:31 +00:00
gdt
5c22b743f2 bootstrap: Improve README.Minix3
From Cygnus X-1 via pkgsrc-users.
2022-04-04 00:00:52 +00:00
tnn
ac50d2bdfd README.OSF1: update documentation
- describe what, specifically, is broken (point to libarchive upstream)
- update examples
2022-04-03 22:28:13 +00:00
tnn
4f76fd5241 bootstrap: set CONFIG_SHELL when configuring initial libarchive
Otherwise we might end up with defunct libtool.
2022-04-03 20:46:11 +00:00
tnn
adfebc1012 bootstrap: OSF1: set shprog to /usr/bin/ksh for the early stuff
sh(1) is too broken to run mksh's Build.sh
2022-04-03 19:20:59 +00:00
gdt
e851fe037b bootstrap: Update platforms section
Minix3 has a user.  Combine "almost no users" and "no users"; the
point is really the last date we have a report of how it works, and
that only takes one person.

Adjust/shorten language.
2022-04-03 13:10:18 +00:00
gdt
267a58564a bootstrap: Update Minix3
From "Cygnus X-1" via pkgsrc-users
2022-04-03 13:01:34 +00:00
gdt
f8b97ff054 bootstrap: Separate UnixWare and OpenServer
Add a skeletal UnixWare README.  Undo my previous confusion.
2022-04-01 17:19:28 +00:00
gdt
bde10a133b bootstrap: Note that OpenServer7 is known to work 2022-04-01 13:45:32 +00:00
gdt
41c487201e bootstrap: Tweak README platform list
A number of README names have caught up with platform name changes;
adjust them.

Demote OSF1 to "believe to have no users", since people say it doesn't
work and nobody is saying otherwise.
2022-03-31 22:36:18 +00:00
gdt
226d4c5734 bootstrap: Enhance README
Put a *, for known not to work, by OSF1.
2022-03-31 22:09:43 +00:00
gdt
033eea848c bootstrap: Say that OSF1 is believed to be broken. 2022-03-31 21:36:24 +00:00
gutteridge
7bba5763a1 README.NetBSD: slightly rephrase note about make(1)
On 5.99.11, make(1) is missing a feature now expected by pkgsrc's mk
framework. (I don't have anything 6.x to test with.)
2022-02-25 23:03:10 +00:00
schmonz
4f0d2fcefd p.spek@tyil.nl had specifically said to _single_-quote the output of
extra_libarchive_depends(). Oops. Now that the problem has bitten me (on
Manjaro ARM), I can attest that single-quoting fixes it. Sorry, tyil,
and thanks again!
2022-02-08 19:18:07 +00:00
nia
2a90e88bb5 bootstrap: On SCO System V variants, we need either mksh or bash.
from Boyd Lynn Gerber.
2021-12-28 10:13:01 +00:00
schmonz
7a140f8b53 extra_libarchive_depends() apparently hasn't given multiple values for
Libs.private before, but it does on Gentoo ("-lmd -lb2"), so failing to
double-quote the output breaks bootstrap there. Adding the quotes causes
no regressions bootstrapping macOS Monterey or Ubuntu 21.10. Problem
report and solution from p.spek@tyil.nl.
2021-12-27 14:16:30 +00:00
jperkin
cc0852e192 bootstrap: Remove unused variable. 2021-11-29 18:32:51 +00:00
schmonz
5984d8f79a Solaris 11 bootstraps fine. 2021-11-23 09:10:03 +00:00
nia
7c09ccdacd bootstrap: UnixWare has some amount of active use 2021-11-15 12:27:47 +00:00
nia
d30868861b mk/bootstrap: Fix bits for SCO UnixWare 7.
Derived from a patch from Boyd Lynn Gerber.
2021-11-12 20:29:05 +00:00
nia
723b455793 bootstrap: Tested on FreeBSD 12 and 13 without problems. 2021-10-31 09:26:49 +00:00
schmonz
3daac7c211 Spaces to tabs (NFCI). 2021-07-13 12:43:58 +00:00
jperkin
4f348636a2 bootstrap: Add support for --machine-arch override.
This should not be used under normal circumstances, however on arm64 macOS it
is currently impossible to execute native arm64 binaries inside a chroot, and
so the chroot must run in x86_64 mode via Rosetta.  This causes uname/arch/etc
to all report that the system is x86, and so the only way to force MACHINE_ARCH
to be set correctly to "aarch64" is using this argument.
2021-07-10 15:49:21 +00:00
khorben
727ba708e4 Introduce a new SYSCONFBASE variable (defaults to /etc)
This is part 1 to support additional platforms with the RC scripts provided in
pkgsrc, in privileged as well as in unprivileged mode, including on NetBSD
(with part 2 in pkgtools/rc.subr).

This variable is meant to point to the configuration directory of the base
system (as opposed to pkgsrc's own prefix) when it should be used by pkgsrc in
special cases (e.g. installing RC scripts), or to point to the existing
PKG_SYSCONFBASE directory otherwise (e.g. for any unprivileged bootstrap).
This teaches pkgsrc where the RC scripts should be installed, and more
importantly, where the local copy of rc.subr can be expected. Part 3 will
progressively update each and every RC script to substitute this path as
expected.

No functional changes are intended in privileged mode without a bootstrap. The
only variable affected by this change directly is RCD_SCRIPTS_DIR, which
currently remains with the same default of /etc/rc.d, and can be overridden as
before.

When bootstrapping, SYSCONFBASE also remains with the existing default when no
prefix is set or is "/usr/pkg" or "/usr"; it is set to $prefix/etc otherwise. It
can be specified specifically with --sysconfbase if necessary.

Existing installations or bootstraps are not affected, as this change needs
setting SYSCONFBASE in the corresponding $sysconfdir/mk.conf to have an impact.

Tested in privileged and unprivileged modes on NetBSD/amd64, and unprivileged
mode on Darwin/amd64; submitted for review on tech-pkg@.
2021-05-30 23:41:05 +00:00
maya
a3734b24bd Don't reject dash as /bin/sh.
From a discussion with jperkin, who tested this on bulk builds, the
remaining issues with non-BSD echo are in legacy wrappers.

Keep the workaround to use bash on Debian GNU kFreeBSD because it still
uses legacy wrappers and add a comment that that's why it's there.

Now naive usage of bootstrap on many popular Linux distros doesn't require
setting an environment variable.
2021-04-28 11:14:51 +00:00
ryoon
db93e5dcb0 bootstrap: Add MidnightBSD support to bootstrap shell script 2021-03-15 16:22:06 +00:00
cjep
0a2c636f19 In the process of looking at PR#55952, we discovered something that
can catch users out with the two --prefer options. Make the parsing
of these better by checking their argument exists and is not another
command line option.

Addresses PR#55952. Reviewed with jperkin@
2021-02-15 12:56:53 +00:00
cjep
8f82433be3 format 2021-02-12 13:00:48 +00:00
cjep
61161f8a47 Add libncurses5 to the required libraries.
Took me a little while to find this. The dev package can be installed
without the actual library.
2021-02-12 13:00:05 +00:00
cjep
e1aa0fc396 The bootstrap works on OpenBSD 6.9 i386, sparc64 & amd64 (at least 6.9beta) 2021-02-10 21:47:15 +00:00
cjep
3a1578226a add a note about bmake vs make in case it is not obvious to the end user 2021-02-10 21:44:44 +00:00
gdt
79b2e4cae6 bootstrap/README.macOS: Remediate my version confusion
(Apparently not only was major bumped from 10.x to 11, but it's 11, not
11.0 and the next release will be 12.)
2021-02-10 17:30:20 +00:00
gdt
9d7fe38d58 bootstrap/README.macOS
Consolidate some old version info.

Declare that PRs about 10.12 and earlier that do not contain fixes may
be closed without fixing.  (At this point there is still a lot of
useful hardware that runs 10.13.  Systems too old to run 10.13 are now
more or less heading towards retrocomputing, and those too old to run
10.11 have arrived.)  If you don't like this and would like to
actually work on such PRs, feel free to volunteer to have <= 10.12 PRs
assigned to you.
2021-02-10 14:55:36 +00:00
cjep
da3c27a1ed +6.8 i386 2021-02-10 14:23:47 +00:00
cjep
3244a439ad also tested on OpenBSD/sparc64 2021-02-10 09:00:57 +00:00
cjep
90270ef680 freshen this and include OpenBSD 6.8 testing 2021-02-09 19:19:46 +00:00
cjep
6115020ee8 verified works on Big Sur (at least Intel) so bump to 11. Also fix typo. 2021-02-09 12:31:58 +00:00
cjep
4997f9f508 Some updates to versions. Still needs some lines on M1 silicon 2021-02-09 12:05:32 +00:00
js
aca1caebd8 bootstrap: Prefer native on Elbrus 2000
A lot of patches for Elbrus 2000 have not been upstreamed, which results
in important packages such as openssl failing to build, while the native
one is quite up-to-date and working.

Tested building devel/fossil with this, which results in a fully working
binary.
2020-12-05 16:50:52 +00:00
maya
aa26c432dd Bootstrap: Fix bootstrap on FreeBSD 12.1, likely broken by an issue in lld.
It looks like lld doesn't want to statically link a libarchive without
resolving all of the symbols, even if only a few symbols are used.

In order to resolve all of the symbols, we need to also link with -lmd.
One generic way to do so is inspect Libs.private in the pkgconfig file.

While pkgsrc is likely not at fault here, having a dysfunctional bootstrap
is bad. We should check again in the future to see if this can be removed.

Actually fixes PR pkg/55400.
2020-10-28 16:52:43 +00:00
jperkin
0ce8ac1477 bootstrap: Fix numerical calculation on Big Sur. 2020-10-07 10:44:14 +00:00
js
d224d1e96f Fix bootstrap on QNX
Tested with QNX 6.5.0SP1.

Two things were needed:

 * bootstrap needs to export ACCEPT_INFERIOR_RM_PROGRAM=yes on QNX,
   because libarchive checks for "rm -f" (with no arguments) working in
   configure. It doesn't seem to actually use it during the build, so
   this works.
 * QNX.sys.mk sets LORDER to echo, but sets TSORT to tsort -q. This
   results in tsort complaining about having an uneven number of inputs,
   since of course there are no dependency pairs.
   Hence, if LORDER is overridden to echo, TSORT also needs to be
   overridden to cat. Interestingly, Linux.sys.mk also sets LORDER=echo
   and TSORT=tsort -q, so it's surprising this isn't broken as well?
2020-08-29 20:11:21 +00:00
bacon
ec632c0843 bootstrap: Default to PREFER_PKGSRC=yes on Linux
Avoids problems caused by linking against aging enterprise Linux libraries or
libraries from Linux package managers that undergo ABI changes outside pkgsrc
control.

Add --prefer-native flag to bootstrap script so all PREFER_* values can be
set during bootstrap. This resolves issues where bootstrap links packages
against native libraries and pkgsrc equivalents are installed afterward due
to changes to PREFER_NATIVE after bootstrap.

Automatically document danger of changing PREFER_PKGSRC or PREFER_NATIVE after
boostrap in mk.conf
2020-08-20 13:04:01 +00:00
jperkin
0b9fe9575a bootstrap: No need to find packagemaker any longer. 2020-08-14 08:45:30 +00:00
schmonz
daa890de69 Rename README.MacOSX to README.macOS. 2020-08-14 07:35:26 +00:00
schmonz
b163587fb9 --ignore-case-check (which had been useful back when pkgsrc needed to be
checked out on a case-sensitive file system) was removed in 2011.
2020-08-14 07:34:14 +00:00