pkgsrc/lang/chicken/Makefile
asau 9772e48cdb Update to CHICKEN 4.11.0
From Leonardo Taccari.


This release introduces several large changes, the one with the most
impact being a completely new calling convention for compiled CPS
procedures in C code.  Instead of expecting "regular" C arguments,
the compiled C functions now accept a so-called "argvector" which
holds the arguments.  This should greatly improve the portability of
CHICKEN programs, because it relies less on ill-specified parts of C.
It also removes the assembly code required for manyargs, so that the
limitation of 128 arguments for platforms without an "apply hack" has
finally been removed.
On the tooling front we've also added two new features: a statistical
profiler for analysing performance, and a graphical debugger called
"feathers", which allows you to inspect your Scheme programs over the
network.  These have both been documented in the manual.  The debugger
has its own chapter at https://wiki.call-cc.org/man/4/Debugging and the
profiler's new -:p runtime option is documented at
https://wiki.call-cc.org/man/4/Using%20the%20compiler#runtime-options

As usual, many bugs have been fixed with this release, including several
bugs that would cause programs to crash.  All in all, this new release
should be much more robust and reliable.

For the complete list of changes since 4.10.0, see the NEWS file:
https://code.call-cc.org/releases/4.11.0/NEWS
2016-06-08 14:44:54 +00:00

55 lines
1.5 KiB
Makefile

# $NetBSD: Makefile,v 1.56 2016/06/08 14:44:54 asau Exp $
DISTNAME= chicken-4.11.0
CATEGORIES= lang
MASTER_SITES= http://code.call-cc.org/releases/$(PKGVERSION_NOREV)/ \
http://code.call-cc.org/releases/$(PKGVERSION_NOREV:R)/
MAINTAINER= asau@inbox.ru #, airhead@users.sourceforge.net
HOMEPAGE= http://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
INSTALLATION_DIRS= share/chicken
OWN_DIRS= ${PREFIX}/lib/chicken ${PREFIX}/lib/chicken/8
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: mingw-msys mingw cygwin cross-linux-mingw
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}
TEST_TARGET= check
.include "../../mk/bsd.pkg.mk"