Fix -dev and clean up pkgs
This commit is contained in:
parent
99214c1e9c
commit
82684bb769
|
@ -2,16 +2,12 @@
|
|||
# Contributor: Alex Denes <caskd@redxen.eu>
|
||||
# Maintainer: Alex Denes <caskd@redxen.eu>
|
||||
|
||||
_kernver=5.10
|
||||
_kernpatch=52
|
||||
|
||||
pkgname=linux
|
||||
pkgver=$_kernver.$_kernpatch
|
||||
pkgrel=0
|
||||
arch="noarch"
|
||||
subpackages="
|
||||
$pkgname-headers:_headerspkg:$CBUILD_ARCH
|
||||
"
|
||||
pkgname=linux
|
||||
_kver=5.10
|
||||
_kpatch=55
|
||||
_ksupport=lts
|
||||
pkgver=$_kver.$_kpatch
|
||||
pkgrel=0
|
||||
|
||||
_configs="
|
||||
config-full.aarch64
|
||||
|
@ -34,23 +30,13 @@ source="
|
|||
$_configs
|
||||
"
|
||||
|
||||
_archflavors() {
|
||||
for i in $_configs; do
|
||||
local _nocfg="${i#config-}"
|
||||
local _arch="${_nocfg#*.}"
|
||||
local _flavour="${_nocfg%.*}"
|
||||
[ "$_arch" == "$CARCH" ] && echo "$_flavour"
|
||||
done
|
||||
}
|
||||
|
||||
for i in $(_archflavors); do
|
||||
subpackages="
|
||||
$subpackages
|
||||
$pkgname-$i:_flavorpkg:$CBUILD_ARCH
|
||||
$pkgname-$i-dev:_devpkg:$CBUILD_ARCH
|
||||
"
|
||||
done
|
||||
_kabi= _klocalver= _kconfig= _kbdmain= _kbddev= _kflavor=
|
||||
_kdir_src="$srcdir/linux-$pkgver"
|
||||
|
||||
arch="noarch"
|
||||
subpackages="
|
||||
$pkgname-$_ksupport-headers:_pkg_header:$CBUILD_ARCH
|
||||
"
|
||||
_depends_dev="
|
||||
perl
|
||||
gmp-dev
|
||||
|
@ -59,7 +45,6 @@ _depends_dev="
|
|||
flex
|
||||
bison
|
||||
"
|
||||
|
||||
makedepends="
|
||||
$_depends_dev
|
||||
sed
|
||||
|
@ -76,7 +61,7 @@ pkgdesc="Linux Kernel - Metapackage"
|
|||
url="https://www.kernel.org"
|
||||
license="GPL-2.0"
|
||||
options="!strip"
|
||||
builddir="$srcdir/"
|
||||
builddir="$_kdir_src"
|
||||
|
||||
_carch=${CARCH} # abuild to kernel arch mapping
|
||||
case "$_carch" in
|
||||
|
@ -86,53 +71,94 @@ case "$_carch" in
|
|||
ppc*) _carch="powerpc" ;;
|
||||
s390*) _carch="s390" ;;
|
||||
esac
|
||||
|
||||
_archflavors() {
|
||||
for i in $_configs; do
|
||||
local _nocfg="${i#config-}"
|
||||
local _arch="${_nocfg#*.}"
|
||||
local _flavour="${_nocfg%.*}"
|
||||
[ "$_arch" == "$CARCH" ] && echo "$_flavour"
|
||||
done
|
||||
}
|
||||
|
||||
_bvars() {
|
||||
_kconfig="config-$_kflavor.$CARCH"
|
||||
_kdir_main="$srcdir/build-$_kflavor.$CARCH"
|
||||
_kdir_dev="$srcdir/build-$_kflavor-dev.$CARCH"
|
||||
|
||||
_ksaf="$_ksupport-$_kflavor"
|
||||
_kabi="$pkgver-$pkgrel-$_ksaf"
|
||||
_klocalver="-$pkgrel-$_ksaf"
|
||||
}
|
||||
|
||||
_spvars() {
|
||||
_kflavor="$(echo $subpkgname | cut -d- -f3)"
|
||||
}
|
||||
|
||||
for _kflavor in $(_archflavors); do
|
||||
|
||||
_bvars
|
||||
|
||||
subpackages="
|
||||
$subpackages
|
||||
$pkgname-$_ksaf:_pkg_kernel:$CBUILD_ARCH
|
||||
$pkgname-$_ksaf-dev:_pkg_extmod:$CBUILD_ARCH
|
||||
"
|
||||
done
|
||||
|
||||
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
|
||||
|
||||
prepare() {
|
||||
default_prepare
|
||||
for i in $(_archflavors); do
|
||||
local _builddir=
|
||||
local _config="config-$i.$CARCH"
|
||||
for _builddir in "$srcdir/build-$i.$CARCH" "$srcdir/build-$i-dev.$CARCH"; do
|
||||
mkdir -p "$_builddir"
|
||||
echo "-$pkgrel-$i" > "$_builddir"/localversion-alpine \
|
||||
|
||||
for _kflavor in $(_archflavors); do
|
||||
|
||||
_bvars
|
||||
|
||||
for _kbuilddir in "$_kdir_main" "$_kdir_dev"; do
|
||||
|
||||
mkdir -p "$_kbuilddir"
|
||||
echo "$_klocalver" > "$_kbuilddir"/localversion-alpine \
|
||||
|| return 1
|
||||
|
||||
cp "$srcdir"/"$_config" "$_builddir"/.config
|
||||
make -C "$srcdir"/"linux-$pkgver" \
|
||||
O="$_builddir" \
|
||||
cp "$srcdir"/"$_kconfig" "$_kbuilddir"/.config
|
||||
|
||||
make -C "$_kdir_src" \
|
||||
O="$_kbuilddir" \
|
||||
ARCH="$_carch" \
|
||||
listnewconfig oldconfig
|
||||
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
build() {
|
||||
unset LDFLAGS
|
||||
for i in $(_archflavors); do
|
||||
|
||||
for _kflavor in $(_archflavors); do
|
||||
|
||||
_bvars
|
||||
|
||||
# Build kernel and modules
|
||||
msg "Building $i for $CARCH"
|
||||
cd "$srcdir"/"build-$i.$CARCH"
|
||||
msg "Building $_kflavor for $CARCH"
|
||||
cd "$_kdir_main"
|
||||
make \
|
||||
ARCH="$_carch" \
|
||||
CC="${CC:-gcc}" \
|
||||
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine"
|
||||
|
||||
# Build out-of-tree builder
|
||||
msg "Building $i=dev for $CARCH"
|
||||
cd "$srcdir"/"build-$i-dev.$CARCH"
|
||||
msg "Building $_kflavor-dev for $CARCH"
|
||||
cd "$_kdir_dev"
|
||||
make syncconfig \
|
||||
O="$_outdir" \
|
||||
ARCH="$_carch"
|
||||
make prepare \
|
||||
O="$_outdir" \
|
||||
ARCH="$_carch"
|
||||
make modules_prepare \
|
||||
O="$_outdir" \
|
||||
ARCH="$_carch"
|
||||
make scripts \
|
||||
O="$_outdir" \
|
||||
ARCH="$_carch"
|
||||
|
||||
done
|
||||
}
|
||||
|
||||
|
@ -140,72 +166,103 @@ package() {
|
|||
mkdir -p "$pkgdir"
|
||||
}
|
||||
|
||||
_flavorpkg() {
|
||||
local _buildflavor="${subpkgname##$pkgname-}" _outdir="$subpkgdir"
|
||||
local _abi_release="$pkgver-$pkgrel-$_buildflavor"
|
||||
_pkg_kernel() {
|
||||
|
||||
cd "$srcdir"/"build-$_buildflavor.$CARCH"
|
||||
_spvars
|
||||
_bvars
|
||||
|
||||
mkdir -p "$_outdir"/boot "$_outdir"/lib/modules
|
||||
|
||||
local _install
|
||||
local _install=
|
||||
case "$CARCH" in
|
||||
arm*|aarch64) _install="zinstall dtbs_install";;
|
||||
*) _install=install;;
|
||||
esac
|
||||
|
||||
# Install kernel
|
||||
make "$_install" \
|
||||
ARCH="$_carch" \
|
||||
INSTALL_PATH="$_outdir"/boot \
|
||||
INSTALL_DTBS_PATH="$_outdir/boot/dtbs-$_buildflavor"
|
||||
local _outdir="$subpkgdir"
|
||||
mkdir -p "$_outdir"/boot "$_outdir"/lib/modules
|
||||
|
||||
cd "$_kdir_main"
|
||||
# Install modules
|
||||
make modules_install \
|
||||
ARCH="$_carch" \
|
||||
INSTALL_MOD_PATH="$_outdir"
|
||||
|
||||
# Install kernel
|
||||
make "$_install" \
|
||||
ARCH="$_carch" \
|
||||
INSTALL_PATH="$_outdir"/boot \
|
||||
INSTALL_DTBS_PATH="$_outdir/boot/dtbs-$_ksaf"
|
||||
|
||||
# Remove incorrect build-time symlinks
|
||||
rm -f "$_outdir"/lib/modules/"$_abi_release"/build \
|
||||
"$_outdir"/lib/modules/"$_abi_release"/source
|
||||
rm -f "$_outdir"/lib/modules/"$_kabi"/build \
|
||||
"$_outdir"/lib/modules/"$_kabi"/source
|
||||
rm -rf "$_outdir"/lib/firmware
|
||||
|
||||
# Install release file
|
||||
install -D -m644 include/config/kernel.release \
|
||||
"$_outdir"/usr/share/kernel/"$_buildflavor"/kernel.release
|
||||
"$_outdir"/usr/share/kernel/"$_kflavor"/kernel.release
|
||||
}
|
||||
|
||||
_devpkg() {
|
||||
_pkg_extmod() {
|
||||
|
||||
_spvars
|
||||
_bvars
|
||||
|
||||
depends="$_depends_dev"
|
||||
|
||||
local _pkgnodev="${subpkgname%-dev}"
|
||||
local _buildflavor="${_pkgnodev##$pkgname-}"
|
||||
local _config="config-$_buildflavor.$CARCH" _abi_release="$pkgver-$pkgrel-$_buildflavor"
|
||||
local _outdir="$subpkgdir/usr/src/linux-headers-$_abi_release" _builddir="$subpkgdir/lib/modules/$_abi_release"
|
||||
|
||||
local _outdir="$subpkgdir/usr/src/linux-headers-$_kabi" _builddir="$subpkgdir/lib/modules/$_kabi"
|
||||
mkdir -p "$_outdir"
|
||||
cd "$srcdir"/"build-$_buildflavor-dev.$CARCH"
|
||||
cp -a . "$_outdir"
|
||||
|
||||
cd "$_kdir_dev"
|
||||
msg "Copying kernel out-of-tree build files"
|
||||
rm Makefile source
|
||||
cp -t "$_outdir" -a .
|
||||
|
||||
cd "$_kdir_src"
|
||||
msg "Copying kernel out-of-tree build tree"
|
||||
cp -t "$_outdir" -a scripts include
|
||||
find . \
|
||||
-path './include/*' -prune -o \
|
||||
-path './scripts/*' -prune -o \
|
||||
-type f \( \
|
||||
-name 'Makefile*' -o \
|
||||
-name 'Kconfig*' -o \
|
||||
-name 'Kbuild*' -o \
|
||||
-name '*.sh' -o \
|
||||
-name '*.pl' -o \
|
||||
-name '*.lds' -o \
|
||||
-name 'Platform' \
|
||||
\) -print | \
|
||||
cpio -pdm "$_outdir"
|
||||
find ./arch \
|
||||
-path './arch/*/include/*' \
|
||||
-type f -print | \
|
||||
cpio -pdm "$_outdir"
|
||||
|
||||
mkdir -p "$_builddir"
|
||||
ln -sf "$_outdir" "$_builddir"/build
|
||||
ln -sf "/usr/src/linux-headers-$_kabi" "$_builddir"/build
|
||||
}
|
||||
|
||||
_headerspkg() {
|
||||
_pkg_header() {
|
||||
|
||||
provides="linux-headers=$pkgver-r$pkgrel"
|
||||
_spvars
|
||||
_bvars
|
||||
|
||||
local _outdir="$subpkgdir/usr"
|
||||
cd "$srcdir"/"linux-$pkgver"
|
||||
mkdir -p "$_outdir"
|
||||
|
||||
cd "$_kdir_src"
|
||||
make headers_install \
|
||||
ARCH="$_carch" \
|
||||
INSTALL_HDR_PATH="$_outdir"
|
||||
|
||||
rm -f **/.install **/install.cmd
|
||||
|
||||
rm -rf "$subpkgdir/usr/include/drm" # provided by libdrm-dev
|
||||
rm -rf "$_outdir/include/drm" # provided by libdrm-dev
|
||||
}
|
||||
|
||||
sha512sums="
|
||||
37262e3793ed433ee619e7b08c0ab64d34bbc66e29229025ada498edf45ab2c870569c0a3b17f026379c67153f277e90e1b301c95711638645bde025230201ef linux-5.10.52.tar.xz
|
||||
53b80d1027c6df6a4f13237a21a3ea69bfe51ba12dd4bf4e984da29150e457fea6fdc493542e4b86a04a9ba1481ae0db866bd883767f7107c323b41fb9fe022c linux-5.10.55.tar.xz
|
||||
7ae670f2dbbdec616becce3944fe190a797a19346b4fa266deae71d4c1ccd7b0e60e400bde47d32261cb15c1b2f1579a2848adace3397d82552c52bff1421f0a config-full.aarch64
|
||||
84aaad1001be4e55c5885dcf27a4647028319123bf54195f8c1233287bec9c890dbb131920976e950136d5eacc7ff153fc9ad305cfd0ca28fd0194a263e8be4f config-full.armv7
|
||||
0caf98dec1162b1ba4e4bb4e198d0a34e59ac022532d562961cf9b22cbdb930675ff3a845bb17ddff83b91a84ad61df9d607f175c34133916e0a3cdbb4c13786 config-full.mips64
|
Loading…
Reference in New Issue