Commit graph

273 commits

Author SHA1 Message Date
sevan
863d545b7b Skip trying to make use of a 64bit ABI on Darwin as the system libraries on
Tiger lack support and it doesn't work out too great on Leopard either, though
it's much better than the former release.
2019-12-05 22:19:56 +00:00
triaxx
f91c2c26b7 boostrap: need_awk=yes for Arch Linux
Arch uses GNU Awk 5 that breaks some regexps.
2019-11-05 13:58:06 +00:00
rillig
1474c11ffb bootstrap/bootstrap: prevent --wrkdir from being a symlink
Without this check, bootstrap will fail later when it builds
bootstrap-mk-files in the usual pkgsrc way. There is an additional check
in bsd.pkg.mk which then fails. Therefore, better fail fast to save some
time.
2019-09-13 20:10:35 +00:00
rillig
5605d45593 bootstrap/bootstrap: fix word wrapping in symlink error message
When $2 is expanded, it is longer than 2 characters, which leaded to an
ugly line break.
2019-09-13 19:53:03 +00:00
rillig
cc59fe8b6b bootstrap/bootstrap: fix bootstrap on Solaris 10
Fixes pkg/54349.
2019-07-21 20:14:06 +00:00
sevan
f99d86c003 libarchive no longer has a without-lzmadec option 2019-07-08 19:44:08 +00:00
rillig
23afdbe9b9 bootstrap/bootstrap: allow the working directory to be a symlink
The working directory is only needed for bootstrapping pkgsrc, therefore
there aren't too many packages that can fail.

Loosening this check is needed for macOS, where /etc, /tmp and /var are
symlinks to /private, and using /tmp as the workdir for bootstrapping is
a sane choice.
2019-07-02 16:27:04 +00:00
jperkin
7bb25ca970 bootstrap: Enable sed on Cygwin by default.
Michael Dexter reported that the native Cygwin sed is unable to correctly
build libtool.  Switching to nbsed solved the issue.
2019-06-20 09:11:26 +00:00
rillig
cdd45d3d5c bootstrap: fix endless when checking nonexisting directory
./bootstrap --prefix=/nonexisting had run into an endless loop.
2019-05-07 19:54:46 +00:00
jperkin
fc30af8caa bootstrap: Invert the awk/sed test on Darwin.
This stops us having to continue to add new macOS releases, it appears
that Apple is not going to fix this issue any time soon.
2019-05-03 13:26:34 +00:00
rillig
b25f3a40b4 bootstrap: prevent pkgsrcdir, prefix and wrkdir from being symlinks 2019-05-01 18:29:20 +00:00
adam
eae608d908 libarchive: updated to 3.3.3
libarchive 3.3.3:
Avoid super-linear slowdown on malformed mtree files
Many fixes for building with Visual Studio
NO_OVERWRITE doesn't change existing directory attributes
New support for Zstandard read and write filters
2019-04-10 08:24:03 +00:00
triaxx
68e4a61489 set $CC when clang is detected in bootstrap
The commit in pkgsrc-2018Q4 is due to a mistake.

