From e3e67a821248b85c51e8dba9222dd2dffa31e73e Mon Sep 17 00:00:00 2001 From: David Gross Date: Thu, 27 Feb 2020 15:11:36 -0800 Subject: [PATCH] Move lld (darwin, linux) and add dependent libraries darwin: Move lld to lld-bin directory; add lib64/libc++.1.dylib; add trampoline linux: Move lld to lld-bin directory; add lib64/libc++.so.1; add trampoline Best practice is to ship necessary libraries of expected versions along with build tools, rather than requiring them to be found elsewhere. lld depends on libc++.1.dylib (darwin) or libc++.so.1 (linux) and looks for it in ../lib64, so we need to move lld to an appropriate relative location. In the old location of lld, we add a simple bash trampoline to invoke lld in lld-bin; this means Gradle, which invokes lld in the old location, does not have to change. Bug: 148267171 Bug: 142590626 Bug: 144040336 Test: (gLinux) m TARGET_PRODUCT=sdk_phone_armv7 TARGET_BUILD_VARIANT=userdebug sdk dist sdk_repo (gLinux) m TARGET_PRODUCT=sdk_phone_armv7 TARGET_BUILD_VARIANT=userdebug win_sdk dist sdk_repo Merged-In: I69b4ef79208bd7d06a377c0761671f1b572abced Change-Id: I69b4ef79208bd7d06a377c0761671f1b572abced (cherry picked from commit e9351e5061e2a9d2dfe92fb78731dbd0eada371e) --- build/sdk-darwin-x86.atree | 4 +++- build/sdk-linux-x86.atree | 4 +++- build/sdk-windows-x86.atree | 3 +++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/build/sdk-darwin-x86.atree b/build/sdk-darwin-x86.atree index 045017dcb..b278c1043 100644 --- a/build/sdk-darwin-x86.atree +++ b/build/sdk-darwin-x86.atree @@ -41,7 +41,9 @@ prebuilts/sdk/tools/darwin/bin/i686-linux-android-ld strip build-tools/${PL prebuilts/sdk/tools/darwin/bin/x86_64-linux-android-ld strip build-tools/${PLATFORM_NAME}/x86_64-linux-android-ld prebuilts/sdk/tools/darwin/bin/mipsel-linux-android-ld strip build-tools/${PLATFORM_NAME}/mipsel-linux-android-ld -prebuilts/sdk/tools/darwin/bin/lld strip build-tools/${PLATFORM_NAME}/lld +prebuilts/sdk/tools/lld build-tools/${PLATFORM_NAME}/lld +prebuilts/sdk/tools/darwin/bin/lld strip build-tools/${PLATFORM_NAME}/lld-bin/lld +prebuilts/sdk/tools/darwin/lib64/libc++.1.dylib strip build-tools/${PLATFORM_NAME}/lib64/libc++.1.dylib dalvik/dx/etc/mainDexClasses build-tools/${PLATFORM_NAME}/mainDexClasses diff --git a/build/sdk-linux-x86.atree b/build/sdk-linux-x86.atree index 0cd29deac..c4b1e4863 100644 --- a/build/sdk-linux-x86.atree +++ b/build/sdk-linux-x86.atree @@ -41,6 +41,8 @@ prebuilts/sdk/tools/linux/bin/i686-linux-android-ld strip build-tools/${PLA prebuilts/sdk/tools/linux/bin/x86_64-linux-android-ld strip build-tools/${PLATFORM_NAME}/x86_64-linux-android-ld prebuilts/sdk/tools/linux/bin/mipsel-linux-android-ld strip build-tools/${PLATFORM_NAME}/mipsel-linux-android-ld -prebuilts/sdk/tools/linux/bin/lld strip build-tools/${PLATFORM_NAME}/lld +prebuilts/sdk/tools/lld build-tools/${PLATFORM_NAME}/lld +prebuilts/sdk/tools/linux/bin/lld strip build-tools/${PLATFORM_NAME}/lld-bin/lld +prebuilts/sdk/tools/linux/lib64/libc++.so.1 strip build-tools/${PLATFORM_NAME}/lib64/libc++.so.1 dalvik/dx/etc/mainDexClasses build-tools/${PLATFORM_NAME}/mainDexClasses diff --git a/build/sdk-windows-x86.atree b/build/sdk-windows-x86.atree index 80af7efa0..4726aee66 100644 --- a/build/sdk-windows-x86.atree +++ b/build/sdk-windows-x86.atree @@ -138,7 +138,10 @@ prebuilts/sdk/tools/windows/bin/x86_64-linux-android-ld.exe strip build-too rm build-tools/${PLATFORM_NAME}/mipsel-linux-android-ld prebuilts/sdk/tools/windows/bin/mipsel-linux-android-ld.exe strip build-tools/${PLATFORM_NAME}/mipsel-linux-android-ld.exe +rm build-tools/${PLATFORM_NAME}/lib64/libc++.so.1 + rm build-tools/${PLATFORM_NAME}/lld +rm build-tools/${PLATFORM_NAME}/lld-bin/lld prebuilts/sdk/tools/windows/bin/lld.exe strip build-tools/${PLATFORM_NAME}/lld.exe dalvik/dx/etc/mainDexClasses.bat build-tools/${PLATFORM_NAME}/mainDexClasses.bat