build-package.sh: Handle options early
[termux-packages] / disabled-packages / racket / build.sh
1 TERMUX_PKG_HOMEPAGE=https://racket-lang.org
2 TERMUX_PKG_DESCRIPTION="Full-spectrum programming language going beyond Lisp and Scheme"
3 TERMUX_PKG_VERSION=6.7
4 TERMUX_PKG_SRCURL=https://mirror.racket-lang.org/installers/${TERMUX_PKG_VERSION}/racket-minimal-${TERMUX_PKG_VERSION}-src-builtpkgs.tgz
5 TERMUX_PKG_SHA256=4203d9b51a0de7ea549db966cfa49a736f8605ab51e2f198cbdb9cfaf428b0f3
6 TERMUX_PKG_FOLDERNAME=racket-${TERMUX_PKG_VERSION}
7 TERMUX_PKG_HOSTBUILD=true
8 TERMUX_PKG_DEPENDS="libffi, libandroid-support"
9 TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--enable-racket=$TERMUX_PKG_HOSTBUILD_DIR/racket/racketcgc"
10 # Building racket hits the 'the wrong gcc-problem' detailed at http://www.metastatic.org/text/libtool.html
11 # due to --tag=CC being used. To avoid that a cross libtool built in termux_step_post_extract_package()
12 # below and used due to this configure argument:
13 _CROSS_LIBTOOL_DIR=$TERMUX_PKG_CACHEDIR/libtool-cross-2.4.6-${TERMUX_HOST_PLATFORM}
14 TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" --enable-lt=$_CROSS_LIBTOOL_DIR/bin/${TERMUX_HOST_PLATFORM}-libtool"
15
16 termux_step_post_extract_package () {
17 if [ ! -d $_CROSS_LIBTOOL_DIR ]; then
18 LIBTOOL_TARFILE=$TERMUX_PKG_CACHEDIR/libtool-2.4.6.tar.gz
19 if [ ! -f $LIBTOOL_TARFILE ]; then
20 curl -L -o $LIBTOOL_TARFILE http://ftpmirror.gnu.org/libtool/libtool-2.4.6.tar.gz
21 fi
22 cd $TERMUX_PKG_CACHEDIR
23 tar xf $LIBTOOL_TARFILE
24 cd libtool-2.4.6
25 ./configure --prefix=$_CROSS_LIBTOOL_DIR --host=$TERMUX_HOST_PLATFORM --program-prefix=${TERMUX_HOST_PLATFORM}-
26 make install
27 fi
28 }
29
30 termux_step_host_build () {
31 $TERMUX_PKG_SRCDIR/src/configure ${TERMUX_PKG_EXTRA_HOSTBUILD_CONFIGURE_ARGS}
32 make -j $TERMUX_MAKE_PROCESSES
33 }
34
35 termux_step_pre_configure () {
36 # Due to use of syslog.
37 LDFLAGS+=" -llog"
38
39 # Do this after patching:
40 export TERMUX_PKG_SRCDIR=$TERMUX_PKG_SRCDIR/src
41 }