about summary refs log tree commit diff stats
path: root/core/ports/linux-blob/Pkgfile
diff options
context:
space:
mode:
Diffstat (limited to 'core/ports/linux-blob/Pkgfile')
-rw-r--r--core/ports/linux-blob/Pkgfile60
1 files changed, 60 insertions, 0 deletions
diff --git a/core/ports/linux-blob/Pkgfile b/core/ports/linux-blob/Pkgfile
new file mode 100644
index 0000000..ecb228d
--- /dev/null
+++ b/core/ports/linux-blob/Pkgfile
@@ -0,0 +1,60 @@
+# Description:  Linux libre kernel that comes without blobs
+# URL:          http://linux-libre.fsfla.org
+# Maintainer:   Silvino, silvino at bk dot ru
+# Depends on:   grub2 dracut
+
+name=linux-blob
+version=4.9.10
+release=1
+source=(https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-$version.tar.xz \
+    https://raw.githubusercontent.com/graysky2/kernel_gcc_patch/master/enable_additional_cpu_optimizations_for_gcc_v4.9%2B_kernel_v3.15%2B.patch \
+    https://grsecurity.net/test/grsecurity-3.1-4.9.9-201702122044.patch \
+    port-blob-grsecurity.patch \
+    port-blob-make.patch \
+    port-blob-cpu.patch \
+    config-c9)
+
+build() {
+
+    mkdir -p $PKG/usr/src
+
+
+    # /usr/src/version-cpu_optimizations.patch
+    install -m 0644  $SRC/enable_additional_cpu_optimizations_for_gcc_v4.9%2B_kernel_v3.15%2B.patch $PKG/usr/src/${version}-cpu_optimizations.patch
+
+    # /usr/src/grsecurity-version.patch
+    install -m 0644  $SRC/grsecurity-3.1-4.9.9-201702122044.patch $PKG/usr/src/
+
+    patch < port-blob-grsecurity.patch
+    patch < port-blob-cpu.patch
+
+    cd linux-$version
+
+    patch < ${SRC}/port-blob-make.patch
+
+    make distclean
+
+    patch -p1 < $SRC/grsecurity-3.1-4.9.9-201702122044.patch
+    patch -p1 < $SRC/enable_additional_cpu_optimizations_for_gcc_v4.9%2B_kernel_v3.15%2B.patch
+
+    cp $SRC/config-c9 .config
+
+    make silentoldconfig
+    make nconfig
+    # make localmodconfig
+
+    install -m 0644  .config $PKG/usr/src/${version}-blob-config
+
+    make LOCALVERSION= bzImage modules
+    make INSTALL_MOD_PATH=$PKG modules_install
+
+    install -m 0644 -D arch/x86_64/boot/bzImage $PKG/boot/vmlinuz-$version-blob
+    install -m 0644  System.map $PKG/boot/System.map-$version-blob
+    install -m 0644 .config $PKG/boot/config-$version-blob
+
+    rm ${PKG}/lib/modules/${version}-blob/source
+    rm ${PKG}/lib/modules/${version}-blob/build
+
+    ln -s /usr/src/linux-${version} $PKG/lib/modules/${version}-blob/source
+    ln -s /usr/src/linux-${version} $PKG/lib/modules/${version}-blob/build
+}