Drop 32 bit binaries

- update unix/win/mac 64 bit binaries
 - fixes #1598
 - refs #1594
This commit is contained in:
Connor Tumbleson 2017-08-24 15:53:52 -04:00
parent 91ef166ffb
commit fa966d2d66
7 changed files with 10 additions and 23 deletions

View File

@ -234,13 +234,7 @@ you can clone the modified repo from first step into this directory.
The steps below are different per flavor and operating system. For cross compiling the Windows binary on Unix, The steps below are different per flavor and operating system. For cross compiling the Windows binary on Unix,
we lose the ability to quickly build just the aapt binary. So the Windows procedure builds the entire Sdk. we lose the ability to quickly build just the aapt binary. So the Windows procedure builds the entire Sdk.
#### Unix 32 #### Unix
1. `source build/envsetup.sh`
2. `lunch sdk-eng`
3. `make OUT_DIR=out-x32 LOCAL_MULTILIB=32 USE_NINJA=false aapt`
4. `strip out-x32/host/linux-x86/bin/aapt`
#### Unix 64
1. `source build/envsetup.sh` 1. `source build/envsetup.sh`
2. `lunch sdk-eng` 2. `lunch sdk-eng`
3. `make OUT_DIR=out-x64 LOCAL_MULTILIB=64 USE_NINJA=false aapt` 3. `make OUT_DIR=out-x64 LOCAL_MULTILIB=64 USE_NINJA=false aapt`
@ -252,16 +246,13 @@ we lose the ability to quickly build just the aapt binary. So the Windows proced
3. `make PRODUCT-sdk-win_sdk USE_NINJA=false` 3. `make PRODUCT-sdk-win_sdk USE_NINJA=false`
4. `strip out/host/windows-x86/bin/aapt.exe` 4. `strip out/host/windows-x86/bin/aapt.exe`
#### Mac 32 #### Mac
1. `source build/envsetup.sh`
2. `lunch sdk-eng`
3. `make OUT_DIR=out-x32 LOCAL_MULTILIB=32 USE_NINJA=false aapt`
#### Mac 64
1. `source build/envsetup.sh` 1. `source build/envsetup.sh`
2. `lunch sdk-eng` 2. `lunch sdk-eng`
3. `make OUT_DIR=out-x64 LOCAL_MULTILIB=64 USE_NINJA=false aapt` 3. `make OUT_DIR=out-x64 LOCAL_MULTILIB=64 USE_NINJA=false aapt`
As of Android Oreo (API 26) all aapt binaries are 64 bit.
# Gradle Tips n Tricks # Gradle Tips n Tricks
./gradlew build shadowJar proguard -x test ./gradlew build shadowJar proguard -x test

View File

@ -788,19 +788,15 @@ final public class AndrolibResources {
public File getAaptBinaryFile() throws AndrolibException { public File getAaptBinaryFile() throws AndrolibException {
File aaptBinary; File aaptBinary;
if (! OSDetection.is64Bit()) {
throw new AndrolibException("32 bit OS detected. No 32 bit binaries available.");
}
try { try {
if (OSDetection.isMacOSX()) { if (OSDetection.isMacOSX()) {
if (OSDetection.is64Bit()) { aaptBinary = Jar.getResourceAsFile("/prebuilt/aapt/macosx/aapt", AndrolibResources.class);
aaptBinary = Jar.getResourceAsFile("/prebuilt/aapt/macosx/64/aapt", AndrolibResources.class);
} else {
aaptBinary = Jar.getResourceAsFile("/prebuilt/aapt/macosx/32/aapt", AndrolibResources.class);
}
} else if (OSDetection.isUnix()) { } else if (OSDetection.isUnix()) {
if (OSDetection.is64Bit()) { aaptBinary = Jar.getResourceAsFile("/prebuilt/aapt/linux/aapt", AndrolibResources.class);
aaptBinary = Jar.getResourceAsFile("/prebuilt/aapt/linux/64/aapt", AndrolibResources.class);
} else {
aaptBinary = Jar.getResourceAsFile("/prebuilt/aapt/linux/32/aapt", AndrolibResources.class);
}
} else if (OSDetection.isWindows()) { } else if (OSDetection.isWindows()) {
aaptBinary = Jar.getResourceAsFile("/prebuilt/aapt/windows/aapt.exe", AndrolibResources.class); aaptBinary = Jar.getResourceAsFile("/prebuilt/aapt/windows/aapt.exe", AndrolibResources.class);
} else { } else {