aboutsummaryrefslogtreecommitdiffstats
path: root/lang
diff options
context:
space:
mode:
authorashish <ashish@FreeBSD.org>2017-11-27 05:18:04 +0800
committerashish <ashish@FreeBSD.org>2017-11-27 05:18:04 +0800
commit5efcb146ef3c41cf6f318183556c9881c651c0e5 (patch)
tree195db18992059fa21512082c74182f6aab508096 /lang
parent01a55e0515f43d8c8f4624016134f27bb6abf26a (diff)
downloadfreebsd-ports-gnome-5efcb146ef3c41cf6f318183556c9881c651c0e5.tar.gz
freebsd-ports-gnome-5efcb146ef3c41cf6f318183556c9881c651c0e5.tar.zst
freebsd-ports-gnome-5efcb146ef3c41cf6f318183556c9881c651c0e5.zip
Chez Scheme is both a programming language and an implementation
of that language, with supporting tools and documentation. As a superset of the language described in the [Revised<sup>6</sup> Report on the Algorithmic Language Scheme] (http://www.r6rs.org)(R6RS), Chez Scheme supports all standard features of Scheme, including first-class procedures, proper treatment of tail calls, continuations, user-defined records, libraries, exceptions, and hygienic macro expansion. Chez Scheme also includes extensive support for interfacing with C and other languages, support for multiple threads possibly running on multiple cores, non-blocking I/O, and many other features. WWW: https://cisco.github.io/ChezScheme Thanks to jrm for helping with testing.
Diffstat (limited to 'lang')
-rw-r--r--lang/Makefile1
-rw-r--r--lang/chez-scheme/Makefile69
-rw-r--r--lang/chez-scheme/distinfo13
-rw-r--r--lang/chez-scheme/pkg-descr15
-rw-r--r--lang/chez-scheme/pkg-plist38
5 files changed, 136 insertions, 0 deletions
diff --git a/lang/Makefile b/lang/Makefile
index d41a2c3e1ce5..43b2f8c32bf3 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -26,6 +26,7 @@
SUBDIR += cdent
SUBDIR += ceylon
SUBDIR += cfortran
+ SUBDIR += chez-scheme
SUBDIR += chibi-scheme
SUBDIR += chicken
SUBDIR += cilkplus
diff --git a/lang/chez-scheme/Makefile b/lang/chez-scheme/Makefile
new file mode 100644
index 000000000000..e063d32a52d0
--- /dev/null
+++ b/lang/chez-scheme/Makefile
@@ -0,0 +1,69 @@
+# Created by: Ashish SHUKLA <ashish@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME= chez-scheme
+PORTVERSION= 9.5
+CATEGORIES= lang
+MASTER_SITES= http://distfiles.pirateparty.in/ashish/:boot \
+ LOCAL/ashish:boot
+DISTFILES= ${PORTNAME}-boot-a6fb.tar.xz:boot \
+ ${PORTNAME}-boot-i3fb.tar.xz:boot
+
+MAINTAINER= ashish@FreeBSD.org
+COMMENT= Chez Scheme system
+
+LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+ONLY_FOR_ARCHS= amd64 i386
+
+USE_GITHUB= yes
+GH_ACCOUNT= cisco
+GH_PROJECT= ChezScheme
+GH_TAGNAME= v${PORTVERSION}
+GH_TUPLE= nanopass:nanopass-framework-scheme:v1.9:nanopass/nanopass \
+ madler:zlib:v1.2.11:zlib/zlib \
+ dybvig:stex:v1.2.1:stex/stex
+
+WRKSRC= ${WRKDIR}/ChezScheme-${PORTVERSION}
+
+USES= gmake iconv:lib ncurses
+USE_XORG= x11
+HAS_CONFIGURE= yes
+ALL_TARGET= build
+CONFLICTS_INSTALL= petite-chez-[0-9]*
+STRIP_FILES= bin/petite bin/${PORTNAME} bin/${PORTNAME}-script
+CHEZ_LIBDIR=lib/csv${PORTVERSION}
+CONFIGURE_ARGS= --installprefix=${PREFIX} \
+ --temproot=${STAGEDIR} \
+ --installschemename=${PORTNAME} \
+ --installscriptname=${PORTNAME}-script
+PLIST_SUB= PORTNAME=${PORTNAME} \
+ CHEZ_ARCH=${CHEZ_ARCH} \
+ CHEZ_LIBDIR=${CHEZ_LIBDIR}
+
+.include <bsd.port.pre.mk>
+
+.if (${ARCH} == "amd64")
+CONFIGURE_ARGS+= --threads --64 -m=a6fb
+CHEZ_ARCH= a6fb
+.elif (${ARCH} == "i386")
+CONFIGURE_ARGS+= --threads --32 -m=i3fb
+CHEZ_ARCH= i3fb
+.endif
+
+post-patch:
+ ${LN} -sf ${WRKDIR}/${CHEZ_ARCH} ${WRKSRC}/boot/
+ ${REINPLACE_CMD} -e 's,/usr/X11R6,${LOCALBASE},g' \
+ -e 's,/usr/local,${LOCALBASE},g' \
+ -e 's,-liconv,${ICONV_LIB},g' ${WRKSRC}/c/Mf-${CHEZ_ARCH}
+
+post-install:
+.for f in ${STRIP_FILES}
+ @${CHMOD} +w ${STAGEDIR}${PREFIX}/${f}
+ @${STRIP_CMD} ${STAGEDIR}${PREFIX}/${f}
+ @${CHMOD} -w ${STAGEDIR}${PREFIX}/${f}
+.endfor
+ @${LN} -sf scheme.boot ${STAGEDIR}${PREFIX}/${CHEZ_LIBDIR}/${CHEZ_ARCH}/${PORTNAME}-script.boot
+
+.include <bsd.port.post.mk>
diff --git a/lang/chez-scheme/distinfo b/lang/chez-scheme/distinfo
new file mode 100644
index 000000000000..4230bb8b9c7b
--- /dev/null
+++ b/lang/chez-scheme/distinfo
@@ -0,0 +1,13 @@
+TIMESTAMP = 1511729125
+SHA256 (chez-scheme-boot-a6fb.tar.xz) = ee94286508cf6e9d76b9ec9faf9aa73a452b59b4a86a2ed957ea89e271feb659
+SIZE (chez-scheme-boot-a6fb.tar.xz) = 2217812
+SHA256 (chez-scheme-boot-i3fb.tar.xz) = 1733fe28401f7a68c802b31e246696eaeccb3f9e8e32f57751a591383c91effa
+SIZE (chez-scheme-boot-i3fb.tar.xz) = 2115580
+SHA256 (cisco-ChezScheme-9.5-v9.5_GH0.tar.gz) = a1d9f93bd8a683ea3d8f2f1b4880f85ea40bf9a482ee6b84cb0fe0ab6148a98c
+SIZE (cisco-ChezScheme-9.5-v9.5_GH0.tar.gz) = 29245837
+SHA256 (nanopass-nanopass-framework-scheme-v1.9_GH0.tar.gz) = 625b239f9030d0b1e86b1fffd8b69f7249a63e8b8ca85195a00cf22889f7fc86
+SIZE (nanopass-nanopass-framework-scheme-v1.9_GH0.tar.gz) = 3816290
+SHA256 (madler-zlib-v1.2.11_GH0.tar.gz) = 629380c90a77b964d896ed37163f5c3a34f6e6d897311f1df2a7016355c45eff
+SIZE (madler-zlib-v1.2.11_GH0.tar.gz) = 644492
+SHA256 (dybvig-stex-v1.2.1_GH0.tar.gz) = bf784ca46aaca9b665b7eb0c39f04f6a695aa40e99b11d8a6d4440648c1bf40e
+SIZE (dybvig-stex-v1.2.1_GH0.tar.gz) = 211011
diff --git a/lang/chez-scheme/pkg-descr b/lang/chez-scheme/pkg-descr
new file mode 100644
index 000000000000..39ce69171efa
--- /dev/null
+++ b/lang/chez-scheme/pkg-descr
@@ -0,0 +1,15 @@
+Chez Scheme is both a programming language and an implementation
+of that language, with supporting tools and documentation.
+
+As a superset of the language described in the
+[Revised<sup>6</sup> Report on the Algorithmic Language Scheme]
+(http://www.r6rs.org)(R6RS), Chez Scheme supports all standard
+features of Scheme, including first-class procedures, proper treatment
+of tail calls, continuations, user-defined records, libraries,
+exceptions, and hygienic macro expansion.
+
+Chez Scheme also includes extensive support for interfacing with C
+and other languages, support for multiple threads possibly running
+on multiple cores, non-blocking I/O, and many other features.
+
+WWW: https://cisco.github.io/ChezScheme
diff --git a/lang/chez-scheme/pkg-plist b/lang/chez-scheme/pkg-plist
new file mode 100644
index 000000000000..a5d1c624c064
--- /dev/null
+++ b/lang/chez-scheme/pkg-plist
@@ -0,0 +1,38 @@
+bin/petite
+bin/%%PORTNAME%%
+bin/%%PORTNAME%%-script
+%%CHEZ_LIBDIR%%/%%CHEZ_ARCH%%/petite.boot
+%%CHEZ_LIBDIR%%/%%CHEZ_ARCH%%/%%PORTNAME%%-script.boot
+%%CHEZ_LIBDIR%%/%%CHEZ_ARCH%%/%%PORTNAME%%.boot
+%%CHEZ_LIBDIR%%/%%CHEZ_ARCH%%/scheme.boot
+%%CHEZ_LIBDIR%%/%%CHEZ_ARCH%%/scheme.h
+%%CHEZ_LIBDIR%%/examples/Makefile
+%%CHEZ_LIBDIR%%/examples/compat.ss
+%%CHEZ_LIBDIR%%/examples/crepl.c
+%%CHEZ_LIBDIR%%/examples/csocket.c
+%%CHEZ_LIBDIR%%/examples/def.ss
+%%CHEZ_LIBDIR%%/examples/edit.ss
+%%CHEZ_LIBDIR%%/examples/ez-grammar-test.ss
+%%CHEZ_LIBDIR%%/examples/ez-grammar.ss
+%%CHEZ_LIBDIR%%/examples/fact.ss
+%%CHEZ_LIBDIR%%/examples/fatfib.ss
+%%CHEZ_LIBDIR%%/examples/fft.ss
+%%CHEZ_LIBDIR%%/examples/fib.ss
+%%CHEZ_LIBDIR%%/examples/foreign.ss
+%%CHEZ_LIBDIR%%/examples/freq.ss
+%%CHEZ_LIBDIR%%/examples/interpret.ss
+%%CHEZ_LIBDIR%%/examples/m4.ss
+%%CHEZ_LIBDIR%%/examples/macro.ss
+%%CHEZ_LIBDIR%%/examples/matrix.ss
+%%CHEZ_LIBDIR%%/examples/object.ss
+%%CHEZ_LIBDIR%%/examples/power.ss
+%%CHEZ_LIBDIR%%/examples/queue.ss
+%%CHEZ_LIBDIR%%/examples/rabbit.ss
+%%CHEZ_LIBDIR%%/examples/rsa.ss
+%%CHEZ_LIBDIR%%/examples/scons.ss
+%%CHEZ_LIBDIR%%/examples/setof.ss
+%%CHEZ_LIBDIR%%/examples/socket.ss
+%%CHEZ_LIBDIR%%/examples/template.ss
+%%CHEZ_LIBDIR%%/examples/unify.ss
+man/man1/petite.1.gz
+man/man1/%%PORTNAME%%.1.gz