pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
chicken5: Import chicken5.3.0 as wip/chicken5
Module Name: pkgsrc-wip
Committed By: gnebbia <nebbionegiuseppe%gmail.com@localhost>
Pushed By: nebbionegiuseppe
Date: Wed Oct 12 03:10:31 2022 +0200
Changeset: adec5b965e195712be17e8718ee5ac629ad9881c
Modified Files:
Makefile
Added Files:
chicken5/DESCR
chicken5/Makefile
chicken5/PLIST
chicken5/distinfo
chicken5/patches/patch-Makefile.bsd
chicken5/patches/patch-tests_runtests.sh
Log Message:
chicken5: Import chicken5.3.0 as wip/chicken5
CHICKEN is a Scheme-to-C compiler supporting most of the language
features as defined in the Revised^5 Report on Scheme. CHICKEN
generates quite portable C code, and files compiled by it (including
itself) should work without any changes on most platforms.
The whole package is distributed under a BSD license and as such free
to use and modify as long as you adhere to its terms (see the manual).
Linkage to C modules and C-library functions is straightforward, so
it's easy to access C from Scheme. Compiled code can be embedded into
existing C programs without problems. The generated code supports
full tail-recursion, first-class continuations, multiple values and
dynamic-wind.
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=adec5b965e195712be17e8718ee5ac629ad9881c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
Makefile | 1 +
chicken5/DESCR | 12 +++
chicken5/Makefile | 63 +++++++++++++
chicken5/PLIST | 146 +++++++++++++++++++++++++++++++
chicken5/distinfo | 7 ++
chicken5/patches/patch-Makefile.bsd | 17 ++++
chicken5/patches/patch-tests_runtests.sh | 18 ++++
7 files changed, 264 insertions(+)
diffs:
diff --git a/Makefile b/Makefile
index 2154bc141c..78bd3f619b 100644
--- a/Makefile
+++ b/Makefile
@@ -430,6 +430,7 @@ SUBDIR+= cherokee
SUBDIR+= chezmoi
SUBDIR+= chezscheme
SUBDIR+= chezscheme-racket
+SUBDIR+= chicken5
SUBDIR+= chkugenids
SUBDIR+= chntpw
SUBDIR+= choosefont
diff --git a/chicken5/DESCR b/chicken5/DESCR
new file mode 100644
index 0000000000..041f6a6523
--- /dev/null
+++ b/chicken5/DESCR
@@ -0,0 +1,12 @@
+CHICKEN is a Scheme-to-C compiler supporting most of the language
+features as defined in the Revised^5 Report on Scheme. CHICKEN
+generates quite portable C code, and files compiled by it (including
+itself) should work without any changes on most platforms.
+
+The whole package is distributed under a BSD license and as such free
+to use and modify as long as you adhere to its terms (see the manual).
+Linkage to C modules and C-library functions is straightforward, so
+it's easy to access C from Scheme. Compiled code can be embedded into
+existing C programs without problems. The generated code supports
+full tail-recursion, first-class continuations, multiple values and
+dynamic-wind.
diff --git a/chicken5/Makefile b/chicken5/Makefile
new file mode 100644
index 0000000000..8f51c57b03
--- /dev/null
+++ b/chicken5/Makefile
@@ -0,0 +1,63 @@
+# $NetBSD: Makefile,v 1.6 2020/05/16 20:01:56 nikita Exp $
+
+DISTNAME= chicken-5.3.0
+CATEGORIES= lang
+MASTER_SITES= http://code.call-cc.org/releases/${PKGVERSION_NOREV}/
+
+MAINTAINER= nebbionegiuseppe%gmail.com@localhost
+HOMEPAGE= https://www.call-cc.org/
+COMMENT= Scheme to C compiler, handling R5RS
+LICENSE= modified-bsd
+
+MAKE_JOBS_SAFE= no
+
+USE_LIBTOOL= yes
+USE_TOOLS+= gmake
+UNLIMIT_RESOURCES= datasize
+
+BUILD_DEFS+= CHICKEN_BINARY_VERSION
+CHICKEN_BINARY_VERSION= 11
+
+OWN_DIRS+= ${PREFIX}/lib/chicken
+OWN_DIRS+= ${PREFIX}/lib/chicken/${CHICKEN_BINARY_VERSION}
+
+BUILD_TARGET= all
+
+.include "../../mk/bsd.prefs.mk"
+
+# PLATFORM detection:
+.if !empty(OPSYS:M*BSD) || ${OPSYS} == "DragonFly"
+PLATFORM= bsd
+.elif ${OPSYS} == "Linux"
+PLATFORM= linux
+.elif ${OPSYS} == "Darwin"
+PLATFORM= macosx
+.elif ${OPSYS} == "SunOS"
+PLATFORM= solaris
+.elif ${OPSYS} == "Haiku"
+PLATFORM= haiku
+.else
+#PLATFORM+= ${OPSYS} == "Interix"
+# possible choices left: aix android cross-linux-mingw cygwin hurd mingw
+# mingw-msys
+PKG_SKIP_REASON+= "${OPSYS} is not supported"
+.endif
+
+MAKE_FILE= GNUmakefile
+MAKE_ENV+= C_COMPILER=${CC:Q}
+MAKE_ENV+= HOST= # fix ${HOST} prepending ${CC}
+# Need to have these in MAKE_FLAGS, MAKE_ENV is not enough due to the
+# way the build system overrides them.
+MAKE_FLAGS+= PLATFORM=${PLATFORM:Q} PREFIX=${PREFIX:Q} DESTDIR=${DESTDIR:Q}
+MAKE_FLAGS+= MANDIR=${PREFIX:Q}/${PKGMANDIR}
+MAKE_FLAGS+= INFODIR=${PREFIX:Q}/${PKGINFODIR:Q}
+MAKE_FLAGS+= DOCDIR=${PREFIX:Q}/share/doc/${PKGNAME_NOREV}
+MAKE_FLAGS+= INSTALL_PROGRAM=${INSTALL:Q}
+
+TEST_TARGET= check
+
+PLIST_SUBST+= CHICKEN_BINARY_VERSION=${CHICKEN_BINARY_VERSION:Q}
+PRINT_PLIST_AWK+= { sub("/${CHICKEN_BINARY_VERSION}/", "/$${CHICKEN_BINARY_VERSION}/") }
+PRINT_PLIST_AWK+= { sub(".so.${CHICKEN_BINARY_VERSION}$$", ".so.$${CHICKEN_BINARY_VERSION}") }
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/chicken5/PLIST b/chicken5/PLIST
new file mode 100644
index 0000000000..610034108e
--- /dev/null
+++ b/chicken5/PLIST
@@ -0,0 +1,146 @@
+@comment $NetBSD$
+bin/chicken
+bin/chicken-do
+bin/chicken-install
+bin/chicken-profile
+bin/chicken-status
+bin/chicken-uninstall
+bin/csc
+bin/csi
+bin/feathers
+include/chicken/chicken-config.h
+include/chicken/chicken.h
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.base.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.bitwise.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.blob.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.compiler.user-pass.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.condition.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.continuation.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.csi.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.errno.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.eval.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.file.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.file.posix.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.fixnum.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.flonum.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.foreign.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.format.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.gc.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.internal.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.io.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.irregex.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.keyword.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.load.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.locative.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.memory.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.memory.representation.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.pathname.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.platform.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.plist.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.port.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.pretty-print.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.process-context.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.process-context.posix.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.process.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.process.signal.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.random.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.read-syntax.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.repl.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.sort.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.string.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.syntax.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.tcp.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.time.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/chicken.time.posix.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/srfi-4.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/types.db
+lib/libchicken.a
+lib/libchicken.so
+lib/libchicken.so.${CHICKEN_BINARY_VERSION}
+man/man1/chicken-do.1
+man/man1/chicken-install.1
+man/man1/chicken-profile.1
+man/man1/chicken-status.1
+man/man1/chicken-uninstall.1
+man/man1/chicken.1
+man/man1/csc.1
+man/man1/csi.1
+man/man1/feathers.1
+share/chicken/feathers.tcl
+share/chicken/setup.defaults
+share/doc/${PKGNAME}/DEPRECATED
+share/doc/${PKGNAME}/LICENSE
+share/doc/${PKGNAME}/README
+share/doc/${PKGNAME}/manual/Accessing external objects.html
+share/doc/${PKGNAME}/manual/Acknowledgements.html
+share/doc/${PKGNAME}/manual/Bibliography.html
+share/doc/${PKGNAME}/manual/Bugs and limitations.html
+share/doc/${PKGNAME}/manual/C interface.html
+share/doc/${PKGNAME}/manual/Cross development.html
+share/doc/${PKGNAME}/manual/Data representation.html
+share/doc/${PKGNAME}/manual/Debugging.html
+share/doc/${PKGNAME}/manual/Declarations.html
+share/doc/${PKGNAME}/manual/Deployment.html
+share/doc/${PKGNAME}/manual/Deviations from the standard.html
+share/doc/${PKGNAME}/manual/Egg specification format.html
+share/doc/${PKGNAME}/manual/Embedding.html
+share/doc/${PKGNAME}/manual/Extension tools.html
+share/doc/${PKGNAME}/manual/Extensions to the standard.html
+share/doc/${PKGNAME}/manual/Extensions.html
+share/doc/${PKGNAME}/manual/Foreign type specifiers.html
+share/doc/${PKGNAME}/manual/Getting started.html
+share/doc/${PKGNAME}/manual/Included modules.html
+share/doc/${PKGNAME}/manual/Interface to external functions and variables.html
+share/doc/${PKGNAME}/manual/Module (chicken base).html
+share/doc/${PKGNAME}/manual/Module (chicken bitwise).html
+share/doc/${PKGNAME}/manual/Module (chicken blob).html
+share/doc/${PKGNAME}/manual/Module (chicken condition).html
+share/doc/${PKGNAME}/manual/Module (chicken continuation).html
+share/doc/${PKGNAME}/manual/Module (chicken csi).html
+share/doc/${PKGNAME}/manual/Module (chicken errno).html
+share/doc/${PKGNAME}/manual/Module (chicken eval).html
+share/doc/${PKGNAME}/manual/Module (chicken file posix).html
+share/doc/${PKGNAME}/manual/Module (chicken file).html
+share/doc/${PKGNAME}/manual/Module (chicken fixnum).html
+share/doc/${PKGNAME}/manual/Module (chicken flonum).html
+share/doc/${PKGNAME}/manual/Module (chicken foreign).html
+share/doc/${PKGNAME}/manual/Module (chicken format).html
+share/doc/${PKGNAME}/manual/Module (chicken gc).html
+share/doc/${PKGNAME}/manual/Module (chicken io).html
+share/doc/${PKGNAME}/manual/Module (chicken irregex).html
+share/doc/${PKGNAME}/manual/Module (chicken keyword).html
+share/doc/${PKGNAME}/manual/Module (chicken load).html
+share/doc/${PKGNAME}/manual/Module (chicken locative).html
+share/doc/${PKGNAME}/manual/Module (chicken memory representation).html
+share/doc/${PKGNAME}/manual/Module (chicken memory).html
+share/doc/${PKGNAME}/manual/Module (chicken module).html
+share/doc/${PKGNAME}/manual/Module (chicken pathname).html
+share/doc/${PKGNAME}/manual/Module (chicken platform).html
+share/doc/${PKGNAME}/manual/Module (chicken plist).html
+share/doc/${PKGNAME}/manual/Module (chicken port).html
+share/doc/${PKGNAME}/manual/Module (chicken pretty-print).html
+share/doc/${PKGNAME}/manual/Module (chicken process signal).html
+share/doc/${PKGNAME}/manual/Module (chicken process).html
+share/doc/${PKGNAME}/manual/Module (chicken process-context posix).html
+share/doc/${PKGNAME}/manual/Module (chicken process-context).html
+share/doc/${PKGNAME}/manual/Module (chicken random).html
+share/doc/${PKGNAME}/manual/Module (chicken read-syntax).html
+share/doc/${PKGNAME}/manual/Module (chicken repl).html
+share/doc/${PKGNAME}/manual/Module (chicken sort).html
+share/doc/${PKGNAME}/manual/Module (chicken string).html
+share/doc/${PKGNAME}/manual/Module (chicken syntax).html
+share/doc/${PKGNAME}/manual/Module (chicken tcp).html
+share/doc/${PKGNAME}/manual/Module (chicken time posix).html
+share/doc/${PKGNAME}/manual/Module (chicken time).html
+share/doc/${PKGNAME}/manual/Module (chicken type).html
+share/doc/${PKGNAME}/manual/Module r4rs.html
+share/doc/${PKGNAME}/manual/Module r5rs.html
+share/doc/${PKGNAME}/manual/Module scheme.html
+share/doc/${PKGNAME}/manual/Module srfi-4.html
+share/doc/${PKGNAME}/manual/Modules.html
+share/doc/${PKGNAME}/manual/The User's Manual.html
+share/doc/${PKGNAME}/manual/Types.html
+share/doc/${PKGNAME}/manual/Units and linking model.html
+share/doc/${PKGNAME}/manual/Using the compiler.html
+share/doc/${PKGNAME}/manual/Using the interpreter.html
+share/doc/${PKGNAME}/manual/manual.css
diff --git a/chicken5/distinfo b/chicken5/distinfo
new file mode 100644
index 0000000000..abfb0ebdb6
--- /dev/null
+++ b/chicken5/distinfo
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.5 2021/10/26 10:51:31 nia Exp $
+
+BLAKE2s (chicken-5.3.0.tar.gz) = 5d64daeded1ddebaeea8118937c563160ae426138ffcc6268f5ad49b77ca6fc3
+SHA512 (chicken-5.3.0.tar.gz) = 8fcc08a1ba44cde42c95820695a11858a3b7ff39a4b577bc5afb894c53513661aab2dc5b8e608e1d9d26648e314551052041626c4c8e519fcb9f8af324386e02
+Size (chicken-5.3.0.tar.gz) = 4069549 bytes
+SHA1 (patch-Makefile.bsd) = 45a3b810da13754b720bcb23f384a9e975675947
+SHA1 (patch-tests_runtests.sh) = c2bcee720a56cc399c6acdb1e002dbcd82ea272e
diff --git a/chicken5/patches/patch-Makefile.bsd b/chicken5/patches/patch-Makefile.bsd
new file mode 100644
index 0000000000..6d6cb36630
--- /dev/null
+++ b/chicken5/patches/patch-Makefile.bsd
@@ -0,0 +1,17 @@
+$NetBSD$
+
+Fixing Makefile to correctly compile and link on NetBSD.
+
+--- Makefile.bsd.orig 2021-11-18 06:32:06.000000000 +0000
++++ Makefile.bsd
+@@ -60,8 +60,8 @@ include $(SRCDIR)/defaults.make
+
+ # These may be useful for NetBSD:
+ #
+-#C_COMPILER_OPTIONS += -I/usr/pkg/lib
+-#LINKER_OPTIONS += -L/usr/pkg/lib -Wl,-R/usr/pkg/lib
++C_COMPILER_OPTIONS += -I${PREFIX}/lib
++LINKER_OPTIONS += -L${PREFIX}/lib -Wl,-R${PREFIX}/lib
+
+ chicken-config.h: chicken-defaults.h
+ echo "/* GENERATED */" >$@
diff --git a/chicken5/patches/patch-tests_runtests.sh b/chicken5/patches/patch-tests_runtests.sh
new file mode 100644
index 0000000000..c90e9605d7
--- /dev/null
+++ b/chicken5/patches/patch-tests_runtests.sh
@@ -0,0 +1,18 @@
+$NetBSD: patch-tests_runtests.sh,v 1.1 2018/12/21 12:35:38 leot Exp $
+
+`export -p' also exports make(1) variables that contains `.', e.g.
+`.MAKE.ENV.LEVEL'. As part of `. ./env.out' this lead to failure because
+variable with `.' are not valid is sh(1) context.
+Filter `export -p' output to avoid that.
+
+--- tests/runtests.sh.orig 2018-09-23 09:24:46.000000000 +0000
++++ tests/runtests.sh
+@@ -64,7 +64,7 @@ cp $TYPESDB test-repository/types.db
+
+ echo "======================================== repository search path ..."
+ if test -z "$MSYSTEM"; then
+- export -p >./env.out
++ export -p | sed -ne '/export [^.]*=/p' >./env.out
+ unset CHICKEN_REPOSITORY_PATH
+ $interpret -s repository-path-default.scm
+ . ./env.out
Home |
Main Index |
Thread Index |
Old Index