Skip to content

Commit ad2ea47

Browse files
committedMay 22, 2024
Add preset to build for Android using Arch Linux packages
1 parent f50e615 commit ad2ea47

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed
 

‎CMakePresets.json

+33
Original file line numberDiff line numberDiff line change
@@ -375,6 +375,38 @@
375375
"description": "See descriptions of devel and arch-static-compat",
376376
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-static-compat-devel"
377377
},
378+
{
379+
"name": "arch-android",
380+
"inherits": ["no-webview", "no-kde", "qt6"],
381+
"displayName": "Target *-linux-android using Arch Linux's Android packaging (invoke e.g. \"source android-env aarch64\" before invoking CMake)",
382+
"description": "Build targeting Android, paths and flags are specific to Arch Linux's Android packaging, invoke e.g. \"source android-env aarch64\" for required environment variables",
383+
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-android-$env{ANDROID_ABI}",
384+
"toolchainFile": "$env{ANDROID_NDK_HOME}/build/cmake/android.toolchain.cmake",
385+
"environment": {
386+
"PATH": "$env{ANDROID_PREFIX}/bin:$penv{PATH}"
387+
},
388+
"cacheVariables": {
389+
"ANDROID_ABI": {"type": "STRING", "value": "$env{ANDROID_ABI}"},
390+
"ANDROID_SDK_ROOT": {"type": "STRING", "value": "$env{ANDROID_HOME}"},
391+
"ANDROID_NDK": {"type": "STRING", "value": "$env{ANDROID_NDK_HOME}"},
392+
"ANDROID_NATIVE_API_LEVEL": {"type": "STRING", "value": "$env{ANDROID_MINIMUM_PLATFORM}"},
393+
"ANDROID_TOOLCHAIN": {"type": "STRING", "value": "clang"},
394+
"CMAKE_BUILD_TYPE": {"type": "STRING", "value": "Release"},
395+
"CMAKE_C_FLAGS_RELEASE": {"type": "STRING", "value": "$env{ANDROID_CFLAGS}"},
396+
"CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES": {"type": "PATH", "value": "$env{ANDROID_PREFIX_INCLUDE}"},
397+
"CMAKE_CXX_FLAGS_RELEASE": {"type": "STRING", "value": "$env{ANDROID_CXXFLAGS}"},
398+
"CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES": {"type": "PATH", "value": "$env{ANDROID_PREFIX_INCLUDE}"},
399+
"CMAKE_SHARED_LINKER_FLAGS_RELEASE": {"type": "STRING", "value": "$env{ANDROID_LDFLAGS}"},
400+
"CMAKE_FIND_ROOT_PATH": {"type": "PATH", "value": "$env{ANDROID_PREFIX}"},
401+
"CMAKE_INSTALL_PREFIX": {"type": "PATH", "value": "$env{ANDROID_PREFIX}"},
402+
"CMAKE_INSTALL_LIBDIR": {"type": "PATH", "value": "lib"},
403+
"INCLUDE_INSTALL_DIR": {"type": "PATH", "value": "$env{ANDROID_PREFIX_INCLUDE}"},
404+
"LIB_INSTALL_DIR": {"type": "PATH", "value": "$env{ANDROID_PREFIX_LIB}"},
405+
"SYSCONF_INSTALL_DIR": {"type": "PATH", "value": "$env{ANDROID_PREFIX_ETC}"},
406+
"SHARE_INSTALL_DIR": {"type": "PATH", "value": "$env{ANDROID_PREFIX_SHARE}"},
407+
"PKG_CONFIG_EXECUTABLE": {"type": "FILEPATH", "value": "/usr/bin/$env{ANDROID_PKGCONFIG}"}
408+
}
409+
},
378410
{
379411
"name": "win-x64-msvc-static",
380412
"inherits": ["no-webview", "no-kde", "qt6"],
@@ -475,6 +507,7 @@
475507
{"name": "arch-x86_64-w64-mingw32-static-devel-qt6", "configurePreset": "arch-x86_64-w64-mingw32-static-devel-qt6"},
476508
{"name": "arch-static-compat", "configurePreset": "arch-static-compat"},
477509
{"name": "arch-static-compat-devel", "configurePreset": "arch-static-compat-devel"},
510+
{"name": "arch-android", "configurePreset": "arch-android"},
478511
{"name": "win-x64-msvc-static", "configurePreset": "win-x64-msvc-static"},
479512
{"name": "win-x64-msvc-static-devel", "configurePreset": "win-x64-msvc-static-devel"},
480513
{"name": "win-x64-msvc-static-debug", "configurePreset": "win-x64-msvc-static-debug"}

0 commit comments

Comments
 (0)