composite/hotfix: use MISMATCH in explicit "ports" target

Improve hotfixing just a little bit now that we have the MISMATCH
option.  "make hotfix-ports" now does this automatically and wasn't
used before.
This commit is contained in:
Franco Fichtner 2024-02-15 13:29:50 +01:00
parent 5aa197f47a
commit e3471710d9
2 changed files with 13 additions and 4 deletions

View File

@ -513,4 +513,9 @@ sets is invoked using:
It will flush all previous packages except for ports, rebuild core and
plugins and sign the sets if enabled. It can also explicity set "core"
or "plugins".
or "plugins" or "ports". Note that the "ports" step will automatically
rebuild mismatching versions of packages or missing ones while the "core"
and "plugins" step will start from scratch for the individual step.
Any other argument (or list of arguments separated by comma) will be
treated as a single port to be rebuilt.

View File

@ -1,6 +1,6 @@
#!/bin/sh
# Copyright (c) 2017-2023 Franco Fichtner <franco@opnsense.org>
# Copyright (c) 2017-2024 Franco Fichtner <franco@opnsense.org>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
@ -25,14 +25,18 @@
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
PORTSENV="DEPEND=no PRUNE=no ${PORTSENV}"
TARGET=${1%%-*}
set -e
if [ -z "${TARGET}" -o "${TARGET}" = "plugins" -o "${TARGET}" = "core" ]; then
# force a full rebuild of selected stage(s)
make clean-${TARGET:-"plugins,core"} ${TARGET:-"packages"}-hotfix
make clean-${TARGET:-"plugins,core"} packages
elif [ "${TARGET}" = "ports" ]; then
# force partial rebuild of out of date ports
make ports-${1} PORTSENV="MISMATCH=no ${PORTSENV}"
else
# assume quick target port(s) to rebuild from ports.conf
make ports-${1} PORTSENV="DEPEND=no PRUNE=no ${PORTSENV}"
make ports-${1} PORTSENV="${PORTSENV}"
fi