mirror of
https://github.com/t2linux/fedora.git
synced 2026-04-30 13:51:42 -07:00
45 lines
1.6 KiB
Bash
Executable File
45 lines
1.6 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
FEDORA_KERNEL_VERSION=6.3.5-200.fc38
|
|
PATCHES_GIT=https://github.com/t2linux/linux-t2-patches
|
|
PATCHES_COMMIT=13dee3659d1ef17c5ea588c8be629fe693045496
|
|
|
|
echo "=====INSTALLING DEPENDENCIES====="
|
|
dnf install -y --quiet ncurses-devel libbpf fedpkg ccache openssl-devel libkcapi libkcapi-devel libkcapi-static libkcapi-tools
|
|
|
|
cd "/root/rpmbuild"/SPECS
|
|
|
|
echo "=====DOWNLOADING SOURCES====="
|
|
mkdir -p /tmp/extract-kernel
|
|
cd /tmp/extract-kernel
|
|
koji download-build --arch=src kernel-${FEDORA_KERNEL_VERSION}
|
|
|
|
echo "=====EXTRACTING SOURCES====="
|
|
rpmdev-extract kernel-${FEDORA_KERNEL_VERSION}.src.rpm
|
|
mkdir -p /kernel-build
|
|
mv -n kernel-*.src/* /kernel-build
|
|
|
|
echo "=====PREPARING SOURCES===="
|
|
cd /kernel-build
|
|
# Fedora devs are against merging kernel-local for all architectures when keys are not properly specified, so we have to patch it in.
|
|
sed -i "s@for i in %{all_arch_configs}@for i in *.config@g" kernel.spec
|
|
sed -i 's/# define buildid .local/%define buildid .t2/g' kernel.spec
|
|
# sed -i 's/%define specrelease 200%{?buildid}%{?dist}/%define specrelease 202%{?buildid}%{?dist}/' kernel.spec
|
|
# sed -i 's/%define pkgrelease 200/%define pkgrelease 202/' kernel.spec
|
|
|
|
echo "======DOWNLOADING PATCHES====="
|
|
rm -rf /tmp/download /tmp/src
|
|
mkdir /tmp/download && cd /tmp/download
|
|
git clone --single-branch --branch main ${PATCHES_GIT}
|
|
cd *
|
|
git checkout ${PATCHES_COMMIT}
|
|
|
|
cd /kernel-build
|
|
cat /tmp/download/*/extra_config > kernel-local
|
|
cat /tmp/download/*/*.patch > linux-kernel-test.patch
|
|
|
|
echo "=====BUILDING====="
|
|
cd /kernel-build
|
|
mock --buildsrpm --spec ./kernel.spec --sources . --resultdir ./_mock
|
|
mock --rebuild ./_mock/*.src.rpm --resultdir ./_mock
|
|
cp ./_mock/*.rpm /output |