Commit Graph

176 Commits

Author SHA1 Message Date
Franco Fichtner 3bcd199713 build/ports: we need to scrub the old package in both places 2024-02-15 15:17:04 +01:00
Franco Fichtner 49f84e452b build/ports: add MISMATCH knob; closes #225 2024-02-14 10:01:56 +01:00
Franco Fichtner 70495e7e75 build/packages: if ports clears the packages flag we can now test and skip 2024-02-14 09:43:12 +01:00
Franco Fichtner 0dd6820d8b build: tweak aux set handling a little 2024-02-14 08:35:59 +01:00
Franco Fichtner a2fc40997f build: basic implementation of aux packages; closes #299
It allows us to retain the "aux" packages for subsequent rebuilds.
These packages are inserted in the "ports" step and removed in the
"packages" step.

May be subject to changes and tweaks, but works nicely when e.g.
rebuilding suricata.
2024-02-08 15:59:16 +01:00
Franco Fichtner 1106dcec37 build/ports: of course it needs escape 2023-02-08 09:19:27 +01:00
Franco Fichtner 40b567b55b build/ports: expand in chroot 2023-02-08 08:03:42 +01:00
Franco Fichtner 8c7721bc08 build/ports: defer the check-plist message
In a batch build there are two check-plist errors, but they are
not easy to reproduce and otherwise hidden in the 200 MB log file:

>>> WARNING: The build provided additional info.
>>> Package list inconsistency for net/librdkafka (librdkafka)
>>> Package list inconsistency for www/squid (squid)

