AntiFeatures:NonFreeAssets,NonFreeNet,NonFreeAdd
Categories:Navigation
License:GPL-3.0-only
Web Site:http://osmand.net
Source Code:https://github.com/osmandapp/Osmand
Issue Tracker:https://github.com/osmandapp/Osmand/issues
Changelog:http://osmand.net/help/changes.html
Donate:http://osmand.net/help-online#buy_app
Bitcoin:1GRgEnKujorJJ9VBa76g8cp3sfoWtQqSs4

Name:OsmAnd~

Repo Type:git
Repo:https://gitlab.com/f-droid-mirrors/OsmAnd-submodules

Build:1.8.2,182
    commit=76ada6c8a08afe69acb755503373ac36328ef665
    subdir=android/OsmAnd
    submodules=yes
    output=bin/OsmAnd-release-unsigned.apk
    prebuild=sed -i 's/"OsmAnd+"/"OsmAnd~"/g' build.xml
    build=./old-ndk-build.sh && \
        ant -Dsdk.dir="$ANDROID_SDK" -Dndk.dir="$ANDROID_NDK" -DBLACKBERRY_BUILD=false -DBUILD_SUFFIX= -DAPK_NUMBER_VERSION=182 "-DFEATURES=+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav" -DCLEAN_CPP=false -DPACKAGE_TO_BUILT=net.osmand.plus -DAPK_VERSION=1.8.2 -Dnet.osmand.plus= -Dbuild.version=1.8.2 -Dbuild.version.code=182 -Dnativeoff=false "-DversionFeatures=+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav" clean release

Build:1.8.3,183
    commit=1.8.3
    subdir=android/OsmAnd
    submodules=yes
    output=bin/OsmAnd-release-unsigned.apk
    build=../../build

Build:1.9.4,196
    commit=1.9.4
    subdir=android/OsmAnd
    submodules=yes
    output=bin/OsmAnd-release-unsigned.apk
    build=../../build

Build:1.9.5,197
    commit=1.9.5
    subdir=android/OsmAnd
    submodules=yes
    output=bin/OsmAnd-release-unsigned.apk
    build=../../build

Build:2.0.2,201
    disable=builds and works, disable for further restructuring
    commit=2.0.2
    subdir=android/OsmAnd
    submodules=yes
    gradle=fullLegacyFat
    forceversion=yes
    build=../../build

Build:2.0.3,205
    disable=builds with slow rendering
    commit=2.0.3
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"2.0.3\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"205\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"-play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/sourceSets/icompileOptions {\nsourceCompatibility = JavaVersion.VERSION_1_7\ntargetCompatibility = JavaVersion.VERSION_1_7\n}\n' ../eclipse-compile/appcompat/build.gradle build.gradle

Build:2.0.4,206
    disable=builds with slow rendering
    commit=2.0.4
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"2.0.4\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"206\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"-play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/sourceSets/icompileOptions {\nsourceCompatibility = JavaVersion.VERSION_1_7\ntargetCompatibility = JavaVersion.VERSION_1_7\n}\n' ../eclipse-compile/appcompat/build.gradle build.gradle

Build:2.0.4,207
    commit=6c290d170b00119df2771b1509221b46212947e9
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"2.0.4\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"207\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"-play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/sourceSets/icompileOptions {\nsourceCompatibility = JavaVersion.VERSION_1_7\ntargetCompatibility = JavaVersion.VERSION_1_7\n}\n' ../eclipse-compile/appcompat/build.gradle build.gradle && \
        sed -i -e '1 iAPP_PLATFORM := android-14' jni/Application.mk

Build:2.1.1,212
    commit=2.1.1
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"-play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle

Build:2.2.3,223
    disable=test build, wait for tag
    commit=e6dba68d9f56c5ffee47ff2d7df822516956b9cb
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"-play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle

Build:2.2.4,224
    commit=2.2.4
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"-play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml

Build:2.3.3,235
    commit=d785ec7a9e0a67ff189758b91b4b28037b1a8c90
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"-play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1024m/g' build.gradle
    scanignore=resources/rendering_styles/style-icons/drawable-mdpi/mx_sport_free_flyingpng

Build:2.3.5,238
    commit=2.3.5
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"-play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle
    scanignore=resources/rendering_styles/style-icons/drawable-mdpi/mx_sport_free_flyingpng

Build:2.4.4,244
    commit=2.4.4
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"-play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle
    scanignore=resources/rendering_styles/style-icons/drawable-mdpi/mx_sport_free_flyingpng
    scandelete=resources/.swp
    ndk=r10e

Build:2.4.6,246
    commit=2.4.6
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"-play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle
    scanignore=resources/rendering_styles/style-icons/drawable-mdpi/mx_sport_free_flyingpng
    scandelete=resources/.swp
    ndk=r10e

Build:2.4.7,247
    commit=2.4.7
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle
    scanignore=resources/rendering_styles/style-icons/drawable-mdpi/mx_sport_free_flyingpng
    scandelete=resources/.swp
    ndk=r11c

Build:2.5.2,252
    disable=pre-release
    commit=a4422a821f459922c25683276fd57265ecb99f40
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle
    ndk=r11c

Build:2.5.4,254
    commit=e06499c68d489f8e497c71b0fb28984e537b0d23
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle
    ndk=r11c

Build:2.6.2,262
    commit=2.6.2
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle
    ndk=r11c

Build:2.6.3,263
    commit=2.6.3
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle
    ndk=r11c

Build:2.6.5,265
    commit=3fcd1182218d400f8a11045e1563fc37e72d03dc
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle
    ndk=r11c

Build:2.7.5,275
    commit=e6a0b95778b1e102a4f72067d42827ea3cb2dcaf
    subdir=android/OsmAnd
    submodules=yes
    gradle=full,legacy,fat
    prebuild=sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle
    ndk=r11c

