pmaports/device/linux-lg-dory/APKBUILD
Oliver Smith 4472448e6b
device/linux-*: make all kernels compile again
All kernels compile again, after the GCC 8 upgrade.

All 3.x kernels have been changed to use GCC 6 now, because we can't
say for sure that they boot with GCC 8 even if we made them compile
with that newer GCC. If someone wants to test a kernel for a newer
device which they can test, see the instructions on
<https://postmarketos.org/vendorkernel>.

The linux-sony-castor-windy 4.x kernel did not compile out of the box
with the latest GCC, so we set it to GCC 6 as well. This can probably
be fixed easily.

linux-teclast-x80-pro: removed Werror and updated to latest 4.14 kernel
from kernel.org, otherwise this would not compile anymore (tested with
both GCC 6 and 8, probably incompatibility with the latest binutils or
something).

This commit will take too long to compile in CI, so let's [skip ci].
I've compiled all kernels multiple times and fixed them up until all of
them were working again.

Related: #103
2018-11-27 07:47:11 +01:00

88 lines
3.3 KiB
Text

# APKBUILD based on linux-vanilla aport. Changes:
# - disabled module installation
# - add !check !tracedeps
# - package: just install zimage-dtb and kernel.release
#
# Kernel config based on: arch/arm/configs/dory_defconfig
# Changes:
# - apply patches to compile with gcc6
# - enable devtmpfs (needed for udev -> touch support in weston)
# - enabled CONFIG_VT (needed for weston to work)
# - disable ANDROID_PARANOID_NETWORK (removes network restrictions)
_vendor=lge
_flavor=lg-dory
_hash="6924014484d3406e3d2da384efc20e40e8a5ae80"
_config="config-${_flavor}.armhf"
pkgname=linux-${_flavor}
pkgver=3.10.40
case $pkgver in
*.*.*) _kernver=${pkgver%.*};;
*.*) _kernver=$pkgver;;
esac
pkgrel=3
arch="armhf"
pkgdesc="Kernel for LG G Watch"
url="https://android.googlesource.com/kernel/msm/+/android-msm-dory-3.10-marshmallow-mr1-wear-release"
depends=""
makedepends="perl sed installkernel bash gmp-dev bc linux-headers elfutils-dev gcc6"
options="!strip !check !tracedeps"
install=
source="
$pkgname-$_hash.tar.gz::https://github.com/android/kernel_msm/archive/${_hash}.tar.gz
$_config
compiler-gcc6.h
00_fix_return_address.patch
01_avoid_rpmb_read_during_boot.patch
02_fix_mdss_fb_refresh_rate.patch
03_fix_mdss_fb_memory_allocation.patch
"
subpackages=""
license="GPL2"
_abi_release=${pkgver}
_carch="arm"
# Compiler: this kernel was only tested with GCC6. Feel free to make a merge
# request if you find out that it is booting working with newer GCCs as
# well. See <https://postmarketos.org/vendorkernel> for instructions.
if [ "${CC:0:5}" != "gcc6-" ]; then
CC="gcc6-$CC"
HOSTCC="gcc6-gcc"
CROSS_COMPILE="gcc6-$CROSS_COMPILE"
fi
builddir="$srcdir/kernel_msm-${_hash}"
prepare() {
default_prepare
# gcc6 support
cp -v "$srcdir/compiler-gcc6.h" "$builddir/include/linux/"
cp "$srcdir"/$_config "$builddir"/.config
make ARCH="$_carch" HOSTCC="$HOSTCC" silentoldconfig
}
build() {
unset LDFLAGS
make ARCH="$_carch" CC="${CC:-gcc}" \
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine"
}
package() {
install -Dm644 "$builddir/arch/arm/boot/zImage-dtb" \
"$pkgdir/boot/vmlinuz-$_flavor"
install -D "$builddir/include/config/kernel.release" \
"$pkgdir/usr/share/kernel/$_flavor/kernel.release"
}
sha512sums="adc1e7852bebf3c11af87cfe9c994025e1415468be707664a25df33507d33de62125ab367dbc3f57ff84213ea479c2e8870d45603bc96df641b1bf853216201a linux-lg-dory-6924014484d3406e3d2da384efc20e40e8a5ae80.tar.gz
b1ee3b9792f7b3f73dd2311f1a5757bdbbf35b4ec2a928c5cf12cfe31c2d9ce0ff4b48758cd4994a07da5e0e708157824db5b84071bca9873a8593ae5e1c97d2 config-lg-dory.armhf
d80980e9474c82ba0ef1a6903b434d8bd1b092c40367ba543e72d2c119301c8b2d05265740e4104ca1ac5d15f6c4aa49e8776cb44264a9a28dc551e0d1850dcc compiler-gcc6.h
ea1d3b5a234fa565e3c1a792de48f4fc4e6023d281d303c8e319c7ef28edc5739ab0e4dea0139a41f0a5c7d03e27921ccaa214fd0ac5c72245a094ce60128864 00_fix_return_address.patch
760fdff79df31754ebed59839f34fc8c5a61750471614ac93a01b1e13b2535e7ca1f879c0cad3e83ad92946586c91679ba853eac4fe454d7e948317c84d81941 01_avoid_rpmb_read_during_boot.patch
26b599d6b0c435d9e0b80f578c1cc0714d60f532a98efbbcb0e313f5c5dcd2c8619afa5776091d14ea65e268a1f128b378fe30ba1743e1428f3300b505a9861c 02_fix_mdss_fb_refresh_rate.patch
5208c3f33099e22516e00ab90234784918157d0712a8a9cf81418a7ea1c136601cb54f83d490577f2cadb6ed94ac6c6f242e7b310fb5f09222de568e416c6731 03_fix_mdss_fb_memory_allocation.patch"