# Kernel config based on: arch/arm64/configs/oneplus2_defconfig pkgname="linux-oneplus-oneplus2" pkgver=3.10.108 pkgrel=0 pkgdesc="OnePlus 2 kernel fork" arch="aarch64" _carch="arm64" _flavor="oneplus-oneplus2" url="https://kernel.org" license="GPL2" options="!strip !check !tracedeps" makedepends="perl sed installkernel bash gmp-dev bc linux-headers elfutils-dev" HOSTCC="${CC:-gcc}" HOSTCC="${HOSTCC#${CROSS_COMPILE}}" # Source _repository="android_kernel_oneplus_msm8994" _commit="91bca269f649061eb5a54510f466d06c3b5ca1fb" _config="config-${_flavor}.${arch}" source=" $pkgname-$_commit.tar.gz::https://github.com/LineageOS/${_repository}/archive/${_commit}.tar.gz $_config compiler-gcc6.h 00_mt_width_major_params.patch " builddir="$srcdir/${_repository}-${_commit}" prepare() { default_prepare # gcc6 support cp -v "$srcdir/compiler-gcc6.h" "$builddir/include/linux/" # Remove -Werror from all makefiles find . -type f -name Makefile -print0 | \ xargs -0 sed -i 's/-Werror-/-W/g' find . -type f -name Makefile -print0 | \ xargs -0 sed -i 's/-Werror//g' sed -i 's/-Werror//g' drivers/staging/qcacld-2.0/Kbuild # Prepare kernel config ('yes ""' for kernels lacking olddefconfig) cp "$srcdir"/$_config "$builddir"/.config yes "" | make ARCH="$_carch" HOSTCC="$HOSTCC" oldconfig } menuconfig() { cd "$builddir" make ARCH="$_carch" menuconfig cp .config "$startdir"/$_config } build() { unset LDFLAGS make ARCH="$_carch" CC="${CC:-gcc}" \ KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS" } package() { # kernel.release install -D "$builddir/include/config/kernel.release" \ "$pkgdir/usr/share/kernel/$_flavor/kernel.release" # zImage (find the right one) cd "$builddir/arch/$_carch/boot" _target="$pkgdir/boot/vmlinuz-$_flavor" for _zimg in zImage-dtb Image.gz-dtb *zImage Image; do [ -e "$_zimg" ] || continue msg "zImage found: $_zimg" install -Dm644 "$_zimg" "$_target" break done if ! [ -e "$_target" ]; then error "Could not find zImage in $PWD!" return 1 fi } sha512sums="4eadeaef50e141b3664552ade094dfc35e3422d3e1614832d007a1a043eada8a84a8101f8d199afce59d6379338d9df82d62b6af32d89fe6275130263cf4daab linux-oneplus-oneplus2-91bca269f649061eb5a54510f466d06c3b5ca1fb.tar.gz 04a7ffa09de824d117be7412e6b35b21a65d83a54b01c8ee76429a5015b3d123e0ed45399e9c68acfe4dd20d2000fb1af5b2e07401f4bac4280a15583ca01928 config-oneplus-oneplus2.aarch64 d80980e9474c82ba0ef1a6903b434d8bd1b092c40367ba543e72d2c119301c8b2d05265740e4104ca1ac5d15f6c4aa49e8776cb44264a9a28dc551e0d1850dcc compiler-gcc6.h d4eff67f99708e091499ce033a0709ba6765d83ed74c7411bd7d8ec72ce822db4e7c3bc8e7f51ccc8610486546ea9d9485a7cb93a761c8307b94283b337da726 00_mt_width_major_params.patch"