PR: 286539
MFC after: 3 days
Approved by: re (cperciva)
(cherry picked from commit 981af1192cfa5ecd7bee9fe47386ed9d45397828)
(cherry picked from commit 48881a2680ab42ea1b06d1c9685df9d295991d16)
PR: 286539
MFC after: 3 days
Approved by: re (cperciva)
(cherry picked from commit 75d173a84836d14b12a0f747ffed7d37766dd274)
(cherry picked from commit 02dde7c43fe76a5dcdc170de1c2740a31629e106)
In preparation for supporting 64-bit machines with 32-bit UEFI firmware,
add a build option for compiling the ia32 loader. Currently unused.
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1098
(cherry picked from commit fe3f792f9a2982678138e239f5e8d66e8ee71aeb)
Firmware files are available in the comms/rtlbt-firmware port.
Sponsored by: Future Crew LLC
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D46739
(cherry picked from commit 5036d9652a5701d00e9e40ea942c278e9f77d33d)
This will avoid having to duplicate the loop every time the default
regex isn't good enough, and will be used by upcoming commits.
(cherry picked from commit cc30f4ae6790cf4f19bc4787d7528dfea79ef27a)
grep -q -v means "are there any lines that don't match", not "are there
no lines that match", and since the file has lines other than ones with
nvme_util.o when up-to-date this triggers on every build.
Fixes: 26a09db3add3 ("Fix incremental build with WITH_NVME newly enabled")
MFC after: 1 week
(cherry picked from commit e546c3950a2c98b298b8ddfb68b50cb496fe7fac)
Detect and delete out of date clang-tblgen produced output. I found it
sufficent for compilation to delete only arm_*.inc files, but it seems
safer to regenerate all output and a few extra clang-tblgen runs pales
in comparison to the full build we're doing at this point.
Reviewed by: dim, emaste
Differential Revision: https://reviews.freebsd.org/D47270
(cherry picked from commit 8b2e7da70855e48c0ba8c874fa528b599fb7c9a9)
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and
openmp to llvm-project main llvmorg-19-init-18630-gf2ccf80136a0, the
last commit before the upstream release/19.x branch was created.
PR: 280562
MFC after: 1 month
(cherry picked from commit 0fca6ea1d4eea4c934cfff25ac9ee8ad6fe95583)
WITH_LOADER_BIOS_TEXTONLY is now the default so document
WITHOUT_LOADER_BIOS_TEXTONLY.
Fixes: 23dee252daf2 loader: Change this BIOS tradeoff...
(cherry picked from commit 50b5a37a12d032085276b1f0ebb5f92c0cabed32)
The in-tree ZFS test suite is somewhat outdated and I see a number of
failures there. I tend to think that we want to integrate the OpenZFS
test suite somehow, replacing the legacy one, though it's also possible
to run that as a separate test suite.
In any case, if one wants to run the OpenZFS test suite separately, it's
useful to be able to disable installation of the legacy ZFS test suite,
so let's provide a src.conf option to do that.
Reviewed by: asomers
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D46476
(cherry picked from commit 24affded3d4ec5fafb6b22f773ec1e20d73b9b03)
This is just a convenient alias for setting stdout and stderr to PIPE,
so substitute it for that to be compatible with Python 3.6.
Fixes: 69cfdc81ea ("tools/build/make.py: Keep bootstrapped bmake binary up-to-date")
(cherry picked from commit b771d5705fc95445d4d81e054be664b7842156ff)
The missing comma meant this was interpreted as a single target called
"tinderboxworlds", and so neither tinderbox nor worlds were recognised
as being MI targets (i.e. still required TARGET(_ARCH) to be given).
Fixes: 5157b451c6 ("tools/build/make.py: Grow the list of MI targets")
(cherry picked from commit edec803c5b72681b39ce969cc16d634e08bb3ac2)
Since commit 246364454f ("etcupdate: Use new buildetc and installetc
targets when available"), beinstall has been much slower for the
etcupdate step, as it's been doing a kernel-toolchain (admittedly
without LLVM itself being built). Given beinstall requires an object
tree to already have been built and just installs it, we can pass -B to
beinstall to reuse that tree rather than build kernel-toolchain in
another one.
Reported by: olivier
Tested by: olivier
MFC after: 1 week
(cherry picked from commit 18aef07cfac41fde763e1328366cc6e334bb9254)
The drivers and utilities are now built and installed unconditionally.
Reviewed by: imp, emaste
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D44843
(cherry picked from commit ee3187f6fa7986c6bfaa97528e050b796eaca343)
rescue.mk doesn't get updated when options change so nvme_util.o is now
missing on architectures were NVME was previously marked BROKEN.
Reviewed by: imp
Fixes: 2fda3ab0ac19 WITH_NVME: Remove from broken.
Differential Revision: https://reviews.freebsd.org/D44826
(cherry picked from commit 26a09db3add30238b99e3214c56a3aee63fd71d1)
Make it possible to disable pxeboot. This loader will fail to build when
it's too large. When /boot/loader needs to be larger like that, this
options will disable a component whose build will fail. It is an explicit
option rather than implicit when things are too large to force the user to
make the explicit tradeoffs rather than wonder why they have a stale pxeboot
or other odd failure mode.
MFC After: 3 days
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D46212
(cherry picked from commit 20d35d5817851df3a6d20e75df2e14a192b94940)
/boot/loader is right up aginst the 500k limit we have to make sure
everything works in a wide variety of environments. However, adding
WITH_BEARSSL can push it over the edge since we are so close to the
limit with it enabled. One may also need to increase LOADERSIZE when
enabling it. It's often safe to go much higher, especially when you
don't plan on using pxeldr. Document this trade off here.
MFC After: 3 days
Sponsored by: Netflix
Reviewed by: sjg, markj
Differential Revision: https://reviews.freebsd.org/D46211
(cherry picked from commit 7ee781e2bfc2558060dec95564414a0bff4415c1)
> These tests increase the build time (albeit by a small amount), so
> they should be removed once enough time has passed and it is extremely
> unlikely anyone would try a NO_CLEAN build against an object tree from
> before the related change.
The comment suggests a year is a reasonable period but we'll be somewhat
more conservative for now, in part so that we retain different examples
of special cases.
Reviewed by: brooks, imp
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D46178
(cherry picked from commit 4a06d149371c16287e1dd5a8fa51e92346a0c3f4)
If the object directory prefix does not exist, make.py previously exited
with a message indicating that the chosen prefix does not exit.
Reviewed by: emaste
Pull request: https://github.com/freebsd/freebsd-src/pull/1348
(cherry picked from commit d55de30efd09ee011bf4604be1c15ce4155775c1)
You can run the script before or after `make installworld'
You may also check your local ports with:
env STALE_SYMLINK_BUILDWORLD_DIRS=/usr/local ./stale-symlink-buildworld.sh
PR: 276235
(cherry picked from commit e880dd644f63fbe068c38b73b44aa7e7c5f176f3)
This option will omit all the graphics support, the teken terminal
library, video mode support, etc and support a simple, basic, text-only
video console for the x86 BIOS boot loader. It uses the FreeBSD 12
version of vidconsole.c. It defaults to NO.
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D43912
(cherry picked from commit 63e9c976640d05ef65842eaf3d54de9a8d48cbdc)
this is a very early script to support cloudinit, it does not intend to
be a full featured cloudinit client, but will support a good enough
subset to be viable in most case.
It support nocloud and openstack config-2 config drive mode (iso9660 or
msdosfs)
The following features are currently supported:
- adding users (including a default user named 'freebsd' with password
'freebsd'
- adding groups
- adding ssh keys
- static ipv4, static ipv6, dynamic ipv4
With this one is able to use the 'bring your own image feature" out of
box.
It is expected that the script grows the support of other clouds
supporting cloud-init, contributions are welcomed.
It is designed to be only run once via the firstboot mecanism.
Sponsored by: OVHCloud
Differential Revision: https://reviews.freebsd.org/D44141
(cherry picked from commit a42d6f76018e4ed8324e319ab48aac904bda437c)
(cherry picked from commit c051f22bce42d920abba61bd7cf4ef5b6a270ffa)
(cherry picked from commit b8c053c9a612651d4909f7a323088f3e92485b7b)
(cherry picked from commit 9eae9233fdcc946945f4191e1413f548adfa2943)
Commit de6feefdb7 limited the amount of debuginfo generated for clang
and other llvm-related executables. This was done to save disk space and
memory during building, but it makes debugging any of these executables
much harder.
Add a new src.conf(5) setting, WITH_LLVM_FULL_DEBUGINFO, to generate
full debuginfo instead. This is off by default, but could for example be
enabled for release builds or snapshots, so llvm executables are easier
to debug.
Reviewed by: emaste
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D43839
(cherry picked from commit 73ff7384e025033abc98fd5437a48beb8077a90b)
Ubuntu 23.10 uses glibc 2.38. This adds strlcpy and strlcmp so we need
to remove them from the cross build environment.
Reviewed by: jrtc27 (earlier version), arichardson
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D42303
(cherry picked from commit ceefd491c7f0490515fadca2f3740cb24e3f449e)
Merge vendor sendmail 8.18.1 into HEAD
(cherry picked from commit d39bd2c1388b520fcba9abed1932acacead60fba)
Add new source file for sendmail 8.18.1
(cherry picked from commit 19d4fb85bf17579780e8f0c3cbae8a5e92a6922e)
New sendmail 8.18.1 cf file
(cherry picked from commit 1b6a5580c1f999fb1ba5f9860cf63a8aefc55b3c)
Minor change to update these files so new freebsd*.cf files are
generated
(cherry picked from commit 2c191ba6b0b5d1b3729a5ac428d51cfc5d5f3d2e)
Belatedly update version and date for sendmail 8.18.1 upgrade
(cherry picked from commit 31fbc98c949bfca30ab55afef04b4396a61b7e92)
Add a note about sendmail 8.18.1's stricter SMTP protocol enforcement
(akin to commit 21c1f1deb6a3ac6a60e4516261e5264a28e0b7a6 in main)
Update import date for stable/14
Relnotes: Yes
Security: CVE-2023-51765
Now that kldxref is a generic cross tool and can be built on non-FreeBSD
we can bootstrap it during the build and thus remove the condition for
whether it exists. We also need to make sure to add it to the METALOG
for -DNO_ROOT builds.
Reviewed by: brooks, imp
Differential Revision: https://reviews.freebsd.org/D43051
(cherry picked from commit ff7c12c1f17e52337169d8ce48433fae96a9c9db)
This is needed for kldxref, which will shortly become a bootstrap tool.
Linux can use the same one as FreeBSD (provided the cross-building
sys/cdefs.h is augmented appropriately), whilst macOS needs its own
Mach-O-specific implementation.
Reviewed by: brooks
Differential Revision: https://reviews.freebsd.org/D43049
(cherry picked from commit 881ec81372e0748f2869fe6c18e909afa8304e7a)
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and
openmp to llvm-project main llvmorg-17-init-19304-gd0b54bb50e51, the
last commit before the upstream release/17.x branch was created.
PR: 273753
MFC after: 1 month
(cherry picked from commit 06c3fb2749bda94cb5201f81ffdb8fa6c3161b2e)
Options should be in sort(1) order by primary option (usually, but not
always, first in the if statement).
Reviewed by: emaste, imp, netchild
Pull Request: https://github.com/freebsd/freebsd-src/pull/896
(cherry picked from commit 4cd0f014a1285c1b57e583b260282ca433a8ccdd)
These used to be grouped with MK_GCOV option or the like.
Reviewed by: emaste, imp, netchild
Pull Request: https://github.com/freebsd/freebsd-src/pull/896
(cherry picked from commit fb173fc89e9c6908426bf60b1a449f1ff19d51df)
Presumably these were under MK_CDDL at some point, but these days
src.opts.mk takes care of setting them to "no" when MK_CDDL is.
Reviewed by: emaste, imp, netchild
Pull Request: https://github.com/freebsd/freebsd-src/pull/896
(cherry picked from commit a62cefbb5c835eb17057bca98106f325b13bdead)