build.config.msm.gki 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. ################################################################################
  2. # Common MSM configuration for building GKI-based kernels
  3. DEFCONFIG="gki_defconfig"
  4. # Configuration options to build images for MSM targets
  5. # Must be included AFTER build.config.msm.<target>
  6. # boot image macros
  7. BUILD_BOOT_IMG=1
  8. BUILD_INITRAMFS=1
  9. KMI_SYMBOL_LIST_MODULE_GROUPING=0
  10. KMI_SYMBOL_LIST_ADD_ONLY=1
  11. KMI_ENFORCED=1
  12. MAKE_GOALS="modules dtbs"
  13. GKI_BUILD_CONFIG=common/build.config.gki.aarch64
  14. GKI_SKIP_CP_KERNEL_HDR=1
  15. # "Hacks" to enable symbol trimming on the common kernel from here (msm-kernel). To be removed once
  16. # we get a common kernel with symbol trimming.
  17. GKI_KMI_SYMBOL_LIST=../msm-kernel/android/abi_gki_aarch64_qcom
  18. KMI_SYMBOL_LIST=android/abi_gki_aarch64_qcom
  19. if [ "${VARIANT}" = gki ]; then
  20. GKI_TRIM_NONLISTED_KMI=${TRIM_NONLISTED_KMI:-1}
  21. fi
  22. GKI_KMI_SYMBOL_LIST_STRICT_MODE=1
  23. GKI_KMI_ENFORCED=1
  24. KMI_ENFORCED=1
  25. function sanity_check_abi() {
  26. if [ -z "${GKI_BUILD_CONFIG}" ]; then
  27. # When running build_abi.sh, mixed build is explicitly disabled
  28. # In that case, turn on some options for trimming and strict mode
  29. # which would normally be disabled because they conflict with
  30. # mixed build
  31. PREPARE_SYSTEM_DLKM=0
  32. if [ "${VARIANT}" = gki ]; then
  33. TRIM_NONLISTED_KMI=1
  34. KMI_SYMBOL_LIST_STRICT_MODE=1
  35. fi
  36. return
  37. fi
  38. }
  39. append_cmd POST_DEFCONFIG_CMDS 'sanity_check_abi'
  40. function build_defconfig_fragments() {
  41. if [[ "${VARIANT}" =~ ^(gki|consolidate)$ ]]; then
  42. apply_defconfig_fragment ${KERNEL_DIR}/arch/${ARCH}/configs/vendor/${MSM_ARCH}_GKI.config vendor/${MSM_ARCH}-gki_defconfig
  43. if [ "${VARIANT}" = gki ]; then
  44. return
  45. fi
  46. GKI_BUILD_CONFIG=common/build.config.gki-debug.aarch64
  47. GKI_GKI_BUILD_CONFIG_FRAGMENT=msm-kernel/build.config.gki_consolidate.aarch64
  48. # ABI comparison isn't applicable on consolidate variant
  49. unset ABI_DEFINITION
  50. apply_defconfig_fragment ${KERNEL_DIR}/arch/${ARCH}/configs/consolidate.fragment consolidate_defconfig
  51. apply_defconfig_fragment ${KERNEL_DIR}/arch/${ARCH}/configs/vendor/${MSM_ARCH}_consolidate.config vendor/${MSM_ARCH}-consolidate_defconfig
  52. elif [ "${VARIANT}" = gki-ack ]; then
  53. # In gki-only, then using ACK's GKI config directly
  54. . ${KERNEL_DIR}/build.config.gki
  55. else
  56. echo "Variant '${VARIANT}' unsupported by gki"
  57. exit 1
  58. fi
  59. }
  60. build_defconfig_fragments