linux: update and fix aarch64

This commit is contained in:
Ella-0 2021-09-26 11:44:30 +00:00
parent 2b88699048
commit 7186587583

View file

@ -1,4 +1,4 @@
pkgver=5.13.8 pkgver=5.14.7
pkgname=linux pkgname=linux
pkgrel=1 pkgrel=1
ext="dev" ext="dev"
@ -10,39 +10,45 @@ fetch() {
cd $pkgname-$pkgver cd $pkgname-$pkgver
# use Alpine's kernel config so we don't have to maintain one # use Alpine's kernel config so we don't have to maintain one
curl "https://git.alpinelinux.org/aports/plain/community/linux-edge/config-edge.$(uname -m)" -o .config # curl "https://git.alpinelinux.org/aports/plain/community/linux-edge/config-edge.$(uname -m)" -o .config
patch -p1 < ../kernel-no-perl.patch patch -p1 < ../kernel-no-perl.patch
patch -p1 < ../../kernel-byacc.patch patch -p1 < ../../kernel-byacc.patch
patch -p1 < ../../reflex.patch # patch -p1 < ../../reflex.patch
} }
_arch=$ARCH
case $_arch in
aarch64*) _arch="arm64" ;;
esac
build() { build() {
cd $pkgname-$pkgver cd $pkgname-$pkgver
# gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 defconfig gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch defconfig
gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ LEX=reflex YACC=yacc LLVM_IAS=1 olddefconfig gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch localmodconfig
# gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ LEX=lex YACC=yacc LLVM_IAS=1 menuconfig # gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ LEX=lex YACC=yacc LLVM_IAS=1 menuconfig
# cp .config ../../$(uname -m).config.new # cp .config ../../$(uname -m).config.new
sed -i 's/CONFIG_UNWINDER_ORC=y/# CONFIG_UNWINDER_ORC is not set/g' .config sed -i 's/CONFIG_UNWINDER_ORC=y/# CONFIG_UNWINDER_ORC is not set/g' .config
sed -i 's/# CONFIG_UNWINDER_FRAME_POINTER is not set/CONFIG_UNWINDER_FRAME_POINTER=y/g' .config sed -i 's/# CONFIG_UNWINDER_FRAME_POINTER is not set/CONFIG_UNWINDER_FRAME_POINTER=y/g' .config
gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ LEX=reflex YACC=yacc LLVM_IAS=1 gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch
} }
package() { package() {
cd $pkgname-$pkgver cd $pkgname-$pkgver
install -d $pkgdir/boot install -d $pkgdir/boot
gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 INSTALL_PATH=$pkgdir/boot install gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch INSTALL_PATH=$pkgdir/boot install
gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 INSTALL_MOD_PATH=$pkgdir/ modules_install gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch INSTALL_MOD_PATH=$pkgdir/ modules_install
} }
package_dev() { package_dev() {
cd $pkgname-$pkgver cd $pkgname-$pkgver
if stat /usr/bin/rsync 2>/dev/null /dev/null; then if stat /usr/bin/rsync 2>/dev/null /dev/null; then
gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 INSTALL_HDR_PATH=$pkgdir/usr headers_install gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch INSTALL_HDR_PATH=$pkgdir/usr headers_install
else else
gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 headers gmake CC=cc CXX=c++ HOSTCC=cc HOSTCXX=c++ YACC=yacc LLVM_IAS=1 ARCH=$_arch headers
find -name '.*' -exec rm {} \; find -name '.*' -exec rm {} \;
rm usr/include/Makefile rm usr/include/Makefile
cp -r usr/include $pkgdir/usr install -d $pkgdir/usr/
cp -r usr/include $pkgdir/usr/
fi fi
} }