summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej Barć <xgqt@gentoo.org>2024-08-24 15:07:45 +0200
committerMaciej Barć <xgqt@gentoo.org>2024-08-24 17:43:41 +0200
commitb96821b6d803a81c662bf307c02606d3b3579742 (patch)
tree9e58a14c27ba9a8b0863d43f7a624ac9d2a68c1a /dev-scheme
parentdev-dotnet/dotnet-sdk-bin: bump to 8.0.108 (diff)
downloadgentoo-b96821b6d803a81c662bf307c02606d3b3579742.tar.gz
gentoo-b96821b6d803a81c662bf307c02606d3b3579742.tar.bz2
gentoo-b96821b6d803a81c662bf307c02606d3b3579742.zip
dev-scheme/chicken: bump to 5.4.0
Signed-off-by: Maciej Barć <xgqt@gentoo.org>
Diffstat (limited to 'dev-scheme')
-rw-r--r--dev-scheme/chicken/Manifest1
-rw-r--r--dev-scheme/chicken/chicken-5.4.0.ebuild76
2 files changed, 77 insertions, 0 deletions
diff --git a/dev-scheme/chicken/Manifest b/dev-scheme/chicken/Manifest
index 68d80784a7f0..01a563d2274c 100644
--- a/dev-scheme/chicken/Manifest
+++ b/dev-scheme/chicken/Manifest
@@ -1 +1,2 @@
DIST chicken-5.3.0.tar.gz 4069549 BLAKE2B 7e1fb8c844542927eec53df751014f718b8c96fb6cf390d6464d7d55467c7320346be9ed05202b9c5c96548f274243ae52fead488981d7c207bec2c001db7cd7 SHA512 8fcc08a1ba44cde42c95820695a11858a3b7ff39a4b577bc5afb894c53513661aab2dc5b8e608e1d9d26648e314551052041626c4c8e519fcb9f8af324386e02
+DIST chicken-5.4.0.tar.gz 4109135 BLAKE2B 75dda6891992a7eeae8ac7624678c62c9aff61a712c9b8812b008f3369b11297019eaed259c28999a8e4f9aa587583cdef4284b5ada2bc971ef823ffa5508b35 SHA512 21f5dc4abcfce7be2d8eb6728061728a4a695ac88860e94e114c2bf2839a8a47bbdc368330913edc83d5b81b6b2499c608e47e6659fa7651c82d133abb7e4e3c
diff --git a/dev-scheme/chicken/chicken-5.4.0.ebuild b/dev-scheme/chicken/chicken-5.4.0.ebuild
new file mode 100644
index 000000000000..15244570240f
--- /dev/null
+++ b/dev-scheme/chicken/chicken-5.4.0.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Scheme interpreter and native Scheme to C compiler"
+HOMEPAGE="https://www.call-cc.org/"
+SRC_URI="https://code.call-cc.org/releases/${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~mips ~ppc ~ppc64 ~riscv ~x86"
+IUSE="doc"
+
+src_prepare() {
+ default
+
+ # because chicken's upstream is in the habit of using variables that
+ # portage also uses :( eg. $ARCH and $A
+ sed -i \
+ -e "s/A\([[:space:]]*?=\|)\)/z&/" \
+ -e "s/ARCH/z&/" \
+ -e "/LICENSE /d" \
+ Makefile.* {defaults,rules}.make || die
+
+ sed -i \
+ -e "s|/lib|/$(get_libdir)|" \
+ -e "s|\$(DATADIR)/doc|\$(SHAREDIR)/doc/${PF}|" \
+ defaults.make || die
+
+ sed -i \
+ -e "/\$(CHICKEN_DO_PROGRAM)\$(EXE):/,/^$/s/\(\$<\)/\$(LINKER_OPTIONS) \1/" \
+ rules.make || die
+
+ use doc || sed -i "/\$(SEP)manual/d" rules.make || die
+}
+
+src_compile() {
+ emake -j1 \
+ PLATFORM="linux" \
+ PREFIX="${EPREFIX}/usr" \
+ C_COMPILER="$(tc-getCC)" \
+ C_COMPILER_OPTIMIZATION_OPTIONS="${CFLAGS}" \
+ CXX_COMPILER="$(tc-getCXX)" \
+ HOSTSYSTEM="${CBUILD}" \
+ LINKER_OPTIONS="${LDFLAGS}"
+}
+
+src_test() {
+ cd tests && ./runtests.sh || die
+}
+
+src_install() {
+ emake -j1 \
+ PLATFORM="linux" \
+ PREFIX="${EPREFIX}/usr" \
+ C_COMPILER="$(tc-getCC)" \
+ C_COMPILER_OPTIMIZATION_OPTIONS="${CFLAGS}" \
+ CXX_COMPILER="$(tc-getCXX)" \
+ HOSTSYSTEM="${CBUILD}" \
+ LINKER_OPTIONS="${LDFLAGS}" \
+ DESTDIR="${D}" \
+ install
+ einstalldocs
+ find "${ED}" -name '*.a' -delete || die
+
+ # let portage track this file (created later)
+ touch "${ED}"/usr/$(get_libdir)/${PN}/11/modules.db || die
+}
+
+pkg_postinst() {
+ # create modules.db file in ${ROOT}
+ chicken-install -update-db || die
+}