diff --git a/packages/chicken/Makefile.android.patch b/packages/chicken/Makefile.android.patch new file mode 100644 index 0000000000..e713ca452c --- /dev/null +++ b/packages/chicken/Makefile.android.patch @@ -0,0 +1,25 @@ +--- ./Makefile.android.orig 2022-05-29 07:35:44.708983344 +0000 ++++ ./Makefile.android 2022-05-29 10:03:05.522168915 +0000 +@@ -31,7 +31,7 @@ + + # options + +-C_COMPILER_OPTIONS ?= -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H ++C_COMPILER_OPTIONS ?= -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H $(CFLAGS) + ifdef DEBUGBUILD + C_COMPILER_OPTIMIZATION_OPTIONS ?= -g -Wall -Wno-unused + else +@@ -46,11 +46,11 @@ + LINKER_LINK_SHARED_PROGRAM_OPTIONS = -Wl,-rpath="$(RUNTIME_LINKER_PATH)" + # Android NDK build system currently does not understand + # versioned sonames, so don't try to embed a soname. +-#LIBCHICKEN_SO_LINKER_OPTIONS = -Wl,-soname,lib$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX).so.$(BINARYVERSION) +-LIBRARIES = -lm -ldl -llog ++LIBCHICKEN_SO_LINKER_OPTIONS = -Wl,-soname,lib$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX).so.$(BINARYVERSION) ++LIBRARIES = -lm -ldl + NEEDS_RELINKING = yes + # See above +-#USES_SONAME = yes ++USES_SONAME = yes + + # special files diff --git a/packages/chicken/build.sh b/packages/chicken/build.sh new file mode 100644 index 0000000000..b2d414b772 --- /dev/null +++ b/packages/chicken/build.sh @@ -0,0 +1,20 @@ +TERMUX_PKG_HOMEPAGE=https://www.call-cc.org +TERMUX_PKG_DESCRIPTION="A feature rich Scheme compiler and interpreter" +TERMUX_PKG_LICENSE="BSD" +TERMUX_PKG_LICENSE_FILE="LICENSE" +TERMUX_PKG_MAINTAINER="@termux" +TERMUX_PKG_VERSION=5.3.0 +TERMUX_PKG_SRCURL=https://code.call-cc.org/releases/${TERMUX_PKG_VERSION}/chicken-${TERMUX_PKG_VERSION}.tar.gz +TERMUX_PKG_SHA256=c3ad99d8f9e17ed810912ef981ac3b0c2e2f46fb0ecc033b5c3b6dca1bdb0d76 +TERMUX_PKG_BUILD_IN_SRC=true +TERMUX_PKG_EXTRA_MAKE_ARGS="PLATFORM=android" + +termux_step_pre_configure() { + local ARCH="${TERMUX_ARCH/_/-}" # Replace '_' in x86_64 with '-'. + if [[ "${TERMUX_ARCH}" == "i686" ]]; then + ARCH="x86" + fi + TERMUX_PKG_EXTRA_MAKE_ARGS+=" ARCH=${ARCH}" + + export C_COMPILER="$CC" +} diff --git a/packages/chicken/runtime.c.patch b/packages/chicken/runtime.c.patch new file mode 100644 index 0000000000..04c038cccd --- /dev/null +++ b/packages/chicken/runtime.c.patch @@ -0,0 +1,27 @@ +--- ./runtime.c.orig 2022-05-29 09:26:50.789444359 +0000 ++++ ./runtime.c 2022-05-29 09:27:41.589413742 +0000 +@@ -37,10 +37,6 @@ + # include + #endif + +-#ifdef __ANDROID__ +-# include +-#endif +- + #if !defined(PIC) + # define NO_DLOAD2 + #endif +@@ -606,14 +602,10 @@ + va_list va; + + va_start(va, fstr); +-#ifdef __ANDROID__ +- __android_log_vprint(ANDROID_LOG_DEBUG, prefix, fstr, va); +-#else + C_fflush(C_stdout); + C_fprintf(C_stderr, "[%s] ", prefix); + C_vfprintf(C_stderr, fstr, va); + C_fflush(C_stderr); +-#endif + va_end(va); + }