APKBUILD 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. # APKBUILD based on linux-vanilla aport. Changes:
  2. # - disabled module installation
  3. # - add !check !tracedeps
  4. # - add xz package (necessary to build)
  5. #
  6. # Kernel config based on: arch/arm/configs/bravo_defconfig
  7. # Changes:
  8. # - apply patches to compile with gcc6
  9. # - enable devtmpfs (needed for udev -> touch support in weston)
  10. # - enable udev required options (https://wiki.gentoo.org/wiki/Udev#Kernel)
  11. # - disable ANDROID_PARANOID_NETWORK (removes network restrictions)
  12. _vendor=htc
  13. _flavor=htc-bravo
  14. _config="config-${_flavor}.armhf"
  15. _hash="4bc19919f805777947c243e6c2ed41ece530488b"
  16. pkgname=linux-${_flavor}
  17. pkgver=3.0.16
  18. case $pkgver in
  19. *.*.*) _kernver=${pkgver%.*};;
  20. *.*) _kernver=$pkgver;;
  21. esac
  22. pkgrel=7
  23. arch="armhf"
  24. pkgdesc="HTC Desire kernel from spezi77"
  25. url="https://github.com/spezi77/android_kernel_htc_qsd8k_3.0"
  26. depends="postmarketos-mkinitfs"
  27. makedepends="perl sed installkernel bash gmp-dev bc linux-headers elfutils-dev xz"
  28. options="!strip !check !tracedeps"
  29. install=
  30. source="
  31. $pkgname-$_hash.tar.gz::https://github.com/spezi77/android_kernel_htc_qsd8k_3.0/archive/${_hash}.tar.gz
  32. $_config
  33. compiler-gcc6.h
  34. "
  35. subpackages=""
  36. license="GPL2"
  37. _abi_release=${pkgver}
  38. _carch="arm"
  39. HOSTCC="${CC:-gcc}"
  40. HOSTCC="${HOSTCC#${CROSS_COMPILE}}"
  41. ksrcdir="$srcdir/android_kernel_htc_qsd8k_3.0-${_hash}"
  42. prepare() {
  43. local _patch_failed=
  44. cd "$ksrcdir"
  45. # first apply patches in specified order
  46. for i in $source; do
  47. case $i in
  48. *.patch)
  49. msg "Applying $i..."
  50. if ! patch -s -p1 -N -i "$srcdir"/$i; then
  51. echo $i >>failed
  52. _patch_failed=1
  53. fi
  54. ;;
  55. esac
  56. done
  57. if ! [ -z "$_patch_failed" ]; then
  58. error "The following patches failed:"
  59. cat failed
  60. return 1
  61. fi
  62. # gcc6 support
  63. cp -v "$srcdir/compiler-gcc6.h" "$ksrcdir/include/linux/"
  64. mkdir -p "$srcdir"/build
  65. cp "$srcdir"/$_config "$srcdir"/build/.config
  66. yes "" | make -C "$ksrcdir" O="$srcdir"/build ARCH="$_carch" HOSTCC="$HOSTCC" \
  67. oldconfig
  68. }
  69. # this is so we can do: 'abuild menuconfig' to reconfigure kernel
  70. menuconfig() {
  71. cd "$srcdir"/build
  72. echo "--[ menuconfig ]--"
  73. make ARCH="$_carch" menuconfig
  74. cp .config "$startdir"/$_config
  75. }
  76. build() {
  77. cd "$srcdir"/build
  78. unset LDFLAGS
  79. echo "--[ Build kernel + modules ]--"
  80. make ARCH="$_carch" CC="${CC:-gcc}" \
  81. KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine"
  82. }
  83. package() {
  84. echo "--[ Installing kernel ]--"
  85. install -Dm644 "$srcdir/build/arch/arm/boot/zImage" \
  86. "$pkgdir/boot/vmlinuz-$_flavor"
  87. install -D "$srcdir/build/include/config/kernel.release" \
  88. "$pkgdir/usr/share/kernel/$_flavor/kernel.release"
  89. }
  90. sha512sums="94929945d6fcb4428f320325ced207a9888cd758357766ef914c4ca2d5cea4b9cced77275463dac316591ba942e6e1514fec8c1f8e11c8324155116785ffb277 linux-htc-bravo-4bc19919f805777947c243e6c2ed41ece530488b.tar.gz
  91. 49460380237b391b9e0b79e3bad3ff65ea423a8ed0790501ae4c69652ff0799f21fa639bcb14014df81b5bbe361d0bf4665233d562d84047598bfca51b16dfc4 config-htc-bravo.armhf
  92. d80980e9474c82ba0ef1a6903b434d8bd1b092c40367ba543e72d2c119301c8b2d05265740e4104ca1ac5d15f6c4aa49e8776cb44264a9a28dc551e0d1850dcc compiler-gcc6.h"