From owner-svn-ports-all@FreeBSD.ORG Sun Mar 22 12:59:48 2015 Return-Path: Delivered-To: svn-ports-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 153C8710; Sun, 22 Mar 2015 12:59:48 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E82BCD1F; Sun, 22 Mar 2015 12:59:47 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t2MCxlEP080947; Sun, 22 Mar 2015 12:59:47 GMT (envelope-from marino@FreeBSD.org) Received: (from marino@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t2MCxlI8080945; Sun, 22 Mar 2015 12:59:47 GMT (envelope-from marino@FreeBSD.org) Message-Id: <201503221259.t2MCxlI8080945@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: marino set sender to marino@FreeBSD.org using -f From: John Marino Date: Sun, 22 Mar 2015 12:59:47 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r381909 - head/lang/sbcl X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Mar 2015 12:59:48 -0000 Author: marino Date: Sun Mar 22 12:59:46 2015 New Revision: 381909 URL: https://svnweb.freebsd.org/changeset/ports/381909 QAT: https://qat.redports.org/buildarchive/r381909/ Log: lang/sbcl: Fix MASTER_SITES, support DragonFly and more Now that SBCL is current, there was some cleanup needed. This included: - MASTER_SITES for bootstrap compilers did not resolve - Replaced with LOCAL/marino - FreeBSD 7 not supported anymore - removed references from distinfo and bootstrap list - contrib modules not supported anymore, removed references - removed -pthread change - Added support for x86-64-dragonfly - simplified docs handling (remove condition DISTFILE for docs) - unmasked build target commands - moved cleanup of patching to post-patch target - general aesthetic cleanup No revbump needed. Modified: head/lang/sbcl/Makefile head/lang/sbcl/distinfo Modified: head/lang/sbcl/Makefile ============================================================================== --- head/lang/sbcl/Makefile Sun Mar 22 12:00:23 2015 (r381908) +++ head/lang/sbcl/Makefile Sun Mar 22 12:59:46 2015 (r381909) @@ -4,9 +4,9 @@ PORTNAME= sbcl PORTVERSION= 1.2.9 PORTEPOCH= 1 CATEGORIES= lang lisp -MASTER_SITES= SF/sbcl/sbcl/${PORTVERSION} \ - ftp://ftp.SpringDaemons.com/soft/sbcl-binary/:binaries -DISTFILES= sbcl-${PORTVERSION}-source${EXTRACT_SUFX} +MASTER_SITES= SF/sbcl/sbcl/${PORTVERSION} LOCAL/marino:binaries +DISTFILES= sbcl-${PORTVERSION}-source${EXTRACT_SUFX} \ + sbcl-${PORTVERSION}-documentation-html${EXTRACT_SUFX} MAINTAINER= ports@FreeBSD.org COMMENT= Common Lisp development system derived from the CMU CL system @@ -15,50 +15,20 @@ LIB_DEPENDS= libgmp.so:${PORTSDIR}/math/ USES= gmake tar:bzip2 -OPTIONS_DEFINE= SBCL #THREADS (don't build, see PR 184425) - -SBCL_DESC= Bootstrap with installed SBCL binary, if available -THREADS_DESC= Experimental threading support - -CONTRIB_MODULES= asdf \ - sb-aclrepl \ - sb-bsd-sockets \ - sb-cltl2 \ - sb-concurrency \ - sb-cover \ - sb-executable \ - sb-gmp \ - sb-grovel \ - sb-introspect \ - sb-md5 \ - sb-mpfr \ - sb-posix \ - sb-queue \ - sb-rotate-byte \ - sb-rt \ - sb-simple-streams \ - sb-sprof -NEWBOOTNAME= sbcl-${PORTVERSION}-${ARCH}-freebsd${OSREL:R} ONLY_FOR_ARCHS= i386 amd64 -ONLY_FOR_ARCHS_REASON= is a native code compiler, and has not been ported to\ - this architecture yet SBCL_HOME= ${PREFIX}/lib/sbcl - -.include - +MANUALS= asdf.html sbcl.html +MODULESDOCS= asdf/README asdf/README.SBCL \ + sb-aclrepl/README \ + sb-bsd-sockets/FAQ sb-bsd-sockets/NEWS \ + sb-md5/README \ + sb-posix/README \ + sb-rotate-byte/README \ + sb-simple-streams/README +TEXTDOCS= BUGS CREDITS COPYING NEWS PRINCIPLES TLA TODO CFLAGS+= -fno-omit-frame-pointer CPPFLAGS+= -I. -DSBCL_PREFIX=\\\"\$$(SBCL_PREFIX)\\\" -.if ${ARCH} == "i386" -DYNAMIC_SPACE_SIZE?= 512 -PLIST_SUB+= I386_ONLY="" AMD64_ONLY="@comment " -SBCLCONFIG= Config.x86-freebsd -.else -DYNAMIC_SPACE_SIZE?= 1024 -PLIST_SUB+= I386_ONLY="@comment " AMD64_ONLY="" -SBCLCONFIG= Config.x86-64-freebsd -.endif - MAKE_SH_ARGS?= --prefix=${PREFIX} \ --dynamic-space-size=${DYNAMIC_SPACE_SIZE} \ --with-sb-core-compression \ @@ -66,69 +36,75 @@ MAKE_SH_ARGS?= --prefix=${PREFIX} \ NM?= /usr/bin/nm NMFLAGS?= -gp -.if ${PORT_OPTIONS:MDOCS} || make(makesum) -DISTFILES+= sbcl-${PORTVERSION}-documentation-html${EXTRACT_SUFX} -MANUALS= asdf.html sbcl.html -MODULESDOCS= asdf/README asdf/README.SBCL \ - sb-aclrepl/README \ - sb-bsd-sockets/FAQ sb-bsd-sockets/NEWS \ - sb-md5/README \ - sb-posix/README \ - sb-rotate-byte/README \ - sb-simple-streams/README -TEXTDOCS= BUGS CREDITS COPYING NEWS PRINCIPLES TLA TODO -.endif +BOOT_ARCH_OS_LIST= 1.0.31-amd64-freebsd8 1.0.31-i386-freebsd8 \ + 1.2.9-x86_64-dragonfly4 -# If the SBCL option is enabled, try to use existing "sbcl" first: -.if empty(PORT_OPTIONS:MSBCL) || !exists(${LOCALBASE}/bin/sbcl) || make(makesum) -BOOT_VERSION= 1.0.31 +OPTIONS_DEFINE= SBCL #THREADS (don't build, see PR 184425) +SBCL_DESC= Bootstrap with installed SBCL binary, if available +THREADS_DESC= Experimental threading support -. if make(makesum) -BOOT_ARCH_OS_LIST= amd64-freebsd8 amd64-freebsd7 i386-freebsd8 \ - i386-freebsd7 -. else -. if ${OSREL:R} > 8 # We'll use 8.x bootstrap for now -BOOT_ARCH_OS_LIST= ${ARCH}-freebsd8 -. else -BOOT_ARCH_OS_LIST= ${ARCH}-freebsd${OSREL:R} -. endif +.include + +NEWBOOTNAME= sbcl-${PORTVERSION}-${ARCH}-${OPSYS:tl}${OSREL:R} +PATTERN= *-${ARCH}-${OPSYS:tl}* +# FreeBSD hack is to support legacy make, add unrelated core fix while here +. if ${OPSYS} == FreeBSD +CORE= sbcl.core +BOOT_DISTNAME= sbcl-1.0.31-${ARCH}-freebsd8 +. else # newer core format +CORE= sbcl_core +BOOT_DISTNAME= sbcl-${BOOT_ARCH_OS_LIST:M${PATTERN}} . endif +.if make(makesum) . for BOOT_ARCH_OS in ${BOOT_ARCH_OS_LIST} -BOOT_DISTNAME= sbcl-${BOOT_VERSION}-${BOOT_ARCH_OS} -DISTFILES:= ${DISTFILES} ${BOOT_DISTNAME}-binary${EXTRACT_SUFX}:binaries +DISTFILES:= ${DISTFILES} sbcl-${BOOT_ARCH_OS}-binary.tar.bz2:binaries . endfor +.else +DISTFILES:= ${DISTFILES} ${BOOT_DISTNAME}-binary.tar.bz2:binaries +.endif +.if ${ARCH} == "i386" +DYNAMIC_SPACE_SIZE?= 512 +PLIST_SUB+= I386_ONLY="" AMD64_ONLY="@comment " +SBCLCONFIG= Config.x86-${OPSYS:tl} +.else +DYNAMIC_SPACE_SIZE?= 1024 +PLIST_SUB+= I386_ONLY="@comment " AMD64_ONLY="" +SBCLCONFIG= Config.x86-64-${OPSYS:tl} +.endif + +# If the SBCL option is enabled, try to use existing "sbcl" first: +.if empty(PORT_OPTIONS:MSBCL) || !exists(${LOCALBASE}/bin/sbcl) XC_HOST?= ${WRKDIR}/${BOOT_DISTNAME}/src/runtime/sbcl \ - --core ${WRKDIR}/${BOOT_DISTNAME}/output/sbcl.core \ + --core ${WRKDIR}/${BOOT_DISTNAME}/output/${CORE} \ --dynamic-space-size ${DYNAMIC_SPACE_SIZE} \ --disable-debugger \ --userinit /dev/null \ --sysinit /dev/null MAKE_SH_ARGS+= --xc-host='${XC_HOST}' - .endif # SBCL .if ${PORT_OPTIONS:MTHREADS} MAKE_SH_ARGS+= --with-sb-thread -.if defined(WITH_FUTEX) +. if defined(WITH_FUTEX) MAKE_SH_ARGS+= --with-sb-futex -.else +. else MAKE_SH_ARGS+= --without-sb-futex -.endif -.if defined(WITH_SAFEPOINT) || defined(WITH_STRICT_SAFEPOINT) +. endif +. if defined(WITH_SAFEPOINT) || defined(WITH_STRICT_SAFEPOINT) MAKE_SH_ARGS+= --with-sb-safepoint --with-sb-thruption --with-sb-wtimer -.if defined(WITH_STRICT_SAFEPOINT) +. if defined(WITH_STRICT_SAFEPOINT) MAKE_SH_ARGS+= --with-sb-safepoint-strictly -.else +. else MAKE_SH_ARGS+= --without-sb-safepoint-strictly -.endif -.else +. endif +. else MAKE_SH_ARGS+= --without-sb-safepoint \ --without-sb-safepoint-strictly \ --without-sb-thruption \ --without-sb-wtimer -.endif +. endif .else MAKE_SH_ARGS+= --without-sb-thread .endif @@ -156,12 +132,11 @@ post-patch: ${WRKSRC}/src/runtime/${SBCLCONFIG} @${ECHO_CMD} "NM=${NM} ${NMFLAGS}" >> \ ${WRKSRC}/src/runtime/${SBCLCONFIG} - @${REINPLACE_CMD} -E -e 's,-lthr,-pthread,g' \ - -e 's,-lpthread,-pthread,g' ${WRKSRC}/src/runtime/${SBCLCONFIG} + @${REINPLACE_CMD} -E -e 's,-lthr,-lpthread,g' \ + ${WRKSRC}/src/runtime/${SBCLCONFIG} @${GREP} -Fe '.core' -l -r ${WRKSRC} | ${XARGS} ${REINPLACE_CMD} \ - -e 's|\.core|_core|g' - @${REINPLACE_CMD} \ - -e 's|/usr/local|${PREFIX}|g' \ + -e 's|\.core|_core|g' + @${REINPLACE_CMD} -e 's|/usr/local|${PREFIX}|g' \ ${WRKSRC}/doc/sbcl.1 @${REINPLACE_CMD} -E -e 's!-sbcl-shared!& ${CFLAGS}!' \ -e 's!\$$(TEST_FILESTEM|x|1)_core!$${\1}_core!g' \ @@ -185,26 +160,21 @@ post-patch: ${WRKSRC}/release.sh \ ${WRKSRC}/src/code/run-program.lisp \ ${WRKSRC}/tests/run-compiler.sh + @${FIND} ${WRKSRC} \( -name '*.orig' -o -name '*.bak' \) -delete do-build: - @${FIND} ${WRKSRC} \( -name '*.orig' -o -name '*.bak' \) -delete - @(cd ${WRKSRC} && ${SETENV} CC="${CC}" ${SH} make.sh ${MAKE_SH_ARGS}) - @${RM} -rf ${WRKSRC}/contrib/sb-cover/test-output - @${REINPLACE_CMD} -E -e \ + (cd ${WRKSRC} && ${SETENV} CC="${CC}" ${SH} make.sh ${MAKE_SH_ARGS}) + ${RM} -rf ${WRKSRC}/contrib/sb-cover/test-output + ${REINPLACE_CMD} -E -e \ 's|\$$Date\$$|'"`${SETENV} LANG=C /bin/date '+%B %d, %Y'`|g" \ ${WRKSRC}/doc/sbcl.1 do-install: - ${MKDIR} ${STAGEDIR}${SBCL_HOME}/ + ${MKDIR} ${STAGEDIR}${SBCL_HOME}/contrib ${INSTALL_PROGRAM} ${WRKSRC}/src/runtime/sbcl ${STAGEDIR}${PREFIX}/bin/ ${INSTALL_DATA} ${WRKSRC}/output/sbcl_core ${STAGEDIR}${SBCL_HOME}/ - ${MKDIR} ${STAGEDIR}${SBCL_HOME}/contrib ${INSTALL_DATA} ${WRKSRC}/obj/sbcl-home/contrib/*.fasl ${STAGEDIR}${SBCL_HOME}/contrib/ ${INSTALL_DATA} ${WRKSRC}/obj/sbcl-home/contrib/*.asd ${STAGEDIR}${SBCL_HOME}/contrib/ -#.for MOD in ${CONTRIB_MODULES} -# (if test -f ${WRKSRC}/contrib/${MOD}/${MOD}.asd; then ${INSTALL_DATA} \ -# ${WRKSRC}/contrib/${MOD}/*.lisp ${STAGEDIR}${SBCL_HOME}/contrib/; fi) -#.endfor .if ${PORT_OPTIONS:MDOCS} ${MKDIR} ${STAGEDIR}${DOCSDIR}/ ${INSTALL_DATA} ${MANUALS:S,^, ${WRKSRC}/doc/manual/,g} ${STAGEDIR}${DOCSDIR}/ Modified: head/lang/sbcl/distinfo ============================================================================== --- head/lang/sbcl/distinfo Sun Mar 22 12:00:23 2015 (r381908) +++ head/lang/sbcl/distinfo Sun Mar 22 12:59:46 2015 (r381909) @@ -4,9 +4,7 @@ SHA256 (sbcl-1.2.9-documentation-html.ta SIZE (sbcl-1.2.9-documentation-html.tar.bz2) = 214153 SHA256 (sbcl-1.0.31-amd64-freebsd8-binary.tar.bz2) = 06a1e4e3a5f5f8e012ff6037a51624d7d1f34bff0979ce45e70418a293412b4e SIZE (sbcl-1.0.31-amd64-freebsd8-binary.tar.bz2) = 8397764 -SHA256 (sbcl-1.0.31-amd64-freebsd7-binary.tar.bz2) = fcbd5ed1948312a7b6eff7e6daf736e41be945a2c57bcee4b64f172ddde518b8 -SIZE (sbcl-1.0.31-amd64-freebsd7-binary.tar.bz2) = 8398964 SHA256 (sbcl-1.0.31-i386-freebsd8-binary.tar.bz2) = fd2348749a2babf301a99449d246b349a1285fc0bca8b83bde0bfa7187cf3dd7 SIZE (sbcl-1.0.31-i386-freebsd8-binary.tar.bz2) = 8475244 -SHA256 (sbcl-1.0.31-i386-freebsd7-binary.tar.bz2) = 5202f6d7a8a1f3b1f19cbd4c65d874b85e8015fc5efec71bffef407c25edbe77 -SIZE (sbcl-1.0.31-i386-freebsd7-binary.tar.bz2) = 8474568 +SHA256 (sbcl-1.2.9-x86_64-dragonfly4-binary.tar.bz2) = 2e32a22ef3a528d7247c0e3a72a3ac672b8b6848ac2d35fbad52a3d1475130dc +SIZE (sbcl-1.2.9-x86_64-dragonfly4-binary.tar.bz2) = 10224580