New in version 1.0.39 - bug fix: Backtrace from undefined function on x86 and x86-64 now show the calling frame. - bug fix: linkage-table entries on PPC now no longer overflow their space allocation (potentially causing crashes if they are written out of order). - bug fix: Scrub control stack after scavenging in gencgc on non-x86oid platforms, preventing the GC from seeing stale pointers on the control stack in subsequent GCs (which would, and does, break invariants). - bug fix: 32-bit unicode external formats now work on big-endian systems. - bug fix: Literal characters with code points greater than about 32767 now work on PPC UNICODE builds. - bug fix: Any noise left by SSE operations (sqrt and conversions) in the high order bits are explicitly cleared out. In some contrived situations, this could lead to wrong results in mixed real/complex float arithmetic. - bug fix: Fix function/macro redefinition warnings when building with clisp. (#576787, thanks to Josh Elsasser) - new platform: experimental support for ppc/openbsd (thanks to Josh Elsasser). - bug fix: Floating-point traps now work on ppc/linux.
87 lines
2.8 KiB
Makefile
87 lines
2.8 KiB
Makefile
# $NetBSD: Makefile,v 1.26 2010/06/16 06:19:23 asau Exp $
|
|
|
|
DISTNAME= ${PKGNAME_NOREV}-source
|
|
PKGNAME= sbcl-1.0.39
|
|
CATEGORIES= lang
|
|
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=sbcl/}
|
|
EXTRACT_SUFX= .tar.bz2
|
|
|
|
MAINTAINER= jonb@NetBSD.org
|
|
HOMEPAGE= http://www.sbcl.org/
|
|
COMMENT= SBCL, a Common Lisp implementation
|
|
|
|
# SBCL creates a new release with minor updates and fixes every
|
|
# month. The maintainer of this package does not have the time
|
|
# to build, test, update, etc. this package that often. If you
|
|
# would like a newer (or older) version, this works very often:
|
|
# 1) change the PKGNAME variable above as desired
|
|
# 2) make fetch && make makesum && make package
|
|
|
|
USE_TOOLS+= gmake gtar:run
|
|
PKG_INSTALLATION_TYPES= overwrite pkgviews
|
|
PKG_DESTDIR_SUPPORT= user-destdir
|
|
|
|
WRKSRC= ${WRKDIR}/${PKGNAME_NOREV}
|
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
|
|
#
|
|
# Bootstrap section.
|
|
#
|
|
# SBCL needs an existing Common Lisp system to build it...
|
|
# Currently allowed systems are CLISP, CMUCL, OpenMCL, and SBCL itself.
|
|
#
|
|
# If SBCL is installed in an unusual place when trying to build this
|
|
# package, you may need to set the full path in SBCL_BOOT_SYSTEM and
|
|
# build the package with "SBCL_HOME=/path/to/SBCL/core/image/ make"
|
|
|
|
#SBCL_BOOT_SYSTEM= clisp # CLisp
|
|
#SBCL_BOOT_SYSTEM= "lisp -batch" # CMUCL
|
|
#SBCL_BOOT_SYSTEM= "openmcl --batch" # OpenMCL
|
|
#SBCL_BOOT_SYSTEM= sbcl # SBCL
|
|
|
|
.if !defined(SBCL_BOOT_SYSTEM)
|
|
# Use "clisp -ansi -on-error abort" to make the build more reproducible,
|
|
# per Christophe Rhodes:
|
|
SBCL_BOOT_SYSTEM= clisp -norc -ansi -on-error abort
|
|
BUILD_DEPENDS+= clisp-[0-9]*:../../lang/clisp
|
|
UNLIMIT_RESOURCES= datasize
|
|
.elif ${SBCL_BOOT_SYSTEM} == clisp
|
|
BUILD_DEPENDS+= clisp-[0-9]*:../../lang/clisp
|
|
UNLIMIT_RESOURCES= datasize
|
|
.elif ${SBCL_BOOT_SYSTEM} == sbcl
|
|
# Get bootstrap version:
|
|
BUILD_DEPENDS+= sbcl-[0-9]*:../../lang/sbcl
|
|
.endif
|
|
|
|
|
|
SUBST_CLASSES+= fix-paths
|
|
SUBST_STAGE.fix-paths= pre-configure
|
|
SUBST_MESSAGE.fix-paths= Fixing absolute paths.
|
|
SUBST_FILES.fix-paths= install.sh src/runtime/runtime.c doc/sbcl.1
|
|
SUBST_SED.fix-paths= -e 's,@PREFIX@,${PREFIX},g'
|
|
SUBST_SED.fix-paths+= -e 's,/var/log,${VARBASE}/log,g'
|
|
|
|
SUBST_CLASSES+= fix-gtar
|
|
SUBST_STAGE.fix-gtar= pre-configure
|
|
SUBST_MESSAGE.fix-gtar= Fixing GNU tar references.
|
|
SUBST_FILES.fix-gtar= contrib/asdf-install/installer.lisp
|
|
SUBST_SED.fix-gtar= -e 's,@GTAR@,${GTAR},'
|
|
|
|
do-build:
|
|
cd ${WRKSRC} && ${SH} make.sh ${SBCL_BOOT_SYSTEM:Q}
|
|
post-build:
|
|
cd ${WRKSRC} && ${RM} -f contrib/sb-cover/test-output/*
|
|
|
|
do-install:
|
|
cd ${WRKSRC} && BUILD_ROOT=${DESTDIR:Q} INSTALL_ROOT=${PREFIX:Q} MAN_DIR=${PREFIX:Q}/${PKGMANDIR} ${SH} install.sh
|
|
rm -f $(DESTDIR)$(PREFIX)/lib/sbcl/asdf-install/installer.lisp.orig
|
|
|
|
do-test:
|
|
cd ${WRKSRC}/tests && ${SH} ./run-tests.sh
|
|
|
|
.if $(LOWER_ARCH) == "amd64" || $(LOWER_ARCH) == "x86_64"
|
|
PLIST_SUBST+= SUFX64=-64
|
|
.endif
|
|
|
|
.include "../../mk/bsd.pkg.mk"
|