Commit graph

208 commits

Author SHA1 Message Date
Franco Fichtner
b3c29c7f0d composite: move "factory" target to custom script
It's mostly the same and the indirection through custom
is annoying to work with.  Since it is just a helper for
the VM image type don't document it further.
2026-04-22 14:21:49 +02:00
Franco Fichtner
bf85679027 composite: support more flexibility in custom/factory builds 2026-04-21 16:52:48 +02:00
Franco Fichtner
ec405754d9 build: better PRODUCT_ZFS handling
Only VM images really handle ZFS.  While here move the handling
to the core repository so rc.loader knows what to do.

We only need a 10 second boot relay on installer vga/serial/dvd/nano.

Also go back to setting the pool name using PRODUCT_ZFS which is
now safeguarded through ALLOWED/REQUESTED.
2026-03-23 11:53:19 +01:00
Franco Fichtner
f8251597c9 build: add REMOTEDIR Makefile support again, fix nightly side effect
Also renames PRODUCT_SERVER to shorter SERVER because it's not really
part of the product.  ;)

Allow the REMOTEDIR to be empty so we can automatically select a matching
directory in download/upload cases.
2025-12-12 09:06:24 +01:00
Franco Fichtner
c83a3f908b build/download: allow REMOTEDIR change and consolidate away from UPLOADDIR 2025-12-10 08:43:38 +01:00
Franco Fichtner
7e3a834302 make: this is complicated ;) 2025-10-14 10:10:25 +02:00
Franco Fichtner
89b8eb5623 make: align paths when calling externally so things still work the same 2025-10-14 10:00:26 +02:00
Franco Fichtner
9422bc4c3b make: remove a bit of cruft related to tests
Meant as a means to boost cooperation they basically led nowhere
and sometimes refuse to build cleanly after a base build.  Let's
go with the sign of the times here and expose them less which also
doesn't change the default behaviour.
2025-10-07 13:24:23 +02:00
Franco Fichtner
197e0dbae3 build/skim: ensure cloning of portsref since skim needs it
Also makes sure it is up to date.
2025-07-25 10:24:42 +02:00
Franco Fichtner
117ac0809d build: support "obsolete" build target for skimming obsolete ports
This simply scans ${PORTSDIR}/MOVED file for the port at hand.
Our skim doesn't delete used but removed ports but thus we also
fail to see if FreeBSD ports (re)moved it until it breaks for good.
2025-07-09 08:10:33 +02:00
Franco Fichtner
0fca35f7c2 composite/pkgver: add a helper script for a workflow that happens daily 2025-03-26 10:41:51 +01:00
Franco Fichtner
c7a25327d5 build: turn tests set off by default 2024-12-11 11:57:08 +01:00
Franco Fichtner
15cef9f327 build: require tests before base
rebuilding tests after a full base build may fail which prevents
building a kernel without clean-obj.  To sidestep require the tests
before base and see if this needs further cleaning/fixing then or
if it's fine there.
2024-12-04 12:47:50 +01:00
Franco Fichtner
1750e7fdea build/tests: wedge tests set between kernel and base
It's not strictly tied to the kernel but this ensures the tests
set will be built after base and before kernel automatically.
2024-11-22 09:14:01 +01:00
Franco Fichtner
05b3f5ff1c build/tests: looks like we need this to speed things up
This is probably the fifth iteration of "how to approach testing"
which seems trivial but for a surprising number of reasons this
is really not tailored for casual testing in user systems.
2024-11-21 10:33:48 +01:00
Franco Fichtner
8164663004 build/kyua: do not need this, devel/atf is all we need 2024-11-13 08:47:39 +01:00
Franco Fichtner
54dd0bc14d build/kyua: build a regression tests set from src.git 2024-10-25 10:06:29 +02:00
Franco Fichtner
9e7dfd4c3f config: add mod_proxy_msprc package and pin APACHE version 2024-09-24 10:36:15 +02:00
Franco Fichtner
b6cd7fbabe build/sync: turn the port_dir_mfc script into a 'sync' step 2024-09-16 20:50:15 +02:00
Franco Fichtner
f789246e1a make: composite scripting should be chatty enough either way 2024-07-31 11:28:20 +02:00
Franco Fichtner
27efe9595e config: move these to stderr to not capture eval "$()" errors 2024-07-18 22:22:19 +02:00
Franco Fichtner
4501646881 make: now that we auto-select config add output for step/script/config 2024-07-18 13:01:09 +02:00
Franco Fichtner
a09033f310 config: error out when no matching OS configuration was found 2024-07-16 08:22:19 +02:00
Franco Fichtner
9d213f5217 config: auto-select the first matching OS configuration
This is a bit tedious otherwise as seen over the years but
not a lot needed to make it happen.  Complaints are still
being issued on (forced) mismatch or when no configuration
was found.
2024-07-15 09:51:37 +02:00
Franco Fichtner
2eee340031 build/update: include rewind functionality via VERSION use; closes #373 2023-08-09 08:36:39 +02:00
jeremiah-rs
3d5bbc484a Update Makefile
Updated LeaseWeb and NYC BUG mirrors to use HTTPS
2023-08-04 08:41:53 +02:00
Franco Fichtner
aef341c0ef build/core: avoid tainting VERSION for composite steps
Similar things could be done for src and ports handling, but this
one here is the most fragile.
2023-07-26 23:51:40 +02:00
Franco Fichtner
ef89cfd749 composite: custom image support 2023-04-17 10:41:23 +02:00
Franco Fichtner
9ee5252153 build: remove remnants of FLAVOUR handling 2023-02-07 09:20:29 +01:00
Franco Fichtner
6cc5a564ba composite: remove FLAVOUR handling 2023-02-07 08:02:13 +01:00
Franco Fichtner
b2e630c371 config: turn CRYPTO into build.conf SSL setting
We might want to change it, but more like "openssl-devel" to try version
3 at some later point in time.  The FLAVOUR magic can go gradually, see
next commit.
2023-02-03 14:34:12 +01:00
Franco Fichtner
b448dfb032 composite: remove batch script and multi-flavour handling in nightly
We only support OpenSSL now and the base build is also not fully
hooked up.  Perhaps we can improve the situation later on but for
now just remove the spurious bits leading to errors.
2023-01-25 10:38:44 +01:00
Franco Fichtner
458fae9083 composite: add (nightly) log watcher 2022-11-02 12:11:46 +01:00
Franco Fichtner
0a66d2c966 make: arm requires kernel and packages #290 2022-05-17 10:56:20 +02:00
Franco Fichtner
0e2043ef67 build/connect: add tiny helper to jump to PRODUCT_SERVER secure shell 2022-05-13 12:21:27 +02:00
Franco Fichtner
2e4601721e build: remove hw.uart.console and unused COMPORT support
It doesn't work anymore for EFI on FreeBSD 13.
2022-02-21 11:02:31 +01:00
Franco Fichtner
5f64cb5902 composite: add factory target 2022-02-17 15:32:21 +01:00
Franco Fichtner
e782af9d8a build/vm: support bundling a ZFS image; closes #272
Flip the order of root and swap to allow VM image to grow.
Hook this up in extras.conf and also retrofit a serial console
for being able to test and debug in bhyve (build/boot).

