summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt42
-rw-r--r--src/android/app/build.gradle.kts16
-rw-r--r--src/android/app/src/main/AndroidManifest.xml1
-rw-r--r--src/android/build.gradle.kts4
4 files changed, 11 insertions, 52 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2bef9d6ed..1108e5ae6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -11,7 +11,6 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/externals/cmake-modul
11include(DownloadExternals) 11include(DownloadExternals)
12include(CMakeDependentOption) 12include(CMakeDependentOption)
13include(CTest) 13include(CTest)
14include(FetchContent)
15 14
16# Set bundled sdl2/qt as dependent options. 15# Set bundled sdl2/qt as dependent options.
17# OFF by default, but if ENABLE_SDL2 and MSVC are true then ON 16# OFF by default, but if ENABLE_SDL2 and MSVC are true then ON
@@ -99,47 +98,8 @@ if (ANDROID AND YUZU_DOWNLOAD_ANDROID_VVL)
99 DESTINATION "${vvl_lib_path}") 98 DESTINATION "${vvl_lib_path}")
100endif() 99endif()
101 100
102# On Android, fetch and compile libcxx before doing anything else
103if (ANDROID) 101if (ANDROID)
104 set(CMAKE_SKIP_INSTALL_RULES ON) 102 set(CMAKE_SKIP_INSTALL_RULES ON)
105 set(LLVM_VERSION "15.0.6")
106
107 # Note: even though libcxx and libcxxabi have separate releases on the project page,
108 # the separated releases cannot be compiled. Only in-tree builds work. Therefore we
109 # must fetch the source release for the entire llvm tree.
110 FetchContent_Declare(llvm
111 URL "https://github.com/llvm/llvm-project/releases/download/llvmorg-${LLVM_VERSION}/llvm-project-${LLVM_VERSION}.src.tar.xz"
112 URL_HASH SHA256=9d53ad04dc60cb7b30e810faf64c5ab8157dadef46c8766f67f286238256ff92
113 TLS_VERIFY TRUE
114 )
115 FetchContent_MakeAvailable(llvm)
116
117 # libcxx has support for most of the range library, but it's gated behind a flag:
118 add_compile_definitions(_LIBCPP_ENABLE_EXPERIMENTAL)
119
120 # Disable standard header inclusion
121 set(ANDROID_STL "none")
122
123 # libcxxabi
124 set(LIBCXXABI_INCLUDE_TESTS OFF)
125 set(LIBCXXABI_ENABLE_SHARED FALSE)
126 set(LIBCXXABI_ENABLE_STATIC TRUE)
127 set(LIBCXXABI_LIBCXX_INCLUDES "${LIBCXX_TARGET_INCLUDE_DIRECTORY}" CACHE STRING "" FORCE)
128 add_subdirectory("${llvm_SOURCE_DIR}/libcxxabi" "${llvm_BINARY_DIR}/libcxxabi")
129 link_libraries(cxxabi_static)
130
131 # libcxx
132 set(LIBCXX_ABI_NAMESPACE "__ndk1" CACHE STRING "" FORCE)
133 set(LIBCXX_CXX_ABI "libcxxabi")
134 set(LIBCXX_INCLUDE_TESTS OFF)
135 set(LIBCXX_INCLUDE_BENCHMARKS OFF)
136 set(LIBCXX_INCLUDE_DOCS OFF)
137 set(LIBCXX_ENABLE_SHARED FALSE)
138 set(LIBCXX_ENABLE_STATIC TRUE)
139 set(LIBCXX_ENABLE_ASSERTIONS FALSE)
140 add_subdirectory("${llvm_SOURCE_DIR}/libcxx" "${llvm_BINARY_DIR}/libcxx")
141 set_target_properties(cxx-headers PROPERTIES INTERFACE_COMPILE_OPTIONS "-isystem${CMAKE_BINARY_DIR}/${LIBCXX_INSTALL_INCLUDE_DIR}")
142 link_libraries(cxx_static cxx-headers)
143endif() 103endif()
144 104
145if (YUZU_USE_BUNDLED_VCPKG) 105if (YUZU_USE_BUNDLED_VCPKG)
@@ -329,7 +289,7 @@ find_package(Boost 1.79.0 REQUIRED context)
329find_package(enet 1.3 MODULE) 289find_package(enet 1.3 MODULE)
330find_package(fmt 9 REQUIRED) 290find_package(fmt 9 REQUIRED)
331find_package(inih 52 MODULE COMPONENTS INIReader) 291find_package(inih 52 MODULE COMPONENTS INIReader)
332find_package(LLVM 17 MODULE COMPONENTS Demangle) 292find_package(LLVM 17.0.2 MODULE COMPONENTS Demangle)
333find_package(lz4 REQUIRED) 293find_package(lz4 REQUIRED)
334find_package(nlohmann_json 3.8 REQUIRED) 294find_package(nlohmann_json 3.8 REQUIRED)
335find_package(Opus 1.3 MODULE) 295find_package(Opus 1.3 MODULE)
diff --git a/src/android/app/build.gradle.kts b/src/android/app/build.gradle.kts
index 84a3308b7..ac43d84b7 100644
--- a/src/android/app/build.gradle.kts
+++ b/src/android/app/build.gradle.kts
@@ -27,7 +27,7 @@ android {
27 namespace = "org.yuzu.yuzu_emu" 27 namespace = "org.yuzu.yuzu_emu"
28 28
29 compileSdkVersion = "android-34" 29 compileSdkVersion = "android-34"
30 ndkVersion = "25.2.9519653" 30 ndkVersion = "26.1.10909125"
31 31
32 buildFeatures { 32 buildFeatures {
33 viewBinding = true 33 viewBinding = true
@@ -203,23 +203,23 @@ ktlint {
203} 203}
204 204
205dependencies { 205dependencies {
206 implementation("androidx.core:core-ktx:1.10.1") 206 implementation("androidx.core:core-ktx:1.12.0")
207 implementation("androidx.appcompat:appcompat:1.6.1") 207 implementation("androidx.appcompat:appcompat:1.6.1")
208 implementation("androidx.recyclerview:recyclerview:1.3.0") 208 implementation("androidx.recyclerview:recyclerview:1.3.1")
209 implementation("androidx.constraintlayout:constraintlayout:2.1.4") 209 implementation("androidx.constraintlayout:constraintlayout:2.1.4")
210 implementation("androidx.fragment:fragment-ktx:1.6.0") 210 implementation("androidx.fragment:fragment-ktx:1.6.1")
211 implementation("androidx.documentfile:documentfile:1.0.1") 211 implementation("androidx.documentfile:documentfile:1.0.1")
212 implementation("com.google.android.material:material:1.9.0") 212 implementation("com.google.android.material:material:1.9.0")
213 implementation("androidx.preference:preference:1.2.0") 213 implementation("androidx.preference:preference-ktx:1.2.1")
214 implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.1") 214 implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2")
215 implementation("io.coil-kt:coil:2.2.2") 215 implementation("io.coil-kt:coil:2.2.2")
216 implementation("androidx.core:core-splashscreen:1.0.1") 216 implementation("androidx.core:core-splashscreen:1.0.1")
217 implementation("androidx.window:window:1.2.0-beta03") 217 implementation("androidx.window:window:1.2.0-beta03")
218 implementation("org.ini4j:ini4j:0.5.4") 218 implementation("org.ini4j:ini4j:0.5.4")
219 implementation("androidx.constraintlayout:constraintlayout:2.1.4") 219 implementation("androidx.constraintlayout:constraintlayout:2.1.4")
220 implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0") 220 implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0")
221 implementation("androidx.navigation:navigation-fragment-ktx:2.6.0") 221 implementation("androidx.navigation:navigation-fragment-ktx:2.7.4")
222 implementation("androidx.navigation:navigation-ui-ktx:2.6.0") 222 implementation("androidx.navigation:navigation-ui-ktx:2.7.4")
223 implementation("info.debatty:java-string-similarity:2.0.0") 223 implementation("info.debatty:java-string-similarity:2.0.0")
224 implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.0") 224 implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.0")
225} 225}
diff --git a/src/android/app/src/main/AndroidManifest.xml b/src/android/app/src/main/AndroidManifest.xml
index 832c08e15..a67351727 100644
--- a/src/android/app/src/main/AndroidManifest.xml
+++ b/src/android/app/src/main/AndroidManifest.xml
@@ -28,7 +28,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
28 android:appCategory="game" 28 android:appCategory="game"
29 android:localeConfig="@xml/locales_config" 29 android:localeConfig="@xml/locales_config"
30 android:banner="@drawable/tv_banner" 30 android:banner="@drawable/tv_banner"
31 android:extractNativeLibs="true"
32 android:fullBackupContent="@xml/data_extraction_rules" 31 android:fullBackupContent="@xml/data_extraction_rules"
33 android:dataExtractionRules="@xml/data_extraction_rules_api_31" 32 android:dataExtractionRules="@xml/data_extraction_rules_api_31"
34 android:enableOnBackInvokedCallback="true"> 33 android:enableOnBackInvokedCallback="true">
diff --git a/src/android/build.gradle.kts b/src/android/build.gradle.kts
index 80f370c16..51e559321 100644
--- a/src/android/build.gradle.kts
+++ b/src/android/build.gradle.kts
@@ -3,8 +3,8 @@
3 3
4// Top-level build file where you can add configuration options common to all sub-projects/modules. 4// Top-level build file where you can add configuration options common to all sub-projects/modules.
5plugins { 5plugins {
6 id("com.android.application") version "8.0.2" apply false 6 id("com.android.application") version "8.1.2" apply false
7 id("com.android.library") version "8.0.2" apply false 7 id("com.android.library") version "8.1.2" apply false
8 id("org.jetbrains.kotlin.android") version "1.8.21" apply false 8 id("org.jetbrains.kotlin.android") version "1.8.21" apply false
9} 9}
10 10