... so that they can be loaded by Kleaf extensions
and read during the loading phase.
Moving forward, we should remove build configs in
the future and express constants in .bzl files. However,
for now, until kernel_build has been migrated to
use the defined cc_toolchain, we must keep this file.
Test: Treehugger
Bug: 228238975
Change-Id: Id9628663785970c460470382e1ae162e1112203d
Signed-off-by: Yifan Hong <elsk@google.com>
In order to support CONFIG_UAPI_HEADER_TEST=y with a bionic sysroot
using prebuilt bionic from the NDK, we need to set a different target
triple for USERCFLAGS than what's used when cross compiling the kernel
(so that the correct headers and libc.{a|so} are found+used).
Bug: 190019968
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Change-Id: Ib3e60c41b862cda9f79ff8d2c812aaa8bfb571af
LLVM_IAS=1 is implied by LLVM=1 as of LLVM_IAS as of v5.15-rc1 via
commit f12b034afe ("scripts/Makefile.clang: default to LLVM_IAS=1").
CROSS_COMPILE is no longer necessary when building with LLVM=1 as of
v5.15-rc1 via:
commit 231ad7f409 ("Makefile: infer --target from ARCH for CC=clang")
There is no need for CROSS_COMPILE_COMPAT as of v5.16-rc1 via
commit 3e6f8d1fa1 ("arm64: vdso32: require CROSS_COMPILE_COMPAT for gcc+bfd")
when LLVM=1 is set.
LINUX_GCC_CROSS_COMPILE_PREBUILTS_BIN was a temporary dependency until
LLVM_IAS=1 was enabled for all architectures. With LLVM_IAS=1 (implied
by LLVM=1), nothing in this directory is used and the variable can be
removed.
It doesn't hurt to respecify any of the above, but they are no longer
necessary.
Bug: 209655537
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Change-Id: I361b05ea9f36da933e6712150650f476b093d0a7
prepare-objtool no longer exists since it was removed in upstream
commit commit d989ac2c90b5 ("kbuild: remove libelf checks from top
Makefile").
Fixes: 0d989ac2c9 ("kbuild: remove libelf checks from top Makefile")
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Change-Id: I8e99bfffec4c2b9e2f36e48a49a2b3c6d61f4604
Copy vmlinux.symvers and modules.builtin to the DIST_DIR for mixed tree
builds. These files are used by the device kernel to modpost against the
GKI kernel.
These 3 new files add ~300 KB to the DIST_DIR
Bug: 178469391
Change-Id: Ic21a524aac05eafe18925982e860b0be9e6d8728
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
Prepare to enable LTO, which requires options that depends on objtool.
Bug: 175705438
Signed-off-by: Alistair Delva <adelva@google.com>
Change-Id: I830614180286b3e2222a5a445fb4db82658f6670
This reverts commit e145f7b103.
AOSP's distribution of GNU binutils always had a curious target triple
prefix on the binaries. Now that GNU binutils is deprecated for Android
Common Kernels, we can now remove this out of tree workaround. Now
building Android kernels with LLVM matches upstream (see
Documentation/kbuild/llvm.rst).
Bug: 118439987
Bug: 120440614
Bug: 141693040
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Change-Id: Iecaa3264a440f795f2f3a44bdf74fe28ad4ed1cc
The default goals for an ARCH=arm64 kernel will build all of the dtb
files available in the tree, and hard-codes the generation of a
gzip-compressed Image artifact. For GKI, we want to support various
compression methods (gz, lz4 and uncompressed) and this can be handled
outside of kbuild where compressor flags can be tuned. Also, GKI does
not need to build any dtb files because it is board-neutral, and in most
cases the dtbs will come from downstream kernels, not ACK.
On arm and aarch64, this suppresses the generation of the useless gzip
compressed Image artifact, and dtbs on the gki configs, which do not make
sense. The x86 defaults were already optimal but make them match
aarch64. On db845c, this builds only the needed dtb file and a compressed
artifact for backwards compatibility.
Bug: 152546767
Change-Id: If90ea331fc7564358b77a777fb367d7d2f95e6a6
Signed-off-by: Alistair Delva <adelva@google.com>
The build.config.* files largely contain duplicate information by their
nature. Reorganize them reduce duplication and to allow adding new
configurations without copying the definitions again.
Bug: 140224784
Change-Id: I6a3810a125b0ed48591690ca33bb5c02be58218a
Signed-off-by: Matthias Maennich <maennich@google.com>