Lines 6-27
Link Here
|
6 |
# |
6 |
# |
7 |
|
7 |
|
8 |
PORTNAME= sbcl |
8 |
PORTNAME= sbcl |
9 |
PORTVERSION= 1.0.5 |
9 |
PORTVERSION= 1.0.6 |
10 |
CATEGORIES= lang lisp |
10 |
CATEGORIES= lang lisp |
11 |
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} |
11 |
MASTER_SITES= SF |
12 |
MASTER_SITE_SUBDIR= sbcl |
|
|
13 |
DISTFILES= ${DISTNAME}-source${EXTRACT_SUFX} |
12 |
DISTFILES= ${DISTNAME}-source${EXTRACT_SUFX} |
14 |
|
13 |
|
15 |
MAINTAINER= sa2c@sa2c.net |
14 |
MAINTAINER= sa2c@sa2c.net |
16 |
COMMENT= A Common Lisp development system derived from the CMU CL system |
15 |
COMMENT= A Common Lisp development system derived from the CMU CL system |
17 |
|
16 |
|
18 |
USE_BZIP2= yes |
|
|
19 |
USE_GMAKE= yes |
20 |
|
21 |
EXTRACT_AFTER_ARGS= | ${TAR} -xf - --exclude */CVS/* |
17 |
EXTRACT_AFTER_ARGS= | ${TAR} -xf - --exclude */CVS/* |
22 |
|
18 |
|
23 |
# SBCL is a native code compiler: it must be ported per architecture. |
19 |
# More platforms are supported, but on Linux. |
24 |
ONLY_FOR_ARCHS= i386 amd64 |
20 |
ONLY_FOR_ARCHS= i386 amd64 |
|
|
21 |
ONLY_FOR_ARCHS_REASON= is a native code compiler, and has not been ported to this architecture yet |
22 |
|
23 |
USE_BZIP2= yes |
24 |
USE_GMAKE= yes |
25 |
CFLAGS+= -DSBCL_HOME=\\"${PREFIX}/lib/sbcl/\\" |
26 |
|
27 |
OPTIONS= SBCL "Use installed SBCL binary if available" off \ |
28 |
THREADS "Enable experimental theading support" off |
25 |
|
29 |
|
26 |
MAN1= sbcl.1 |
30 |
MAN1= sbcl.1 |
27 |
INFO= asdf sbcl |
31 |
INFO= asdf sbcl |
Lines 29-45
Link Here
|
29 |
|
33 |
|
30 |
.include <bsd.port.pre.mk> |
34 |
.include <bsd.port.pre.mk> |
31 |
|
35 |
|
32 |
# If you have a previous version of SBCL installed, you can use it |
36 |
.if ${ARCH} == "i386" |
33 |
# instead of the binary distribution. |
37 |
PLIST_SUB+= I386_ONLY="" |
34 |
.if defined(WITH_SBCL) |
38 |
.else |
|
|
39 |
PLIST_SUB+= I386_ONLY="@comment " |
40 |
.endif |
41 |
|
42 |
# If WITH_SBCL is defined, try to use existing "sbcl" first. |
43 |
.if defined(WITH_SBCL) && exists(${LOCALBASE}/bin/sbcl) |
35 |
LISP_CMD= "" |
44 |
LISP_CMD= "" |
36 |
.else |
45 |
.else |
37 |
BOOT_VERSION= ${PORTVERSION} |
46 |
BOOT_VERSION= ${PORTVERSION} |
38 |
.if make(makesum) |
47 |
.if make(makesum) |
39 |
BOOT_ARCH_OS_LIST= x86-freebsd x86-64-freebsd |
48 |
BOOT_ARCH_OS_LIST= x86-freebsd x86-64-freebsd |
40 |
.elif ${ARCH} == i386 |
49 |
.elif ${ARCH} == "i386" |
41 |
BOOT_ARCH_OS_LIST= x86-freebsd |
50 |
BOOT_ARCH_OS_LIST= x86-freebsd |
42 |
.elif ${ARCH} == amd64 |
51 |
.elif ${ARCH} == "amd64" |
43 |
BOOT_ARCH_OS_LIST= x86-64-freebsd |
52 |
BOOT_ARCH_OS_LIST= x86-64-freebsd |
44 |
.endif |
53 |
.endif |
45 |
.for BOOT_ARCH_OS in ${BOOT_ARCH_OS_LIST} |
54 |
.for BOOT_ARCH_OS in ${BOOT_ARCH_OS_LIST} |
Lines 52-68
Link Here
|
52 |
.endif |
61 |
.endif |
53 |
.endif |
62 |
.endif |
54 |
|
63 |
|
55 |
.if ${ARCH} == i386 |
|
|
56 |
PLIST_SUB+= I386_ONLY="" |
57 |
.else |
58 |
PLIST_SUB+= I386_ONLY="@comment " |
59 |
.endif |
60 |
|
61 |
post-patch: |
64 |
post-patch: |
62 |
@${REINPLACE_CMD} -E -e \ |
65 |
@${REINPLACE_CMD} -E -e 's|(CFLAGS =) .*|\1 ${CFLAGS}|' \ |
63 |
's|CFLAGS = .*|CFLAGS = ${CFLAGS} -g -DSBCL_HOME=\\"${PREFIX}/lib/sbcl/\\"|' \ |
|
|
64 |
${WRKSRC}/src/runtime/GNUmakefile |
66 |
${WRKSRC}/src/runtime/GNUmakefile |
65 |
@${FIND} ${WRKSRC} -name '*.orig' -o -name '*.bak' | ${XARGS} ${RM} |
67 |
@${FIND} ${WRKSRC} -name '*.orig' -o -name '*.bak' -delete |
66 |
.if defined(WITH_THREADS) |
68 |
.if defined(WITH_THREADS) |
67 |
@${CP} ${FILESDIR}/customize-target-features.lisp ${WRKSRC} |
69 |
@${CP} ${FILESDIR}/customize-target-features.lisp ${WRKSRC} |
68 |
.endif |
70 |
.endif |
Lines 70-93
Link Here
|
70 |
do-build: |
72 |
do-build: |
71 |
@(cd ${WRKSRC} && ${SETENV} INSTALL_ROOT=${PREFIX} \ |
73 |
@(cd ${WRKSRC} && ${SETENV} INSTALL_ROOT=${PREFIX} \ |
72 |
${SH} make.sh ${LISP_CMD}) |
74 |
${SH} make.sh ${LISP_CMD}) |
|
|
75 |
@${RM} -rf ${WRKSRC}/contrib/sb-cover/test-output |
73 |
@(cd ${WRKSRC}/doc/manual && \ |
76 |
@(cd ${WRKSRC}/doc/manual && \ |
74 |
${GMAKE} MAKEINFO='makeinfo --no-split' info) |
77 |
${GMAKE} MAKEINFO='makeinfo --no-split' info) |
75 |
|
78 |
|
76 |
do-install: |
79 |
do-install: |
77 |
(cd ${WRKSRC} && ${SETENV} INSTALL_ROOT=${PREFIX} \ |
80 |
(cd ${WRKSRC} && ${SETENV} INSTALL_ROOT=${PREFIX} \ |
78 |
MAN_DIR=${PREFIX}/man DOC_DIR=${DOCSDIR} \ |
81 |
MAN_DIR=${PREFIX}/man DOC_DIR=${DOCSDIR} \ |
79 |
INFO_DIR=${INFODIR} ${SH} install.sh) |
82 |
INFO_DIR=${INFODIR} ${SH} install.sh) |
80 |
@${RMDIR} ${DOCSDIR}/html |
83 |
@${RMDIR} ${DOCSDIR}/html |
81 |
|
84 |
|
82 |
test: build |
85 |
test: build |
83 |
(cd ${WRKSRC}/tests && ${SH} run-tests.sh) |
86 |
(cd ${WRKSRC}/tests && ${SH} run-tests.sh) |
84 |
|
87 |
|
|
|
88 |
.if defined(WITH_THREADS) && ${OSVERSION} < 600000 |
85 |
pre-everything:: |
89 |
pre-everything:: |
86 |
.if !defined(WITH_THREADS) && ${OSVERSION} >= 600000 |
|
|
87 |
@${ECHO_MSG} "====>" |
88 |
@${ECHO_MSG} "====> To enable experimental threading support, define WITH_THREADS." |
89 |
@${ECHO_MSG} "====>" |
90 |
.elif defined(WITH_THREADS) && ${OSVERSION} < 600000 |
91 |
@${ECHO_MSG} "====>" |
90 |
@${ECHO_MSG} "====>" |
92 |
@${ECHO_MSG} "====> WARNING: Current threading support is very unstable on FreeBSD 5.x." |
91 |
@${ECHO_MSG} "====> WARNING: Current threading support is very unstable on FreeBSD 5.x." |
93 |
@${ECHO_MSG} "====>" |
92 |
@${ECHO_MSG} "====>" |