build/kernel: allow to build GENERIC through KERNEL=GENERIC
This commit is contained in:
parent
b995584a04
commit
7a7a5c42e1
7
Makefile
7
Makefile
|
@ -17,6 +17,7 @@ lint:
|
|||
# Special vars to load early build.conf settings:
|
||||
|
||||
TOOLSDIR?= /usr/tools
|
||||
TOOLSBRANCH?= master
|
||||
SETTINGS?= 16.7
|
||||
|
||||
CONFIG?= ${TOOLSDIR}/config/${SETTINGS}/build.conf
|
||||
|
@ -31,6 +32,7 @@ SUFFIX?= #-devel
|
|||
FLAVOUR?= OpenSSL
|
||||
_ARCH!= uname -p
|
||||
ARCH?= ${_ARCH}
|
||||
KERNEL?= SMP
|
||||
DEVICE?= a10
|
||||
SPEED?= 115200
|
||||
UEFI?= yes
|
||||
|
@ -86,12 +88,13 @@ VERBOSE_HIDDEN= @
|
|||
.for STEP in ${STEPS}
|
||||
${STEP}: lint
|
||||
${VERBOSE_HIDDEN} cd ${.CURDIR}/build && \
|
||||
sh ${VERBOSE_FLAGS} ./${.TARGET}.sh -a ${ARCH} \
|
||||
sh ${VERBOSE_FLAGS} ./${.TARGET}.sh -a ${ARCH} -F ${KERNEL} \
|
||||
-f ${FLAVOUR} -n ${NAME} -v ${VERSION} -s ${SETTINGS} \
|
||||
-S ${SRCDIR} -P ${PORTSDIR} -p ${PLUGINSDIR} -T ${TOOLSDIR} \
|
||||
-C ${COREDIR} -R ${PORTSREFDIR} -t ${TYPE} -k "${PRIVKEY}" \
|
||||
-K "${PUBKEY}" -l "${SIGNCHK}" -L "${SIGNCMD}" -d ${DEVICE} \
|
||||
-m ${MIRRORS:Ox:[1]} -o "${STAGEDIRPREFIX}" -c ${SPEED} \
|
||||
-b ${SRCBRANCH} -B ${PORTSBRANCH} -e ${PLUGINSBRANCH} \
|
||||
-E ${COREBRANCH} -u "${UEFI:tl}" -U "${SUFFIX}" ${${STEP}_ARGS}
|
||||
-g ${TOOLSBRANCH} -E ${COREBRANCH} -u "${UEFI:tl}" \
|
||||
-U "${SUFFIX}" ${${STEP}_ARGS}
|
||||
.endfor
|
||||
|
|
|
@ -71,17 +71,21 @@ All build steps are invoked via make(1):
|
|||
|
||||
# make step OPTION="value"
|
||||
|
||||
Available early build options are:
|
||||
|
||||
* CONFIG: reads the below from the specified file
|
||||
* SETTINGS: the name of the requested config directory
|
||||
|
||||
Available build options are:
|
||||
|
||||
* ARCH: the target architecture if not native
|
||||
* CONFIG: reads the below from the specified file
|
||||
* DEVICE: loads device-specific modifications, e.g. "a10" (default)
|
||||
* FLAVOUR: "OpenSSL" (default), "LibreSSL", "Base"
|
||||
* KERNEL: the kernel config to use, e.g. SMP (default)
|
||||
* MIRRORS: a list of mirrors to prefetch sets from
|
||||
* NAME: "OPNsense" (default)
|
||||
* PRIVKEY: the private key for signing sets
|
||||
* PUBKEY: the public key for signing sets
|
||||
* SETTINGS: the name of the selected settings in config/
|
||||
* SPEED: serial speed, e.g. "115200" (default)
|
||||
* TYPE: the base name of the top package to be installed
|
||||
* SUFFIX: the suffix of top package name (empty, "-stable", "-devel")
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
|
||||
set -e
|
||||
|
||||
OPTS="a:B:b:C:c:d:E:e:f:K:k:L:l:m:n:o:P:p:R:S:s:T:t:U:u:v:"
|
||||
OPTS="a:B:b:C:c:d:E:e:f:F:g:K:k:L:l:m:n:o:P:p:R:S:s:T:t:U:u:v:"
|
||||
SCRUB_ARGS=":"
|
||||
|
||||
while getopts ${OPTS} OPT; do
|
||||
|
@ -79,6 +79,14 @@ while getopts ${OPTS} OPT; do
|
|||
export PRODUCT_FLAVOUR=${OPTARG}
|
||||
SCRUB_ARGS=${SCRUB_ARGS};shift;shift
|
||||
;;
|
||||
F)
|
||||
export PRODUCT_KERNEL=${OPTARG}
|
||||
SCRUB_ARGS=${SCRUB_ARGS};shift;shift
|
||||
;;
|
||||
g)
|
||||
export TOOLSBRANCH=${OPTARG}
|
||||
SCRUB_ARGS=${SCRUB_ARGS};shift;shift
|
||||
;;
|
||||
K)
|
||||
if [ -n "${OPTARG}" ]; then
|
||||
export PRODUCT_PUBKEY=${OPTARG}
|
||||
|
@ -183,11 +191,13 @@ if [ -z "${PRODUCT_NAME}" -o \
|
|||
-z "${PRODUCT_MIRROR}" -o \
|
||||
-z "${PRODUCT_DEVICE}" -o \
|
||||
-z "${PRODUCT_SPEED}" -o \
|
||||
-z "${PRODUCT_KERNEL}" -o \
|
||||
-z "${PLUGINSBRANCH}" -o \
|
||||
-z "${PLUGINSDIR}" -o \
|
||||
-z "${PORTSBRANCH}" -o \
|
||||
-z "${PORTSDIR}" -o \
|
||||
-z "${PORTSREFDIR}" -o \
|
||||
-z "${TOOLSBRANCH}" -o \
|
||||
-z "${TOOLSDIR}" -o \
|
||||
-z "${COREBRANCH}" -o \
|
||||
-z "${COREDIR}" -o \
|
||||
|
@ -699,7 +709,6 @@ clean_packages()
|
|||
|
||||
setup_packages()
|
||||
{
|
||||
# legacy package extract
|
||||
extract_packages ${1}
|
||||
install_packages ${@} ${PRODUCT_PKGNAME}
|
||||
clean_packages ${1}
|
||||
|
|
|
@ -43,16 +43,16 @@ git_describe ${SRCDIR}
|
|||
|
||||
KERNEL_SET=${SETSDIR}/kernel-${REPO_VERSION}-${PRODUCT_ARCH}
|
||||
|
||||
BUILD_KERNEL="SMP"
|
||||
if [ -f ${CONFIGDIR}/${BUILD_KERNEL}.${PRODUCT_ARCH} ]; then
|
||||
BUILD_KERNEL="${BUILD_KERNEL}.${PRODUCT_ARCH}"
|
||||
if [ -f ${CONFIGDIR}/${PRODUCT_KERNEL}.${PRODUCT_ARCH} ]; then
|
||||
cp "${CONFIGDIR}/${PRODUCT_KERNEL}.${PRODUCT_ARCH}" \
|
||||
"${SRCDIR}/sys/${PRODUCT_TARGET}/conf/${PRODUCT_KERNEL}"
|
||||
elif [ -f ${CONFIGDIR}/${PRODUCT_KERNEL} ]; then
|
||||
cp "${CONFIGDIR}/${PRODUCT_KERNEL}" \
|
||||
"${SRCDIR}/sys/${PRODUCT_TARGET}/conf/${PRODUCT_KERNEL}"
|
||||
fi
|
||||
|
||||
cp ${CONFIGDIR}/${BUILD_KERNEL} \
|
||||
${SRCDIR}/sys/${PRODUCT_TARGET}/conf/${BUILD_KERNEL}
|
||||
|
||||
MAKE_ARGS="TARGET_ARCH=${PRODUCT_ARCH} TARGET=${PRODUCT_TARGET}"
|
||||
MAKE_ARGS="${MAKE_ARGS} KERNCONF=${BUILD_KERNEL} __MAKE_CONF="
|
||||
MAKE_ARGS="${MAKE_ARGS} KERNCONF=${PRODUCT_KERNEL} __MAKE_CONF="
|
||||
|
||||
${ENV_FILTER} make -s -C${SRCDIR} -j${CPUS} buildkernel ${MAKE_ARGS} NO_KERNELCLEAN=yes
|
||||
${ENV_FILTER} make -s -C${SRCDIR}/release obj ${MAKE_ARGS}
|
||||
|
|
Loading…
Reference in New Issue