summaryrefslogtreecommitdiff
path: root/linux-libre.xibuild
diff options
context:
space:
mode:
Diffstat (limited to 'linux-libre.xibuild')
-rw-r--r--linux-libre.xibuild69
1 files changed, 69 insertions, 0 deletions
diff --git a/linux-libre.xibuild b/linux-libre.xibuild
new file mode 100644
index 0000000..cb7be8f
--- /dev/null
+++ b/linux-libre.xibuild
@@ -0,0 +1,69 @@
+#!/bin/sh
+
+MAKEDEPS="make bc"
+DEPS="sbase kmod"
+
+PKG_VER=5.18.1
+SOURCE=https://cdn.kernel.org/pub/linux/kernel/v${PKG_VER%%.*}.x/linux-$PKG_VER.tar.xz
+ADDITIONAL="
+ fix-sbase-coreutils.patch
+ config
+ https://linux-libre.fsfla.org/pub/linux-libre/releases/$PKG_VER-gnu/deblob-${PKG_VER%.*}
+ https://linux-libre.fsfla.org/pub/linux-libre/releases/$PKG_VER-gnu/deblob-check
+"
+
+prepare () {
+ sh deblob-${PKG_VER%.*} --force
+
+ apply_patches
+ cp config .config
+
+ export GREP="ggrep"
+
+ make olddefconfig
+ make -s kernelrelease > version
+ echo "Prepared linux version $(cat version)"
+}
+
+build () {
+ make all
+}
+
+package () {
+ local kernver="$(cat version)"
+ local modulesdir="$PKG_DEST/usr/lib/modules/$kernver"
+
+ echo "Installing boot image..."
+ mkdir -p $PKG_DEST/boot
+
+ cp arch/x86/boot/bzImage $PKG_DEST/boot/vmlinuz-libre-$kernver
+ cp System.map $PKG_DEST/boot/System.map-libre-$kernver
+ cp .config $PKG_DEST/boot/config-libre-$kernver
+
+ install -d $PKG_DEST/usr/share/doc/linux-libre-$kernver
+ cp -r Documentation/* $PKG_DEST/usr/share/doc/linux-libre-$kernver
+
+ install -m755 -d $PKG_DEST/etc/modprobe.d
+
+ echo "Installing modules..."
+ make INSTALL_MOD_PATH="$PKG_DEST/usr" INSTALL_MOD_STRIP=1 modules_install
+ builddir=$modulesdir/build
+ rm $modulesdir/source
+ rm $builddir
+ mkdir $builddir
+ echo "Installing build files..."
+ install -D -m644 .config "$builddir"
+ install -D -m644 Makefile "$builddir"
+ install -D -m644 Module.symvers "$builddir"
+ install -D -m644 System.map "$builddir"
+ install -D -m644 version "$builddir"
+ install -D -m644 vmlinux "$builddir"
+ install -D -m644 kernel/Makefile "$builddir/kernel/Makefile"
+ install -D -m644 arch/x86/Makefile "$builddir/arch/x86/Makefile"
+ cp -r scripts "$builddir"
+
+ install -D tools/objtool/objtool "$builddir/tools/objtool"
+ install -D tools/bpf/resolve_btfids/resolve_btfids "$builddir/tools/bpf/resolve_btfids"
+ ln -s /usr/src/linux $modulesdir/source
+}
+