This port is intended as a helper for lang/rust-bootstrap and
provides the necessary sysroots to cross-compile the bootstraps.
The sysroots provide target architecture base headers, base libraries,
and convenient cc and c++ wrapper scripts. Always for the lowest
supported FreeBSD version.
devel/freebsd-sysroot: update to 14.3-RELEASE
Also update GCC for powerpc to 14.2.0.
Reviewed by: mikael
Differential Revision: https://reviews.freebsd.org/D56754
devel/freebsd-sysroot: force rebuild with pkg 2.7.1
pkg 2.7.1 will make sure at installation this port is not expecting
any shlib to be required to the exception of the private libraries
which are not part of this sysroot, but some of the libraries in this
sysroot are linked to those libprivate so they are listed in the
required field, add NO_SHLIB_REQUIRES_GLOB=libprivate* to get rid of
those.
PR: 293874
devel/freebsd-sysroot: bump to 13.5-RELEASE
The last update for 13-STABLE, next one will be to 14.3-RELEASE.
Reviewed by: mikael
Differential Revision: https://reviews.freebsd.org/D53943
devel/freebsd-sysroot: update to 12.4-RELEASE sysroots
Commited earlier to make sure it lands in 2023Q2 branch.
Differential revision: https://reviews.freebsd.org/D37698
Approved by: mikael
devel/freebsd-sysroot: various updates
1. Remove LOCAL/tobik from MASTER_SITES - it's not necessary anymore.
2. Remove armv6 and powerpc64_elfv1 flavors - both are not really supported
anymore.
3. Sort architectures alphabetically.
4. Default to the native flavor.
5. Bump LLVM triples to the new versions.
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
devel/freebsd-sysroot: Try to fix powerpc64_elfv1 flavor
The freebsd-gcc9 default ABI switch to elfv2 in
bf742277557cd64e9017df3844ca82173529c1ae breaks it:
/usr/local/bin/powerpc64-unknown-freebsd13.0-ld: /tmp//ccNlmC42.o: ABI version 2
is not compatible with ABI version 1 output
/usr/local/bin/powerpc64-unknown-freebsd13.0-ld: failed to merge target
specific data of file /tmp//ccNlmC42.o
devel/freebsd-sysroot: Add -mno-relax to the riscv64 wrapper scripts
$ FREEBSD_SYSROOT_CC=clang13 /usr/local/freebsd-sysroot/riscv64/bin/cc test.c
ld: error: test.c:(.text+0x0): relocation R_RISCV_ALIGN requires unimplemented
linker relaxation; recompile with -mno-relax
On riscv64 base clang defaults to -mno-relax (per D25210). This
patch has not been applied to ports LLVM. In the wrapper scripts
pass -mno-relax explicitly to make it work as expected when
FREEBSD_SYSROOT_CC is set to ports clang.
devel/freebsd-sysroot: disable armv6 and armv7 flavors on big-endian
architectures
Extracting little-endian UFS fails on big-endian systems, since UFS is not
bi-endian:
=> SHA256 Checksum OK for
rust/bootstrap/armv6/12.2-RELEASE/FreeBSD-12.2-RELEASE-arm-armv6-RPI-B.img.xz.
6188032+0 records in
6188032+0 records out
3168272384 bytes transferred in 143.411914 secs (22092114 bytes/sec)
fstab: /etc/fstab:0: No such file or directory
DUMP: Can't open /etc/fstab for dump table information: No such file or
directory
DUMP: Date of this level 0 dump: Mon Oct 18 18:22:26 2021
DUMP: Date of last level 0 dump: the epoch
DUMP: Dumping /wrkdirs/usr/ports/devel/freebsd-sysroot/work-armv6/base.img to
standard output
dump: Cannot find file system superblock: No such file or directory
Tape is not a dump tape
*** Error code 1
devel/freebsd-sysroot: Unbreak build as root
===> Extracting for amd64-freebsd-sysroot-a2021.09.12
=> SHA256 Checksum OK for rust/bootstrap/amd64/12.2-RELEASE/base.txz.
chmod:
/wrkdirs/usr/ports/devel/freebsd-sysroot/work-amd64/stage/usr/local/freebsd-sysroot/amd64/lib/libthr.so.3:
Operation not permitted
chmod:
/wrkdirs/usr/ports/devel/freebsd-sysroot/work-amd64/stage/usr/local/freebsd-sysroot/amd64/lib/libc.so.7:
Operation not permitted
chmod:
/wrkdirs/usr/ports/devel/freebsd-sysroot/work-amd64/stage/usr/local/freebsd-sysroot/amd64/lib/libcrypt.so.5:
Operation not permitted
chmod:
/wrkdirs/usr/ports/devel/freebsd-sysroot/work-amd64/stage/usr/local/freebsd-sysroot/amd64/usr/lib/librt.so.1:
Operation not permitted
devel/freebsd-sysroot: Add port
This port is intended as a helper for lang/rust-bootstrap and
provides the necessary sysroots to cross-compile the bootstraps.
The sysroots provide target architecture base headers, base libraries,
and convenient cc and c++ wrapper scripts. Always for the lowest
supported FreeBSD version.
The sysroot setup from lang/rust-bootstrap can later be swapped out
for this port. It might also be useful for others things.
Compared to lang/rust-bootstrap all sysroots are moved to at least
12.2-RELEASE since 11.4-RELEASE is EOL after 2021-09-30 and Rust
1.56 is scheduled for 2021-10-21.