diff options
| author | Woodpecker CI <emmett1.2miligrams@protonmail.com> | 2025-06-03 14:32:36 +0000 |
|---|---|---|
| committer | Woodpecker CI <emmett1.2miligrams@protonmail.com> | 2025-06-03 14:32:36 +0000 |
| commit | 93a354611e38a6949add5c2e5ccc93ef79b9755f (patch) | |
| tree | 7fee41752b1047d74c59f8ee046cd62735e7e934 /linux/abuild | |
| parent | 35912580b66e9439f91ea441938828ad8aa33b0d (diff) | |
| download | alicelinux-93a354611e38a6949add5c2e5ccc93ef79b9755f.tar.gz alicelinux-93a354611e38a6949add5c2e5ccc93ef79b9755f.zip | |
Woodpecker CI 5171f1fdd74e7137c305450dd69a29fa5be4143f [SKIP CI]
Diffstat (limited to 'linux/abuild')
| -rw-r--r-- | linux/abuild | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/linux/abuild b/linux/abuild new file mode 100644 index 00000000..b5c2d078 --- /dev/null +++ b/linux/abuild @@ -0,0 +1,79 @@ +name=linux +version=6.12.11 +release=1 +source="https://cdn.kernel.org/pub/$name/kernel/v6.x/$name-$version.tar.xz + dotconfig" + +build() { + make mrproper + + cp $SRC/dotconfig .config + + sed '/^CONFIG_LOGO=/d' -i .config + echo '# CONFIG_LOGO is not set' >> .config + sed '/^CONFIG_LOGO_LINUX_CLUT224=/d' -i .config + echo '# CONFIG_LOGO_LINUX_CLUT224 is not set' >> .config + sed '/^CONFIG_LOCALVERSION=/d' -i .config + echo 'CONFIG_LOCALVERSION="-Alice"' >> .config + sed '/^CONFIG_IKHEADERS=/d' -i .config + echo '# CONFIG_IKHEADERS is not set' >> .config + sed '/^CONFIG_DEFAULT_HOSTNAME=/d' -i .config + echo 'CONFIG_DEFAULT_HOSTNAME="alice"' >> .config + sed '/^# CONFIG_MODULE_COMPRESS_XZ/d' -i .config + echo 'CONFIG_MODULE_COMPRESS_XZ=y' >> .config + sed '/^# CONFIG_EROFS_FS/d' -i .config + echo 'CONFIG_EROFS_FS=y' >> .config + + make olddefconfig + + kernver=${version}$(grep CONFIG_LOCALVERSION= .config | cut -d '"' -f2) + + [ "$MENUCONFIG" ] && make menuconfig + + make bzImage modules + make INSTALL_MOD_PATH=$PKG INSTALL_MOD_STRIP=1 modules_install + + mkdir -p $PKG/boot + + cp arch/x86/boot/bzImage $PKG/boot/vmlinuz-linux + + make clean + make prepare + + rm -rf $PKG/lib/firmware + + for file in $(ls arch); do + case $file in + x86|Kconfig) continue ;; + *) rm -fr arch/$file ;; + esac + done + + # strip down sources + # don't package the kernel in the sources directory + find . -name "*Image" -exec rm "{}" \; + find . -name "*.cmd" -exec rm -f "{}" \; + rm -f .*.d + + rm -fr firmware ipc .config.old .version .cocciconfig \ + .get_maintainer.ignore .gitattributes .gitignore .mailmap \ + COPYING CREDITS MAINTAINERS README Documentation + find . -name ".gitignore" -exec rm "{}" \; + for dir in block certs crypto drivers fs init kernel lib mm net samples security sound usr virt; do + find $dir -type f \( -name "*.c" -o -name "*.h" \) -exec rm "{}" \; + done + for i in $(ls tools); do + [ "$i" = "objtool" ] || rm -fr tools/$i + done + for i in $(ls tools/objtool); do + [ "$i" = "objtool" ] || rm -fr tools/objtool/$i + done + + rm $PKG/lib/modules/$kernver/build \ + $PKG/lib/modules/$kernver/source || true + mv $SRC/linux-${version%.0} $PKG/lib/modules/$kernver/build + ln -sv build $PKG/lib/modules/$kernver/source + + # remove now broken symlinks + find -L $PKG/lib/modules/$kernver/build -type l -exec rm -f "{}" \; +} |