Move the print to the end so we can always see it.
2023-02-08 08:01:40 +01:00
Franco Fichtner 9f2ca30725 build/ports: improve warning/error output a little 2023-02-07 10:04:13 +01:00
Franco Fichtner 62cf737ea3 build|composite: remove PRODUCT_FLAVOUR where irrelevant 2023-02-03 15:13:55 +01:00
Franco Fichtner 1dd0017153 build: adding SRC_BASE to command line breaks nrpe3 Makefile 2022-12-12 09:43:15 +01:00
Franco Fichtner 73da6bb488 build: pass SRC_BASE so ports know about correct SRCDIR; closes #294 2022-12-10 13:51:04 +01:00
Franco Fichtner 6b61fb18d4 Revert "build: pass SRC_BASE so ports know about correct SRCDIR; closes #294"
This reverts commit 8c25051195.
2022-12-09 16:37:32 +01:00
Franco Fichtner 8c25051195 build: pass SRC_BASE so ports know about correct SRCDIR; closes #294 2022-12-08 14:52:41 +01:00
Johnny S. Lee 64e0e1b2f7
build: Allow delimiters other than newline in {AUX,PLUGINS,PORTS}LIST (#322)
Currently, when assigning multiple items to a LIST, the following works:
```
make ports PORTSLIST="port/a
port/b"
```
while the following would fail:
```
make ports PORTSLIST="port/a port/b"
```
2022-10-18 14:37:57 +02:00
Franco Fichtner d412689c99 build: fix missing overide for lists; closes #318 2022-09-30 11:04:07 +02:00
Franco Fichtner e31fbaa3fd build: list_ports/list_plugins are the same, use shared list_packages 2022-08-31 12:43:36 +02:00
Franco Fichtner da3cbc263e build/ports: build aux.conf only as dependency
Avoids spurious build errors for lang/rust on early shared LibreSSL/OpenSSL
build on the same machine.  Also rebuilds benefit from this not wanting to
build rust at all if not necessary (go is not that bad).
2022-08-25 10:24:08 +02:00
Franco Fichtner a4e7af0253 build: pkg-warn is more of a pkg-msg anyway 2022-06-08 12:39:12 +02:00
Franco Fichtner 8ab4d23004 build: support pkg 1.17 2022-04-29 09:31:43 +02:00
Franco Fichtner 1c6c5ac6de build/ports: for now only warn on plist issues
check-plist is never executed, not even in QA scripts for FreeBSD,
but constantly being looked at, likely through Poudriere output.

In general such vital scripting should be executed in a standard
workflow, but to improve our own submissions just fold this into
the ports build manually.
2021-12-10 08:18:05 +01:00
Franco Fichtner 73ce4f6f23 build: refactor PORTSLIST generation into shared list_ports() call
With five consumers this makes sense nowadays.  While here make the
distfiles fetch ignore PORT_IGNORE to download otherwise missing files
not found in the default flavour.
2021-10-15 14:59:24 +02:00
Franco Fichtner ca639d1f03 build/ports: remove more debug 2021-08-10 14:54:29 +02:00
Franco Fichtner 37bf0745c9 build: make .pkg-(warn|err) generic, fix internal STAGEDIR use #241 2021-08-10 13:18:38 +02:00
Franco Fichtner ad95a2af87 build/ports: no longer use make -s in the builder
It's a lot of log content but somehow pkg wanting to bootstrap
into FreeBSD's 1.17 package during building is gone now which
sort of defeats the purpose if trying to fix this with more
debug output.  *shrug*
2021-08-10 08:40:26 +02:00
Franco Fichtner 8429da1ecd build/ports: not a make invoke :D 2021-08-09 09:53:08 +02:00
Franco Fichtner 2709d6e4ef build: too much logging in nightly run 2021-08-09 08:03:52 +02:00
Franco Fichtner ac8fd59651 build/ports: small bug, move to debug ports install target 2021-08-08 09:22:30 +02:00
Franco Fichtner 75e664118f build/ports: previous change did not work
Suspicously this seems to be caused by the ports tree now and
our previous code was working fine.  The change is fine too,
but now we need to see which make target triggers this...
2021-08-06 08:53:55 +02:00
Franco Fichtner 79ba9ca822 build/ports: it seems that pkg -N sometimes wants to bootstrap
The /usr/sbin/pkg supports -N in the right way, but /usr/local/sbin/pkg -N
which is being invoked if /usr/local/sbin/pkg exists has other semantics
that sometimes makes this work and sometimes it doesn't.  The manual page
mentions a weird workaround, but in the end if we assume that base pkg
execs local pkg we can almost certainly assume that it is bootstrapped and
usable.
2021-08-05 09:12:08 +02:00
Franco Fichtner cd0fdba4b0 build/ports: allow to override BATCH run with developer shell on failure 2021-07-06 08:56:02 +02:00
Franco Fichtner b1b52c4631 build: document PORTSLIST and PLUGINSLIST 2021-06-24 09:04:48 +02:00
Franco Fichtner 3c3330f385 build: pass port options as PORTSENV
This way we can hook it into build configuration and also it
looks final enough to document it soon.
2021-04-06 09:02:35 +02:00
Franco Fichtner 8c18ee7ccd build/ports: add "depend" option to avoid rebuilds of reverse dependencies 2021-04-06 08:04:24 +02:00
Franco Fichtner e50e67ef40 build/ports: add overrides for silent and prune modes
No documentation for this as this is going to be reworked again.
Currenty though, during build tests editing these lines constantly
is not the best approach so at least now it works from the command
line.
2021-03-26 10:55:36 +01:00
Franco Fichtner 6e89e3a718 build: prefer -v over -V 2021-02-24 10:33:10 +01:00
Franco Fichtner 91eab2adcf build: use new make.conf target to simplify patches; closes #210 2021-01-26 20:26:50 +01:00
Franco Fichtner a90907a94e build: make PRODUCT_REBUILD a globally accessible variable 2021-01-21 09:47:59 +01:00
Franco Fichtner d6111ee42a build/ports: do not overwrite global SELF and IMAGE
While here cleanup_packages is highly ambiguous.  Use
prune_packages instead as we remove stale or incompatible
packages from the set.
2021-01-20 16:25:45 +01:00
Franco Fichtner 8742d7295d build/ports: continue faulty builds unless rebuilding
Add a bit of reporting glue to get better visibility of
ports doing rebuild bouncing.
2021-01-20 15:22:07 +01:00
Franco Fichtner 7375a65098 build/ports: reverse logic 2021-01-19 13:39:21 +01:00
Franco Fichtner 6aa26b27d6 build/ports: SELF is actually ports, no need to list twice 2021-01-18 17:27:12 +01:00
Franco Fichtner 553bf8a787 build/ports: only add aux.conf if packages step has not been executed
For hotfixes it will start to build go and rust even if it does not
need it.

For the cases where e.g. suricata rebuild requires rust use the
non-packaged packages set or let rust build during dependecy build.
2021-01-18 17:22:38 +01:00
Franco Fichtner c68563ca3e config: expose PRODUCT_ABI to ports
Fixup PRODUCT_LUA replacement while here.
2021-01-11 11:46:02 +01:00
Franco Fichtner 603330a8f6 config: remove notion of version "3" Python, it's the default 2020-02-18 10:15:34 +01:00
Franco Fichtner 1f00c8b677 build: remove PYTHON2 selector, no longer used 2020-02-18 08:25:11 +01:00
Franco Fichtner a34ba52382 build/ports: check here as well, no package at build start 2020-02-09 08:46:52 +01:00
Franco Fichtner b053261a9c build: pkg should be picked up instantly nowadays 2019-10-13 15:46:07 +02:00
Franco Fichtner e50d175fe7 build: add a real "package" target and aux.conf trickery
aux.conf harbours ports that are needed for the build and intermediate
package sets for testing and rebuilding, but that will ultimately be
removed from the sets when they are supposed to be uploaded to the mirror.
2019-10-13 15:46:07 +02:00
Franco Fichtner 9d77c902e3 build: remove QUICK support, rarely useful and undocumented 2019-06-03 08:25:26 +02:00