update tools to the latest SDK/NDK versions

This commit is contained in:
Laurent Sansonetti
2013-11-21 18:41:25 +01:00
parent 047e554eac
commit d458b2e7e5

View File

@@ -33,8 +33,8 @@ desc "Create an application package file (.apk)"
task :build do
# XXX
FileUtils.mkdir_p("#{App.config.build_dir}/lib/armeabi")
sh "#{App.config.ndk_path}/toolchains/arm-linux-androideabi-4.6/prebuilt/darwin-x86/bin/arm-linux-androideabi-gcc -MMD -MP -fpic -ffunction-sections -funwind-tables -fstack-protector -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -no-canonical-prefixes -march=armv5te -mtune=xscale -msoft-float -mthumb -Os -g -DNDEBUG -fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 -O0 -UNDEBUG -marm -fno-omit-frame-pointer -Ijni -DANDROID -Wa,--noexecstack -I\"#{App.config.ndk_path}/platforms/android-14/arch-arm/usr/include\" -c #{App.config.build_dir}/payload.c -o #{App.config.build_dir}/payload.o"
sh "#{App.config.ndk_path}/toolchains/arm-linux-androideabi-4.6/prebuilt/darwin-x86/bin/arm-linux-androideabi-g++ -Wl,-soname,libpayload.so -shared --sysroot=\"#{App.config.ndk_path}/platforms/android-14/arch-arm\" #{App.config.build_dir}/payload.o -no-canonical-prefixes -Wl,--no-undefined -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -lc -lm -llog -o #{App.config.build_dir}/lib/armeabi/libpayload.so"
sh "#{App.config.ndk_path}/toolchains/arm-linux-androideabi-4.6/prebuilt/darwin-x86_64/bin/arm-linux-androideabi-gcc -MMD -MP -fpic -ffunction-sections -funwind-tables -fstack-protector -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -no-canonical-prefixes -march=armv5te -mtune=xscale -msoft-float -mthumb -Os -g -DNDEBUG -fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 -O0 -UNDEBUG -marm -fno-omit-frame-pointer -Ijni -DANDROID -Wa,--noexecstack -I\"#{App.config.ndk_path}/platforms/android-14/arch-arm/usr/include\" -c #{App.config.build_dir}/payload.c -o #{App.config.build_dir}/payload.o"
sh "#{App.config.ndk_path}/toolchains/arm-linux-androideabi-4.6/prebuilt/darwin-x86_64/bin/arm-linux-androideabi-g++ -Wl,-soname,libpayload.so -shared --sysroot=\"#{App.config.ndk_path}/platforms/android-14/arch-arm\" #{App.config.build_dir}/payload.o -no-canonical-prefixes -Wl,--no-undefined -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -lc -lm -llog -o #{App.config.build_dir}/lib/armeabi/libpayload.so"
# XXX
classes_dir = File.join(App.config.build_dir, 'classes')
@@ -57,7 +57,7 @@ task :build do
dex_classes = File.join(App.config.build_dir, 'classes.dex')
if !File.exist?(dex_classes) or rebuild_dex_classes
App.info 'Create', dex_classes
sh "\"#{App.config.sdk_path}/build-tools/android-4.2.2/dx\" --dex --output \"#{dex_classes}\" \"#{classes_dir}\" \"#{App.config.sdk_path}/tools/support/annotations.jar\""
sh "\"#{App.config.sdk_path}/build-tools/android-4.4/dx\" --dex --output \"#{dex_classes}\" \"#{classes_dir}\" \"#{App.config.sdk_path}/tools/support/annotations.jar\""
end
android_manifest = File.join(App.config.build_dir, 'AndroidManifest.xml')
@@ -87,10 +87,11 @@ EOS
if !File.exist?(archive) or File.mtime(dex_classes) > File.mtime(archive)
App.info 'Create', archive
resource_flags = App.config.resources_dirs.map { |x| '-S "' + x + '"' }.join(' ')
sh "\"#{App.config.sdk_path}/build-tools/android-4.2.2/aapt\" package -f -M \"#{android_manifest}\" #{resource_flags} -I \"#{App.config.sdk_path}/platforms/android-#{App.config.api_level}/android.jar\" -F \"#{archive}\""
sh "\"#{App.config.sdk_path}/build-tools/android-4.4/aapt\" package -f -M \"#{android_manifest}\" #{resource_flags} -I \"#{App.config.sdk_path}/platforms/android-#{App.config.api_level}/android.jar\" -F \"#{archive}\""
Dir.chdir(App.config.build_dir) do
sh "\"#{App.config.sdk_path}/build-tools/android-4.2.2/aapt\" add -f \"../#{archive}\" \"#{File.basename(dex_classes)}\""
sh "\"#{App.config.sdk_path}/build-tools/android-4.2.2/aapt\" add -f \"../#{archive}\" lib/armeabi/libpayload.so"
sh "\"#{App.config.sdk_path}/build-tools/android-4.4/aapt\" add -f \"../#{archive}\" \"#{File.basename(dex_classes)}\""
sh "\"#{App.config.sdk_path}/build-tools/android-4.4/aapt\" add -f \"../#{archive}\" lib/armeabi/libpayload.so"
end
end
App.info 'Sign', archive