From 9fc729b4b0335ea80d5bdd03705f2868d2f51db0 Mon Sep 17 00:00:00 2001 From: Alexey Neyman Date: Sat, 15 Dec 2018 00:39:04 -0800 Subject: Bionic modifies CT_TARGET_CFLAGS ... which, after a recent change, is not reflected into CT_ALL_TARGET_CFLAGS for non-multilib configurations. Signed-off-by: Alexey Neyman diff --git a/scripts/build/libc/bionic.sh b/scripts/build/libc/bionic.sh index 9f04e61..e122d86 100644 --- a/scripts/build/libc/bionic.sh +++ b/scripts/build/libc/bionic.sh @@ -21,10 +21,14 @@ bionic_main() CT_DoStep INFO "Installing C library binaries" CT_DoExecLog ALL cp -r "${CT_SRC_DIR}/android-ndk/platforms/android-${CT_ANDROID_API}/arch-${arch}/usr" "${CT_SYSROOT_DIR}" - # NB: Modifying CT_TARGET_CFLAGS here, not CT_ALL_TARGET_CFLAGS: the __ANDROID_API__ + # NB: Modifying both CT_TARGET_CFLAGS and CT_ALL_TARGET_CFLAGS: the __ANDROID_API__ # definition needs to be passed into GCC build, or the resulting libstdc++ gets # miscompiled (attempt to link against it results in unresolved symbols to stdout/...). # And since __ANDROID_API__ is a user config option, placing it with other user-supplied # options isn't completely out of character. + # On the other hand, CT_ALL_TARGET_CFLAGS in non-multilib builds is already set and does + # not get recalculated after GCC build, so setting CT_TARGET_CFLAGS is not reflected + # on other libraries/apps, such as gdbserver. CT_EnvModify CT_TARGET_CFLAGS "${CT_TARGET_CFLAGS} -D__ANDROID_API__=${CT_ANDROID_API}" + CT_EnvModify CT_ALL_TARGET_CFLAGS "${CT_ALL_TARGET_CFLAGS} -D__ANDROID_API__=${CT_ANDROID_API}" } -- cgit v0.10.2-6-g49f6