| 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 |
| 11 | # http://www.metastatic.org/text/libtool.html |
| 12 | # due to --tag=CC being used. To avoid that a cross libtool |
| 13 | # built in termux_step_post_extract_package() below and used |
| 14 | # due to this configure argument: |
| 15 | _CROSS_LIBTOOL_DIR=$TERMUX_PKG_CACHEDIR/libtool-cross-2.4.6-${TERMUX_HOST_PLATFORM} |
| 16 | TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" --enable-lt=$_CROSS_LIBTOOL_DIR/bin/${TERMUX_HOST_PLATFORM}-libtool" |
| 17 | |
| 18 | termux_step_post_extract_package () { |
| 19 | if [ ! -d $_CROSS_LIBTOOL_DIR ]; then |
| 20 | LIBTOOL_TARFILE=$TERMUX_PKG_CACHEDIR/libtool-2.4.6.tar.gz |
| 21 | if [ ! -f $LIBTOOL_TARFILE ]; then |
| 22 | curl -L -o $LIBTOOL_TARFILE http://ftpmirror.gnu.org/libtool/libtool-2.4.6.tar.gz |
| 23 | fi |
| 24 | cd $TERMUX_PKG_CACHEDIR |
| 25 | tar xf $LIBTOOL_TARFILE |
| 26 | cd libtool-2.4.6 |
| 27 | ./configure --prefix=$_CROSS_LIBTOOL_DIR --host=$TERMUX_HOST_PLATFORM --program-prefix=${TERMUX_HOST_PLATFORM}- |
| 28 | make install |
| 29 | fi |
| 30 | } |
| 31 | |
| 32 | termux_step_host_build () { |
| 33 | $TERMUX_PKG_SRCDIR/src/configure ${TERMUX_PKG_EXTRA_HOSTBUILD_CONFIGURE_ARGS} |
| 34 | make -j $TERMUX_MAKE_PROCESSES |
| 35 | } |
| 36 | |
| 37 | termux_step_pre_configure () { |
| 38 | # Due to use of syslog. |
| 39 | LDFLAGS+=" -llog" |
| 40 | |
| 41 | # Do this after patching: |
| 42 | export TERMUX_PKG_SRCDIR=$TERMUX_PKG_SRCDIR/src |
| 43 | } |