pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/lang/chicken6
Module Name: pkgsrc
Committed By: bsiegert
Date: Sun Sep 6 09:44:11 UTC 2026
Added Files:
pkgsrc/lang/chicken6: DESCR Makefile PLIST distinfo
pkgsrc/lang/chicken6/patches: patch-Makefile.macosx
patch-tests_runtests.sh
Log Message:
New package, chicken6.
>From Kogule Ryo in PR pkg/60583.
CHICKEN is a Scheme-to-C compiler supporting most of the language
features as defined in the Revised^5 Report on Scheme and Revised^7 Report on
Scheme small language. 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 generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 pkgsrc/lang/chicken6/DESCR \
pkgsrc/lang/chicken6/Makefile pkgsrc/lang/chicken6/PLIST \
pkgsrc/lang/chicken6/distinfo
cvs rdiff -u -r0 -r1.1 pkgsrc/lang/chicken6/patches/patch-Makefile.macosx \
pkgsrc/lang/chicken6/patches/patch-tests_runtests.sh
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Added files:
Index: pkgsrc/lang/chicken6/DESCR
diff -u /dev/null pkgsrc/lang/chicken6/DESCR:1.1
--- /dev/null Sun Sep 6 09:44:11 2026
+++ pkgsrc/lang/chicken6/DESCR Sun Sep 6 09:44:10 2026
@@ -0,0 +1,13 @@
+CHICKEN is a Scheme-to-C compiler supporting most of the language
+features as defined in the Revised^5 Report on Scheme and Revised^7 Report on
+Scheme small language. 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.
Index: pkgsrc/lang/chicken6/Makefile
diff -u /dev/null pkgsrc/lang/chicken6/Makefile:1.1
--- /dev/null Sun Sep 6 09:44:11 2026
+++ pkgsrc/lang/chicken6/Makefile Sun Sep 6 09:44:10 2026
@@ -0,0 +1,70 @@
+# $NetBSD: Makefile,v 1.1 2026/09/06 09:44:10 bsiegert Exp $
+
+DISTNAME= chicken-6.0.0
+CATEGORIES= lang
+MASTER_SITES= http://code.call-cc.org/releases/${PKGVERSION_NOREV}/
+
+MAINTAINER= pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE= https://www.call-cc.org/
+COMMENT= Scheme to C compiler, handling R5RS and R7RS (small)
+LICENSE= modified-bsd
+
+MAKE_JOBS_SAFE= no
+
+USE_LIBTOOL= yes
+USE_TOOLS+= gmake
+UNLIMIT_RESOURCES= datasize
+
+.include "../../mk/bsd.prefs.mk"
+
+# PLATFORM detection:
+.if ${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
+# 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} DESTDIR=${DESTDIR}
+
+BUILD_DEFS+= CHICKEN_BINARY_VERSION
+CHICKEN_BINARY_VERSION= 12
+
+OWN_DIRS+= ${PREFIX}/lib/chicken
+OWN_DIRS+= ${PREFIX}/lib/chicken/${CHICKEN_BINARY_VERSION}
+
+BUILD_TARGET= all
+
+MAKE_FLAGS+= MANDIR=${PREFIX}/${PKGMANDIR}
+MAKE_FLAGS+= INFODIR=${PREFIX}/${PKGINFODIR}
+MAKE_FLAGS+= DOCDIR=${PREFIX}/share/doc/${PKGNAME_NOREV}
+MAKE_FLAGS+= INSTALL_PROGRAM=${INSTALL:Q}
+MAKE_FLAGS+= LINKER_OPTIONS=${LDFLAGS:Q}
+MAKE_FLAGS+= C_COMPILER_OPTIMIZATION_OPTIONS=${CFLAGS:Q}
+
+TEST_TARGET= check
+
+PLIST_VARS+= uses_soname
+.if ${PLATFORM} != macosx
+PLIST.uses_soname= yes
+.endif
+
+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"
Index: pkgsrc/lang/chicken6/PLIST
diff -u /dev/null pkgsrc/lang/chicken6/PLIST:1.1
--- /dev/null Sun Sep 6 09:44:11 2026
+++ pkgsrc/lang/chicken6/PLIST Sun Sep 6 09:44:10 2026
@@ -0,0 +1,164 @@
+@comment $NetBSD: PLIST,v 1.1 2026/09/06 09:44:10 bsiegert Exp $
+bin/chicken
+bin/chicken-do
+bin/chicken-install
+bin/chicken-profile
+bin/chicken-status
+bin/chicken-uninstall
+bin/csc
+bin/csi
+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.bytevector.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.number-vector.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}/chicken.version.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/scheme.file.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/scheme.process-context.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/scheme.time.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/scheme.write.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/srfi-4.import.so
+lib/chicken/${CHICKEN_BINARY_VERSION}/types.db
+lib/libchicken-static.a
+lib/libchicken.so
+${PLIST.uses_soname}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
+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/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 bytevector).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 (chicken version).html
+share/doc/${PKGNAME}/manual/Module (scheme base).html
+share/doc/${PKGNAME}/manual/Module (scheme case-lambda).html
+share/doc/${PKGNAME}/manual/Module (scheme char).html
+share/doc/${PKGNAME}/manual/Module (scheme complex).html
+share/doc/${PKGNAME}/manual/Module (scheme cxr).html
+share/doc/${PKGNAME}/manual/Module (scheme eval).html
+share/doc/${PKGNAME}/manual/Module (scheme file).html
+share/doc/${PKGNAME}/manual/Module (scheme inexact).html
+share/doc/${PKGNAME}/manual/Module (scheme lazy).html
+share/doc/${PKGNAME}/manual/Module (scheme load).html
+share/doc/${PKGNAME}/manual/Module (scheme process-context).html
+share/doc/${PKGNAME}/manual/Module (scheme r4rs).html
+share/doc/${PKGNAME}/manual/Module (scheme r5rs).html
+share/doc/${PKGNAME}/manual/Module (scheme read).html
+share/doc/${PKGNAME}/manual/Module (scheme repl).html
+share/doc/${PKGNAME}/manual/Module (scheme time).html
+share/doc/${PKGNAME}/manual/Module (scheme write).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
Index: pkgsrc/lang/chicken6/distinfo
diff -u /dev/null pkgsrc/lang/chicken6/distinfo:1.1
--- /dev/null Sun Sep 6 09:44:11 2026
+++ pkgsrc/lang/chicken6/distinfo Sun Sep 6 09:44:10 2026
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1 2026/09/06 09:44:10 bsiegert Exp $
+
+BLAKE2s (chicken-6.0.0.tar.gz) = 16b06d5c40b240d3acd5c84e12e5e66cd0cd5de1ea2bc964e20838d541a0f020
+SHA512 (chicken-6.0.0.tar.gz) = 781eb458beb0242707b6460a187d6a06178aa19d2062014d753c02be1d9e6f0486d3295ea4f4464179a4bf273e9b6512f03564901670efcf3baa4f269f28c3e7
+Size (chicken-6.0.0.tar.gz) = 4287731 bytes
+SHA1 (patch-Makefile.macosx) = b43e53c6e2acf435458dc6da6dce998fb920ce06
+SHA1 (patch-tests_runtests.sh) = c2bcee720a56cc399c6acdb1e002dbcd82ea272e
Index: pkgsrc/lang/chicken6/patches/patch-Makefile.macosx
diff -u /dev/null pkgsrc/lang/chicken6/patches/patch-Makefile.macosx:1.1
--- /dev/null Sun Sep 6 09:44:11 2026
+++ pkgsrc/lang/chicken6/patches/patch-Makefile.macosx Sun Sep 6 09:44:10 2026
@@ -0,0 +1,15 @@
+$NetBSD: patch-Makefile.macosx,v 1.1 2026/09/06 09:44:10 bsiegert Exp $
+
+Make sure that the dylib is linked to pkgsrc's lib dir
+
+--- Makefile.macosx.orig 2024-12-11 19:25:23.757613008 +0000
++++ Makefile.macosx
+@@ -48,7 +48,7 @@ C_COMPILER_OPTIMIZATION_OPTIONS ?= -Os -
+ endif
+ endif
+ LIBRARIAN ?= ar
+-LINKER_LINK_SHARED_LIBRARY_OPTIONS = -dynamiclib -compatibility_version 1 -current_version 1.0 -install_name $@
++LINKER_LINK_SHARED_LIBRARY_OPTIONS = -dynamiclib -compatibility_version 1 -current_version 1.0 -install_name $(LIBDIR)/$@
+ HERE = $(shell pwd)
+ PREINSTALL_PROGRAM_FIXUP = $(POSTINSTALL_PROGRAM) -change lib$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(SO) $(HERE)/lib$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(SO)
+ POSTINSTALL_PROGRAM_FLAGS = -change lib$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(SO) $(LIBDIR)/lib$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(SO) -change
$(HERE)/lib$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(SO) $(LIBDIR)/lib$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(SO)
Index: pkgsrc/lang/chicken6/patches/patch-tests_runtests.sh
diff -u /dev/null pkgsrc/lang/chicken6/patches/patch-tests_runtests.sh:1.1
--- /dev/null Sun Sep 6 09:44:11 2026
+++ pkgsrc/lang/chicken6/patches/patch-tests_runtests.sh Sun Sep 6 09:44:10 2026
@@ -0,0 +1,18 @@
+$NetBSD: patch-tests_runtests.sh,v 1.1 2026/09/06 09:44:10 bsiegert 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