teckit: add package
[termux-packages] / build-package.sh
index d12ec5a..3af966a 100755 (executable)
@@ -74,7 +74,7 @@ termux_setup_golang() {
                termux_error_exit "Unsupported arch: $TERMUX_ARCH"
        fi
 
-       local TERMUX_GO_VERSION=go1.9.2
+       local TERMUX_GO_VERSION=go1.9.3
        local TERMUX_GO_PLATFORM=linux-amd64
 
        local TERMUX_BUILDGO_FOLDER=$TERMUX_COMMON_CACHEDIR/${TERMUX_GO_VERSION}
@@ -87,7 +87,7 @@ termux_setup_golang() {
        rm -Rf "$TERMUX_COMMON_CACHEDIR/go" "$TERMUX_BUILDGO_FOLDER"
        termux_download https://storage.googleapis.com/golang/${TERMUX_GO_VERSION}.${TERMUX_GO_PLATFORM}.tar.gz \
                        "$TERMUX_BUILDGO_TAR" \
-                       de874549d9a8d8d8062be05808509c09a88a248e77ec14eb77453530829ac02b
+                       a4da5f4c07dfda8194c4621611aeb7ceaab98af0b38bfb29e1be2ebb04c3556c
 
        ( cd "$TERMUX_COMMON_CACHEDIR"; tar xf "$TERMUX_BUILDGO_TAR"; mv go "$TERMUX_BUILDGO_FOLDER"; rm "$TERMUX_BUILDGO_TAR" )
 }
@@ -110,17 +110,20 @@ termux_setup_ninja() {
 # Utility function to setup a current meson build system.
 termux_setup_meson() {
        termux_setup_ninja
-       local MESON_VERSION=0.43.0
-       local MESON_FOLDER=$TERMUX_COMMON_CACHEDIR/meson-$MESON_VERSION
+       local MESON_VERSION=0.44.0
+       local MESON_FOLDER=$TERMUX_COMMON_CACHEDIR/meson-$MESON_VERSION-v1
        if [ ! -d "$MESON_FOLDER" ]; then
                local MESON_TAR_NAME=meson-$MESON_VERSION.tar.gz
                local MESON_TAR_FILE=$TERMUX_PKG_TMPDIR/$MESON_TAR_NAME
+               local MESON_TMP_FOLDER=$TERMUX_PKG_TMPDIR/meson-$MESON_VERSION
                termux_download \
                        https://github.com/mesonbuild/meson/releases/download/$MESON_VERSION/meson-$MESON_VERSION.tar.gz \
                        $MESON_TAR_FILE \
-                       c513eca90e0d70bf14cd1eaafea2fa91cf40a73326a7ff61f08a005048057340
-               tar xf "$MESON_TAR_FILE" -C "$TERMUX_COMMON_CACHEDIR"
-               (cd $MESON_FOLDER && patch -p1 < $TERMUX_SCRIPTDIR/scripts/meson-android.patch)
+                       50f9b12b77272ef6ab064d26b7e06667f07fa9f931e6a20942bba2216ba4281b
+               tar xf "$MESON_TAR_FILE" -C "$TERMUX_PKG_TMPDIR"
+               cd $MESON_TMP_FOLDER
+               patch -p1 < $TERMUX_SCRIPTDIR/scripts/meson-android.patch
+               mv $MESON_TMP_FOLDER $MESON_FOLDER
        fi
        TERMUX_MESON="$MESON_FOLDER/meson.py"
        TERMUX_MESON_CROSSFILE=$TERMUX_COMMON_CACHEDIR/meson-crossfile-$TERMUX_ARCH-v2.txt
@@ -163,8 +166,8 @@ termux_setup_meson() {
 
 # Utility function to setup a current cmake build system
 termux_setup_cmake() {
-       local TERMUX_CMAKE_MAJORVESION=3.9
-       local TERMUX_CMAKE_MINORVERSION=6
+       local TERMUX_CMAKE_MAJORVESION=3.10
+       local TERMUX_CMAKE_MINORVERSION=2
        local TERMUX_CMAKE_VERSION=$TERMUX_CMAKE_MAJORVESION.$TERMUX_CMAKE_MINORVERSION
        local TERMUX_CMAKE_TARNAME=cmake-${TERMUX_CMAKE_VERSION}-Linux-x86_64.tar.gz
        local TERMUX_CMAKE_TARFILE=$TERMUX_PKG_TMPDIR/$TERMUX_CMAKE_TARNAME
@@ -172,7 +175,7 @@ termux_setup_cmake() {
        if [ ! -d "$TERMUX_CMAKE_FOLDER" ]; then
                termux_download https://cmake.org/files/v$TERMUX_CMAKE_MAJORVESION/$TERMUX_CMAKE_TARNAME \
                                "$TERMUX_CMAKE_TARFILE" \
-                               062bf45bee36ce7c2a55ae26b8b5324720f370d420a05cba91b9448c64ffdbea
+                               7a82b46c35f4e68a0807e8dc04e779dee3f36cd42c6387fd13b5c29fe62a69ea
                rm -Rf "$TERMUX_PKG_TMPDIR/cmake-${TERMUX_CMAKE_VERSION}-Linux-x86_64"
                tar xf "$TERMUX_CMAKE_TARFILE" -C "$TERMUX_PKG_TMPDIR"
                mv "$TERMUX_PKG_TMPDIR/cmake-${TERMUX_CMAKE_VERSION}-Linux-x86_64" \
@@ -368,7 +371,7 @@ termux_step_start_build() {
        TERMUX_STANDALONE_TOOLCHAIN="$TERMUX_TOPDIR/_lib/${TERMUX_NDK_VERSION}-${TERMUX_ARCH}-${TERMUX_PKG_API_LEVEL}"
        # Bump the below version if a change is made in toolchain setup to ensure
        # that everyone gets an updated toolchain:
-       TERMUX_STANDALONE_TOOLCHAIN+="-v2"
+       TERMUX_STANDALONE_TOOLCHAIN+="-v3"
 
        if [ -n "${TERMUX_PKG_BLACKLISTED_ARCHES:=""}" ] && [ "$TERMUX_PKG_BLACKLISTED_ARCHES" != "${TERMUX_PKG_BLACKLISTED_ARCHES/$TERMUX_ARCH/}" ]; then
                echo "Skipping building $TERMUX_PKG_NAME for arch $TERMUX_ARCH"
@@ -574,12 +577,12 @@ termux_step_setup_toolchain() {
                if [ "$TERMUX_PKG_CLANG" = "no" ]; then
                        CFLAGS+=" -Os"
                else
-                       if [ "$TERMUX_PKG_NAME" = "ruby" -a "$TERMUX_ARCH" = arm ]; then
-                               # This exception is to avoid a broken ruby on 32-bit arm
-                               # with NDK r15c and ruby 2.4.2 - see #1520.
-                               CFLAGS+=" -O1"
+                       # -Oz seems good for clang, see https://github.com/android-ndk/ndk/issues/133.
+                       # However, on arm it has a lot of issues such as #1520, #1680, #1765 and
+                       # https://bugs.llvm.org/show_bug.cgi?id=35379, so use so use -Os there for now:
+                       if [ $TERMUX_ARCH = arm ]; then
+                               CFLAGS+=" -Os"
                        else
-                               # -Oz seems good for clang, see https://github.com/android-ndk/ndk/issues/133
                                CFLAGS+=" -Oz"
                        fi
                fi
@@ -836,6 +839,7 @@ termux_step_configure_autotools () {
        AVOID_GNULIB+=" gl_cv_func_mkdir_trailing_dot_works=yes"
        AVOID_GNULIB+=" gl_cv_func_mkdir_trailing_slash_works=yes"
        AVOID_GNULIB+=" gl_cv_func_mkfifo_works=yes"
+       AVOID_GNULIB+=" gl_cv_func_mknod_works=yes"
        AVOID_GNULIB+=" gl_cv_func_realpath_works=yes"
        AVOID_GNULIB+=" gl_cv_func_select_detects_ebadf=yes"
        AVOID_GNULIB+=" gl_cv_func_snprintf_posix=yes"