aboutsummaryrefslogtreecommitdiffstats
path: root/lang
diff options
context:
space:
mode:
authorbf <bf@FreeBSD.org>2011-11-21 08:39:56 +0800
committerbf <bf@FreeBSD.org>2011-11-21 08:39:56 +0800
commit86013d89c3d12467003466b9906671754f24dd8d (patch)
tree1d9fa9b68615b41c69cc945f1c4f3cc7cdc49ed9 /lang
parente7562d4b8f517088d40560377448475c6ef4ba37 (diff)
downloadfreebsd-ports-gnome-86013d89c3d12467003466b9906671754f24dd8d.tar.gz
freebsd-ports-gnome-86013d89c3d12467003466b9906671754f24dd8d.tar.zst
freebsd-ports-gnome-86013d89c3d12467003466b9906671754f24dd8d.zip
-fix builds on FreeBSD 9,10 [1]
-temporarily mark WITH_THREADS as BROKEN on 9,10 [2] -fix NOPORTDOCS; add a regression-test alias for the test target; delay the patch clean-up to ease debugging; remove some lines dealing with unsupported versions of FreeBSD PR: 161502 [1], 162017 [2] Submitted by: N. Toja [1,2] Feature safe: yes
Diffstat (limited to 'lang')
-rw-r--r--lang/sbcl/Makefile37
-rw-r--r--lang/sbcl/files/patch-disable-failing-tests13
2 files changed, 20 insertions, 30 deletions
diff --git a/lang/sbcl/Makefile b/lang/sbcl/Makefile
index adfcd63bb82d..d9b52e37c991 100644
--- a/lang/sbcl/Makefile
+++ b/lang/sbcl/Makefile
@@ -57,7 +57,7 @@ MODULESDOCS= asdf/README asdf/README.SBCL \
sb-simple-streams/README
.endif
-OSVER_MAJOR= ${OSVERSION:C/([0-9]).*/\1/}
+OSVER_MAJOR= ${OSREL:R}
NEWBOOTNAME= ${PORTNAME}-${PORTVERSION:R}-${ARCH}-freebsd${OSVER_MAJOR}
DOC_TARGETS= info html
CONTRIB_MODULES= asdf \
@@ -88,18 +88,21 @@ WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION:R}
.include <bsd.port.pre.mk>
-.if !defined(NOPORTDOCS) || !defined(WITHOUT_PDF) || !defined(WITHOUT_PS)
-BUILD_DEPENDS= dot:${PORTSDIR}/graphics/graphviz
+.if defined(WITH_THREADS) && ${OSVERSION} > 900027
+BROKEN = 'thread was already on queue' crash with libthr after r216641
.endif
-.if !defined(WITHOUT_PDF)
+.ifndef(NOPORTDOCS)
+.if defined(WITH_PDF) || defined(WITH_PS)
+BUILD_DEPENDS+= dot:${PORTSDIR}/graphics/graphviz
+.endif
+
+.if defined(WITH_PDF)
BUILD_DEPENDS+= latex:${PORTSDIR}/print/teTeX-base \
texi2dvi:${PORTSDIR}/print/texinfo
DOC_TARGETS+= pdf
PLIST_SUB+= PDF=""
-. if !defined(NOPORTDOCS)
MANUALS+= ${MANUALS_SRC:S,$,.pdf,g}
-. endif
.else
PLIST_SUB+= PDF="@comment "
.endif
@@ -108,12 +111,11 @@ PLIST_SUB+= PDF="@comment "
BUILD_DEPENDS+= dvips:${PORTSDIR}/print/dvips
DOC_TARGETS+= ps
PLIST_SUB+= PS=""
-. if !defined(NOPORTDOCS)
MANUALS+= ${MANUALS_SRC:S,$,.ps,g}
-. endif
.else
PLIST_SUB+= PS="@comment "
.endif
+.endif
.if ${ARCH} == "i386"
PLIST_SUB+= I386_ONLY="" AMD64_ONLY="@comment "
@@ -134,7 +136,7 @@ BOOT_VERSION= 1.0.31
BOOT_ARCH_OS_LIST= amd64-freebsd8 amd64-freebsd7 amd64-freebsd6 \
i386-freebsd8 i386-freebsd7 i386-freebsd6
. else
-. if ${OSVER_MAJOR} == 9 # We'll use 8.x bootstrap for now
+. if ${OSVER_MAJOR} > 8 # We'll use 8.x bootstrap for now
BOOT_ARCH_OS_LIST= ${ARCH}-freebsd8
. else
BOOT_ARCH_OS_LIST= ${ARCH}-freebsd${OSVER_MAJOR}
@@ -154,10 +156,6 @@ LISP_CMD= "${WRKDIR}/${BOOT_DISTNAME}/src/runtime/sbcl --core ${WRKDIR}/${BOOT_D
.endif # defined(WITH_SBCL)
-.if ${OSVERSION} < 700000
-BROKEN= does not build on 6.X
-.endif
-
pre-everything::
@${ECHO_MSG}
@${ECHO_MSG} "---------------------------------------------------------"
@@ -197,7 +195,6 @@ post-patch:
@${REINPLACE_CMD} -e 's|cc -c|${CC} -c|' \
-e 's|ld \$$SO_FLAGS|${LD} \$$SO_FLAGS|' \
${WRKSRC}/tests/foreign.test.sh
- @${FIND} ${WRKSRC} \( -name '*.orig' -o -name '*.bak' \) -delete
.if defined(WITH_THREADS)
@${CP} ${FILESDIR}/customize-target-features.lisp ${WRKSRC}
.endif
@@ -205,6 +202,7 @@ post-patch:
${WRKSRC}/doc/internals/Makefile
do-build:
+ @${FIND} ${WRKSRC} \( -name '*.orig' -o -name '*.bak' \) -delete
@(cd ${WRKSRC} && ${SETENV} CC="${CC}" INSTALL_ROOT=${PREFIX} \
LISP_EXTRA_ARG="${LISP_EXTRA_ARG}" \
${SH} make.sh ${LISP_CMD})
@@ -214,10 +212,10 @@ do-build:
LISP_EXTRA_ARG="${LISP_EXTRA_ARG}" \
${GMAKE} MAKEINFO='makeinfo --no-split' ${DOC_TARGETS})
@(cd ${WRKSRC}/doc/internals && ${GMAKE} sbcl-internals.info)
-.endif
-.if !defined(WITHOUT_PDF)
+.if defined(WITH_PDF)
@(cd ${WRKSRC}/doc/internals && ${GMAKE} sbcl-internals.pdf)
.endif
+.endif
@${REINPLACE_CMD} -E -e \
's|\$$Date\$$|'"`${SETENV} LANG=C /bin/date '+%B %d, %Y'`|g" \
${WRKSRC}/doc/sbcl.1
@@ -241,7 +239,7 @@ do-install:
${INFODIR}/
${INSTALL_DATA} ${WRKSRC}/doc/internals/sbcl-internals.info \
${INFODIR}/
-.if !defined(WITHOUT_PDF)
+.if defined(WITH_PDF)
${INSTALL_DATA} ${WRKSRC}/doc/internals/sbcl-internals.pdf \
${DOCSDIR}/
.endif
@@ -256,8 +254,9 @@ do-install:
${MKDIR} ${SBCL_HOME}/site-systems
@${TOUCH} ${SBCL_HOME}/site-systems/.keep_me
-test: build
- (cd ${WRKSRC}/tests && ${SETENV} CC="${CC}" LISP_EXTRA_ARG="${LISP_EXTRA_ARG}" ${SH} run-tests.sh)
+check regression-test test: build
+ (cd ${WRKSRC}/tests && ${SETENV} CC="${CC}" \
+ LISP_EXTRA_ARG="${LISP_EXTRA_ARG}" ${SH} run-tests.sh)
bootstrap:
${CP} -r ${WRKSRC} ${WRKDIR}/${NEWBOOTNAME}
diff --git a/lang/sbcl/files/patch-disable-failing-tests b/lang/sbcl/files/patch-disable-failing-tests
index e30e0498c719..cc2d70ac932c 100644
--- a/lang/sbcl/files/patch-disable-failing-tests
+++ b/lang/sbcl/files/patch-disable-failing-tests
@@ -1,14 +1,5 @@
---- contrib/sb-concurrency/tests/test-mailbox.lisp.orig 2011-06-05 12:35:33.000000000 -0700
-+++ contrib/sb-concurrency/tests/test-mailbox.lisp 2011-07-14 13:27:49.000000000 -0700
-@@ -40,7 +40,7 @@
-
- ;;; FIXME: Several tests disabled on Darwin due to hangs. Something not right
- ;;; with mailboxes -- or possibly semaphores -- there.
--#+(and sb-thread (not darwin))
-+#+(and sb-thread (not (or darwin freebsd)))
- (progn
-
- ;; Dummy struct for ATOMIC-INCF to work.
+--- contrib/sb-concurrency/tests/test-mailbox.lisp.orig 2011-11-20 15:31:43.000000000 -0500
++++ contrib/sb-concurrency/tests/test-mailbox.lisp 2011-11-20 15:33:41.000000000 -0500
@@ -181,6 +181,7 @@
(:errors . 0)
(:timeouts . 0))