pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

cyclone: import cyclone-0.11.7 as wip/cyclone



Module Name:	pkgsrc-wip
Committed By:	Yorick Hardy <yorickhardy%gmail.com@localhost>
Pushed By:	yhardy
Date:		Wed Dec 18 08:52:03 2019 +0200
Changeset:	034c12f13614c04f3feb123129c1053a9d8e612e

Modified Files:
	Makefile
Added Files:
	cyclone/DESCR
	cyclone/Makefile
	cyclone/PLIST
	cyclone/distinfo
	cyclone/patches/patch-Makefile.config

Log Message:
cyclone: import cyclone-0.11.7 as wip/cyclone

Cyclone is an R7RS Scheme-to-C compiler that uses a variant of
Cheney on the MTA (http://www.pipeline.com/~hbaker1/CheneyMTA.html)
to implement full tail recursion, continuations, and generational
garbage collection.  In addition, the Cheney on the MTA concept
has been extended to allow execution of multiple native threads.
An on-the-fly garbage collector is used to manage the second-generation
heap and perform major collections without "stopping the world".

Cyclone is written entirely in the latest R7RS Scheme language
standard, and the intent is to support as much of that language as
possible.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=034c12f13614c04f3feb123129c1053a9d8e612e

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                              |   1 +
 cyclone/DESCR                         |  11 ++
 cyclone/Makefile                      |  22 ++++
 cyclone/PLIST                         | 188 ++++++++++++++++++++++++++++++++++
 cyclone/distinfo                      |   7 ++
 cyclone/patches/patch-Makefile.config |  48 +++++++++
 6 files changed, 277 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index 5e59d743e6..0a54519c28 100644
--- a/Makefile
+++ b/Makefile
@@ -534,6 +534,7 @@ SUBDIR+=	cvstrac
 SUBDIR+=	cwebx
 SUBDIR+=	cwm
 SUBDIR+=	cycle
+SUBDIR+=	cyclone
 SUBDIR+=	cygwin
 SUBDIR+=	cygwin-binutils
 SUBDIR+=	d-feet
diff --git a/cyclone/DESCR b/cyclone/DESCR
new file mode 100644
index 0000000000..55634c6031
--- /dev/null
+++ b/cyclone/DESCR
@@ -0,0 +1,11 @@
+Cyclone is an R7RS Scheme-to-C compiler that uses a variant of
+Cheney on the MTA (http://www.pipeline.com/~hbaker1/CheneyMTA.html)
+to implement full tail recursion, continuations, and generational
+garbage collection.  In addition, the Cheney on the MTA concept
+has been extended to allow execution of multiple native threads.
+An on-the-fly garbage collector is used to manage the second-generation
+heap and perform major collections without "stopping the world".
+
+Cyclone is written entirely in the latest R7RS Scheme language
+standard, and the intent is to support as much of that language as
+possible.
diff --git a/cyclone/Makefile b/cyclone/Makefile
new file mode 100644
index 0000000000..7149342719
--- /dev/null
+++ b/cyclone/Makefile
@@ -0,0 +1,22 @@
+# $NetBSD$
+
+GITHUB_PROJECT=	cyclone-bootstrap
+GITHUB_TAG=	v0.11.7
+DISTNAME=	v0.11.7
+PKGNAME=	cyclone-${DISTNAME:S,^v,,}
+CATEGORIES=	lang
+MASTER_SITES=	${MASTER_SITE_GITHUB:=justinethier/}
+DIST_SUBDIR=	${GITHUB_PROJECT}
+
+MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=	http://justinethier.github.io/cyclone/
+COMMENT=	Scheme-to-C compiler
+LICENSE=	mit
+
+WRKSRC=		${WRKDIR}/cyclone-bootstrap-0.11.7
+USE_TOOLS+=	gmake pkg-config
+
+PKGCONFIG_OVERRIDE+=	third-party/libtommath-1.2.0/libtommath.pc.in
+
+.include "../../devel/concurrencykit/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/cyclone/PLIST b/cyclone/PLIST
new file mode 100644
index 0000000000..09aee31100
--- /dev/null
+++ b/cyclone/PLIST
@@ -0,0 +1,188 @@
+@comment $NetBSD$
+bin/cyclone
+bin/icyc
+include/cyclone/bignum.h
+include/cyclone/ck_ht_hash.h
+include/cyclone/hashset.h
+include/cyclone/runtime-main.h
+include/cyclone/runtime.h
+include/cyclone/types.h
+lib/libcyclone.a
+lib/libcyclonebn.a
+share/cyclone/cyclone/concurrent.o
+share/cyclone/cyclone/concurrent.sld
+share/cyclone/cyclone/concurrent.so
+share/cyclone/cyclone/match.meta
+share/cyclone/cyclone/match.o
+share/cyclone/cyclone/match.sld
+share/cyclone/cyclone/match.so
+share/cyclone/cyclone/test.meta
+share/cyclone/cyclone/test.o
+share/cyclone/cyclone/test.scm
+share/cyclone/cyclone/test.sld
+share/cyclone/cyclone/test.so
+share/cyclone/scheme/base.o
+share/cyclone/scheme/base.sld
+share/cyclone/scheme/base.so
+share/cyclone/scheme/case-lambda.o
+share/cyclone/scheme/case-lambda.sld
+share/cyclone/scheme/case-lambda.so
+share/cyclone/scheme/char.o
+share/cyclone/scheme/char.sld
+share/cyclone/scheme/char.so
+share/cyclone/scheme/complex.o
+share/cyclone/scheme/complex.sld
+share/cyclone/scheme/complex.so
+share/cyclone/scheme/cxr.o
+share/cyclone/scheme/cxr.sld
+share/cyclone/scheme/cxr.so
+share/cyclone/scheme/cyclone/array-list.meta
+share/cyclone/scheme/cyclone/array-list.o
+share/cyclone/scheme/cyclone/array-list.scm
+share/cyclone/scheme/cyclone/array-list.sld
+share/cyclone/scheme/cyclone/array-list.so
+share/cyclone/scheme/cyclone/ast.o
+share/cyclone/scheme/cyclone/ast.sld
+share/cyclone/scheme/cyclone/ast.so
+share/cyclone/scheme/cyclone/cgen.o
+share/cyclone/scheme/cyclone/cgen.sld
+share/cyclone/scheme/cyclone/cgen.so
+share/cyclone/scheme/cyclone/common.o
+share/cyclone/scheme/cyclone/common.sld
+share/cyclone/scheme/cyclone/common.so
+share/cyclone/scheme/cyclone/cps-opt-analyze-call-graph.scm
+share/cyclone/scheme/cyclone/cps-opt-local-var-redux.scm
+share/cyclone/scheme/cyclone/cps-opt-memoize-pure-fncs.scm
+share/cyclone/scheme/cyclone/cps-optimizations.o
+share/cyclone/scheme/cyclone/cps-optimizations.sld
+share/cyclone/scheme/cyclone/cps-optimizations.so
+share/cyclone/scheme/cyclone/hashset.o
+share/cyclone/scheme/cyclone/hashset.sld
+share/cyclone/scheme/cyclone/hashset.so
+share/cyclone/scheme/cyclone/libraries.o
+share/cyclone/scheme/cyclone/libraries.sld
+share/cyclone/scheme/cyclone/libraries.so
+share/cyclone/scheme/cyclone/macros.o
+share/cyclone/scheme/cyclone/macros.sld
+share/cyclone/scheme/cyclone/macros.so
+share/cyclone/scheme/cyclone/pass-validate-syntax.scm
+share/cyclone/scheme/cyclone/pretty-print.o
+share/cyclone/scheme/cyclone/pretty-print.sld
+share/cyclone/scheme/cyclone/pretty-print.so
+share/cyclone/scheme/cyclone/primitives.o
+share/cyclone/scheme/cyclone/primitives.sld
+share/cyclone/scheme/cyclone/primitives.so
+share/cyclone/scheme/cyclone/transforms.o
+share/cyclone/scheme/cyclone/transforms.sld
+share/cyclone/scheme/cyclone/transforms.so
+share/cyclone/scheme/cyclone/util.o
+share/cyclone/scheme/cyclone/util.sld
+share/cyclone/scheme/cyclone/util.so
+share/cyclone/scheme/eval.o
+share/cyclone/scheme/eval.sld
+share/cyclone/scheme/eval.so
+share/cyclone/scheme/file.o
+share/cyclone/scheme/file.sld
+share/cyclone/scheme/file.so
+share/cyclone/scheme/inexact.o
+share/cyclone/scheme/inexact.sld
+share/cyclone/scheme/inexact.so
+share/cyclone/scheme/lazy.o
+share/cyclone/scheme/lazy.sld
+share/cyclone/scheme/lazy.so
+share/cyclone/scheme/load.o
+share/cyclone/scheme/load.sld
+share/cyclone/scheme/load.so
+share/cyclone/scheme/process-context.o
+share/cyclone/scheme/process-context.sld
+share/cyclone/scheme/process-context.so
+share/cyclone/scheme/read.o
+share/cyclone/scheme/read.sld
+share/cyclone/scheme/read.so
+share/cyclone/scheme/repl.o
+share/cyclone/scheme/repl.sld
+share/cyclone/scheme/repl.so
+share/cyclone/scheme/time.o
+share/cyclone/scheme/time.sld
+share/cyclone/scheme/time.so
+share/cyclone/scheme/write.o
+share/cyclone/scheme/write.sld
+share/cyclone/scheme/write.so
+share/cyclone/srfi/1.o
+share/cyclone/srfi/1.scm
+share/cyclone/srfi/1.sld
+share/cyclone/srfi/1.so
+share/cyclone/srfi/106.o
+share/cyclone/srfi/106.sld
+share/cyclone/srfi/106.so
+share/cyclone/srfi/111.o
+share/cyclone/srfi/111.sld
+share/cyclone/srfi/111.so
+share/cyclone/srfi/113.o
+share/cyclone/srfi/113.sld
+share/cyclone/srfi/113.so
+share/cyclone/srfi/117.o
+share/cyclone/srfi/117.sld
+share/cyclone/srfi/117.so
+share/cyclone/srfi/121.o
+share/cyclone/srfi/121.scm
+share/cyclone/srfi/121.sld
+share/cyclone/srfi/121.so
+share/cyclone/srfi/128.meta
+share/cyclone/srfi/128.o
+share/cyclone/srfi/128.sld
+share/cyclone/srfi/128.so
+share/cyclone/srfi/132.o
+share/cyclone/srfi/132.sld
+share/cyclone/srfi/132.so
+share/cyclone/srfi/133.o
+share/cyclone/srfi/133.sld
+share/cyclone/srfi/133.so
+share/cyclone/srfi/143.o
+share/cyclone/srfi/143.sld
+share/cyclone/srfi/143.so
+share/cyclone/srfi/18.o
+share/cyclone/srfi/18.sld
+share/cyclone/srfi/18.so
+share/cyclone/srfi/2.meta
+share/cyclone/srfi/2.o
+share/cyclone/srfi/2.scm
+share/cyclone/srfi/2.sld
+share/cyclone/srfi/2.so
+share/cyclone/srfi/27.o
+share/cyclone/srfi/27.sld
+share/cyclone/srfi/27.so
+share/cyclone/srfi/28.o
+share/cyclone/srfi/28.scm
+share/cyclone/srfi/28.sld
+share/cyclone/srfi/28.so
+share/cyclone/srfi/60.o
+share/cyclone/srfi/60.scm
+share/cyclone/srfi/60.sld
+share/cyclone/srfi/60.so
+share/cyclone/srfi/69.o
+share/cyclone/srfi/69.sld
+share/cyclone/srfi/69.so
+share/cyclone/srfi/9.meta
+share/cyclone/srfi/9.o
+share/cyclone/srfi/9.sld
+share/cyclone/srfi/9.so
+share/cyclone/srfi/list-queues/list-queues-impl.scm
+share/cyclone/srfi/list-queues/list-queues-test.scm
+share/cyclone/srfi/sorting/delndups.scm
+share/cyclone/srfi/sorting/lmsort.scm
+share/cyclone/srfi/sorting/median.scm
+share/cyclone/srfi/sorting/merge.scm
+share/cyclone/srfi/sorting/select.scm
+share/cyclone/srfi/sorting/sort.scm
+share/cyclone/srfi/sorting/sortfaster.scm
+share/cyclone/srfi/sorting/sorting-test.scm
+share/cyclone/srfi/sorting/sortp.scm
+share/cyclone/srfi/sorting/vbinsearch.scm
+share/cyclone/srfi/sorting/vector-util.scm
+share/cyclone/srfi/sorting/vhsort.scm
+share/cyclone/srfi/sorting/visort.scm
+share/cyclone/srfi/sorting/vmsort.scm
+share/cyclone/srfi/sorting/vqsort2.scm
+share/cyclone/srfi/sorting/vqsort3.scm
+share/cyclone/srfi/vectors-impl.scm
diff --git a/cyclone/distinfo b/cyclone/distinfo
new file mode 100644
index 0000000000..5fc5e80740
--- /dev/null
+++ b/cyclone/distinfo
@@ -0,0 +1,7 @@
+$NetBSD$
+
+SHA1 (cyclone-bootstrap/v0.11.7.tar.gz) = debdadf3ec4265f04557f03c5c252fab3bebc974
+RMD160 (cyclone-bootstrap/v0.11.7.tar.gz) = 75615d3f36124588aa266d0a9965afd3ab24dc51
+SHA512 (cyclone-bootstrap/v0.11.7.tar.gz) = b111527f778d3b7e5e11f0dee7be5929dc1ff0b9b9cbb02a275f07ce664ff9dd662e531ab002b23c3cd4ffe810abf797527b0407780fa6fdfae0e7753dcdd574
+Size (cyclone-bootstrap/v0.11.7.tar.gz) = 2923132 bytes
+SHA1 (patch-Makefile.config) = e5bfa26e2ca9e3e9e793eb7afb418b452d82ef42
diff --git a/cyclone/patches/patch-Makefile.config b/cyclone/patches/patch-Makefile.config
new file mode 100644
index 0000000000..345877bb50
--- /dev/null
+++ b/cyclone/patches/patch-Makefile.config
@@ -0,0 +1,48 @@
+$NetBSD$
+
+1) Don't let CFLAGS and LDFLAGS override search paths
+   for the local part of the build.
+
+2) Set the RPATH when creating executables and shared libraries.
+
+--- Makefile.config.orig	2019-12-06 03:24:56.000000000 +0000
++++ Makefile.config
+@@ -16,13 +16,14 @@ OS = $(shell uname)
+ CC ?= cc
+ 
+ LIBS = -pthread -lcyclone -lck -lm -lcyclonebn
+-ifneq ($(OS),FreeBSD)
++ifeq (,$(findstring $(OS),FreeBSD NetBSD OpenBSD DragonFly))
+ # libdl is part of libc on FreeBSD
+ LIBS += -ldl
+ endif
+ 
+ # Compiler options
+-CFLAGS       ?= $(CYC_PROFILING) $(CYC_GCC_OPT_FLAGS) -fPIC -Wall -Iinclude
++CFLAGS       ?= $(CYC_PROFILING) $(CYC_GCC_OPT_FLAGS)
++CFLAGS       += -fPIC -Wall -Iinclude
+ BASE_CFLAGS  ?= $(CYC_PROFILING) $(CYC_GCC_OPT_FLAGS) -fPIC -Wall -I$(PREFIX)/include
+ # Used by Cyclone to compile programs, no need for PIC there
+ BASE_PROG_CFLAGS  ?= $(CYC_PROFILING) $(CYC_GCC_OPT_FLAGS) -Wall -I$(PREFIX)/include
+@@ -39,7 +40,8 @@ endif
+ #CFLAGS = -g -pg -Wall
+ 
+ # Linker options
+-LDFLAGS ?= -L. $(CYC_PROFILING)
++LDFLAGS ?= $(CYC_PROFILING)
++LDFLAGS += -L.
+ LIBRARY_OUTPUT_FILE = libcyclone.a
+ ifeq ($(OS),Darwin)
+ LDFLAGS     += -Wl,-undefined -Wl,dynamic_lookup
+@@ -63,9 +65,9 @@ endif
+ 
+ # Commands "baked into" cyclone for invoking the C compiler
+ CC_PROG ?= "$(CC) ~src-file~ $(COMP_PROG_CFLAGS) -c -o ~exec-file~.o"
+-CC_EXEC ?= "$(CC) ~exec-file~.o ~obj-files~ $(LIBS) $(COMP_CFLAGS) -o ~exec-file~"
++CC_EXEC ?= "$(CC) ~exec-file~.o ~obj-files~ $(LIBS) $(COMP_CFLAGS) $(COMPILER_RPATH_FLAG)$(PREFIX)/lib -o ~exec-file~"
+ CC_LIB  ?= "$(CC) ~src-file~ $(COMP_CFLAGS) -c -o ~exec-file~.o"
+-CC_SO   ?= "$(CC) -shared $(LDFLAGS) -o ~exec-file~.so ~exec-file~.o"
++CC_SO   ?= "$(CC) -shared $(LDFLAGS) $(COMPILER_RPATH_FLAG)$(PREFIX)/lib -o ~exec-file~.so ~exec-file~.o"
+ 
+ AR        ?= ar
+ LIBTOOL   ?= libtool


Home | Main Index | Thread Index | Old Index