mirror of
https://github.com/vyos/vyos-build.git
synced 2025-10-01 20:28:40 +02:00
37 lines
1.4 KiB
Bash
Executable File
37 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
if [ ! -f "Makefile" ]; then
|
|
echo "Makefile missing, This script needs to be executed inside the vyos-kernel package directory"
|
|
exit 1
|
|
fi
|
|
|
|
if grep -Fxq "KBUILD_OUTPUT" Makefile; then
|
|
echo "Wrong Makefile?, This script needs to be executed inside the vyos-kernel package directory"
|
|
exit 1
|
|
fi
|
|
|
|
|
|
# newer Kernel versions come with a "# SPDX-License-Identifier: GPL-2.0" identifier
|
|
# as the first line in the file - use compatible approach with grep rather then sed
|
|
VERSION=$(grep "^VERSION" Makefile | grep -Eo '[0-9]{1,4}')
|
|
PATCHLEVEL=$(grep "^PATCHLEVEL" Makefile | grep -Eo '[0-9]{1,4}')
|
|
SUBLEVEL=$(grep "^SUBLEVEL" Makefile | grep -Eo '[0-9]{1,4}')
|
|
ARCH=$(dpkg --print-architecture)
|
|
|
|
case "$ARCH" in
|
|
amd64)
|
|
make x86_64_vyos_defconfig
|
|
TARGETS="kernel_headers kernel_image"
|
|
# the following targets are not supported for Linux Kernels > 4.14 as
|
|
# they have been removed from the Makefile (commits 18afab8c1d3c2 &
|
|
# 22cba31bae9dc).
|
|
if [ ${PATCHLEVEL} -lt 14 ]; then
|
|
TARGETS+=" kernel_manual kernel_doc"
|
|
fi
|
|
CONCURRENCY_LEVEL=4 LOCALVERSION="" make-kpkg --rootcmd fakeroot --initrd --append_to_version -amd64-vyos --revision=$VERSION.$PATCHLEVEL.$SUBLEVEL-1+vyos1+current1 -j$(cat /proc/cpuinfo | grep processor | wc -l) ${TARGETS}
|
|
;;
|
|
|
|
armhf)
|
|
make armhf_vyos_defconfig
|
|
;;
|
|
esac
|