Build:2.8.2,282
    commit=eb0ec22a1bfc0266574a0ee9dcf21161054006b6
    subdir=android/OsmAnd
    submodules=yes
    sudo=apt-get update && \
        apt-get install --yes -t jessie-backports swig
    gradle=full,legacy,fat
    rm=android/eclipse-compile,android/OsmAnd-java/libs/*.jar,android/OsmAnd-java/test/libs/*.jar,android/OsmAnd/ant-lib/*.jar,android/OsmAnd/libs/*.jar,android/OsmAndCore-sample
    prebuild=sed  -i -e "/net.osmand:OsmAndCore_android:.*SNAPSHOT@jar/d" ../OsmAnd/build.gradle && \
        pushd ../../OsmAnd-core/wrappers/android/ && \
        sed -i -e "/Native/d" settings.gradle && \
        sed -i -e "/Native/d" build.gradle && \
        sed -i -e "/compileTask.*copyNdkSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtJarLibs/d" build.gradle && \
        gradle assembleRelease && \
        cd build/outputs/aar && \
        unzip OsmAndCore_android-release.aar && \
        cp classes.jar ../../../../../../android/OsmAnd/libs/ && \
        popd && \
        sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle && \
        sed -i -e "s/compile fileTree.*/ compile 'commons-logging:commons-logging:1.1.1'\n compile group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n compile 'org.json:json:20090211'\n compile 'it.unibo.alice.tuprolog:tuprolog:3.2.1'\n compile 'net.sf.kxml:kxml2:2.3.0'\n compile 'org.beanshell:bsh-core:2.0b4'\n compile 'com.ibm.icu:icu4j:50.1'\n compile 'fr.univ-valenciennes:bzip2:1.0'\n compile 'com.moparisthebest:junidecode:0.1.1'\n compile 'com.vividsolutions:jts-core:1.14.0'/" ../OsmAnd-java/build.gradle && \
        sed -i -e "s/compile fileTree.*/ compile fileTree(include: ['classes.jar'], dir: 'libs')\n compile 'commons-logging:commons-logging-api:1.1'\n compile 'it.unibo.alice.tuprolog:tuprolog:3.2.1'\n compile 'org.beanshell:bsh-core:2.0b4'\n compile 'com.ibm.icu:icu4j:50.1'\n compile 'fr.univ-valenciennes:bzip2:1.0'\n compile 'com.moparisthebest:junidecode:0.1.1'\n compile group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n compile 'org.immutables:gson:2.5.0'\n compile 'com.vividsolutions:jts-core:1.14.0'/" build.gradle && \
        sed -i -e "s/public void debug(Object message) {/ public void trace(Object message) { }\n public void trace(Object message, Throwable t) { }\n public boolean isTraceEnabled() { return false; }\n public void debug(Object message) {/" src/net/osmand/PlatformUtil.java && \
        sed -i -e "s/, ':OsmAndCore-sample'//" ../settings.gradle
    scanignore=help/website/help/map-legend_nautical.png,help/website/help/map-legend_default.png,android/OsmAnd/libs/classes.jar
    ndk=r11c

Build:2.9.3,293
    commit=26d8bada10dff9a3ae76233f78f6c6f4434eba85
    subdir=android/OsmAnd
    submodules=yes
    sudo=apt-get update && \
        apt-get install --yes -t jessie-backports swig
    gradle=full,legacy,fat
    rm=android/eclipse-compile,android/OsmAnd-java/libs/*.jar,android/OsmAnd-java/test/libs/*.jar,android/OsmAnd/ant-lib/*.jar,android/OsmAnd/libs/*.jar,android/OsmAndCore-sample
    prebuild=sed  -i -e "/net.osmand:OsmAndCore_android:.*SNAPSHOT@jar/d" ../OsmAnd/build.gradle && \
        sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle && \
        sed -i -e "s/compile fileTree.*/ compile 'commons-logging:commons-logging:1.1.1'\n compile group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n compile 'org.json:json:20090211'\n compile 'it.unibo.alice.tuprolog:tuprolog:3.2.1'\n compile 'net.sf.kxml:kxml2:2.3.0'\n compile 'org.beanshell:bsh-core:2.0b4'\n compile 'com.ibm.icu:icu4j:50.1'\n compile 'fr.univ-valenciennes:bzip2:1.0'\n compile 'com.moparisthebest:junidecode:0.1.1'\n compile 'com.vividsolutions:jts-core:1.14.0'/" ../OsmAnd-java/build.gradle && \
        sed -i -e "s/compile fileTree.*/ compile fileTree(include: ['classes.jar'], dir: 'libs')\n compile 'commons-logging:commons-logging-api:1.1'\n compile 'it.unibo.alice.tuprolog:tuprolog:3.2.1'\n compile 'org.beanshell:bsh-core:2.0b4'\n compile 'com.ibm.icu:icu4j:50.1'\n compile 'fr.univ-valenciennes:bzip2:1.0'\n compile 'com.moparisthebest:junidecode:0.1.1'\n compile group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n compile 'org.immutables:gson:2.5.0'\n compile 'com.vividsolutions:jts-core:1.14.0'/" build.gradle && \
        sed -i -e "s/public void debug(Object message) {/ public void trace(Object message) { }\n public void trace(Object message, Throwable t) { }\n public boolean isTraceEnabled() { return false; }\n public void debug(Object message) {/" src/net/osmand/PlatformUtil.java && \
        sed -i -e "s/, ':OsmAndCore-sample'//" ../settings.gradle
    scanignore=help/website/help/map-legend_nautical.png,help/website/help/map-legend_default.png,help/website/images/dvr/4p-en.png,help/website/images/blog/ios-2-0/con-scrn-1.png,help/website/images/blog/ios-2-0/con-scrn-2.png,help/website/images/blog/ios-2-0/interf-2.png,help/website/images/blog/ios-2-0/navigat-6.png
    build=pushd ../../OsmAnd-core/wrappers/android/ && \
        sed -i -e "/Native/d" settings.gradle && \
        sed -i -e "/Native/d" build.gradle && \
        sed -i -e "/compileTask.*copyNdkSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtJarLibs/d" build.gradle && \
        gradle assembleRelease && \
        cd build/outputs/aar && \
        unzip OsmAndCore_android-release.aar && \
        cp classes.jar ../../../../../../android/OsmAnd/libs/ && \
        popd
    ndk=r11c

Build:3.0.0,300
    commit=e2054218ab4dec175cd84b1ae48798dd5aeb291e
    subdir=android/OsmAnd
    submodules=yes
    sudo=apt-get update && \
        apt-get install --yes -t jessie-backports swig
    gradle=full,legacy,fat
    rm=android/OsmAnd-java/libs/*.jar,android/OsmAnd-java/test/libs/*.jar,android/OsmAnd/ant-lib/*.jar,android/OsmAnd/libs/*.jar,android/OsmAndCore-sample
    prebuild=sed  -i -e "/net.osmand:OsmAndCore_android:.*SNAPSHOT@jar/d" ../OsmAnd/build.gradle && \
        sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle && \
        sed -i -e "s/compile fileTree.*/ compile 'commons-logging:commons-logging:1.1.1'\n compile group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n compile 'org.json:json:20090211'\n compile 'it.unibo.alice.tuprolog:tuprolog:3.2.1'\n compile 'net.sf.kxml:kxml2:2.3.0'\n compile 'org.beanshell:bsh-core:2.0b4'\n compile 'com.ibm.icu:icu4j:50.1'\n compile 'fr.univ-valenciennes:bzip2:1.0'\n compile 'com.moparisthebest:junidecode:0.1.1'\n compile 'com.vividsolutions:jts-core:1.14.0'/" ../OsmAnd-java/build.gradle && \
        sed -i -e "s/implementation fileTree.*/implementation fileTree(include: ['classes.jar'], dir: 'libs')\n implementation 'com.ibm.icu:icu4j:50.1'\n implementation group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n/" build.gradle && \
        sed -i -e "s/, ':OsmAndCore-sample'//" ../settings.gradle
    scanignore=help/website/help/map-legend_nautical.png,help/website/help/map-legend_default.png,help/website/images/dvr/4p-en.png,help/website/images/blog/ios-2-0/con-scrn-1.png,help/website/images/blog/ios-2-0/con-scrn-2.png,help/website/images/blog/ios-2-0/interf-2.png,help/website/images/blog/ios-2-0/navigat-6.png,android/OsmAnd/assets/fonts/RobotoSlab-Regular.ttf
    build=pushd ../../OsmAnd-core/wrappers/android/ && \
        sed -i -e "/Native/d" settings.gradle && \
        sed -i -e "/Native/d" build.gradle && \
        sed -i -e "/compileTask.*copyNdkSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtJarLibs/d" build.gradle && \
        gradle assembleRelease && \
        cd build/outputs/aar && \
        unzip OsmAndCore_android-release.aar && \
        cp classes.jar ../../../../../../android/OsmAnd/libs/ && \
        popd
    ndk=r11c

Build:3.0.2,302
    commit=b6a6984b211762b0aa2d6ed7b2cacb07e2af0d83
    subdir=android/OsmAnd
    submodules=yes
    sudo=apt-get update && \
        apt-get install --yes -t jessie-backports swig
    gradle=full,legacy,fat
    rm=android/OsmAnd-java/libs/*.jar,android/OsmAnd-java/test/libs/*.jar,android/OsmAnd/ant-lib/*.jar,android/OsmAnd/libs/*.jar,android/OsmAndCore-sample
    prebuild=sed  -i -e "/net.osmand:OsmAndCore_android:.*SNAPSHOT@jar/d" ../OsmAnd/build.gradle && \
        sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle && \
        sed -i -e "s/compile fileTree.*/ compile 'commons-logging:commons-logging:1.1.1'\n compile group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n compile 'org.json:json:20090211'\n compile 'it.unibo.alice.tuprolog:tuprolog:3.2.1'\n compile 'net.sf.kxml:kxml2:2.3.0'\n compile 'org.beanshell:bsh-core:2.0b4'\n compile 'com.ibm.icu:icu4j:50.1'\n compile 'fr.univ-valenciennes:bzip2:1.0'\n compile 'com.moparisthebest:junidecode:0.1.1'\n compile 'com.vividsolutions:jts-core:1.14.0'/" ../OsmAnd-java/build.gradle && \
        sed -i -e "s/implementation fileTree.*/implementation fileTree(include: ['classes.jar'], dir: 'libs')\n implementation 'com.ibm.icu:icu4j:50.1'\n implementation group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n/" build.gradle && \
        sed -i -e "s/, ':OsmAndCore-sample'//" ../settings.gradle
    scanignore=help/website/help/map-legend_nautical.png,help/website/help/map-legend_default.png,help/website/images/dvr/4p-en.png,help/website/images/blog/ios-2-0/con-scrn-1.png,help/website/images/blog/ios-2-0/con-scrn-2.png,help/website/images/blog/ios-2-0/interf-2.png,help/website/images/blog/ios-2-0/navigat-6.png,android/OsmAnd/assets/fonts/RobotoSlab-Regular.ttf
    build=pushd ../../OsmAnd-core/wrappers/android/ && \
        sed -i -e "/Native/d" settings.gradle && \
        sed -i -e "/Native/d" build.gradle && \
        sed -i -e "/compileTask.*copyNdkSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtJarLibs/d" build.gradle && \
        gradle assembleRelease && \
        cd build/outputs/aar && \
        unzip OsmAndCore_android-release.aar && \
        cp classes.jar ../../../../../../android/OsmAnd/libs/ && \
        popd
    ndk=r11c

Build:3.0.3,303
    commit=d4bb77548df8cdbb0690992ea6a0035188c6b7d6
    subdir=android/OsmAnd
    submodules=yes
    sudo=apt-get update && \
        apt-get install --yes -t jessie-backports swig
    gradle=full,legacy,fat
    rm=android/OsmAnd-java/libs/*.jar,android/OsmAnd-java/test/libs/*.jar,android/OsmAnd/ant-lib/*.jar,android/OsmAnd/libs/*.jar,android/OsmAndCore-sample
    prebuild=sed  -i -e "/net.osmand:OsmAndCore_android:.*SNAPSHOT@jar/d" ../OsmAnd/build.gradle && \
        sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle && \
        sed -i -e "s/compile fileTree.*/ compile 'commons-logging:commons-logging:1.1.1'\n compile group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n compile 'org.json:json:20090211'\n compile 'it.unibo.alice.tuprolog:tuprolog:3.2.1'\n compile 'net.sf.kxml:kxml2:2.3.0'\n compile 'org.beanshell:bsh-core:2.0b4'\n compile 'com.ibm.icu:icu4j:50.1'\n compile 'fr.univ-valenciennes:bzip2:1.0'\n compile 'com.moparisthebest:junidecode:0.1.1'\n compile 'com.vividsolutions:jts-core:1.14.0'/" ../OsmAnd-java/build.gradle && \
        sed -i -e "s/implementation fileTree.*/implementation fileTree(include: ['classes.jar'], dir: 'libs')\n implementation 'com.ibm.icu:icu4j:50.1'\n implementation group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n/" build.gradle && \
        sed -i -e "s/, ':OsmAndCore-sample'//" ../settings.gradle
    scanignore=help/website/help/map-legend_nautical.png,help/website/help/map-legend_default.png,help/website/images/dvr/4p-en.png,help/website/images/blog/ios-2-0/con-scrn-1.png,help/website/images/blog/ios-2-0/con-scrn-2.png,help/website/images/blog/ios-2-0/interf-2.png,help/website/images/blog/ios-2-0/navigat-6.png,android/OsmAnd/assets/fonts/RobotoSlab-Regular.ttf
    build=pushd ../../OsmAnd-core/wrappers/android/ && \
        sed -i -e "/Native/d" settings.gradle && \
        sed -i -e "/Native/d" build.gradle && \
        sed -i -e "/compileTask.*copyNdkSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtJarLibs/d" build.gradle && \
        gradle assembleRelease && \
        cd build/outputs/aar && \
        unzip OsmAndCore_android-release.aar && \
        cp classes.jar ../../../../../../android/OsmAnd/libs/ && \
        popd
    ndk=r11c

Build:3.0.4,304
    commit=a7d4e54d09e6e366686beac50a40f06b92443a40
    subdir=android/OsmAnd
    submodules=yes
    sudo=apt-get update && \
        apt-get install --yes -t jessie-backports swig
    gradle=full,legacy,fat
    srclibs=icu50-2-1-patched@0d825a9779eeb8ee35977ddf8bb4bea4119bf638,osmand-external-skia@chromium-41.0.2272.118
    rm=android/OsmAnd-java/libs/*.jar,android/OsmAnd-java/test/libs/*.jar,android/OsmAnd/ant-lib/*.jar,android/OsmAnd/libs/*.jar,android/OsmAndCore-sample
    prebuild=sed -i -e "/.*OsmAndCore.*SNAPSHOT.*/d" ../OsmAnd/build.gradle && \
        sed -i -e "/ivy {/,+6d" ../OsmAnd/build.gradle && \
        sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e '/javaMaxHeapSize/s/4g/1536m/g' build.gradle && \
        sed -i -e "s/compile fileTree.*/ compile fileTree(include: ['icu4j.jar'], dir: 'libs')\n compile 'commons-logging:commons-logging:1.1.1'\n compile group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n compile 'org.json:json:20090211'\n compile 'it.unibo.alice.tuprolog:tuprolog:3.2.1'\n compile 'net.sf.kxml:kxml2:2.3.0'\n compile 'org.beanshell:bsh-core:2.0b4'\n compile 'fr.univ-valenciennes:bzip2:1.0'\n compile 'com.moparisthebest:junidecode:0.1.1'\n compile 'com.vividsolutions:jts-core:1.14.0'/" ../OsmAnd-java/build.gradle && \
        sed -i -e "s/implementation fileTree.*/implementation fileTree(include: ['classes.jar','icu4j.jar'], dir: 'libs')\n implementation group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n/" build.gradle && \
        sed -i -e "s/, ':OsmAndCore-sample'//" ../settings.gradle && \
        pushd ../../core-legacy/externals && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.gz | grep 823705472f816df21c8f6aa026dd162b280806838bb55b3432b0fb1fcca7eb86 || { echo 'Failed checksum' 1>\&2; exit; }/" expat/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 0c8e242c33c45928de560d7d595db06feb41d1b22167e37260ceabe72f9e992f || { echo 'Failed checksum' 1>\&2; exit; }/" freetype/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep f6c9dea12e41d00e253f7465d714d09248a8bcbed3415c25fd9ce50a1cdded6 || { echo 'Failed checksum' 1>\&2; exit; }/" giflib/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.gz | grep 00029b1473f0f0ea72fbca3230e8cb25797fbb27e58ae2e46bb8bf5a806fe0b3 || { echo 'Failed checksum' 1>\&2; exit; }/" jpeg/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 6e761e584e5d72d72fc80923e7851a468bf86538456e304aea401b99038ca92 || { echo 'Failed checksum' 1>\&2; exit; }/" libpng/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 13bfc5ae543cf3aa180ac2485c0bc89495e3ae711fc6fab4f8ffe90dfb4bb677 || { echo 'Failed checksum' 1>\&2; exit; }/" protobuf/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 9e2e9658dfb036900da6ea0267a737fa3c4eee6666776d378c79d52e9334934 || { echo 'Failed checksum' 1>\&2; exit; }/" zlib/configure.sh && \
        sed -i "/# Download/,+8d" skia/configure.sh && \
        sed -i "s/# Patch/cp -r $(echo $$osmand-external-skia$$ | sed 's/\//\\\//g') \$SRCLOC\/upstream.original/" skia/configure.sh && \
        popd
    scanignore=help/website/help/map-legend_nautical.png,help/website/help/map-legend_default.png,help/website/images/dvr/4p-en.png,help/website/images/blog/ios-2-0/con-scrn-1.png,help/website/images/blog/ios-2-0/con-scrn-2.png,help/website/images/blog/ios-2-0/interf-2.png,help/website/images/blog/ios-2-0/navigat-6.png,android/OsmAnd/assets/fonts/RobotoSlab-Regular.ttf
    build=pushd ../../OsmAnd-core/wrappers/android/ && \
        sed -i -e "/Native/d" settings.gradle && \
        sed -i -e "/Native/d" build.gradle && \
        sed -i -e "/compileTask.*copyNdkSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtJarLibs/d" build.gradle && \
        gradle assembleRelease && \
        cd build/outputs/aar && \
        unzip OsmAndCore_android-release.aar && \
        cp classes.jar ../../../../../../android/OsmAnd/libs/ && \
        popd && \
        pushd $$icu50-2-1-patched$$/icu4j && \
        ant jar && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/brkitr/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/coll/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/curr/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/lang/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/rbnf/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/region/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/translit/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/zone/*" && \
        popd && \
        cp $$icu50-2-1-patched$$/icu4j/icu4j.jar libs/ && \
        cp $$icu50-2-1-patched$$/icu4j/icu4j.jar ../OsmAnd-java/libs/
    ndk=r11c

Build:3.1.5,315
    commit=9c355794940843b3e63b11209a0311768fe10aaf
    subdir=android/OsmAnd
    submodules=yes
    sudo=apt-get update && \
        apt-get install --yes -t jessie-backports swig
    gradle=full,legacy,fat
    srclibs=icu50-2-1-patched@0d825a9779eeb8ee35977ddf8bb4bea4119bf638,osmand-external-skia@chromium-41.0.2272.118
    rm=android/OsmAnd-java/libs/*.jar,android/OsmAnd-java/*.jar,android/OsmAnd/libs/*.jar,android/OsmAndCore-sample
    prebuild=sed -i -e "/.*OsmAndCore.*SNAPSHOT.*/d" ../OsmAnd/build.gradle && \
        sed -i -e "/ivy {/,+6d" ../OsmAnd/build.gradle && \
        sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e "s/implementation fileTree.*/ implementation fileTree(include: ['icu4j.jar'], dir: 'libs')\n implementation 'commons-logging:commons-logging:1.1.1'\n implementation group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n implementation 'org.json:json:20090211'\n implementation 'it.unibo.alice.tuprolog:tuprolog:3.2.1'\n implementation 'net.sf.kxml:kxml2:2.3.0'\n implementation 'org.beanshell:bsh-core:2.0b4'\n implementation 'fr.univ-valenciennes:bzip2:1.0'\n implementation 'com.moparisthebest:junidecode:0.1.1'\n implementation 'com.vividsolutions:jts-core:1.14.0'/" ../OsmAnd-java/build.gradle && \
        sed -i -e "s/implementation fileTree.*/implementation fileTree(include: ['classes.jar','icu4j.jar'], dir: 'libs')\n implementation group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n/" build.gradle && \
        sed -i -e '/facebook/d' build.gradle && \
        sed -i -e "s/, ':OsmAndCore-sample'//" ../settings.gradle && \
        pushd ../../core-legacy/externals && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.gz | grep 823705472f816df21c8f6aa026dd162b280806838bb55b3432b0fb1fcca7eb86 || { echo 'Failed checksum' 1>\&2; exit; }/" expat/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 0c8e242c33c45928de560d7d595db06feb41d1b22167e37260ceabe72f9e992f || { echo 'Failed checksum' 1>\&2; exit; }/" freetype/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep f6c9dea12e41d00e253f7465d714d09248a8bcbed3415c25fd9ce50a1cdded6 || { echo 'Failed checksum' 1>\&2; exit; }/" giflib/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.gz | grep 00029b1473f0f0ea72fbca3230e8cb25797fbb27e58ae2e46bb8bf5a806fe0b3 || { echo 'Failed checksum' 1>\&2; exit; }/" jpeg/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 6e761e584e5d72d72fc80923e7851a468bf86538456e304aea401b99038ca92 || { echo 'Failed checksum' 1>\&2; exit; }/" libpng/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 13bfc5ae543cf3aa180ac2485c0bc89495e3ae711fc6fab4f8ffe90dfb4bb677 || { echo 'Failed checksum' 1>\&2; exit; }/" protobuf/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 9e2e9658dfb036900da6ea0267a737fa3c4eee6666776d378c79d52e9334934 || { echo 'Failed checksum' 1>\&2; exit; }/" zlib/configure.sh && \
        sed -i "/# Download/,+8d" skia/configure.sh && \
        sed -i "s/# Patch/cp -r $(echo $$osmand-external-skia$$ | sed 's/\//\\\//g') \$SRCLOC\/upstream.original/" skia/configure.sh && \
        popd && \
        echo "org.gradle.jvmargs=-XX:MaxHeapSize=2048m" >> ../gradle.properties
    scanignore=help/website/help/map-legend_nautical.png,help/website/help/map-legend_default.png,help/website/images/dvr/4p-en.png,help/website/images/blog/ios-2-0/con-scrn-1.png,help/website/images/blog/ios-2-0/con-scrn-2.png,help/website/images/blog/ios-2-0/interf-2.png,help/website/images/blog/ios-2-0/navigat-6.png,android/OsmAnd/assets/fonts/RobotoSlab-Regular.ttf
    build=pushd ../../OsmAnd-core/wrappers/android/ && \
        sed -i -e "/Native/d" settings.gradle && \
        sed -i -e "/Native/d" build.gradle && \
        sed -i -e "/compileTask.*copyNdkSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtJarLibs/d" build.gradle && \
        sed -i -e "s/mavenCentral()/mavenCentral()\n google()\n jcenter()/" build.gradle && \
        gradle assembleRelease && \
        cd build/outputs/aar && \
        unzip OsmAndCore_android-release.aar && \
        cp classes.jar ../../../../../../android/OsmAnd/libs/ && \
        popd && \
        pushd $$icu50-2-1-patched$$/icu4j && \
        ant jar && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/brkitr/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/coll/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/curr/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/lang/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/rbnf/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/region/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/translit/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/zone/*" && \
        popd && \
        cp $$icu50-2-1-patched$$/icu4j/icu4j.jar libs/ && \
        cp $$icu50-2-1-patched$$/icu4j/icu4j.jar ../OsmAnd-java/libs/
    ndk=r11c

Build:3.1.6,316
    commit=9e7e25cfe5d77088a00aa9d869eccfd7b4ea0e78
    subdir=android/OsmAnd
    submodules=yes
    sudo=apt-get update && \
        apt-get install --yes -t jessie-backports swig
    gradle=full,legacy,fat
    srclibs=icu50-2-1-patched@0d825a9779eeb8ee35977ddf8bb4bea4119bf638,osmand-external-skia@chromium-41.0.2272.118
    rm=android/OsmAnd-java/libs/*.jar,android/OsmAnd-java/*.jar,android/OsmAnd/libs/*.jar,android/OsmAndCore-sample
    prebuild=sed -i -e "/.*OsmAndCore.*SNAPSHOT.*/d" ../OsmAnd/build.gradle && \
        sed -i -e "/ivy {/,+6d" ../OsmAnd/build.gradle && \
        sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e "s/implementation fileTree.*/ implementation fileTree(include: ['icu4j.jar'], dir: 'libs')\n implementation 'commons-logging:commons-logging:1.1.1'\n implementation group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n implementation 'org.json:json:20090211'\n implementation 'it.unibo.alice.tuprolog:tuprolog:3.2.1'\n implementation 'net.sf.kxml:kxml2:2.3.0'\n implementation 'org.beanshell:bsh-core:2.0b4'\n implementation 'fr.univ-valenciennes:bzip2:1.0'\n implementation 'com.moparisthebest:junidecode:0.1.1'\n implementation 'com.vividsolutions:jts-core:1.14.0'/" ../OsmAnd-java/build.gradle && \
        sed -i -e "s/implementation fileTree.*/implementation fileTree(include: ['classes.jar','icu4j.jar'], dir: 'libs')\n implementation group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n/" build.gradle && \
        sed -i -e '/facebook/d' build.gradle && \
        sed -i -e "s/, ':OsmAndCore-sample'//" ../settings.gradle && \
        pushd ../../core-legacy/externals && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.gz | grep 823705472f816df21c8f6aa026dd162b280806838bb55b3432b0fb1fcca7eb86 || { echo 'Failed checksum' 1>\&2; exit; }/" expat/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 0c8e242c33c45928de560d7d595db06feb41d1b22167e37260ceabe72f9e992f || { echo 'Failed checksum' 1>\&2; exit; }/" freetype/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep f6c9dea12e41d00e253f7465d714d09248a8bcbed3415c25fd9ce50a1cdded6 || { echo 'Failed checksum' 1>\&2; exit; }/" giflib/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.gz | grep 00029b1473f0f0ea72fbca3230e8cb25797fbb27e58ae2e46bb8bf5a806fe0b3 || { echo 'Failed checksum' 1>\&2; exit; }/" jpeg/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 6e761e584e5d72d72fc80923e7851a468bf86538456e304aea401b99038ca92 || { echo 'Failed checksum' 1>\&2; exit; }/" libpng/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 13bfc5ae543cf3aa180ac2485c0bc89495e3ae711fc6fab4f8ffe90dfb4bb677 || { echo 'Failed checksum' 1>\&2; exit; }/" protobuf/configure.sh && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 9e2e9658dfb036900da6ea0267a737fa3c4eee6666776d378c79d52e9334934 || { echo 'Failed checksum' 1>\&2; exit; }/" zlib/configure.sh && \
        sed -i "/# Download/,+8d" skia/configure.sh && \
        sed -i "s/# Patch/cp -r $(echo $$osmand-external-skia$$ | sed 's/\//\\\//g') \$SRCLOC\/upstream.original/" skia/configure.sh && \
        popd && \
        echo "org.gradle.jvmargs=-XX:MaxHeapSize=2048m" >> ../gradle.properties
    scanignore=help/website/help/map-legend_nautical.png,help/website/help/map-legend_default.png,help/website/images/dvr/4p-en.png,help/website/images/blog/ios-2-0/con-scrn-1.png,help/website/images/blog/ios-2-0/con-scrn-2.png,help/website/images/blog/ios-2-0/interf-2.png,help/website/images/blog/ios-2-0/navigat-6.png,android/OsmAnd/assets/fonts/RobotoSlab-Regular.ttf
    build=pushd ../../OsmAnd-core/wrappers/android/ && \
        sed -i -e "/Native/d" settings.gradle && \
        sed -i -e "/Native/d" build.gradle && \
        sed -i -e "/compileTask.*copyNdkSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtJarLibs/d" build.gradle && \
        sed -i -e "s/mavenCentral()/mavenCentral()\n google()\n jcenter()/" build.gradle && \
        gradle assembleRelease && \
        cd build/outputs/aar && \
        unzip OsmAndCore_android-release.aar && \
        cp classes.jar ../../../../../../android/OsmAnd/libs/ && \
        popd && \
        pushd $$icu50-2-1-patched$$/icu4j && \
        ant jar && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/brkitr/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/coll/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/curr/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/lang/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/rbnf/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/region/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/translit/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/zone/*" && \
        popd && \
        cp $$icu50-2-1-patched$$/icu4j/icu4j.jar libs/ && \
        cp $$icu50-2-1-patched$$/icu4j/icu4j.jar ../OsmAnd-java/libs/
    ndk=r11c

Build:3.2,320
    commit=5db012092c13cdb254407e1a16fca27da98dc5b0
    subdir=android/OsmAnd
    submodules=yes
    sudo=apt-get update && \
        apt-get install --yes -t jessie-backports swig
    gradle=full,legacy,fat
    srclibs=icu50-2-1-patched@0d825a9779eeb8ee35977ddf8bb4bea4119bf638,osmand-external-skia@android/oreo
    rm=android/OsmAnd-java/libs/*.jar,android/OsmAnd-java/*.jar,android/OsmAnd/libs/*.jar,android/OsmAndCore-sample
    prebuild=sed -i -e "/.*OsmAndCore.*SNAPSHOT.*/d" ../OsmAnd/build.gradle && \
        sed -i -e "/ivy {/,+6d" ../OsmAnd/build.gradle && \
        sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e "s/implementation fileTree.*/ implementation fileTree(include: ['icu4j.jar'], dir: 'libs')\n implementation 'commons-logging:commons-logging:1.1.1'\n implementation group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n implementation 'org.json:json:20090211'\n implementation 'it.unibo.alice.tuprolog:tuprolog:3.2.1'\n implementation 'net.sf.kxml:kxml2:2.3.0'\n implementation 'org.beanshell:bsh-core:2.0b4'\n implementation 'fr.univ-valenciennes:bzip2:1.0'\n implementation 'com.moparisthebest:junidecode:0.1.1'\n implementation 'com.vividsolutions:jts-core:1.14.0'/" ../OsmAnd-java/build.gradle && \
        sed -i -e "s/implementation fileTree.*/implementation fileTree(include: ['classes.jar','icu4j.jar'], dir: 'libs')\n implementation group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n/" build.gradle && \
        sed -i -e '/facebook/d' build.gradle && \
        sed -i -e "s/, ':OsmAndCore-sample'//" ../settings.gradle && \
        pushd ../../core-legacy/externals && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 13bfc5ae543cf3aa180ac2485c0bc89495e3ae711fc6fab4f8ffe90dfb4bb677 || { echo 'Failed checksum' 1>\&2; exit; }/" protobuf/configure.sh && \
        sed -i "/# Download/,+8d" skia/configure.sh && \
        sed -i "s/# Patch/cp -r $(echo $$osmand-external-skia$$ | sed 's/\//\\\//g') \$SRCLOC\/upstream.original/" skia/configure.sh && \
        popd && \
        echo "org.gradle.jvmargs=-XX:MaxHeapSize=2048m" >> ../gradle.properties
    scanignore=help/website/help/map-legend_nautical.png,help/website/help/map-legend_default.png,help/website/images/dvr/4p-en.png,help/website/images/blog/ios-2-0/con-scrn-1.png,help/website/images/blog/ios-2-0/con-scrn-2.png,help/website/images/blog/ios-2-0/interf-2.png,help/website/images/blog/ios-2-0/navigat-6.png,android/OsmAnd/assets/fonts/RobotoSlab-Regular.ttf
    build=pushd ../../OsmAnd-core/wrappers/android/ && \
        sed -i -e "/Native/d" settings.gradle && \
        sed -i -e "/Native/d" build.gradle && \
        sed -i -e "/compileTask.*copyNdkSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtJarLibs/d" build.gradle && \
        sed -i -e "s/mavenCentral()/mavenCentral()\n google()\n jcenter()/" build.gradle && \
        gradle assembleRelease && \
        cd build/outputs/aar && \
        unzip OsmAndCore_android-release.aar && \
        cp classes.jar ../../../../../../android/OsmAnd/libs/ && \
        popd && \
        pushd $$icu50-2-1-patched$$/icu4j && \
        ant jar && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/brkitr/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/coll/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/curr/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/lang/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/rbnf/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/region/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/translit/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/zone/*" && \
        popd && \
        cp $$icu50-2-1-patched$$/icu4j/icu4j.jar libs/ && \
        cp $$icu50-2-1-patched$$/icu4j/icu4j.jar ../OsmAnd-java/libs/
    ndk=r17b

Build:3.2.2,322
    commit=4009a9b7e1b4e16fb84873e7a777efaf9a2eec93
    subdir=android/OsmAnd
    submodules=yes
    sudo=apt-get update && \
        apt-get install --yes swig
    gradle=full,legacy,fat
    srclibs=icu50-2-1-patched@0d825a9779eeb8ee35977ddf8bb4bea4119bf638,osmand-external-skia@android/oreo
    rm=android/OsmAnd-java/libs/*.jar,android/OsmAnd-java/*.jar,android/OsmAnd/libs/*.jar,android/OsmAndCore-sample
    prebuild=sed -i -e "/.*OsmAndCore.*SNAPSHOT.*/d" ../OsmAnd/build.gradle && \
        sed -i -e "/ivy {/,+6d" ../OsmAnd/build.gradle && \
        sed -i -e '/qt.*Compile/d' -e '/com.google.firebase/d' build.gradle ../plugins/Osmand-ParkingPlugin/build.gradle ../plugins/Osmand-SRTMPlugin/build.gradle ../plugins/Osmand-Skimaps/build.gradle ../plugins/Osmand-Nautical/build.gradle && \
        sed -i -e "s/System.getenv(\"APK_VERSION\")/\"$$VERSION$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APK_NUMBER_VERSION\")/\"$$VERCODE$$\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_FEATURES\")/\"+play_market +gps_status -parking_plugin -blackberry -amazon -route_nav\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e "s/System.getenv(\"TARGET_APP_NAME\")/\"OsmAnd~\"/g" build.gradle && \
        sed -i -e '/com.android.vending.BILLING/d' AndroidManifest.xml && \
        sed -i -e "s/implementation fileTree.*/ implementation fileTree(include: ['icu4j.jar'], dir: 'libs')\n implementation 'commons-logging:commons-logging:1.1.1'\n implementation group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n implementation 'org.json:json:20090211'\n implementation 'it.unibo.alice.tuprolog:tuprolog:3.2.1'\n implementation 'net.sf.kxml:kxml2:2.3.0'\n implementation 'org.beanshell:bsh-core:2.0b4'\n implementation 'fr.univ-valenciennes:bzip2:1.0'\n implementation 'com.moparisthebest:junidecode:0.1.1'\n implementation 'com.vividsolutions:jts-core:1.14.0'/" ../OsmAnd-java/build.gradle && \
        sed -i -e "s/implementation fileTree.*/implementation fileTree(include: ['classes.jar','icu4j.jar'], dir: 'libs')\n implementation group: 'net.sf.trove4j', name: 'trove4j', version: '3.0.3'\n/" build.gradle && \
        sed -i -e '/facebook/d' build.gradle && \
        sed -i -e "s/, ':OsmAndCore-sample'//" ../settings.gradle && \
        pushd ../../core-legacy/externals && \
        sed -i "s/# Extract/sha256sum \$SRCLOC\/upstream.tar.bz2 | grep 13bfc5ae543cf3aa180ac2485c0bc89495e3ae711fc6fab4f8ffe90dfb4bb677 || { echo 'Failed checksum' 1>\&2; exit; }/" protobuf/configure.sh && \
        sed -i "/# Download/,+8d" skia/configure.sh && \
        sed -i "s/# Patch/cp -r $(echo $$osmand-external-skia$$ | sed 's/\//\\\//g') \$SRCLOC\/upstream.original/" skia/configure.sh && \
        popd && \
        echo "org.gradle.jvmargs=-XX:MaxHeapSize=2048m" >> ../gradle.properties
    scanignore=help/website/help/map-legend_nautical.png,help/website/help/map-legend_default.png,help/website/images/dvr/4p-en.png,help/website/images/blog/ios-2-0/con-scrn-1.png,help/website/images/blog/ios-2-0/con-scrn-2.png,help/website/images/blog/ios-2-0/interf-2.png,help/website/images/blog/ios-2-0/navigat-6.png,android/OsmAnd/assets/fonts/RobotoSlab-Regular.ttf
    build=pushd ../../OsmAnd-core/wrappers/android/ && \
        sed -i -e "/Native/d" settings.gradle && \
        sed -i -e "/Native/d" build.gradle && \
        sed -i -e "/compileTask.*copyNdkSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtSharedLibs/d" build.gradle && \
        sed -i -e "/compileTask.*copyQtJarLibs/d" build.gradle && \
        sed -i -e "s/mavenCentral()/mavenCentral()\n google()\n jcenter()/" build.gradle && \
        gradle assembleRelease && \
        cd build/outputs/aar && \
        unzip OsmAndCore_android-release.aar && \
        cp classes.jar ../../../../../../android/OsmAnd/libs/ && \
        popd && \
        pushd $$icu50-2-1-patched$$/icu4j && \
        ant jar && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/brkitr/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/coll/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/curr/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/lang/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/rbnf/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/region/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/translit/*" && \
        zip -d icu4j.jar "com/ibm/icu/impl/data/icudt50b/zone/*" && \
        popd && \
        cp $$icu50-2-1-patched$$/icu4j/icu4j.jar libs/ && \
        cp $$icu50-2-1-patched$$/icu4j/icu4j.jar ../OsmAnd-java/libs/
    ndk=r17b

Maintainer Notes:
Update CV only after sucessfully built and tested.

Summary and Description have been moved to the new localizable text files:
https://f-droid.org/docs/All_About_Descriptions_Graphics_and_Screenshots

Initial section of build commands builds the OsmAnd core java
interface.  The standard build downloads a prebuilt jar file from the OsmAnd
build server.  To avoid this, the required jar file is built in
OsmAnd-core/wrappers/android, with some sed commands to prevent building of the
full core (only the jar file is needed, the full core is not used (the legacy
core is used, built in the core-legacy module.  OsmAnd-core in full has not yet
been released).  This includes preventing the various Qt files being built,
also with sed commands.  Once this is built, the jar file is extracted from
build/outputs/aar/OsmAndCore_android-release.aar and it is copied to the
android/OsmAnd submodule as libs/classes.jar.  

A couple of rogue pngs are scan-ignored.

In the prebuild, the very first sed command prevents gradle downloading
OsmAndCore*SNAPSHOT.(j|a)ar, which contains the files built above.  To
be extra sure the next command removes the osmand ivy repository.

Many other jar files are distributed, prebuilt, with the OsmAnd submodules.
The rm= command removes all of these, and replacements are sought through
Maven.  This is what the sed commands replacing "compile fileTree" sections are
doing.  Details of replaced jars are below.

Replacement of jar files in OsmAnd-java where versions did not match:
    commons-logging-1.1.1.jar replaced with commons-logging:commons-logging:1.1.1
    gnu-trove-osmand.jar replaced with net.sf.trove4j:trove4j:3.0.3
    tuprolog.jar replaced with it.unibo.alice.tuprolog:tuprolog:3.2.1
    bzip2-20090327.jar replaced with compile 'fr.univ-valenciennes:bzip2:1.0'
    junidecode-0.1.jar replaced with compile 'com.moparisthebest:junidecode:0.1.1'
    simple-logging.jar not replaced (subset of commons-logging-1.1.1.jar)

icu4j-49_1_patched.jar was replaced with the icu50-2-1 srclib which is a
mirror of the nearest icu version i could find with the patch applied
(http://bugs.icu-project.org/trac/ticket/12021).  The end of the build
process compiles this library and removes a bunch of unwanted data
files.

The prebuild finishes in the core-legacy/externals directory.  Just before this
there is a sed command removes OsmAndCore-sample from the settings to prevent
its build (which also downloads prebuilt binaries).  OsmAndCore-sample is demo
code that is not needed.

In core-legacy/externals the build fetches in source tarballs from external
sources.  Checksums for these need to be verified but are not.  Hence the lines
that fallow add sha256sum checks to the build scripts where tarballs are
downloaded.  As part of this, the skia library, which was fetched from a git
repo, has been made a srclib.  Note, we have to adjust the build script here
because if we link to the srclib before building, it will be deleted (see
skia/configure.sh).  (Note, have to be careful with paths, because the scripts
are run from the android/OsmAnd directory, with $SRCLOC being the location of
the configure script.)

For all externals, check that the added checksums cover all, and that the skia version hasn't changed (it can be found in skia/configure.sh before the sed commands are applied).
.

Auto Update Mode:None
Update Check Mode:None
Current Version:3.2.2
Current Version Code:322