summaryrefslogtreecommitdiff
path: root/lang
diff options
context:
space:
mode:
authorleot <leot@pkgsrc.org>2020-05-09 19:07:00 +0000
committerleot <leot@pkgsrc.org>2020-05-09 19:07:00 +0000
commitf704dfc04e33a84d5c3953ea789e6ab2d3e89828 (patch)
tree5ec37f9972ecb498c87efad256e7131df8155765 /lang
parentd09a40826cc8f7ff4c6f21dccac0a5db00e74d32 (diff)
downloadpkgsrc-f704dfc04e33a84d5c3953ea789e6ab2d3e89828.tar.gz
chibi-scheme: Import chibi-scheme-0.8.0 as lang/chibi-scheme
Chibi-Scheme is a very small library intended for use as an extension and scripting language in C programs. In addition to support for lightweight VM-based threads, each VM itself runs in an isolated heap allowing multiple VMs to run simultaneously in different OS threads. The default repl language contains all bindings from R7RS small, available explicitly as the (scheme small) library. Support for additional languages such as JavaScript, Go, Lua and Bash are planned for future releases. Scheme is chosen as a substrate because its first class continuations and guaranteed tail-call optimization makes implementing other languages easy.
Diffstat (limited to 'lang')
-rw-r--r--lang/chibi-scheme/DESCR12
-rw-r--r--lang/chibi-scheme/Makefile30
-rw-r--r--lang/chibi-scheme/PLIST402
-rw-r--r--lang/chibi-scheme/distinfo8
-rw-r--r--lang/chibi-scheme/patches/patch-Makefile24
-rw-r--r--lang/chibi-scheme/patches/patch-lib_chibi_signal.c16
6 files changed, 492 insertions, 0 deletions
diff --git a/lang/chibi-scheme/DESCR b/lang/chibi-scheme/DESCR
new file mode 100644
index 00000000000..1f8beab5ef5
--- /dev/null
+++ b/lang/chibi-scheme/DESCR
@@ -0,0 +1,12 @@
+Chibi-Scheme is a very small library intended for use as an extension
+and scripting language in C programs. In addition to support for
+lightweight VM-based threads, each VM itself runs in an isolated heap
+allowing multiple VMs to run simultaneously in different OS threads.
+
+The default repl language contains all bindings from R7RS small,
+available explicitly as the (scheme small) library.
+
+Support for additional languages such as JavaScript, Go, Lua and Bash
+are planned for future releases. Scheme is chosen as a substrate
+because its first class continuations and guaranteed tail-call
+optimization makes implementing other languages easy.
diff --git a/lang/chibi-scheme/Makefile b/lang/chibi-scheme/Makefile
new file mode 100644
index 00000000000..16c01b6677b
--- /dev/null
+++ b/lang/chibi-scheme/Makefile
@@ -0,0 +1,30 @@
+# $NetBSD: Makefile,v 1.1 2020/05/09 19:07:00 leot Exp $
+
+DISTNAME= chibi-scheme-0.8.0
+CATEGORIES= lang
+MASTER_SITES= http://synthcode.com/scheme/chibi/
+EXTRACT_SUFX= .tgz
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://synthcode.com/wiki/chibi-scheme
+COMMENT= Minimal Scheme Implementation for use as an Extension Language
+LICENSE= modified-bsd
+
+USE_TOOLS+= gmake pkg-config
+
+PKGCONFIG_OVERRIDE+= chibi-scheme.pc.in
+
+REPLACE_INTERPRETER+= chibi-scheme
+REPLACE.chibi-scheme.old= chibi-scheme
+REPLACE.chibi-scheme.new= ${PREFIX}/bin/chibi-scheme
+REPLACE_FILES.chibi-scheme+= tools/chibi-doc tools/chibi-ffi
+REPLACE_FILES.chibi-scheme+= tools/snow-chibi tools/snow-chibi.scm
+
+CFLAGS.NetBSD+= -D_KMEMUSER # Needed for kinfo_proc in <sys/sysctl.h>
+
+MAKE_ENV+= MANDIR=${PREFIX}/${PKGMANDIR}/man1
+MAKE_ENV+= PREFIX=${PREFIX}
+
+TEST_TARGET= test
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/lang/chibi-scheme/PLIST b/lang/chibi-scheme/PLIST
new file mode 100644
index 00000000000..ddf232488b5
--- /dev/null
+++ b/lang/chibi-scheme/PLIST
@@ -0,0 +1,402 @@
+@comment $NetBSD: PLIST,v 1.1 2020/05/09 19:07:00 leot Exp $
+bin/chibi-doc
+bin/chibi-ffi
+bin/chibi-scheme
+bin/snow-chibi
+bin/snow-chibi.scm
+include/chibi/bignum.h
+include/chibi/eval.h
+include/chibi/features.h
+include/chibi/gc_heap.h
+include/chibi/install.h
+include/chibi/sexp.h
+lib/chibi/chibi/ast.so
+lib/chibi/chibi/crypto/crypto.so
+lib/chibi/chibi/disasm.so
+lib/chibi/chibi/emscripten.so
+lib/chibi/chibi/filesystem.so
+lib/chibi/chibi/heap-stats.so
+lib/chibi/chibi/io/io.so
+lib/chibi/chibi/net.so
+lib/chibi/chibi/optimize/profile.so
+lib/chibi/chibi/optimize/rest.so
+lib/chibi/chibi/process.so
+lib/chibi/chibi/stty.so
+lib/chibi/chibi/system.so
+lib/chibi/chibi/time.so
+lib/chibi/chibi/weak.so
+lib/chibi/scheme/time.so
+lib/chibi/srfi/144/math.so
+lib/chibi/srfi/151/bit.so
+lib/chibi/srfi/18/threads.so
+lib/chibi/srfi/27/rand.so
+lib/chibi/srfi/39/param.so
+lib/chibi/srfi/69/hash.so
+lib/chibi/srfi/95/qsort.so
+lib/chibi/srfi/98/env.so
+lib/libchibi-scheme.so
+lib/libchibi-scheme.so.0
+lib/libchibi-scheme.so.${PKGVERSION}
+lib/pkgconfig/chibi-scheme.pc
+man/man1/chibi-doc.1
+man/man1/chibi-ffi.1
+man/man1/chibi-scheme.1
+share/chibi/.chibi.meta
+share/chibi/.scheme.meta
+share/chibi/.srfi.meta
+share/chibi/chibi.img
+share/chibi/chibi/app-test.sld
+share/chibi/chibi/app.scm
+share/chibi/chibi/app.sld
+share/chibi/chibi/ast.scm
+share/chibi/chibi/ast.sld
+share/chibi/chibi/base64-test.sld
+share/chibi/chibi/base64.scm
+share/chibi/chibi/base64.sld
+share/chibi/chibi/binary-record-chicken.scm
+share/chibi/chibi/binary-record.scm
+share/chibi/chibi/binary-record.sld
+share/chibi/chibi/binary-types.scm
+share/chibi/chibi/bytevector.scm
+share/chibi/chibi/bytevector.sld
+share/chibi/chibi/channel.scm
+share/chibi/chibi/channel.sld
+share/chibi/chibi/char-set.sld
+share/chibi/chibi/char-set/ascii.scm
+share/chibi/chibi/char-set/ascii.sld
+share/chibi/chibi/char-set/base.sld
+share/chibi/chibi/char-set/boundary.scm
+share/chibi/chibi/char-set/boundary.sld
+share/chibi/chibi/char-set/extras.scm
+share/chibi/chibi/char-set/extras.sld
+share/chibi/chibi/char-set/full.scm
+share/chibi/chibi/char-set/full.sld
+share/chibi/chibi/config.scm
+share/chibi/chibi/config.sld
+share/chibi/chibi/crypto/md5-test.sld
+share/chibi/chibi/crypto/md5.scm
+share/chibi/chibi/crypto/md5.sld
+share/chibi/chibi/crypto/rsa-test.sld
+share/chibi/chibi/crypto/rsa.scm
+share/chibi/chibi/crypto/rsa.sld
+share/chibi/chibi/crypto/sha2-native.scm
+share/chibi/chibi/crypto/sha2-test.sld
+share/chibi/chibi/crypto/sha2.scm
+share/chibi/chibi/crypto/sha2.sld
+share/chibi/chibi/disasm.sld
+share/chibi/chibi/doc-test.sld
+share/chibi/chibi/doc.scm
+share/chibi/chibi/doc.sld
+share/chibi/chibi/emscripten.scm
+share/chibi/chibi/emscripten.sld
+share/chibi/chibi/equiv.scm
+share/chibi/chibi/equiv.sld
+share/chibi/chibi/filesystem-test.sld
+share/chibi/chibi/filesystem.scm
+share/chibi/chibi/filesystem.sld
+share/chibi/chibi/generic-test.sld
+share/chibi/chibi/generic.scm
+share/chibi/chibi/generic.sld
+share/chibi/chibi/heap-stats.sld
+share/chibi/chibi/highlight.scm
+share/chibi/chibi/highlight.sld
+share/chibi/chibi/io-test.sld
+share/chibi/chibi/io.sld
+share/chibi/chibi/io/io.scm
+share/chibi/chibi/iset-test.sld
+share/chibi/chibi/iset.sld
+share/chibi/chibi/iset/base.scm
+share/chibi/chibi/iset/base.sld
+share/chibi/chibi/iset/constructors.scm
+share/chibi/chibi/iset/constructors.sld
+share/chibi/chibi/iset/iterators.scm
+share/chibi/chibi/iset/iterators.sld
+share/chibi/chibi/iset/optimize.scm
+share/chibi/chibi/iset/optimize.sld
+share/chibi/chibi/log-test.sld
+share/chibi/chibi/log.scm
+share/chibi/chibi/log.sld
+share/chibi/chibi/loop-test.sld
+share/chibi/chibi/loop.sld
+share/chibi/chibi/loop/loop.scm
+share/chibi/chibi/match-test.sld
+share/chibi/chibi/match.sld
+share/chibi/chibi/match/match.scm
+share/chibi/chibi/math/prime-test.sld
+share/chibi/chibi/math/prime.scm
+share/chibi/chibi/math/prime.sld
+share/chibi/chibi/memoize-test.sld
+share/chibi/chibi/memoize.scm
+share/chibi/chibi/memoize.sld
+share/chibi/chibi/mime-test.sld
+share/chibi/chibi/mime.scm
+share/chibi/chibi/mime.sld
+share/chibi/chibi/modules.scm
+share/chibi/chibi/modules.sld
+share/chibi/chibi/monad/environment.scm
+share/chibi/chibi/monad/environment.sld
+share/chibi/chibi/net.scm
+share/chibi/chibi/net.sld
+share/chibi/chibi/net/http-server.scm
+share/chibi/chibi/net/http-server.sld
+share/chibi/chibi/net/http.scm
+share/chibi/chibi/net/http.sld
+share/chibi/chibi/net/server-util.scm
+share/chibi/chibi/net/server-util.sld
+share/chibi/chibi/net/server.scm
+share/chibi/chibi/net/server.sld
+share/chibi/chibi/net/servlet.scm
+share/chibi/chibi/net/servlet.sld
+share/chibi/chibi/numeric-test.sld
+share/chibi/chibi/optimize.scm
+share/chibi/chibi/optimize.sld
+share/chibi/chibi/optimize/profile.scm
+share/chibi/chibi/optimize/profile.sld
+share/chibi/chibi/optimize/rest.scm
+share/chibi/chibi/optimize/rest.sld
+share/chibi/chibi/optional.scm
+share/chibi/chibi/optional.sld
+share/chibi/chibi/parse-test.sld
+share/chibi/chibi/parse.sld
+share/chibi/chibi/parse/common.scm
+share/chibi/chibi/parse/common.sld
+share/chibi/chibi/parse/parse.scm
+share/chibi/chibi/pathname-test.sld
+share/chibi/chibi/pathname.scm
+share/chibi/chibi/pathname.sld
+share/chibi/chibi/process-test.sld
+share/chibi/chibi/process.scm
+share/chibi/chibi/process.sld
+share/chibi/chibi/quoted-printable-test.sld
+share/chibi/chibi/quoted-printable.scm
+share/chibi/chibi/quoted-printable.sld
+share/chibi/chibi/regexp-test.sld
+share/chibi/chibi/regexp.scm
+share/chibi/chibi/regexp.sld
+share/chibi/chibi/regexp/pcre.scm
+share/chibi/chibi/regexp/pcre.sld
+share/chibi/chibi/reload.scm
+share/chibi/chibi/reload.sld
+share/chibi/chibi/repl.scm
+share/chibi/chibi/repl.sld
+share/chibi/chibi/scribble-test.sld
+share/chibi/chibi/scribble.scm
+share/chibi/chibi/scribble.sld
+share/chibi/chibi/show-test.sld
+share/chibi/chibi/show.sld
+share/chibi/chibi/show/base.scm
+share/chibi/chibi/show/base.sld
+share/chibi/chibi/show/c-test.sld
+share/chibi/chibi/show/c.scm
+share/chibi/chibi/show/c.sld
+share/chibi/chibi/show/color.scm
+share/chibi/chibi/show/color.sld
+share/chibi/chibi/show/column.scm
+share/chibi/chibi/show/column.sld
+share/chibi/chibi/show/pretty.scm
+share/chibi/chibi/show/pretty.sld
+share/chibi/chibi/show/show.scm
+share/chibi/chibi/show/unicode.scm
+share/chibi/chibi/show/unicode.sld
+share/chibi/chibi/show/write.scm
+share/chibi/chibi/snow/commands.scm
+share/chibi/chibi/snow/commands.sld
+share/chibi/chibi/snow/fort.scm
+share/chibi/chibi/snow/fort.sld
+share/chibi/chibi/snow/interface.scm
+share/chibi/chibi/snow/interface.sld
+share/chibi/chibi/snow/package.scm
+share/chibi/chibi/snow/package.sld
+share/chibi/chibi/snow/utils.scm
+share/chibi/chibi/snow/utils.sld
+share/chibi/chibi/string-test.sld
+share/chibi/chibi/string.scm
+share/chibi/chibi/string.sld
+share/chibi/chibi/stty.scm
+share/chibi/chibi/stty.sld
+share/chibi/chibi/sxml.scm
+share/chibi/chibi/sxml.sld
+share/chibi/chibi/system-test.sld
+share/chibi/chibi/system.sld
+share/chibi/chibi/tar-test.sld
+share/chibi/chibi/tar.scm
+share/chibi/chibi/tar.sld
+share/chibi/chibi/temp-file.scm
+share/chibi/chibi/temp-file.sld
+share/chibi/chibi/term/ansi-test.sld
+share/chibi/chibi/term/ansi.scm
+share/chibi/chibi/term/ansi.sld
+share/chibi/chibi/term/edit-line.scm
+share/chibi/chibi/term/edit-line.sld
+share/chibi/chibi/test.scm
+share/chibi/chibi/test.sld
+share/chibi/chibi/time.sld
+share/chibi/chibi/trace.scm
+share/chibi/chibi/trace.sld
+share/chibi/chibi/type-inference.scm
+share/chibi/chibi/type-inference.sld
+share/chibi/chibi/uri-test.sld
+share/chibi/chibi/uri.scm
+share/chibi/chibi/uri.sld
+share/chibi/chibi/weak-test.sld
+share/chibi/chibi/weak.sld
+share/chibi/chibi/zlib.scm
+share/chibi/chibi/zlib.sld
+share/chibi/init-7.scm
+share/chibi/meta-7.scm
+share/chibi/scheme/base.sld
+share/chibi/scheme/box.sld
+share/chibi/scheme/case-lambda.sld
+share/chibi/scheme/char.sld
+share/chibi/scheme/char/ascii.scm
+share/chibi/scheme/char/case-offsets.scm
+share/chibi/scheme/char/full.scm
+share/chibi/scheme/char/normalization.sld
+share/chibi/scheme/char/special-casing.scm
+share/chibi/scheme/charset.sld
+share/chibi/scheme/comparator.sld
+share/chibi/scheme/complex.sld
+share/chibi/scheme/cxr.scm
+share/chibi/scheme/cxr.sld
+share/chibi/scheme/define-values.scm
+share/chibi/scheme/digit-value.scm
+share/chibi/scheme/division.scm
+share/chibi/scheme/division.sld
+share/chibi/scheme/ephemeron.sld
+share/chibi/scheme/eval.sld
+share/chibi/scheme/extras.scm
+share/chibi/scheme/file.sld
+share/chibi/scheme/generator.sld
+share/chibi/scheme/hash-table.sld
+share/chibi/scheme/ideque.sld
+share/chibi/scheme/ilist.sld
+share/chibi/scheme/inexact.scm
+share/chibi/scheme/inexact.sld
+share/chibi/scheme/lazy.sld
+share/chibi/scheme/list-queue.sld
+share/chibi/scheme/list.sld
+share/chibi/scheme/load.sld
+share/chibi/scheme/lseq.sld
+share/chibi/scheme/misc-macros.scm
+share/chibi/scheme/process-context.sld
+share/chibi/scheme/r5rs.sld
+share/chibi/scheme/read.sld
+share/chibi/scheme/red.sld
+share/chibi/scheme/repl.sld
+share/chibi/scheme/rlist.sld
+share/chibi/scheme/set.sld
+share/chibi/scheme/small.sld
+share/chibi/scheme/sort.sld
+share/chibi/scheme/stream.sld
+share/chibi/scheme/text.sld
+share/chibi/scheme/time.sld
+share/chibi/scheme/time/tai-to-utc-offset.sld
+share/chibi/scheme/time/tai.sld
+share/chibi/scheme/vector.sld
+share/chibi/scheme/write.sld
+share/chibi/srfi/1.sld
+share/chibi/srfi/1/alists.scm
+share/chibi/srfi/1/constructors.scm
+share/chibi/srfi/1/deletion.scm
+share/chibi/srfi/1/fold.scm
+share/chibi/srfi/1/immutable.sld
+share/chibi/srfi/1/lset.scm
+share/chibi/srfi/1/misc.scm
+share/chibi/srfi/1/predicates.scm
+share/chibi/srfi/1/search.scm
+share/chibi/srfi/1/selectors.scm
+share/chibi/srfi/1/test.sld
+share/chibi/srfi/101.scm
+share/chibi/srfi/101.sld
+share/chibi/srfi/11.sld
+share/chibi/srfi/111.sld
+share/chibi/srfi/113.sld
+share/chibi/srfi/113/bags.scm
+share/chibi/srfi/113/sets.scm
+share/chibi/srfi/115.sld
+share/chibi/srfi/116.sld
+share/chibi/srfi/117.sld
+share/chibi/srfi/117/queue.scm
+share/chibi/srfi/121.sld
+share/chibi/srfi/121/generators.scm
+share/chibi/srfi/124.sld
+share/chibi/srfi/125.sld
+share/chibi/srfi/125/hash.scm
+share/chibi/srfi/127.scm
+share/chibi/srfi/127.sld
+share/chibi/srfi/128.sld
+share/chibi/srfi/128/comparators.scm
+share/chibi/srfi/129.sld
+share/chibi/srfi/129/titlecase.scm
+share/chibi/srfi/129/titlemaps.scm
+share/chibi/srfi/130.scm
+share/chibi/srfi/130.sld
+share/chibi/srfi/132.sld
+share/chibi/srfi/132/sort.scm
+share/chibi/srfi/133.sld
+share/chibi/srfi/133/vector.scm
+share/chibi/srfi/134.scm
+share/chibi/srfi/134.sld
+share/chibi/srfi/135.scm
+share/chibi/srfi/135.sld
+share/chibi/srfi/135/kernel8.body.scm
+share/chibi/srfi/135/kernel8.sld
+share/chibi/srfi/135/test.sld
+share/chibi/srfi/139.scm
+share/chibi/srfi/139.sld
+share/chibi/srfi/14.sld
+share/chibi/srfi/141.sld
+share/chibi/srfi/142.sld
+share/chibi/srfi/143.sld
+share/chibi/srfi/143/fixnum.scm
+share/chibi/srfi/144.sld
+share/chibi/srfi/144/flonum.scm
+share/chibi/srfi/145.sld
+share/chibi/srfi/147.sld
+share/chibi/srfi/151.sld
+share/chibi/srfi/151/bitwise.scm
+share/chibi/srfi/154.scm
+share/chibi/srfi/154.sld
+share/chibi/srfi/159.sld
+share/chibi/srfi/159/base.sld
+share/chibi/srfi/159/color.sld
+share/chibi/srfi/159/columnar.sld
+share/chibi/srfi/159/unicode.sld
+share/chibi/srfi/16.sld
+share/chibi/srfi/18.sld
+share/chibi/srfi/18/interface.scm
+share/chibi/srfi/18/types.scm
+share/chibi/srfi/2.sld
+share/chibi/srfi/23.sld
+share/chibi/srfi/26.sld
+share/chibi/srfi/27.sld
+share/chibi/srfi/27/constructors.scm
+share/chibi/srfi/33.sld
+share/chibi/srfi/38.scm
+share/chibi/srfi/38.sld
+share/chibi/srfi/39.sld
+share/chibi/srfi/39/syntax-no-threads.scm
+share/chibi/srfi/39/syntax.scm
+share/chibi/srfi/41.scm
+share/chibi/srfi/41.sld
+share/chibi/srfi/46.sld
+share/chibi/srfi/55.sld
+share/chibi/srfi/6.sld
+share/chibi/srfi/69.sld
+share/chibi/srfi/69/interface.scm
+share/chibi/srfi/69/type.scm
+share/chibi/srfi/8.sld
+share/chibi/srfi/9.scm
+share/chibi/srfi/9.sld
+share/chibi/srfi/95.sld
+share/chibi/srfi/95/sort.scm
+share/chibi/srfi/98.sld
+share/chibi/srfi/99.sld
+share/chibi/srfi/99/records.sld
+share/chibi/srfi/99/records/inspection.scm
+share/chibi/srfi/99/records/inspection.sld
+share/chibi/srfi/99/records/procedural.scm
+share/chibi/srfi/99/records/procedural.sld
+share/chibi/srfi/99/records/syntactic.scm
+share/chibi/srfi/99/records/syntactic.sld
+share/chibi/srfi/99/test.sld
diff --git a/lang/chibi-scheme/distinfo b/lang/chibi-scheme/distinfo
new file mode 100644
index 00000000000..74df9fadbad
--- /dev/null
+++ b/lang/chibi-scheme/distinfo
@@ -0,0 +1,8 @@
+$NetBSD: distinfo,v 1.1 2020/05/09 19:07:00 leot Exp $
+
+SHA1 (chibi-scheme-0.8.0.tgz) = 7ce5f6609e7a84cefaf4f7596de3770b8db4ac00
+RMD160 (chibi-scheme-0.8.0.tgz) = 01ec477d749206df3922add430c1424ee8e17eb0
+SHA512 (chibi-scheme-0.8.0.tgz) = f5f3479c25e2df70857ae455de2399adec374114ab540626f8b90f3bf28984d0c7b8479362112921af93f4b509b9c252134bc8c3afe839c56b23001aec837f4f
+Size (chibi-scheme-0.8.0.tgz) = 777259 bytes
+SHA1 (patch-Makefile) = 2475ba4aac7ee66bbe6f31236242cb34463fe8c9
+SHA1 (patch-lib_chibi_signal.c) = 9bdf2c06c38902439c302aa1fb2a6139a2026745
diff --git a/lang/chibi-scheme/patches/patch-Makefile b/lang/chibi-scheme/patches/patch-Makefile
new file mode 100644
index 00000000000..f58115aaba2
--- /dev/null
+++ b/lang/chibi-scheme/patches/patch-Makefile
@@ -0,0 +1,24 @@
+$NetBSD: patch-Makefile,v 1.1 2020/05/09 19:07:00 leot Exp $
+
+o .meta files need to be generated after all-libs
+o libchibi-scheme.a is generated only on mingw and cygwin operating systems.
+
+--- Makefile.orig 2018-01-24 16:29:50.000000000 +0000
++++ Makefile
+@@ -208,7 +208,7 @@ doc: doc/chibi.html doc-libs
+ %.html: %.scrbl $(CHIBI_DOC_DEPENDENCIES)
+ $(CHIBI_DOC) --html $< > $@
+
+-lib/.%.meta: lib/%/ tools/generate-install-meta.scm
++lib/.%.meta: lib/%/ tools/generate-install-meta.scm | all-libs
+ -$(FIND) $< -name \*.sld | \
+ $(CHIBI) tools/generate-install-meta.scm $(VERSION) > $@
+
+@@ -385,7 +385,6 @@ install-base: all
+ $(INSTALL_EXE) -m0755 libchibi-scheme$(SO_VERSIONED_SUFFIX) $(DESTDIR)$(SOLIBDIR)/
+ $(LN) libchibi-scheme$(SO_VERSIONED_SUFFIX) $(DESTDIR)$(SOLIBDIR)/libchibi-scheme$(SO_MAJOR_VERSIONED_SUFFIX)
+ $(LN) libchibi-scheme$(SO_VERSIONED_SUFFIX) $(DESTDIR)$(SOLIBDIR)/libchibi-scheme$(SO)
+- -if test -f libchibi-scheme.a; then $(INSTALL) -m0644 libchibi-scheme.a $(DESTDIR)$(SOLIBDIR)/; fi
+ $(MKDIR) $(DESTDIR)$(PKGCONFDIR)
+ $(INSTALL) -m0644 chibi-scheme.pc $(DESTDIR)$(PKGCONFDIR)
+ $(MKDIR) $(DESTDIR)$(MANDIR)
diff --git a/lang/chibi-scheme/patches/patch-lib_chibi_signal.c b/lang/chibi-scheme/patches/patch-lib_chibi_signal.c
new file mode 100644
index 00000000000..05687ad5ade
--- /dev/null
+++ b/lang/chibi-scheme/patches/patch-lib_chibi_signal.c
@@ -0,0 +1,16 @@
+$NetBSD: patch-lib_chibi_signal.c,v 1.1 2020/05/09 19:07:00 leot Exp $
+
+<sys/user.h> is no longer available on NetBSD, no need to include it.
+
+--- lib/chibi/signal.c.orig 2015-05-10 13:47:12.000000000 +0000
++++ lib/chibi/signal.c
+@@ -67,7 +67,9 @@ static sexp sexp_set_signal_action (sexp
+ #include <sys/proc.h>
+ #endif
+ #include <sys/sysctl.h>
++#ifndef __NetBSD__
+ #include <sys/user.h>
++#endif
+
+ static sexp sexp_pid_cmdline (sexp ctx, int pid) {
+ size_t reslen = sizeof(struct kinfo_proc);