#!/bin/bash

# ndkVersion
read -d '' p << 'EOF' || true
if (m/^\\s*ndkVersion:\\s"([^"]*)",/) {
  print $1;
  exit;
}
EOF
needed=$(cat build.gradle | perl -ne "$p")
current='[% pc("android-toolchain", "var/android_ndk_version_build") %]'
check_update_needed ndkVersion "$needed" "$current"


# compileSdkVersion
read -d '' p << 'EOF' || true
if (m/^\\s*compileSdkVersion:\\s([^"]*),/) {
  print $1;
  exit;
}
EOF
needed=$(cat build.gradle | perl -ne "$p")
current=29
check_update_needed compileSdkVersion "$needed" "$current"


# minSdkVersion
read -d '' p << 'EOF' || true
if (m/^\\s*minSdkVersion:\\s([^"]*),/) {
  print $1;
  exit;
}
EOF
needed=$(cat build.gradle | perl -ne "$p")
current=21
check_update_needed minSdkVersion "$needed" "$current"


# glean_parser
read -d '' p << 'EOF' || true
if (m/^\\s*"glean_parser==([^"]+)",/) {
  print $1;
  exit;
}
EOF
tar xf $rootdir/[% c('input_files_by_name/glean') %]
needed=$(cat glean-[% c("var/glean_version") %]/glean-core/python/setup.py | perl -ne "$p")
current='[% c("var/glean_parser") %]'
check_update_needed glean_parser "$needed" "$current"


# gradle
read -d '' p << 'EOF' || true
if (m|distributionUrl=https\\\\://services.gradle.org/distributions/gradle-(.*)-.*.zip|) {
  print $1;
  exit;
}
EOF
needed=$(cat gradle/wrapper/gradle-wrapper.properties | perl -ne "$p")
current='[% c("var/gradle_version") %]'
check_update_needed gradle "$needed" "$current"


# nss-nspr
read -d '' p << 'EOF' || true
if (m/NSS_ARCHIVE="nss-(.*-with-nspr-.*)\\.tar\\.gz"/) {
  print $1;
  exit;
}
EOF
needed=$(cat libs/build-all.sh | perl -ne "$p")
current='[% pc("nss", "version") %]-with-nspr-[% pc("nss", "nspr_version") %]'
check_update_needed nss-nspr "$needed" "$current"


# sqlcipher
read -d '' p << 'EOF' || true
if (m/SQLCIPHER_VERSION="([^"]+)"/) {
  print $1;
  exit;
}
EOF
needed=$(cat libs/build-all.sh | perl -ne "$p")
current='[% pc("sqlcipher", "version") %]'
check_update_needed sqlcipher "$needed" "$current"


# android-gradle-plugin
read -d '' p << 'EOF' || true
if (m/^\\s*android_gradle_plugin_version\\s=\\s'([^']*)'/) {
  print $1;
  exit;
}
EOF
needed=$(cat build.gradle | perl -ne "$p")
current='4.2.2'
check_update_needed android-gradle-plugin "$needed" "$current"

