mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-12 21:10:42 +00:00
renderdoccmd: Use Android d8 instead of dx dexer
build-tools 31.0.0 doesn't ship with `dx` anymore, and Android Studio switched to `d8` back in April 2018 [1]. The fallback for `dx` remains, in case older build-tools are used that do not support `d8` just yet. [1]: https://android-developers.googleblog.com/2018/04/android-studio-switching-to-d8-dexer.html
This commit is contained in:
committed by
Baldur Karlsson
parent
6535e3b20c
commit
544a8eb51f
@@ -1,4 +1,4 @@
|
||||
set(sources
|
||||
set(sources
|
||||
renderdoccmd.cpp
|
||||
renderdoccmd.h
|
||||
3rdparty/cmdline/cmdline.h
|
||||
@@ -27,7 +27,7 @@ elseif(ANDROID)
|
||||
include_directories(${ANDROID_NDK_ROOT_PATH}/sources/android/native_app_glue)
|
||||
list(APPEND libraries PRIVATE -llog -landroid)
|
||||
set(LINKER_FLAGS "-Wl,--no-as-needed")
|
||||
|
||||
|
||||
if(ENABLE_ASAN)
|
||||
set(LINKER_FLAGS "${LINKER_FLAGS} -fsanitize=address")
|
||||
endif()
|
||||
@@ -221,14 +221,14 @@ if(ANDROID)
|
||||
else()
|
||||
message(WARNING "Unknown ABI ${ANDROID_ABI}, libasan tag unknown")
|
||||
endif()
|
||||
|
||||
|
||||
file(GLOB ASAN_LIBRARIES "${ANDROID_TOOLCHAIN_ROOT}/lib64/clang/*/lib/linux/libclang_rt.asan-${ASAN_ABI_TAG}-android.so")
|
||||
list(SORT ASAN_LIBRARIES)
|
||||
|
||||
list(GET ASAN_LIBRARIES -1 ASAN_LIBRARY)
|
||||
|
||||
set(WRAP_SCRIPT "${ANDROID_NDK_ROOT_PATH}/wrap.sh/asan.sh")
|
||||
|
||||
|
||||
string(REPLACE "\\" "/" WRAP_SCRIPT "${WRAP_SCRIPT}")
|
||||
string(REPLACE "\\" "/" ASAN_LIBRARY "${ASAN_LIBRARY}")
|
||||
|
||||
@@ -245,11 +245,18 @@ if(ANDROID)
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
||||
set(D8_SCRIPT "${BUILD_TOOLS}/d8${TOOL_SCRIPT_EXTENSION}")
|
||||
if(NOT EXISTS ${D8_SCRIPT})
|
||||
set(DEX_COMMAND ${BUILD_TOOLS}/dx${TOOL_SCRIPT_EXTENSION} --dex --output=bin/classes.dex ./obj)
|
||||
else()
|
||||
set(DEX_COMMAND ${D8_SCRIPT} --output ./bin/ ./obj/org/renderdoc/renderdoccmd/*/*.class)
|
||||
endif()
|
||||
|
||||
add_custom_command(OUTPUT ${APK_FILE} APPEND
|
||||
COMMAND ${BUILD_TOOLS}/aapt package -f -m -S res -J src -M AndroidManifest.xml -I ${ANDROID_JAR}
|
||||
COMMAND ${JAVA_BIN}/javac -d ./obj -source 1.7 -target 1.7 -bootclasspath ${RT_JAR} -classpath "${CLASS_PATH}" -sourcepath src src/org/renderdoc/renderdoccmd/*.java
|
||||
COMMAND ${BUILD_TOOLS}/dx${TOOL_SCRIPT_EXTENSION} --dex --output=bin/classes.dex ./obj
|
||||
COMMAND ${DEX_COMMAND}
|
||||
COMMAND ${BUILD_TOOLS}/aapt package -f -M AndroidManifest.xml --version-code ${APK_VERSION_CODE} --version-name ${APK_VERSION_NAME} -S res -I ${ANDROID_JAR} -F RenderDocCmd-unaligned.apk bin libs
|
||||
COMMAND ${BUILD_TOOLS}/zipalign -f 4 RenderDocCmd-unaligned.apk RenderDocCmd.apk
|
||||
COMMAND ${BUILD_TOOLS}/apksigner${TOOL_SCRIPT_EXTENSION} sign --ks ${KEYSTORE} --ks-pass pass:android --key-pass pass:android --ks-key-alias rdocandroidkey RenderDocCmd.apk
|
||||
|
||||
Reference in New Issue
Block a user