Omit the use of a GPT root label in the ZFS case to deal with
devices names in the way that bsdinstall sets it up.  It is
not all that important for ZFS anyway.

The setup likely needs further testing and tweaking to make
sure we emulate bsdinstall zfsboot script properly to avoid
future problems.
2022-02-17 11:46:13 +01:00
Franco Fichtner
bd2287c014 make: indicate what we are going to override
The solution on mismatch is rarely providing the override so
try to hint at the user using that another configuration might
be needed to match the build environment.
2022-01-20 12:37:00 +01:00
Franco Fichtner
d79149c880 make: merge lines 2022-01-18 11:40:28 +01:00
Franco Fichtner
721f25f65f build/kernel: with a heavy heart require base build...
... and set up a chroot environment to run the proper kldxref in the
isolated environment.  It turns out that building kldxref manually
in the host builds one for the host likely with the help of /usr/include
and this fails again for the forward build.

It's the facepalm of the week.
2022-01-18 09:44:24 +01:00
Franco Fichtner
adc0ee4a12 config: check OS version before doing anything; closes #260 2022-01-18 08:56:37 +01:00
Franco Fichtner
5559bc8524 build: add a working DEBUG flag for 22.1 kernels
Make sure to do a manual clean kernel build run in order to get
the necessary files in place.  A partial rebuild does not seem
to work.
2022-01-04 09:52:58 +01:00
Franco Fichtner
747e6d0d2b make: remove standard addition of os-dyndns
According to e0e08e9a5b this was asked about in the forum back
then, but the plugin hasn't gotten much improvement over the years
and to use it you need an Internet connection which you can also
use to install the plugin.

On a restore you can already sync all missing plugins now which is
also helping in this case.
2021-12-27 21:42:47 +01:00
Franco Fichtner
1b716dda51 build/release: bundle arm if found and reduce default scope again 2021-10-14 20:18:01 +02:00
Franco Fichtner
b3818a032c build/options: port option scanner; closes #226 2021-10-12 21:02:32 +02:00
Franco Fichtner
dac714b313 make: bundle vm image with business release 2021-10-12 09:13:55 +02:00
Franco Fichtner
4336b0210d build: streamline version derivation/override 2021-09-09 13:09:54 +02:00
Franco Fichtner
a85d9d2bff make: order UEFI values 2021-08-20 11:35:28 +02:00
Kyle Evans
45483f8986
Makefile: add $ROOTDIR support (#244)
This allows one to place the OPNsense repositories in a different
location, e.g., /root/opnsense, rather than reusing the host's /usr.
2021-08-19 10:15:55 +02:00