diff --git a/scripts.d/25-gmp.sh b/scripts.d/25-gmp.sh new file mode 100755 index 0000000..55b47e3 --- /dev/null +++ b/scripts.d/25-gmp.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +GMP_SRC="https://gmplib.org/download/gmp/gmp-6.2.0.tar.xz" + +ffbuild_enabled() { + return 0 +} + +ffbuild_dockerstage() { + to_df "ADD $SELF /root/gmp.sh" + to_df "RUN bash -c 'source /root/gmp.sh && ffbuild_dockerbuild && rm /root/gmp.sh'" +} + +ffbuild_dockerbuild() { + mkdir gmp + cd gmp + + wget "$GMP_SRC" -O gmp.tar.xz || return -1 + tar xaf gmp.tar.xz || return -1 + rm gmp.tar.xz + cd gmp* || return -1 + + autoreconf -i || return -1 + + local myconf=( + --prefix="$FFBUILD_PREFIX" + --disable-shared + --enable-static + ) + + if [[ $TARGET == win* ]]; then + myconf+=( + --host="$FFBUILD_TOOLCHAIN" + ) + else + echo "Unknown target" + return -1 + fi + + ./configure "${myconf[@]}" || return -1 + make -j$(nproc) || return -1 + make install || return -1 + + cd ../.. + rm -rf gmp +} + +ffbuild_configure() { + echo --enable-gmp +} + +ffbuild_unconfigure() { + echo --disable-gmp +}