diff options
author | seb <seb> | 2003-05-21 19:43:03 +0000 |
---|---|---|
committer | seb <seb> | 2003-05-21 19:43:03 +0000 |
commit | fd931f7b895a615c6798b31b2fbe68aabb28ffb9 (patch) | |
tree | 78f312b183c65399adda615f8f0e0b9537f5909b /lang/chicken | |
parent | 97cc8e3405ca39d2b9428d5b14a1c59dc7600fb0 (diff) | |
download | pkgsrc-fd931f7b895a615c6798b31b2fbe68aabb28ffb9.tar.gz |
Update to version 1.0
Package changes:
Put documentation in the canonical pkgsrc directories.
Add test target support.
Gmake is not needed anymore.
Things changed in release 1.0:
- Many bugfixes
- Declaration specifier `compress-literals' and compiler-option
`-compress-literals N'
- Chicken now compiles on OpenBSD [Thanks to Steve Elkins]
- `library' unit:
(chicken-version)
- A new version of the portable syntax-case macro system is now used, which
provides `identifier-syntax', `fluid-let-syntax' and `datum->syntax-object',
allows low-level macros (`define-macro') in combination with hygienic
macros and supports the module system used in Chez Scheme (but does not
handle separate compilation)
- The syntax `(define-syntax (name var) ...)' is allowed
- Chicken supports now SRFI-37 officially (A new library unit named `srfi-37'
has been added)
- The old module system has been removed. It was rather hackishly implemented
and didn't integrate well with the highlevel macro system
- The scheduler and the threading system have been massively overhauled
and scale a little better
- The pattern-matcher is now available in combination with the highlevel
macro system, enter `(include "match")' or `(require-for-syntax 'match)'
to make it available
- SRFI-22 script interpreters `scheme-chicken' and `scheme-chicken-hygienic'
have been added
- Compiled `#!' scheme scripts with an invocation line of `csi -script' or
`scheme-chicken'/`scheme-chicken-hygienic' automagically link with all
libraries which would normally be available under the interpreter.
- Type-checks of fixed size objects are slightly more efficient
- Extension-libraries can now be stored alternatively in a directory given
by the CHICKEN_REGISTRY environment variable or in `$HOME/.chicken-registry'
- The new library unit `tcp' provides a PLTish socket interface,
`tcp-accept' and I/O from socket ports do not block other running threads
- The new compiler/interpreter option `-strict-letrec' enables a fully R5RS
compliant expansion of `letrec'
- Chicken should now pass all tests of Scott G. Millers `r5rs_pitfalls.scm'
- Jonah Beckford ported SWIG (<http://www.swig.org>) to Chicken!
Check out a preliminary version at
<http://beckford.netfirms.com/hobbies/swig/>
- On Windows (Cygwin, Mingw32 and MSVC), CHICKEN now supports shared libraries
and dynamic loading. Many thanks to Jonah Beckford for his tremendous work!
Things changed in release 0.1082:
- Bugfixes.
- Support for SRFI's 26 (cut) and 30 (block comments).
- Peter Keller translated the manual into LaTeX. Pdf and html
documentation is available.
- Peter Keller has contributed a comprehensive testing framework
(fully R5RS compliant).
- Declaration specifiers:
export
compile-time-macros-only
- Library unit `extras':
hash-table-remove!
->string
- Library unit `posix':
sleep
- Library unit `lolevel':
pointer-offset
pointer-u8-ref pointer-u8-set!
pointer-s8-ref pointer-s8-set!
pointer-u16-ref pointer-u16-set!
pointer-s16-ref pointer-s16-set!
pointer-u32-ref pointer-u32-set!
pointer-s32-ref pointer-s32-set!
pointer-f32-ref pointer-f32-set!
pointer-f64-ref pointer-f64-set!
- Dynamic loading is now supported on older HP-UX systems that
provide `shl_load()' instead of `dlopen()'
(Thanks to Tony Garnock-Jones)
- Error messages have been (slightly) improved.
- A system for simplified packaging, building and installation
of extension-libraries (based on shared libraries) is now provided.
- New data type `locatives' allow to create pointers into arbitrary
sections of various kinds of Scheme data objects.
- So called `locations' simplify passing pointers to local or global
Scheme variables to foreign procedures.
- FFI-generated code is a little bit more compact and efficient.
- Chicken supports alternative keyword syntaxes (CL/DSSSL) via the
compiler/interpreter option `-keyword-style' and the parameter
`keyword-style'
- `define-record-printer' now handles SRFI-9 record types.
- The regex-libraries now allow the creation of precompiled regular
expressions (new procedures `regexp' and `regexp?').
Diffstat (limited to 'lang/chicken')
-rw-r--r-- | lang/chicken/Makefile | 8 | ||||
-rw-r--r-- | lang/chicken/PLIST | 173 | ||||
-rw-r--r-- | lang/chicken/distinfo | 11 | ||||
-rw-r--r-- | lang/chicken/patches/patch-aa | 38 | ||||
-rw-r--r-- | lang/chicken/patches/patch-ab | 37 | ||||
-rw-r--r-- | lang/chicken/patches/patch-ac | 17 | ||||
-rw-r--r-- | lang/chicken/patches/patch-ad | 57 |
7 files changed, 239 insertions, 102 deletions
diff --git a/lang/chicken/Makefile b/lang/chicken/Makefile index db0d864d35b..9db145264b0 100644 --- a/lang/chicken/Makefile +++ b/lang/chicken/Makefile @@ -1,17 +1,17 @@ -# $NetBSD: Makefile,v 1.2 2002/08/20 16:35:22 itojun Exp $ +# $NetBSD: Makefile,v 1.3 2003/05/21 19:43:03 seb Exp $ # -DISTNAME= chicken-0.1072 +DISTNAME= chicken-1.0 CATEGORIES= lang MASTER_SITES= http://www.call-with-current-continuation.org/ MAINTAINER= packages@netbsd.org -HOMEPAGE= http://www.call-with-current-continuation.org// +HOMEPAGE= http://www.call-with-current-continuation.org/chicken.html COMMENT= scheme to C compiler, handling R5RS GNU_CONFIGURE= yes USE_LIBTOOL= yes -USE_GMAKE= yes +TEST_TARGET= test LIBTOOL_OVERRIDE= ${WRKSRC}/libtool .include "../../mk/bsd.pkg.mk" diff --git a/lang/chicken/PLIST b/lang/chicken/PLIST index 9a5c8b4abdf..eb0623f5075 100644 --- a/lang/chicken/PLIST +++ b/lang/chicken/PLIST @@ -1,11 +1,12 @@ -@comment $NetBSD: PLIST,v 1.1.1.1 2002/08/20 14:53:18 agc Exp $ +@comment $NetBSD: PLIST,v 1.2 2003/05/21 19:43:03 seb Exp $ bin/chicken bin/chicken-config +bin/chicken-static bin/csc bin/csi -bin/extend-chicken -bin/extend-csi -bin/formatprofile +bin/csi-static +bin/scheme-chicken +bin/scheme-chicken-hygienic bin/scheme-ieee-1178-1990 bin/scheme-r4rs bin/scheme-r5rs @@ -18,11 +19,6 @@ lib/libchicken.la lib/libchicken.so lib/libchicken.so.0 lib/libchicken.so.0.0 -lib/libembedded-chicken.a -lib/libembedded-chicken.la -lib/libembedded-chicken.so -lib/libembedded-chicken.so.0 -lib/libembedded-chicken.so.0.0 lib/libsrfi-chicken.a lib/libsrfi-chicken.la lib/libsrfi-chicken.so @@ -38,11 +34,6 @@ lib/libuchicken.la lib/libuchicken.so lib/libuchicken.so.0 lib/libuchicken.so.0.0 -lib/libuembedded-chicken.a -lib/libuembedded-chicken.la -lib/libuembedded-chicken.so -lib/libuembedded-chicken.so.0 -lib/libuembedded-chicken.so.0.0 lib/libusrfi-chicken.a lib/libusrfi-chicken.la lib/libusrfi-chicken.so @@ -55,110 +46,134 @@ lib/libustuffed-chicken.so.0 lib/libustuffed-chicken.so.0.0 man/man1/chicken-config.1 man/man1/chicken.1 +man/man1/csc.1 man/man1/csi.1 -share/chicken/builtin-interfaces.scm share/chicken/chicken.init -share/chicken/doc/ChangeLog -share/chicken/doc/FAQ.html -share/chicken/doc/LICENSE -share/chicken/doc/README -share/chicken/doc/README.txt -share/chicken/doc/chicken.png -share/chicken/doc/format.txt -share/chicken/doc/manual.html share/chicken/highlevel-macros.scm +share/chicken/match.scm share/chicken/moremacros.scm -share/chicken/src/batch-driver.c share/chicken/src/batch-driver.scm share/chicken/src/build.scm -share/chicken/src/builtin-interfaces.scm -share/chicken/src/c-backend.c share/chicken/src/c-backend.scm -share/chicken/src/c-platform.c share/chicken/src/c-platform.scm -share/chicken/src/chicken.c +share/chicken/src/chicken-setup.scm share/chicken/src/chicken.scm -share/chicken/src/compiler.c share/chicken/src/compiler.scm -share/chicken/src/csi.c share/chicken/src/csi.scm -share/chicken/src/eval.c share/chicken/src/eval.scm -share/chicken/src/extras.c share/chicken/src/extras.scm -share/chicken/src/format.c share/chicken/src/format.scm share/chicken/src/highlevel-macros.scm -share/chicken/src/library.c share/chicken/src/library.scm -share/chicken/src/lolevel.c share/chicken/src/lolevel.scm -share/chicken/src/match.c +share/chicken/src/match-support.scm share/chicken/src/match.scm -share/chicken/src/modules.c -share/chicken/src/modules.scm share/chicken/src/moremacros.scm -share/chicken/src/nsample.c share/chicken/src/nsample.scm -share/chicken/src/optimizer.c share/chicken/src/optimizer.scm share/chicken/src/parameters.scm -share/chicken/src/posix.c share/chicken/src/posix.scm -share/chicken/src/profiler.c share/chicken/src/profiler.scm -share/chicken/src/regex.c +share/chicken/src/psyntax-bootstrap.scm +share/chicken/src/psyntax.scm share/chicken/src/regex.scm -share/chicken/src/regex2.c share/chicken/src/regex2.scm share/chicken/src/runtime.c -share/chicken/src/scheme-ieee-1178-1990.c -share/chicken/src/scheme-r4rs.c -share/chicken/src/scheme-r5rs.c -share/chicken/src/scheme-srfi-0.c -share/chicken/src/scheme-srfi-7.c -share/chicken/src/script-utils.c +share/chicken/src/scheduler.scm share/chicken/src/script-utils.scm -share/chicken/src/srfi-1.c share/chicken/src/srfi-1.scm share/chicken/src/srfi-13-syntax.scm -share/chicken/src/srfi-13.c share/chicken/src/srfi-13.scm -share/chicken/src/srfi-14.c share/chicken/src/srfi-14.scm -share/chicken/src/srfi-18.c share/chicken/src/srfi-18.scm -share/chicken/src/srfi-25.c share/chicken/src/srfi-25.scm -share/chicken/src/srfi-4.c +share/chicken/src/srfi-37.scm share/chicken/src/srfi-4.scm -share/chicken/src/support.c share/chicken/src/support.scm -share/chicken/src/syntax-case.c share/chicken/src/syntax-case.scm -share/chicken/src/tinyclos.c +share/chicken/src/tcp.scm +share/chicken/src/test-infrastructure-hygienic-local.scm +share/chicken/src/test-infrastructure-hygienic.scm +share/chicken/src/test-infrastructure-lowlevel-local.scm +share/chicken/src/test-infrastructure-lowlevel.scm +share/chicken/src/test-infrastructure.scm share/chicken/src/tinyclos.scm share/chicken/src/tweaks.scm -share/chicken/src/ueval.c -share/chicken/src/uextras.c -share/chicken/src/uformat.c -share/chicken/src/ulibrary.c -share/chicken/src/ulolevel.c -share/chicken/src/umatch.c -share/chicken/src/umodules.c -share/chicken/src/uposix.c -share/chicken/src/uregex.c -share/chicken/src/uregex2.c -share/chicken/src/uscript-utils.c -share/chicken/src/usrfi-1.c -share/chicken/src/usrfi-13.c -share/chicken/src/usrfi-14.c -share/chicken/src/usrfi-18.c -share/chicken/src/usrfi-25.c -share/chicken/src/usrfi-4.c -share/chicken/src/usyntax-case.c -share/chicken/src/utinyclos.c share/chicken/srfi-13-syntax.scm +share/chicken/test-infrastructure-hygienic-local.scm +share/chicken/test-infrastructure-hygienic.scm +share/chicken/test-infrastructure-lowlevel-local.scm +share/chicken/test-infrastructure-lowlevel.scm +share/chicken/test-infrastructure.scm +share/doc/chicken/COPYING.tex2page +share/doc/chicken/ChangeLog +share/doc/chicken/FAQ.html +share/doc/chicken/LICENSE +share/doc/chicken/Makefile +share/doc/chicken/README +share/doc/chicken/README.txt +share/doc/chicken/chicken.eps +share/doc/chicken/chicken.jpg +share/doc/chicken/chicken.png +share/doc/chicken/css.t2p +share/doc/chicken/format.txt +share/doc/chicken/manual.t2p +share/doc/chicken/manual.tex +share/doc/chicken/tex2page +share/doc/html/chicken/manual-Z-G-1.png +share/doc/html/chicken/manual-Z-H-1.html +share/doc/html/chicken/manual-Z-H-10.html +share/doc/html/chicken/manual-Z-H-11.html +share/doc/html/chicken/manual-Z-H-12.html +share/doc/html/chicken/manual-Z-H-13.html +share/doc/html/chicken/manual-Z-H-14.html +share/doc/html/chicken/manual-Z-H-15.html +share/doc/html/chicken/manual-Z-H-16.html +share/doc/html/chicken/manual-Z-H-17.html +share/doc/html/chicken/manual-Z-H-18.html +share/doc/html/chicken/manual-Z-H-19.html +share/doc/html/chicken/manual-Z-H-2.html +share/doc/html/chicken/manual-Z-H-20.html +share/doc/html/chicken/manual-Z-H-21.html +share/doc/html/chicken/manual-Z-H-22.html +share/doc/html/chicken/manual-Z-H-23.html +share/doc/html/chicken/manual-Z-H-24.html +share/doc/html/chicken/manual-Z-H-25.html +share/doc/html/chicken/manual-Z-H-26.html +share/doc/html/chicken/manual-Z-H-27.html +share/doc/html/chicken/manual-Z-H-28.html +share/doc/html/chicken/manual-Z-H-29.html +share/doc/html/chicken/manual-Z-H-3.html +share/doc/html/chicken/manual-Z-H-30.html +share/doc/html/chicken/manual-Z-H-31.html +share/doc/html/chicken/manual-Z-H-32.html +share/doc/html/chicken/manual-Z-H-33.html +share/doc/html/chicken/manual-Z-H-34.html +share/doc/html/chicken/manual-Z-H-35.html +share/doc/html/chicken/manual-Z-H-36.html +share/doc/html/chicken/manual-Z-H-37.html +share/doc/html/chicken/manual-Z-H-38.html +share/doc/html/chicken/manual-Z-H-39.html +share/doc/html/chicken/manual-Z-H-4.html +share/doc/html/chicken/manual-Z-H-40.html +share/doc/html/chicken/manual-Z-H-41.html +share/doc/html/chicken/manual-Z-H-42.html +share/doc/html/chicken/manual-Z-H-43.html +share/doc/html/chicken/manual-Z-H-44.html +share/doc/html/chicken/manual-Z-H-45.html +share/doc/html/chicken/manual-Z-H-46.html +share/doc/html/chicken/manual-Z-H-47.html +share/doc/html/chicken/manual-Z-H-48.html +share/doc/html/chicken/manual-Z-H-5.html +share/doc/html/chicken/manual-Z-H-6.html +share/doc/html/chicken/manual-Z-H-7.html +share/doc/html/chicken/manual-Z-H-8.html +share/doc/html/chicken/manual-Z-H-9.html +share/doc/html/chicken/manual-Z-S.css +share/doc/html/chicken/manual.html +@dirrm share/doc/html/chicken +@dirrm share/doc/chicken @dirrm share/chicken/src -@dirrm share/chicken/doc @dirrm share/chicken +@exec ${MKDIR} %D/lib/chicken +@dirrm lib/chicken diff --git a/lang/chicken/distinfo b/lang/chicken/distinfo index 4c8a4fd5831..c6e481fa9ce 100644 --- a/lang/chicken/distinfo +++ b/lang/chicken/distinfo @@ -1,5 +1,8 @@ -$NetBSD: distinfo,v 1.3 2002/08/20 21:51:56 itojun Exp $ +$NetBSD: distinfo,v 1.4 2003/05/21 19:43:03 seb Exp $ -SHA1 (chicken-0.1072.tar.gz) = 8386fa737e6d08da99ea858e41cb3eec044e8564 -Size (chicken-0.1072.tar.gz) = 2027291 bytes -SHA1 (patch-aa) = bb9b2e0a8f43fe5495086c8893861c1461a3d45e +SHA1 (chicken-1.0.tar.gz) = 687c2f9b8ee651c154de525ebe852c24ceb53299 +Size (chicken-1.0.tar.gz) = 2518831 bytes +SHA1 (patch-aa) = 2bf71e9e3650f3bb35b6991e51143758cff75b37 +SHA1 (patch-ab) = 5500fcac8fe9c0749b76fa2e3006a493faaf0850 +SHA1 (patch-ac) = f666a50c992af1fbcff4da107a69c0a598cf8b58 +SHA1 (patch-ad) = fb80d8782aa6310f9fa31b219ad65adf9034debb diff --git a/lang/chicken/patches/patch-aa b/lang/chicken/patches/patch-aa index 306f41f17f1..664346b6ae6 100644 --- a/lang/chicken/patches/patch-aa +++ b/lang/chicken/patches/patch-aa @@ -1,17 +1,25 @@ -$NetBSD: patch-aa,v 1.2 2002/08/20 21:51:57 itojun Exp $ +$NetBSD: patch-aa,v 1.3 2003/05/21 19:43:04 seb Exp $ ---- chicken-config.in.orig Tue May 7 18:06:47 2002 -+++ chicken-config.in Wed Aug 21 06:50:42 2002 -@@ -31,7 +31,11 @@ - # standard library directory. - case "%libdir%" in - /usr/lib|"") LIBDIR=;; -- *) LIBDIR=-L%libdir%;; -+ *) LIBDIR="-L%libdir%" -+ if [ `uname -s` = "NetBSD" ]; then -+ LIBDIR="$LIBDIR -Wl,-R%libdir%" -+ fi -+ ;; - esac +--- Makefile.am.orig 2003-03-12 21:23:00.000000000 +0000 ++++ Makefile.am +@@ -242,10 +242,10 @@ pkgdata_DATA = match.scm moremacros.scm - UNSAFE="" + # Install docs and sources. + install-data-local : doc-html +- $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)/doc +- -for file in $(DOCFILES); do cp $(srcdir)/doc/$$file $(DESTDIR)$(pkgdatadir)/doc; done +- $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)/doc/manual +- -cp $(srcdir)/doc/manual/* $(DESTDIR)$(pkgdatadir)/doc/manual ++ $(mkinstalldirs) $(DESTDIR)$(prefix)/share/doc/chicken ++ -for file in $(DOCFILES); do $(INSTALL_DATA) $(srcdir)/doc/$$file $(DESTDIR)$(prefix)/share/doc/chicken; done ++ $(mkinstalldirs) $(DESTDIR)$(prefix)/share/doc/html/chicken ++ -for file in $(srcdir)/doc/manual/*.html $(srcdir)/doc/manual/*.png $(srcdir)/doc/manual/*.css ; do $(INSTALL_DATA) $$file $(DESTDIR)$(prefix)/share/doc/html/chicken; done + $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)/src + -cp $(srcdir)/*.scm $(srcdir)/runtime.c $(DESTDIR)$(pkgdatadir)/src + $(mkinstalldirs) $(DESTDIR)$(pkglibdir) +@@ -466,4 +466,4 @@ doc-html : + .PHONY : test + + test : +- cd testsuites; $(MAKE) CC="$(CC)" CHICKEN="$(CHICKEN)" LIBDIR=../.libs CFLAGS="$(CFLAGS)"; cd .. ++ cd testsuites; $(MAKE) diff --git a/lang/chicken/patches/patch-ab b/lang/chicken/patches/patch-ab new file mode 100644 index 00000000000..99f3d164371 --- /dev/null +++ b/lang/chicken/patches/patch-ab @@ -0,0 +1,37 @@ +$NetBSD: patch-ab,v 1.1 2003/05/21 19:43:04 seb Exp $ + +--- Makefile.in.orig 2003-03-18 22:35:53.000000000 +0000 ++++ Makefile.in +@@ -456,7 +456,7 @@ am__CONFIG_DISTCLEAN_FILES = config.stat + configure.lineno + $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && \ +- $(AUTOMAKE) --foreign Makefile ++ $(AUTOMAKE) --foreign --ignore-deps Makefile + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe) + +@@ -1226,10 +1226,10 @@ formatprofile: + + # Install docs and sources. + install-data-local : doc-html +- $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)/doc +- -for file in $(DOCFILES); do cp $(srcdir)/doc/$$file $(DESTDIR)$(pkgdatadir)/doc; done +- $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)/doc/manual +- -cp $(srcdir)/doc/manual/* $(DESTDIR)$(pkgdatadir)/doc/manual ++ $(mkinstalldirs) $(DESTDIR)$(prefix)/share/doc/chicken ++ -for file in $(DOCFILES); do $(INSTALL_DATA) $(srcdir)/doc/$$file $(DESTDIR)$(prefix)/share/doc/chicken; done ++ $(mkinstalldirs) $(DESTDIR)$(prefix)/share/doc/html/chicken ++ -for file in $(srcdir)/doc/manual/*.html $(srcdir)/doc/manual/*.png $(srcdir)/doc/manual/*.css ; do $(INSTALL_DATA) $$file $(DESTDIR)$(prefix)/share/doc/html/chicken; done + $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)/src + -cp $(srcdir)/*.scm $(srcdir)/runtime.c $(DESTDIR)$(pkgdatadir)/src + $(mkinstalldirs) $(DESTDIR)$(pkglibdir) +@@ -1420,7 +1420,7 @@ doc-html : + .PHONY : test + + test : +- cd testsuites; $(MAKE) CC="$(CC)" CHICKEN="$(CHICKEN)" LIBDIR=../.libs CFLAGS="$(CFLAGS)"; cd .. ++ cd testsuites; $(MAKE) + # Tell versions [3.59,3.63) of GNU make to not export all variables. + # Otherwise a system limit (for SysV at least) may be exceeded. + .NOEXPORT: diff --git a/lang/chicken/patches/patch-ac b/lang/chicken/patches/patch-ac new file mode 100644 index 00000000000..74aec4c538b --- /dev/null +++ b/lang/chicken/patches/patch-ac @@ -0,0 +1,17 @@ +$NetBSD: patch-ac,v 1.1 2003/05/21 19:43:04 seb Exp $ + +--- chicken-config.in.orig 2003-03-14 21:51:58.000000000 +0000 ++++ chicken-config.in +@@ -48,7 +48,11 @@ esac + # standard library directory. + case "%libdir%" in + /usr/lib|"") LIBDIR=;; +- *) LIBDIR=-L%libdir%;; ++ *) LIBDIR="-L%libdir%" ++ if [ `uname -s` = "NetBSD" ]; then ++ LIBDIR="$LIBDIR -Wl,-R%libdir%" ++ fi ++ ;; + esac + + UNSAFE="" diff --git a/lang/chicken/patches/patch-ad b/lang/chicken/patches/patch-ad new file mode 100644 index 00000000000..e91e894c030 --- /dev/null +++ b/lang/chicken/patches/patch-ad @@ -0,0 +1,57 @@ +$NetBSD: patch-ad,v 1.1 2003/05/21 19:43:04 seb Exp $ + +--- testsuites/makefile.in.orig 2003-03-11 21:53:33.000000000 +0000 ++++ testsuites/makefile.in +@@ -1,5 +1,9 @@ + # makefile for Chicken test-suite + ++SHELL= @SHELL@ ++ ++top_builddir = .. ++ + # XXX WARNING XXX + # This makefile will remove *.c files, you've been warned. + +@@ -8,29 +12,32 @@ TESTCASES = test-example test-r5rs test- + .PHONY : all quicktests $(TESTCASES) + + INCDIR = .. +-CHICKEN = chicken ++CHICKEN = ../chicken + CSI = csi + CHICKENFLAGS = -hygienic -include-path .. -optimize-level 1 + LIBDIR = .. + CCOPTS = `../chicken-config -cflags | sed s%-I@prefix@/include%%g` + LIBS = `../chicken-config -extra-libs -libs | sed s%-L@prefix@/lib%%g | sed "s%@prefix@/lib/\(lib[-A-Za-z0-9_]*\.a\)%$(LIBDIR)/\1%g"` + ++CC= @CC@ ++LIBTOOL= @LIBTOOL@ ++ + all : $(TESTCASES) + + test-example : +- $(CHICKEN) $@.scm $(CHICKENFLAGS) -output-file $@.c && \ +- $(CC) $(CFLAGS) $(CCOPTS) $@.c -L$(LIBDIR) -I$(INCDIR) $(LIBS) -o $@ && \ +- ./$@ ++ $(CHICKEN) $@.scm $(CHICKENFLAGS) -output-file $@.c ++ $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(CCOPTS) $@.c -L$(LIBDIR) -I$(INCDIR) $(LIBS) -o $@ ++ $(LIBTOOL) --mode=execute ./$@ + + test-r5rs : +- $(CHICKEN) $@.scm $(CHICKENFLAGS) -output-file $@.c && \ +- $(CC) $(CFLAGS) $(CCOPTS) $@.c -L$(LIBDIR) -I$(INCDIR) $(LIBS) -o $@ && \ +- ./$@ ++ $(CHICKEN) $@.scm $(CHICKENFLAGS) -output-file $@.c ++ $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(CCOPTS) $@.c -L$(LIBDIR) -I$(INCDIR) $(LIBS) -o $@ ++ $(LIBTOOL) --mode=execute ./$@ + + test-test-infrastructure : +- $(CHICKEN) $@.scm $(CHICKENFLAGS) -output-file $@.c && \ +- $(CC) $(CFLAGS) $(CCOPTS) $@.c -L$(LIBDIR) -I$(INCDIR) $(LIBS) -o $@ && \ +- ./$@ ++ $(CHICKEN) $@.scm $(CHICKENFLAGS) -output-file $@.c ++ $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(CCOPTS) $@.c -L$(LIBDIR) -I$(INCDIR) $(LIBS) -o $@ ++ $(LIBTOOL) --mode=execute ./$@ + + clean: + rm -f *.c $(TESTCASES) |