From nobody Fri Oct 27 06:33:56 2023 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4SGtD51xWkz4xrbB; Fri, 27 Oct 2023 06:33:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4SGtD51WpNz3KQR; Fri, 27 Oct 2023 06:33:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1698388437; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=D7ahL5KPyPmcy/8lgWWQVSzQ5/mYDgY/0TShgo6d5rs=; b=uG0zVKMaNpKJQ6eXDiNvp3XJcDwIM7mPrpM6A19ZJkgoR3Lpzz11851dh+XOhfKYyLs/i4 xm8nmckvNeoRx2GfTA3aG2vklLNA00rFyHrQ38uKGF+amM9MvoUb4U50rcPGj4U4SCDuj4 JSCK4s66ZBkvqfWc5VjpzjS3ojGG9CFuF1Gs3qN+kmmv9T3WwMVa4JurzfnW6TFx6PHqVZ WACQZdKozBPGhbVzw3P+XOmgjVgIyoaBJ4JZDLhuIF9iRAv8QTvcBsL+lDGBywCgedC+Tp WBGBpmuqc9pPaVdxOaI22Cjb9c0WPabsvEdVXlZ9GYceBKs02HwS9F62B4Wm+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1698388437; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=D7ahL5KPyPmcy/8lgWWQVSzQ5/mYDgY/0TShgo6d5rs=; b=Hd2lZAOQlOAM4wO9CFHoN/kzBHYLW14JZNmKAsiTxQq6Ov/T1cYRN44MQMNNd8oMKY/97h k1vQu6xQZs/I7ysCARvMW4Ms2X97Dz3ZC3Cvt/rOJD2MJALDr4vnbOO4HdvelVgQ/mMk7/ fJ1OuC3fXQpCBa22U7YYSKSAz2VtjVv8Ju+5cIB/2/LLGBDisTF9wMVR6z7vdGM/cUOMOd pVv9V6vqpdIX/zEc7rXTQLHFk+R65Q6hnPH+GdHwCM0FYsGGjxcW87A2cPo3g3ZCxQNV6S jYE/nTrPkViii2LJMJVRiUI8pd5laP0zDspPFyQ+vFE2ZH3paapxh6yQw4z4Kw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1698388437; a=rsa-sha256; cv=none; b=sCmV0ZoKZCbBygtycW1fgMPgLsgD9f/4YUaiQgO40uX4x1jOFIijlWR+FiQ+AEZslSssDi VuCd5l0UM4GUlCGM7utttPGMu3TJCQw2wBjuPVh3HyuFoASs3irrOyQDifHSoZSycpFkcD /qjRuChjYVoqMCse6P4VKhel1WFc6T7o0iPjxdxgRQjlaybWkz0hT2exfrSz/K8m+dTMUT zglBY9f0LbqsVCuocNoCP1iYIGSw9vSPfaCi7Mt9DbPiNQcDIEjjRlS/iD/pK+tKearWvn wBkmkkmgIAKu3uJrxYUHb+xbZwc2Tc9YeDl9ovKWlsMV6qEiYRFp5N9yRjWSDg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4SGtD50KjWz137j; Fri, 27 Oct 2023 06:33:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39R6XurF089431; Fri, 27 Oct 2023 06:33:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39R6Xusc089428; Fri, 27 Oct 2023 06:33:56 GMT (envelope-from git) Date: Fri, 27 Oct 2023 06:33:56 GMT Message-Id: <202310270633.39R6Xusc089428@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Robert Clausecker Subject: git: 33b159c02d78 - main - lang/s7: Scheme interpreter List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: fuz X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 33b159c02d78b2a00a854188ce648c9c6e0314ea Auto-Submitted: auto-generated The branch main has been updated by fuz: URL: https://cgit.FreeBSD.org/ports/commit/?id=33b159c02d78b2a00a854188ce648c9c6e0314ea commit 33b159c02d78b2a00a854188ce648c9c6e0314ea Author: Robert Clausecker AuthorDate: 2023-10-23 23:40:48 +0000 Commit: Robert Clausecker CommitDate: 2023-10-27 06:32:10 +0000 lang/s7: Scheme interpreter s7 is a Scheme interpreter intended as an extension language for other applications. Although it is a descendant of tinyScheme, s7 is closest as a Scheme dialect to Guile 1.8. I believe it is compatible with r5rs and r7rs. It has continuations, ratios, complex numbers, macros, keywords, hash-tables, multiprecision arithmetic, generalized set!, unicode, and so on. It does not have syntax-rules or any of its friends, and it thinks there is no such thing as an inexact integer. WWW: https://ccrma.stanford.edu/software/snd/snd/s7.html --- lang/Makefile | 1 + lang/s7/Makefile | 75 +++++++++++++++++++++++++++++++++++++++++++++++++++ lang/s7/distinfo | 3 +++ lang/s7/pkg-descr | 7 +++++ lang/s7/pkg-plist | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 166 insertions(+) diff --git a/lang/Makefile b/lang/Makefile index 90c1832a54bb..261aef56d5c8 100644 --- a/lang/Makefile +++ b/lang/Makefile @@ -330,6 +330,7 @@ SUBDIR += rust SUBDIR += rust-bootstrap SUBDIR += rust-nightly + SUBDIR += s7 SUBDIR += sagittarius-scheme SUBDIR += sather-specification SUBDIR += sather-tutorial diff --git a/lang/s7/Makefile b/lang/s7/Makefile new file mode 100644 index 000000000000..830449938691 --- /dev/null +++ b/lang/s7/Makefile @@ -0,0 +1,75 @@ +PORTNAME= s7 +PORTVERSION= g20231023 +CATEGORIES= lang lisp + +MAINTAINER= fuz@FreeBSD.org +COMMENT= Scheme interpreter +WWW= https://ccrma.stanford.edu/software/snd/snd/s7.html + +LICENSE= BSD0CLAUSE + +USES= localbase:ldflags +USE_GITLAB= yes +GL_SITE= https://cm-gitlab.stanford.edu/ +GL_ACCOUNT= bil +GL_TAGNAME= 5bba8bca5d6c22001bcf87e63a246eb69163b020 +USE_LDCONFIG= yes + +CFLAGS+= -DS7_LOAD_PATH=\"${DATADIR}\" \ + -DHAVE_COMPLEX_NUMBERS \ + -DHAVE_COMPLEX_TRIG \ + -DWITH_SYSTEM_EXTRAS \ + -DWITH_C_LOADER + +LDFLAGS+= -Wl,-export-dynamic +LIBS+= -lm +S7LIBS= c dl m + +PORTDOCS= s7.html + +OPTIONS_DEFINE= DOCS GMP REPL NREPL +OPTIONS_DEFAULT= GMP REPL +OPTIONS_SUB= yes +NREPL_DESC= install notcurses repl (s7-nrepl) +REPL_DESC= install simple repl (s7-repl) +GMP_LIB_DEPENDS= libgmp.so:math/gmp \ + libmpfr.so:math/mpfr \ + libmpc.so:math/mpc +GMP_CFLAGS= -DWITH_GMP +GMP_LIBS= -lmpc -lmpfr -lgmp +NREPL_LIB_DEPENDS= libnotcurses-core.so:devel/notcurses + +do-build: + ${CC} -fpic -shared ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -o ${WRKDIR}/libs7.so ${WRKSRC}/s7.c ${LIBS} + ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -L${WRKDIR} -o ${WRKDIR}/s7-repl ${WRKSRC}/repl.c -ls7 +.for l in ${S7LIBS} + (cd ${WRKDIR} && ${SETENV} LD_LIBRARY_PATH=${WRKDIR} ${WRKDIR}/s7-repl ${WRKSRC}/lib$l.scm) +.endfor + +post-build-NREPL-on: + ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -L${WRKDIR} -o ${WRKDIR}/s7-nrepl ${WRKSRC}/nrepl.c -ls7 -lnotcurses-core + +do-install: + ${INSTALL_LIB} ${WRKDIR}/libs7.so ${STAGEDIR}${PREFIX}/lib/ + ${INSTALL_DATA} ${WRKSRC}/s7.h ${STAGEDIR}${PREFIX}/include/ + ${MKDIR} ${STAGEDIR}${DATADIR}/tools +.for l in ${S7LIBS} + ${INSTALL_LIB} ${WRKDIR}/lib$l_s7.so ${STAGEDIR}${DATADIR}/ +.endfor + ${INSTALL_DATA} ${WRKSRC}/*.scm ${STAGEDIR}/${DATADIR}/ + ${INSTALL_DATA} ${WRKSRC}/tools/*.scm ${STAGEDIR}/${DATADIR}/tools + +do-install-DOCS-on: + ${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/s7.html ${STAGEDIR}${DOCSDIR}/ + +do-install-NREPL-on: + ${INSTALL_PROGRAM} ${WRKDIR}/s7-nrepl ${STAGEDIR}${PREFIX}/bin/ + +do-install-REPL-on: + ${INSTALL_PROGRAM} ${WRKDIR}/s7-repl ${STAGEDIR}${PREFIX}/bin/ + +do-test: + (cd ${WRKSRC} && ${SETENV} LD_LIBRARY_PATH=${WRKDIR} ${WRKDIR}/s7-repl s7test.scm) + +.include diff --git a/lang/s7/distinfo b/lang/s7/distinfo new file mode 100644 index 000000000000..6cb075cfb021 --- /dev/null +++ b/lang/s7/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1698095508 +SHA256 (bil-s7-5bba8bca5d6c22001bcf87e63a246eb69163b020_GL0.tar.gz) = f48d4864b827d2f4be6d00dd8f72ee825e8fabd75c934ef1d5590e8fde934174 +SIZE (bil-s7-5bba8bca5d6c22001bcf87e63a246eb69163b020_GL0.tar.gz) = 2686623 diff --git a/lang/s7/pkg-descr b/lang/s7/pkg-descr new file mode 100644 index 000000000000..2752043196e9 --- /dev/null +++ b/lang/s7/pkg-descr @@ -0,0 +1,7 @@ +s7 is a Scheme interpreter intended as an extension language for other +applications. Although it is a descendant of tinyScheme, s7 is closest +as a Scheme dialect to Guile 1.8. I believe it is compatible with r5rs +and r7rs. It has continuations, ratios, complex numbers, macros, +keywords, hash-tables, multiprecision arithmetic, generalized set!, +unicode, and so on. It does not have syntax-rules or any of its friends, +and it thinks there is no such thing as an inexact integer. diff --git a/lang/s7/pkg-plist b/lang/s7/pkg-plist new file mode 100644 index 000000000000..69d90a3d361d --- /dev/null +++ b/lang/s7/pkg-plist @@ -0,0 +1,80 @@ +%%NREPL%%bin/s7-nrepl +%%REPL%%bin/s7-repl +include/s7.h +lib/libs7.so +%%DATADIR%%/case.scm +%%DATADIR%%/cload.scm +%%DATADIR%%/debug.scm +%%DATADIR%%/dup.scm +%%DATADIR%%/json.scm +%%DATADIR%%/libc.scm +%%DATADIR%%/libc_s7.so +%%DATADIR%%/libdl.scm +%%DATADIR%%/libdl_s7.so +%%DATADIR%%/libgdbm.scm +%%DATADIR%%/libgsl.scm +%%DATADIR%%/libm.scm +%%DATADIR%%/libm_s7.so +%%DATADIR%%/libutf8proc.scm +%%DATADIR%%/lint.scm +%%DATADIR%%/loop.scm +%%DATADIR%%/mockery.scm +%%DATADIR%%/nrepl.scm +%%DATADIR%%/profile.scm +%%DATADIR%%/r7rs.scm +%%DATADIR%%/reactive.scm +%%DATADIR%%/repl.scm +%%DATADIR%%/s7test.scm +%%DATADIR%%/snd-lint.scm +%%DATADIR%%/stuff.scm +%%DATADIR%%/tools/auto-tester.scm +%%DATADIR%%/tools/compare-calls.scm +%%DATADIR%%/tools/concordance.scm +%%DATADIR%%/tools/dup.scm +%%DATADIR%%/tools/fbench.scm +%%DATADIR%%/tools/make-nrepl-bits.scm +%%DATADIR%%/tools/t101.scm +%%DATADIR%%/tools/table.scm +%%DATADIR%%/tools/tall.scm +%%DATADIR%%/tools/tari.scm +%%DATADIR%%/tools/tauto.scm +%%DATADIR%%/tools/tbig.scm +%%DATADIR%%/tools/tcase.scm +%%DATADIR%%/tools/tclo.scm +%%DATADIR%%/tools/tcopy.scm +%%DATADIR%%/tools/teq.scm +%%DATADIR%%/tools/texit.scm +%%DATADIR%%/tools/tfft.scm +%%DATADIR%%/tools/tform.scm +%%DATADIR%%/tools/tgc.scm +%%DATADIR%%/tools/tgen.scm +%%DATADIR%%/tools/tgsl.scm +%%DATADIR%%/tools/thash.scm +%%DATADIR%%/tools/thook.scm +%%DATADIR%%/tools/timp.scm +%%DATADIR%%/tools/tio.scm +%%DATADIR%%/tools/titer.scm +%%DATADIR%%/tools/tlamb.scm +%%DATADIR%%/tools/tleft.scm +%%DATADIR%%/tools/tlet.scm +%%DATADIR%%/tools/tlist.scm +%%DATADIR%%/tools/tload.scm +%%DATADIR%%/tools/tmac.scm +%%DATADIR%%/tools/tmap.scm +%%DATADIR%%/tools/tmat.scm +%%DATADIR%%/tools/tmisc.scm +%%DATADIR%%/tools/tmock.scm +%%DATADIR%%/tools/tnum.scm +%%DATADIR%%/tools/tobj.scm +%%DATADIR%%/tools/tpeak.scm +%%DATADIR%%/tools/trclo.scm +%%DATADIR%%/tools/tread.scm +%%DATADIR%%/tools/trec.scm +%%DATADIR%%/tools/tref.scm +%%DATADIR%%/tools/tset.scm +%%DATADIR%%/tools/tshoot.scm +%%DATADIR%%/tools/tsort.scm +%%DATADIR%%/tools/tstar.scm +%%DATADIR%%/tools/tvect.scm +%%DATADIR%%/tools/valcall.scm +%%DATADIR%%/write.scm