diff --git a/CMakeLists.txt b/CMakeLists.txt index e90d718d4..5eba5f7a8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -269,5 +269,5 @@ endif() omim_add_test_subdirectory(qt_tstfrm) if (PLATFORM_ANDROID) - add_subdirectory(android/app/src/main/cpp) + add_subdirectory(android/sdk/src/main/cpp) endif() diff --git a/android/app/build.gradle b/android/app/build.gradle index c19f03c7c..bd7a05f1a 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -19,33 +19,13 @@ apply plugin: 'com.android.application' apply plugin: 'com.github.triplet.play' apply plugin: 'ru.cian.huawei-publish-gradle-plugin' -def run(cmd) { - def stdout = new ByteArrayOutputStream() - exec { - commandLine = cmd - standardOutput = stdout - } - return stdout.toString() -} - import com.github.triplet.gradle.androidpublisher.ReleaseStatus -import org.gradle.nativeplatform.platform.internal.DefaultNativePlatform - -def getVersion() { - def isWindows = DefaultNativePlatform.getCurrentOperatingSystem().isWindows() - def bash = isWindows ? 'C:\\Program Files\\Git\\bin\\bash.exe' : 'bash' - def versionCode = Integer.parseInt(run([bash, '../../tools/unix/version.sh', 'android_code']).trim()) - def versionName = run([bash, '../../tools/unix/version.sh', 'android_name']).trim() - return new Tuple2(versionCode, versionName) -} def getCommitMessage() { return run(['git', '--no-pager', 'show', '-s', '--format=%s%n%n%b', 'HEAD']).trim() } -def osName = System.properties['os.name'].toLowerCase() - project.ext.appId = 'app.comaps' project.ext.appName = 'CoMaps' @@ -81,13 +61,9 @@ android { // All properties are read from gradle.properties file compileSdk propCompileSdkVersion.toInteger() - ndkVersion '28.2.13676358' - defaultConfig { - // Default package name is taken from the manifest and should be app.comaps - def ver = getVersion() - versionCode = ver.V1 - versionName = ver.V2 + versionCode = rootProject.ext.versionCode + versionName = rootProject.ext.versionName println('Version: ' + versionName) println('VersionCode: ' + versionCode) minSdk propMinSdkVersion.toInteger() @@ -97,60 +73,6 @@ android { // Should be customized in flavors. buildConfigField 'String', 'REVIEW_URL', '""' - externalNativeBuild { - def pchFlag = 'OFF' - if (project.hasProperty('pch')) pchFlag = 'ON' - - def njobs = '' - if (project.hasProperty('njobs')) njobs = project.getProperty('njobs') - - def enableVulkanDiagnostics = 'OFF' - if (project.hasProperty('enableVulkanDiagnostics')) { - enableVulkanDiagnostics = project.getProperty('enableVulkanDiagnostics') - } - - def enableTrace = 'OFF' - if (project.hasProperty('enableTrace')) { - enableTrace = project.getProperty('enableTrace') - } - - cmake { - cppFlags '-fexceptions', '-frtti' - // There is no sense to enable sections without gcc's --gc-sections flag. - cFlags '-fno-function-sections', '-fno-data-sections', - '-Wno-extern-c-compat' - arguments '-DANDROID_TOOLCHAIN=clang', '-DANDROID_STL=c++_static', - "-DOS=$osName", '-DSKIP_TESTS=ON', '-DSKIP_TOOLS=ON', "-DUSE_PCH=$pchFlag", - "-DNJOBS=$njobs", "-DENABLE_VULKAN_DIAGNOSTICS=$enableVulkanDiagnostics", - "-DENABLE_TRACE=$enableTrace" - targets 'organicmaps' - } - } - - // Use, for example, -Parm32 gradle parameter to build only for armeabi-v7a. - ndk { - abiFilters = new HashSet<>() - if (project.hasProperty('arm32') || project.hasProperty('armeabi-v7a')) { - abiFilters.add('armeabi-v7a') - } - if (project.hasProperty('arm64') || project.hasProperty('arm64-v8a')) { - abiFilters.add('arm64-v8a') - } - if (project.hasProperty('x86')) { - abiFilters.add('x86') - } - if (project.hasProperty('x86_64') || project.hasProperty('x64')) { - abiFilters.add('x86_64') - } - if (abiFilters.isEmpty()) { - abiFilters.add('armeabi-v7a') - abiFilters.add('arm64-v8a') - // For the emulator, chromebooks and some Intel Atom devices. - abiFilters.add('x86_64') - } - println('Building for ' + abiFilters + ' archs.') - } - setProperty('archivesBaseName', appName.replaceAll('\\s','') + '-' + defaultConfig.versionCode) } @@ -276,12 +198,9 @@ android { debug { applicationIdSuffix '.debug' // Allows to install debug and release builds together versionNameSuffix '-debug' - jniDebuggable true // Enable jni debug build zipAlignEnabled true signingConfig signingConfigs.debug resValue 'string', 'app_name', 'CoMaps Debug' - // Do not generate separate debug symbols for debug apps, because we don't distribute them. - ndk.debugSymbolLevel = 'none' } release { @@ -301,8 +220,6 @@ android { // To learn more, go to the documentation section about R8 configuration files. proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' resValue 'string', 'app_name', project.ext.appName - // Full size symbols are too big for Google, 217mb aab vs 95mb. - ndk.debugSymbolLevel = 'symbol_table' } beta { @@ -325,16 +242,6 @@ android { proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' matchingFallbacks = ['release'] // use dependencies of "release" build type resValue 'string', 'app_name', 'CoMaps Test' - // Full size symbols are too big for Google, 217mb aab vs 95mb. - ndk.debugSymbolLevel = 'symbol_table' - } - } - - externalNativeBuild { - cmake { - version '3.22.1+' - buildStagingDirectory './nativeOutputs' - path '../../CMakeLists.txt' } } @@ -453,10 +360,6 @@ dependencies { testImplementation libs.mockito.core } -tasks.withType(JavaCompile) { - options.compilerArgs << '-Xlint:unchecked' << '-Xlint:deprecation' -} - android.applicationVariants.all { variant -> def authorityValue = variant.applicationId + ".provider" def authority = "\"" + authorityValue + "\"" diff --git a/android/build.gradle b/android/build.gradle index 6fd74f483..a4cedcf15 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -1,5 +1,34 @@ +import org.gradle.nativeplatform.platform.internal.DefaultNativePlatform + // Top-level build file where you can add configuration options common to all sub-projects/modules. plugins { alias libs.plugins.android.application apply false alias libs.plugins.android.library apply false } + +def run(cmd) { + def stdout = new ByteArrayOutputStream() + exec { + commandLine = cmd + standardOutput = stdout + } + return stdout.toString() +} + +def getVersion() { + def isWindows = DefaultNativePlatform.getCurrentOperatingSystem().isWindows() + def bash = isWindows ? 'C:\\Program Files\\Git\\bin\\bash.exe' : 'bash' + def versionCode = Integer.parseInt(run([bash, '../tools/unix/version.sh', 'android_code']).trim()) + def versionName = run([bash, '../tools/unix/version.sh', 'android_name']).trim() + return new Tuple2(versionCode, versionName) +} + +rootProject.ext { + def ver = getVersion() + versionCode = ver.V1 + versionName = ver.V2 +} + +tasks.withType(JavaCompile).configureEach { + options.compilerArgs << '-Xlint:unchecked' << '-Xlint:deprecation' +} diff --git a/android/sdk/.gitignore b/android/sdk/.gitignore new file mode 100644 index 000000000..62cef99da --- /dev/null +++ b/android/sdk/.gitignore @@ -0,0 +1,3 @@ +.cxx +build +nativeOutputs diff --git a/android/sdk/build.gradle b/android/sdk/build.gradle index f32bb7953..1b750bf7b 100644 --- a/android/sdk/build.gradle +++ b/android/sdk/build.gradle @@ -6,17 +6,96 @@ android { namespace 'app.organicmaps.sdk' compileSdk propCompileSdkVersion.toInteger() + ndkVersion '28.2.13676358' + defaultConfig { + versionCode = rootProject.ext.versionCode + versionName = rootProject.ext.versionName + minSdk propMinSdkVersion.toInteger() targetSdk propTargetSdkVersion.toInteger() + ndk.debugSymbolLevel = 'symbol_table' + + externalNativeBuild { + def pchFlag = 'OFF' + if (project.hasProperty('pch')) pchFlag = 'ON' + + def njobs = '' + if (project.hasProperty('njobs')) njobs = project.getProperty('njobs') + + def enableVulkanDiagnostics = 'OFF' + if (project.hasProperty('enableVulkanDiagnostics')) { + enableVulkanDiagnostics = project.getProperty('enableVulkanDiagnostics') + } + + def enableTrace = 'OFF' + if (project.hasProperty('enableTrace')) { + enableTrace = project.getProperty('enableTrace') + } + + cmake { + cppFlags '-fexceptions', '-frtti' + // There is no sense to enable sections without gcc's --gc-sections flag. + cFlags '-fno-function-sections', '-fno-data-sections', + '-Wno-extern-c-compat' + arguments '-DANDROID_TOOLCHAIN=clang', '-DANDROID_STL=c++_static', + '-DSKIP_TESTS=ON', '-DSKIP_TOOLS=ON', "-DUSE_PCH=$pchFlag", + "-DNJOBS=$njobs", "-DENABLE_VULKAN_DIAGNOSTICS=$enableVulkanDiagnostics", + "-DENABLE_TRACE=$enableTrace" + targets 'organicmaps' + } + } + + // Use, for example, -Parm32 gradle parameter to build only for armeabi-v7a. + ndk { + abiFilters = new HashSet<>() + if (project.hasProperty('arm32') || project.hasProperty('armeabi-v7a')) { + abiFilters.add('armeabi-v7a') + } + if (project.hasProperty('arm64') || project.hasProperty('arm64-v8a')) { + abiFilters.add('arm64-v8a') + } + if (project.hasProperty('x86')) { + abiFilters.add('x86') + } + if (project.hasProperty('x86_64') || project.hasProperty('x64')) { + abiFilters.add('x86_64') + } + if (abiFilters.isEmpty()) { + abiFilters.add('armeabi-v7a') + abiFilters.add('arm64-v8a') + // For the emulator, chromebooks and some Intel Atom devices. + abiFilters.add('x86_64') + } + println('Building for ' + abiFilters + ' archs.') + } } buildTypes { + debug { + versionNameSuffix '-debug' + jniDebuggable true // Enable jni debug build + } release { - minifyEnabled false + minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } + beta { + versionNameSuffix '-test' + minifyEnabled true + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + matchingFallbacks = ['release'] + } } + + externalNativeBuild { + cmake { + version '3.22.1+' + buildStagingDirectory './nativeOutputs' + path '../../CMakeLists.txt' + } + } + compileOptions { sourceCompatibility JavaVersion.VERSION_17 targetCompatibility JavaVersion.VERSION_17 @@ -26,3 +105,18 @@ android { dependencies { } + +// TODO: Running lint task triggers native build. Find a better solution. +project.afterEvaluate { + boolean isLintRun = project.gradle.startParameter.taskNames.any { it.toLowerCase().contains('lint') } + + if (isLintRun) { + tasks.findAll { task -> + (task.name.startsWith('Native') || task.name.contains('CMake')) && + task.project == project + }.each { nativeTask -> + logger.warn("Disabling task ${nativeTask.path} because lint is running.") + nativeTask.onlyIf { false } + } + } +} diff --git a/android/app/src/main/cpp/CMakeLists.txt b/android/sdk/src/main/cpp/CMakeLists.txt similarity index 100% rename from android/app/src/main/cpp/CMakeLists.txt rename to android/sdk/src/main/cpp/CMakeLists.txt diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/ChoosePositionMode.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/ChoosePositionMode.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/ChoosePositionMode.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/ChoosePositionMode.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/DownloadResourcesLegacyActivity.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/DownloadResourcesLegacyActivity.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/DownloadResourcesLegacyActivity.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/DownloadResourcesLegacyActivity.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/Framework.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/Framework.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/Framework.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/Framework.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/Framework.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/Framework.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/Framework.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/Framework.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/LocationState.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/LocationState.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/LocationState.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/LocationState.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/Map.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/Map.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/Map.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/Map.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/MapManager.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/MapManager.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/MapManager.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/MapManager.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/MapStyle.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/MapStyle.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/MapStyle.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/MapStyle.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/OrganicMaps.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/OrganicMaps.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/OrganicMaps.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/OrganicMaps.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/Router.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/Router.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/Router.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/Router.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/TrackRecorder.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/TrackRecorder.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/TrackRecorder.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/TrackRecorder.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/TrafficState.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/TrafficState.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/TrafficState.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/TrafficState.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/UserMarkHelper.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/UserMarkHelper.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/UserMarkHelper.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/UserMarkHelper.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/UserMarkHelper.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/UserMarkHelper.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/UserMarkHelper.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/UserMarkHelper.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/bookmarks/data/BookmarkManager.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/bookmarks/data/BookmarkManager.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/bookmarks/data/BookmarkManager.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/bookmarks/data/BookmarkManager.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/core/ScopedEnv.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/core/ScopedEnv.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/core/ScopedEnv.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/core/ScopedEnv.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/core/ScopedLocalRef.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/core/ScopedLocalRef.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/core/ScopedLocalRef.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/core/ScopedLocalRef.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/core/jni_helper.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/core/jni_helper.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/core/jni_helper.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/core/jni_helper.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/core/jni_helper.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/core/jni_helper.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/core/jni_helper.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/core/jni_helper.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/core/jni_java_methods.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/core/jni_java_methods.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/core/jni_java_methods.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/core/jni_java_methods.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/core/jni_java_methods.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/core/jni_java_methods.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/core/jni_java_methods.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/core/jni_java_methods.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/core/logging.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/core/logging.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/core/logging.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/core/logging.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/core/logging.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/core/logging.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/core/logging.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/core/logging.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/core/render_context.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/core/render_context.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/core/render_context.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/core/render_context.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/core/render_context.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/core/render_context.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/core/render_context.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/core/render_context.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/editor/Editor.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/editor/Editor.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/editor/Editor.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/editor/Editor.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/editor/OpeningHours.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/editor/OpeningHours.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/editor/OpeningHours.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/editor/OpeningHours.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/editor/OsmOAuth.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/editor/OsmOAuth.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/editor/OsmOAuth.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/editor/OsmOAuth.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/isolines/IsolinesManager.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/isolines/IsolinesManager.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/isolines/IsolinesManager.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/isolines/IsolinesManager.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/opengl/android_gl_utils.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/android_gl_utils.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/opengl/android_gl_utils.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/android_gl_utils.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/opengl/android_gl_utils.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/android_gl_utils.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/opengl/android_gl_utils.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/android_gl_utils.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontext.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontext.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontext.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontext.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontext.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontext.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontext.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontext.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontextfactory.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontextfactory.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontextfactory.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontextfactory.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontextfactory.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontextfactory.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontextfactory.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/androidoglcontextfactory.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/opengl/gl3stub.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/gl3stub.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/opengl/gl3stub.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/gl3stub.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/opengl/gl3stub.h b/android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/gl3stub.h similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/opengl/gl3stub.h rename to android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/gl3stub.h diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/platform/AndroidPlatform.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/platform/AndroidPlatform.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/platform/AndroidPlatform.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/platform/AndroidPlatform.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/platform/AndroidPlatform.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/platform/AndroidPlatform.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/platform/AndroidPlatform.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/platform/AndroidPlatform.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/platform/GuiThread.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/platform/GuiThread.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/platform/GuiThread.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/platform/GuiThread.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/platform/GuiThread.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/platform/GuiThread.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/platform/GuiThread.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/platform/GuiThread.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/platform/HttpThread.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/platform/HttpThread.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/platform/HttpThread.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/platform/HttpThread.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/platform/Language.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/platform/Language.cpp similarity index 95% rename from android/app/src/main/cpp/app/organicmaps/sdk/platform/Language.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/platform/Language.cpp index 233877018..9c24f2f95 100644 --- a/android/app/src/main/cpp/app/organicmaps/sdk/platform/Language.cpp +++ b/android/sdk/src/main/cpp/app/organicmaps/sdk/platform/Language.cpp @@ -1,5 +1,5 @@ -#include "android/app/src/main/cpp/app/organicmaps/sdk/core/jni_helper.hpp" -#include "android/app/src/main/cpp/app/organicmaps/sdk/core/ScopedLocalRef.hpp" +#include "android/sdk/src/main/cpp/app/organicmaps/sdk/core/jni_helper.hpp" +#include "android/sdk/src/main/cpp/app/organicmaps/sdk/core/ScopedLocalRef.hpp" #include "platform/locale.hpp" diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/platform/Localization.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/platform/Localization.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/platform/Localization.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/platform/Localization.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/platform/PThreadImpl.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/platform/PThreadImpl.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/platform/PThreadImpl.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/platform/PThreadImpl.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/platform/SecureStorage.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/platform/SecureStorage.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/platform/SecureStorage.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/platform/SecureStorage.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/platform/SocketImpl.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/platform/SocketImpl.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/platform/SocketImpl.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/platform/SocketImpl.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/routing/JunctionInfo.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/routing/JunctionInfo.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/routing/JunctionInfo.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/routing/JunctionInfo.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/routing/RouteMarkData.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/routing/RouteMarkData.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/routing/RouteMarkData.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/routing/RouteMarkData.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/routing/RouteMarkType.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/routing/RouteMarkType.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/routing/RouteMarkType.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/routing/RouteMarkType.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/routing/RoutePointInfo.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/routing/RoutePointInfo.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/routing/RoutePointInfo.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/routing/RoutePointInfo.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/routing/RouteRecommendationType.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/routing/RouteRecommendationType.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/routing/RouteRecommendationType.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/routing/RouteRecommendationType.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/routing/RoutingInfo.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/routing/RoutingInfo.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/routing/RoutingInfo.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/routing/RoutingInfo.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/routing/RoutingOptions.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/routing/RoutingOptions.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/routing/RoutingOptions.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/routing/RoutingOptions.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/routing/SingleLaneInfo.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/routing/SingleLaneInfo.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/routing/SingleLaneInfo.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/routing/SingleLaneInfo.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/routing/TransitRouteInfo.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/routing/TransitRouteInfo.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/routing/TransitRouteInfo.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/routing/TransitRouteInfo.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/routing/TransitStepInfo.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/routing/TransitStepInfo.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/routing/TransitStepInfo.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/routing/TransitStepInfo.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/search/DisplayedCategories.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/search/DisplayedCategories.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/search/DisplayedCategories.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/search/DisplayedCategories.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/search/SearchEngine.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/search/SearchEngine.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/search/SearchEngine.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/search/SearchEngine.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/search/SearchRecents.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/search/SearchRecents.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/search/SearchRecents.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/search/SearchRecents.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/settings/MapLanguageCode.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/settings/MapLanguageCode.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/settings/MapLanguageCode.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/settings/MapLanguageCode.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/settings/UnitLocale.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/settings/UnitLocale.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/settings/UnitLocale.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/settings/UnitLocale.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/sound/tts.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/sound/tts.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/sound/tts.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/sound/tts.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/subway/SubwayManager.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/subway/SubwayManager.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/subway/SubwayManager.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/subway/SubwayManager.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/util/Config.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/Config.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/util/Config.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/util/Config.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/util/Distance.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/Distance.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/util/Distance.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/util/Distance.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/util/FeatureIdBuilder.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/FeatureIdBuilder.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/util/FeatureIdBuilder.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/util/FeatureIdBuilder.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/util/GeoUtils.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/GeoUtils.cpp similarity index 88% rename from android/app/src/main/cpp/app/organicmaps/sdk/util/GeoUtils.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/util/GeoUtils.cpp index b4ae14484..bf8d03f36 100644 --- a/android/app/src/main/cpp/app/organicmaps/sdk/util/GeoUtils.cpp +++ b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/GeoUtils.cpp @@ -1,4 +1,4 @@ -#include "android/app/src/main/cpp/app/organicmaps/sdk/core/jni_helper.hpp" +#include "android/sdk/src/main/cpp/app/organicmaps/sdk/core/jni_helper.hpp" #include "geometry/mercator.hpp" diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/util/HttpClient.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/HttpClient.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/util/HttpClient.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/util/HttpClient.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/util/Language.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/Language.cpp similarity index 83% rename from android/app/src/main/cpp/app/organicmaps/sdk/util/Language.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/util/Language.cpp index 3252ca5db..6b0bd0353 100644 --- a/android/app/src/main/cpp/app/organicmaps/sdk/util/Language.cpp +++ b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/Language.cpp @@ -1,4 +1,4 @@ -#include "android/app/src/main/cpp/app/organicmaps/sdk/core/jni_helper.hpp" +#include "android/sdk/src/main/cpp/app/organicmaps/sdk/core/jni_helper.hpp" #include "platform/preferred_languages.hpp" extern "C" diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/util/LogsManager.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/LogsManager.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/util/LogsManager.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/util/LogsManager.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/util/NetworkPolicy.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/NetworkPolicy.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/util/NetworkPolicy.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/util/NetworkPolicy.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/util/NetworkPolicy.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/NetworkPolicy.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/util/NetworkPolicy.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/util/NetworkPolicy.hpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/util/StringUtils.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/StringUtils.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/util/StringUtils.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/util/StringUtils.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/util/UiThread.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/util/UiThread.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/util/UiThread.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/util/UiThread.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/vulkan/android_vulkan_context_factory.cpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/vulkan/android_vulkan_context_factory.cpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/vulkan/android_vulkan_context_factory.cpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/vulkan/android_vulkan_context_factory.cpp diff --git a/android/app/src/main/cpp/app/organicmaps/sdk/vulkan/android_vulkan_context_factory.hpp b/android/sdk/src/main/cpp/app/organicmaps/sdk/vulkan/android_vulkan_context_factory.hpp similarity index 100% rename from android/app/src/main/cpp/app/organicmaps/sdk/vulkan/android_vulkan_context_factory.hpp rename to android/sdk/src/main/cpp/app/organicmaps/sdk/vulkan/android_vulkan_context_factory.hpp diff --git a/drape/gl_includes.hpp b/drape/gl_includes.hpp index 0be148247..0e340e55f 100644 --- a/drape/gl_includes.hpp +++ b/drape/gl_includes.hpp @@ -19,7 +19,7 @@ #define GL_GLEXT_PROTOTYPES #include #include - #include "android/app/src/main/cpp/app/organicmaps/sdk/opengl/gl3stub.h" + #include "android/sdk/src/main/cpp/app/organicmaps/sdk/opengl/gl3stub.h" #include #elif defined(OMIM_OS_LINUX) #define GL_GLEXT_PROTOTYPES diff --git a/platform/platform_android.cpp b/platform/platform_android.cpp index 31ec9a344..ff42450ea 100644 --- a/platform/platform_android.cpp +++ b/platform/platform_android.cpp @@ -22,7 +22,7 @@ using namespace std; Platform::Platform() { - /// @see initialization routine in android/app/src/main/cpp/com/.../Platform.hpp + /// @see initialization routine in android/sdk/src/main/cpp/com/.../Platform.hpp } #ifdef DEBUG diff --git a/platform/preferred_languages.cpp b/platform/preferred_languages.cpp index 8a188759f..61ff101d0 100644 --- a/platform/preferred_languages.cpp +++ b/platform/preferred_languages.cpp @@ -23,7 +23,7 @@ #elif defined(OMIM_OS_LINUX) #include #elif defined(OMIM_OS_ANDROID) - /// Body for this function is inside android/app/src/main/cpp sources + /// Body for this function is inside android/sdk/src/main/cpp sources std::string GetAndroidSystemLanguage(); #else #error "Define language preferences for your platform"