Sorry :(
2019-02-06 17:38:54 +00:00
sevan
07b8418439 Update the root_group for Minix to match the changes to mk files.
Head up by <leot>
2018-11-15 22:08:30 +00:00
rillig
8279aa9744 bootstrap/bootstrap: detect unknown options and print usage
Running bootstrap with short options (like -q for --quiet) is not
implemented. Therefore, instead of silently ignoring such options, fail
with an appropriate error message.
2018-11-11 19:31:54 +00:00
jperkin
6baaeb9379 bootstrap: Ensure CC is considered for SSP tests. 2018-11-09 13:37:09 +00:00
schmonz
c4f430b744 Optionally detect whether the compiler supports "-fstack-protector-strong".
If not, set _OPSYS_SUPPORTS_SSP=no during bootstrap and in mk.conf.

Do SSP detection on "SunOS", and let mk/platform/SunOS.mk's default
"yes" be overridden in mk.conf.

No change to generated mk.conf on NetBSD 8 or CentOS 6. Fixes bootstrap
on Tribblix.
2018-11-05 19:26:38 +00:00
sevan
f94c4766af Minix 3.4RC6 includes install(1) from NetBSD. 2018-10-30 15:22:53 +00:00
triaxx
2cd43afe22 Fix commit v 1.254
* Put indentation right to follow the existing style
* Correct wrong justification for need of pax on Arch: pax (and not PaX) is
  only provided throw https://aur.archlinux.org/packages/pax/ and get low
  support (currently broken)
2018-10-29 17:41:35 +00:00
triaxx
dfba945451 Arch Linux does not provide pax anymore
https://lists.archlinux.org/pipermail/arch-general/2017-April/043604.html
2018-10-29 15:16:32 +00:00
sevan
0a5a21105a libcompat_minix was removed some years back and minlib does not exist as a
linkable library in 3.4RC6 so don't try to link against these.
2018-10-28 18:41:41 +00:00
sevan
a26e1226e0 Minix/arm currently ships with GCC but the i386 build ships with clang so check
the compiler.
2018-10-28 16:59:00 +00:00
jperkin
dba7653756 bootstrap: Set PKGSRC_KEEP_BIN_PKGS=no during bootstrap.
This avoids errors when running from a read-only pkgsrc checkout as the
resulting packages cannot be written to the default PACKAGES directory.  The
binary packages aren't useful anyway, as they are often built with reduced
configuration options due to the limited bootstrap environment.

Fixes issue reported by Julien Savard and others.
2018-10-17 11:12:46 +00:00
schmonz
2b729d684c On OpenBSD, detect clang and prefer it over gcc. Addresses pkg/53170. 2018-09-09 10:01:26 +00:00
bsiegert
6d4156bb9d On Chrome OS, build nbsed too.
Both sed and awk in the Chrome OS base are permanently put into sandbox
mode, which makes them unsuitable for pkgsrc use. We were already building
nbawk; also add nbsed.
2018-08-12 08:46:41 +00:00
rillig
19b0bb4391 bootstrap: don't output "Hopefully" when bootstrap finishes
The pkgsrc bootstrap has been used long enough to be more
self-confident.
2018-03-07 07:34:07 +00:00
bsiegert
dd09a279d9 Remove a mis-pasted line. Noticed by jperkin@. 2018-02-03 09:53:03 +00:00
bsiegert
1ad3e0227c Use pkgsrc awk on ChromeOS.
Since Chrome 64, /usr/bin/awk has been a version of mawk that is permanently
in restricted mode. Notably, this means it cannot run pipes, which pkgsrc
requires. Use nawk.
2018-02-02 15:53:44 +00:00
sevan
956f0a6f65 Define machine_arch for Cygwin, this resolves an issue where MACHINE_ARCH is set
to blank & configure substituation breaks because host type identifier is
complete.
-pc-cygwin, rather than x86_64-pc-cygwin.
2017-12-09 00:33:36 +00:00
bsiegert
22c455105d Set cwrappers in bootstrap mk.conf too.
When bootstrap is run with --cwrappers=no (or yes, for that matter),
the value is written into mk.conf at the end of the bootstrap but not
used _during_ the bootstrap itself. Thus, when bootstrapping on Linux
with no builtin diffutils, cwrappers ends up indirectly depending on
itself, and there is no way around that. This commit fixes this.
2017-10-22 19:29:20 +00:00
maya
5e144002c5 macOS 10.13 requires nbsed and nbawk
From Eric Brown in PR pkg/52566
2017-09-23 05:43:51 +00:00
maya
dbff74fd54 Add code for finding machine_arch on OSF1
From Naruaki Etomi in PR pkg/52311
2017-06-19 06:30:48 +00:00
khorben
ef481a5e81 Allow bootstrapping without cwrappers
Since cwrappers was enabled by default on some platforms, it became
effectively impossible to bootstrap without cwrappers there.

With this change "--cwrappers" needs to be set to "auto", "yes" or "no"
explicitly when used.

No functional change intended without specifying "--cwrappers" (or with
"auto").

Submitted on tech-pkg@ with no objection.
2017-04-29 21:40:40 +00:00
tron
284d8c8b5c As macOS Sierra still ships with a broken "awk" and "sed" use the
pkgsrc variants as we do under Mac OS X El Capitan.
2017-02-11 16:08:31 +00:00
jperkin
320f4325bb Simplify and optimise previous. 2017-02-01 10:14:09 +00:00
sevan
89bfc37b33 For POWER8 systems running Linux, set $machine_arch to powerpc64le if machine
hardware name is ppc64le.
Automatically default to 64bit ABI for powerpc64le systems.
2017-02-01 09:54:21 +00:00
jperkin
e5ce097b03 Test for existing $prefix and $pkgdbdir and bail out early if they exist,
rather than failing with exotic errors later.
2017-01-10 12:30:00 +00:00
jperkin
0bd8813cb1 Use die() 2017-01-10 12:16:08 +00:00
jperkin
5067dbcc65 Pass --without-lz4 to libarchive bootstrap, avoids issues on Gentoo where
the native lz4 is found.
2017-01-03 17:53:14 +00:00
jperkin
14882b76b8 Change the default PKG_DBDIR to be ${LOCALBASE}/pkgdb. Resolves issues on
other BSDs which already use /var/db/pkg for the native package manager.
2016-11-15 11:19:09 +00:00
jperkin
b29215dde2 When building cwrappers via bootstrap, either directly via --cwrappers or
indirectly via it being pulled in using USE_CWRAPPERS=auto, we need to
ensure that it is not built with -DPKG_PRESERVE as otherwise it interacts
badly with pbulk's pkg_delete test.
2016-11-01 20:44:22 +00:00
joerg
1bcdb13b35 Disable maintainer mode for the right tool. 2016-06-22 11:40:16 +00:00
joerg
ceb082dd63 Disable maintainer mode here as well. 2016-06-22 08:07:11 +00:00
joerg
4daa7a37d3 No need to set USE_DESTDIR now. 2016-04-10 16:18:45 +00:00
jperkin
0fb5b70487 Fix --quiet. The output is far from quiet, but at least it now works. 2016-02-08 14:53:43 +00:00
jperkin
0d727d5415 Fix PowerPC 32-bit case. 2016-02-04 13:45:24 +00:00
jperkin
ac56158090 Attempt to bring sanity to how ABI and MACHINE_ARCH are set.
Previously there were at least 5 different ways MACHINE_ARCH could be set,
some statically and some at run time, and in many cases these settings
differed, leading to issues at pkg_add time where there was conflict
between the setting encoded into the package and that used by pkg_install.

Instead, move to a single source of truth where the correct value based on
the host and the chosen (or default) ABI is determined in the bootstrap
script.  The value can still be overridden in mk.conf if necessary, e.g.
for cross-compiling.

ABI is now set by default and if unset a default is calculated based on
MACHINE_ARCH.  This fixes some OS, e.g. Linux, where the wrong default was
previously chosen.

As a result of the refactoring there is no need for LOWER_ARCH, with
references to it replaced by MACHINE_ARCH.  SPARC_TARGET_ARCH is also
removed.
2016-01-24 16:14:44 +00:00
jperkin
e79c2d4835 Ensure we set MACHINE_ARCH correctly for Darwin x86_64. Fixes recent
bootstrap issues.
2016-01-06 17:59:58 +00:00
joerg
cd5c4d5cd3 Tell libarchive's configure explicitly what make we later want for
recursive invocations.
2015-12-29 21:13:57 +00:00
joerg
63f9c9b7cc Include basic package creation logic in the bootstrap version of
pkg_install. Use this with PKG_COMPRESSION=none to convert all of the
bootstrap to USE_DESTDIR=yes.
2015-12-27 12:36:42 +00:00