2020-11-25 23:22:10 +00:00
|
|
|
TERMUX_PKG_HOMEPAGE=https://common-lisp.net/project/ecl/
|
2022-07-11 09:44:23 +00:00
|
|
|
TERMUX_PKG_DESCRIPTION="ECL (Embeddable Common Lisp) is an interpreter of the Common Lisp language"
|
2020-11-25 23:22:10 +00:00
|
|
|
TERMUX_PKG_LICENSE="LGPL-2.0"
|
2020-12-20 13:16:34 +00:00
|
|
|
TERMUX_PKG_MAINTAINER="@termux"
|
2023-10-01 18:27:26 +00:00
|
|
|
TERMUX_PKG_VERSION="23.9.9"
|
2020-11-25 23:22:10 +00:00
|
|
|
TERMUX_PKG_SRCURL=https://common-lisp.net/project/ecl/static/files/release/ecl-${TERMUX_PKG_VERSION}.tgz
|
2023-10-01 18:27:26 +00:00
|
|
|
TERMUX_PKG_SHA256=c51bdab4ca6c1173dd3fe9cfe9727bcefb97bb0a3d6434b627ca6bdaeb33f880
|
2020-11-26 01:25:09 +00:00
|
|
|
TERMUX_PKG_DEPENDS="libandroid-support, libgmp, libgc, libffi"
|
2020-11-25 23:22:10 +00:00
|
|
|
TERMUX_PKG_HOSTBUILD=true
|
|
|
|
TERMUX_PKG_NO_STATICSPLIT=true
|
2020-11-26 00:01:18 +00:00
|
|
|
TERMUX_PKG_BLACKLISTED_ARCHES="i686, x86_64"
|
2020-11-25 23:22:10 +00:00
|
|
|
TERMUX_PKG_HAS_DEBUG=false
|
|
|
|
|
|
|
|
# See https://gitlab.com/embeddable-common-lisp/ecl/-/blob/develop/INSTALL
|
|
|
|
# for upstream cross build guide.
|
|
|
|
|
|
|
|
# ECL needs itself during build, so we need to build it for the host first.
|
|
|
|
termux_step_host_build() {
|
2022-07-24 07:39:57 +00:00
|
|
|
local _PREFIX_FOR_BUILD=$TERMUX_PKG_HOSTBUILD_DIR/prefix
|
|
|
|
|
|
|
|
local srcdir=$TERMUX_PKG_SRCDIR/src
|
|
|
|
mkdir $_PREFIX_FOR_BUILD
|
2021-11-21 19:11:19 +00:00
|
|
|
autoreconf -fi $srcdir/gmp
|
|
|
|
$srcdir/configure ABI=${TERMUX_ARCH_BITS} \
|
|
|
|
CFLAGS=-m${TERMUX_ARCH_BITS} LDFLAGS=-m${TERMUX_ARCH_BITS} \
|
2022-07-24 07:39:57 +00:00
|
|
|
--prefix=$_PREFIX_FOR_BUILD --srcdir=$srcdir --disable-c99complex
|
2020-11-25 23:22:10 +00:00
|
|
|
make
|
|
|
|
make install
|
|
|
|
}
|
|
|
|
|
2021-11-21 19:11:19 +00:00
|
|
|
termux_step_pre_configure() {
|
2022-07-24 07:39:57 +00:00
|
|
|
local srcdir=$TERMUX_PKG_SRCDIR/src
|
2021-11-21 19:11:19 +00:00
|
|
|
autoreconf -fi $srcdir
|
|
|
|
}
|
|
|
|
|
2020-11-25 23:22:10 +00:00
|
|
|
termux_step_configure() {
|
|
|
|
# Copy cross_config for target architecture.
|
|
|
|
case $TERMUX_ARCH in
|
|
|
|
aarch64) crossconfig=android-arm64 ;;
|
|
|
|
arm) crossconfig=android-arm ;;
|
|
|
|
*) termux_error_exit "Unsupported arch: $TERMUX_ARCH" ;;
|
|
|
|
esac
|
|
|
|
crossconfig="$TERMUX_PKG_SRCDIR/src/util/$crossconfig.cross_config"
|
|
|
|
export ECL_TO_RUN=$TERMUX_PKG_HOSTBUILD_DIR/prefix/bin/ecl
|
|
|
|
|
2022-07-24 07:39:57 +00:00
|
|
|
local srcdir=$TERMUX_PKG_SRCDIR/src
|
2020-11-25 23:22:10 +00:00
|
|
|
$srcdir/configure \
|
|
|
|
--srcdir=$srcdir \
|
|
|
|
--prefix=$TERMUX_PREFIX \
|
|
|
|
--host=$TERMUX_HOST_PLATFORM \
|
2020-11-26 00:01:18 +00:00
|
|
|
--build=$TERMUX_BUILD_TUPLE \
|
2020-11-25 23:22:10 +00:00
|
|
|
--with-cross-config=$crossconfig \
|
|
|
|
--disable-c99complex \
|
2020-11-26 00:01:55 +00:00
|
|
|
--enable-gmp=system \
|
2020-11-26 01:25:09 +00:00
|
|
|
--enable-boehm=system
|
2020-11-25 23:22:10 +00:00
|
|
|
}
|