diff options
author | mvglasow <michael@vonglasow.com> | 2019-01-11 20:04:39 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-11 20:04:39 +0100 |
commit | fabeea80a7f137ddb6e96e48bc543717aa7d5aec (patch) | |
tree | 08543e5adf9361d250857261697501d4d386ec9e /scripts | |
parent | 09345bbf2f236aeb33a1a9406b81ec035a01cd8b (diff) | |
parent | 5cf646c8f521db88bb68f5f7ca20c35c3474606b (diff) | |
download | navit-fabeea80a7f137ddb6e96e48bc543717aa7d5aec.tar.gz |
Merge branch 'trunk' into coverity_bypass
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/build_android_arm.sh | 61 | ||||
-rw-r--r-- | scripts/build_linux.sh | 7 |
2 files changed, 68 insertions, 0 deletions
diff --git a/scripts/build_android_arm.sh b/scripts/build_android_arm.sh new file mode 100755 index 000000000..74cf8e28d --- /dev/null +++ b/scripts/build_android_arm.sh @@ -0,0 +1,61 @@ +#!/bin/bash +# Build Navit for Android on ARM. +# +# This script is to be run from the root of the Navit source tree. It is used by CircleCI as well as for local builds, +# in order to keep build environments as uniform as possible and CI test results meaningful. +# +# When running this script locally, ensure all build dependencies are in place: +# - Packages required: cmake gettext libsaxonb-java librsvg2-bin pkg-config libprotobuf-c-dev protobuf-c-compiler +# - Android SDK installed +# - Environment variable $ANDROID_HOME points to Android SDK install location +# - Android NDK and CMake components installed via +# sdkmanager ndk-bundle "cmake;3.6.4111459" +# (later CMake versions from the SDK repository may also work) +# +# If any of the build steps fails, this script aborts with an error immediately. + +echo Set up environment +set - e +export PATH=$PATH:$ANDROID_HOME/tools +export JVM_OPTS="-Xmx3200m" +export GRADLE_OPTS='-Dorg.gradle.jvmargs="-Xmx2048m -XX:+HeapDumpOnOutOfMemoryError"' + +echo Run CMake +cmake ./ -Dvehicle/gpsd_dbus:BOOL=FALSE -Dsvg2png_scaling:STRING=-1,24,32,48,64,96,128,192,256 -Dsvg2png_scaling_nav:STRING=-1,24,32,48,64,96,128,192,256 -Dsvg2png_scaling_flag:STRING=-1,24,32,64,96 -DUSE_PLUGINS=n -DBUILD_MAPTOOL=n -DXSL_PROCESSING=y -DXSLTS=android -DANDROID=y -DSAMPLE_MAP=n || exit 1 + +echo Process icons +cd navit/icons +make || exit 32 +mkdir ../android/res/drawable-nodpi +rename 'y/A-Z/a-z/' ./*.png +cp ./*.png ../android/res/drawable-nodpi +cd ../../ + +echo Process translations +cd po +make || exit 64 +mkdir ../navit/android/res/raw +rename 'y/A-Z/a-z/' ./*.mo +cp ./*.mo ../navit/android/res/raw +cd ../ + +echo Process xml config files +make navit_config_xml || exit 96 +cd navit +mkdir -p ./android/assets +cp -R config ./android/assets/ +cd ../ + +echo Chmod permissions +chmod a+x ./gradlew + +echo Download dependencies +./gradlew -v + +echo Build +./gradlew assembleDebug || exit 128 + +echo Build finished. +echo APK should be in "navit/android/build/outputs/apk" and can be installed with +echo ./gradlew installDebug + diff --git a/scripts/build_linux.sh b/scripts/build_linux.sh index ba04c1efc..5d807ec45 100644 --- a/scripts/build_linux.sh +++ b/scripts/build_linux.sh @@ -10,6 +10,7 @@ cmake_opts="-Dgraphics/qt_qpainter:BOOL=FALSE -Dgui/qml:BOOL=FALSE -DSVG2PNG:BOO pushd $BUILD_PATH # Build everything + echo "Building..." cmake ${cmake_opts} ../ make -j $(nproc --all) make package @@ -19,14 +20,18 @@ if [[ "${CIRCLE_PROJECT_USERNAME}" == "navit-gps" && "${CIRCLE_BRANCH}" == "trun # Temporarily disabled because Coverity is down. # TODO on the long run, CI should not fail just because the Coverity test did not run, # especially if the test results are not taken into account. + #echo "Pushing an update to coverity as we are building the official trunk code." + #echo "Downloading coverity..." #curl \ # -X POST --data "token=${COVERITY_TOKEN}&project=${CIRCLE_PROJECT_USERNAME}" \ # -o /tmp/cov-analysis-linux64-${COVERITY_VERSION}.tar.gz -s \ # https://scan.coverity.com/download/linux64 + #echo "Unpacking coverity..." #tar xfz /tmp/cov-analysis-linux64-${COVERITY_VERSION}.tar.gz --no-same-owner -C /usr/local/share/ #export PATH=/usr/local/share/cov-analysis-linux64-${COVERITY_VERSION}/bin:$PATH + #echo "Re-running build with coverity..." #cov-build --dir cov-int make -j $(nproc --all) #tar czvf navit.tgz cov-int @@ -38,11 +43,13 @@ if [[ "${CIRCLE_PROJECT_USERNAME}" == "navit-gps" && "${CIRCLE_BRANCH}" == "trun # https://scan.coverity.com/builds?project=$CIRCLE_PROJECT_USERNAME # Then update the translation template on launchpad + echo "Updating the translation template on launchpad..." sed -i '/INTEGER/d' po/navit.pot cp po/navit.pot $CIRCLE_ARTIFACTS/ curl "https://translations.launchpad.net/navit/${CIRCLE_BRANCH}/+translations-upload" -H "$lp_cookie" -H "Referer: https://translations.launchpad.net/navit/${CIRCLE_BRANCH}/+translations-upload" -F file=@po/navit.pot | grep title fi if [[ "$CIRCLE_ARTIFACTS" != "" ]]; then + echo "Copying icons to artifacts..." cp -r navit/icons $CIRCLE_ARTIFACTS fi |