Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Nov 2013 15:08:55 +0000 (UTC)
From:      David Naylor <dbn@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r333113 - in head/lang: pypy pypy-devel pypy3-devel
Message-ID:  <201311071508.rA7F8tJs028280@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dbn
Date: Thu Nov  7 15:08:55 2013
New Revision: 333113
URL: http://svnweb.freebsd.org/changeset/ports/333113

Log:
  Add stage support to lang/pypy, lang/pypy-devel and lang/pypy3-devel.
  
  Also, require a modern compiler that can handle c11.  Although this is
  not strictly required (just about any C compiler would do) the base GCC
  compiler has a memory bug and thus cannot reasonably compile the ports.

Modified:
  head/lang/pypy-devel/Makefile
  head/lang/pypy/Makefile
  head/lang/pypy3-devel/Makefile

Modified: head/lang/pypy-devel/Makefile
==============================================================================
--- head/lang/pypy-devel/Makefile	Thu Nov  7 15:07:21 2013	(r333112)
+++ head/lang/pypy-devel/Makefile	Thu Nov  7 15:08:55 2013	(r333113)
@@ -15,9 +15,9 @@ COMMENT=	Fast, compliant implementation 
 LICENSE=	MIT PSFL
 LICENSE_COMB=	multi
 
-LIB_DEPENDS=	expat:${PORTSDIR}/textproc/expat2 \
-		ffi:${PORTSDIR}/devel/libffi \
-		sqlite3:${PORTSDIR}/databases/sqlite3
+LIB_DEPENDS=	libexpat.so:${PORTSDIR}/textproc/expat2 \
+		libffi.so:${PORTSDIR}/devel/libffi \
+		libsqlite3.so:${PORTSDIR}/databases/sqlite3
 
 PYTHON_DESC=	Use Python-2.7 to translate (slowest)
 PYPY_DESC=	Use PyPy to translate (fastest, highest memory usage)
@@ -44,7 +44,7 @@ BUILD_WRKSRC=	${WRKDIR}
 COMMIT=		ab7580454b32
 DATE=		20130810
 USE_BZIP2=	yes
-USES=		gettext iconv
+USES=		compiler:c11 gettext iconv
 MAKEFILE=	${FILESDIR}/Makefile
 PKGINSTALL=	${WRKDIR}/pkg-install
 PKGDEINSTALL=	${WRKDIR}/pkg-deinstall
@@ -67,18 +67,9 @@ MAKE_ENV+=	DISTVERSION=${DISTVERSION} PY
 LOCALBASE_REFIX=	\
 		lib_pypy/_sqlite3.py
 
-NO_STAGE=	yes
 .include <bsd.port.options.mk>
 .include "${MASTERDIR}/files/bsd.pypy.inst.mk"
 
-.if ${OSVERSION} < 1000024 || ( ${ARCH} != "i386" && ${ARCH} != "amd64" )
-.if ${CC:T} == cc && ( exists(/usr/bin/clang) || exists(${LOCALBASE}/clang) )
-CC=		clang
-.else
-USE_GCC=	4.2+
-.endif
-.endif
-
 .if ${PORT_OPTIONS:MPYPY} || defined(PYTHON_CMD)
 PYTHON_CMD?=	${LOCALBASE}/bin/pypy
 .elif ${PORT_OPTIONS:MPYPY_MINMEM}
@@ -116,7 +107,7 @@ WITH_BOEHM_GC=	yes
 .endfor # inst in ${PYPY_INST}
 
 .if defined(WITH_BOEHM_GC)
-LIB_DEPENDS+=	gc:${PORTSDIR}/devel/boehm-gc
+LIB_DEPENDS+=	libgc.so:${PORTSDIR}/devel/boehm-gc
 .endif
 
 # Translate FreeBSD ARCH types to PyPy ARCH types
@@ -274,12 +265,12 @@ post-build:
 
 do-install:
 .for _path in ${PYPYDIRS}
-	-${RM} ${PREFIX}/${_path:C/.*://}
-	(cd ${WRKSRC}/${_path:C/:.*//}; ${COPYTREE_SHARE} . ${PREFIX}/${_path:C/.*://})
+	${RM} -f ${STAGEDIR}${PREFIX}/${_path:C/.*://}
+	(cd ${WRKSRC}/${_path:C/:.*//}; ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/${_path:C/.*://})
 .endfor
 .for name in ${PYPY_NAMES:O}
 	${STRIP_CMD} ${WRKDIR}/${name}
-	${INSTALL_PROGRAM} ${WRKDIR}/${name} ${PREFIX}/bin/${name}-${PYPY_VER}
+	${INSTALL_PROGRAM} ${WRKDIR}/${name} ${STAGEDIR}${PREFIX}/bin/${name}-${PYPY_VER}
 	${ECHO} bin/${name}-${PYPY_VER} >> ${TMPPLIST}
 .endfor
 

Modified: head/lang/pypy/Makefile
==============================================================================
--- head/lang/pypy/Makefile	Thu Nov  7 15:07:21 2013	(r333112)
+++ head/lang/pypy/Makefile	Thu Nov  7 15:08:55 2013	(r333113)
@@ -14,9 +14,9 @@ COMMENT=	Fast, compliant implementation 
 LICENSE=	MIT PSFL
 LICENSE_COMB=	multi
 
-LIB_DEPENDS=	expat:${PORTSDIR}/textproc/expat2 \
-		ffi:${PORTSDIR}/devel/libffi \
-		sqlite3:${PORTSDIR}/databases/sqlite3
+LIB_DEPENDS=	libexpat.so:${PORTSDIR}/textproc/expat2 \
+		libffi.so:${PORTSDIR}/devel/libffi \
+		libsqlite3.so:${PORTSDIR}/databases/sqlite3
 
 CLI_DESC=	(BROKEN) Translate a CLI (.NET) based pypy
 JVM_DESC=	(BROKEN) Translate a JVM (Java) based pypy
@@ -40,7 +40,7 @@ CONFLICTS_INSTALL=	pypy-devel-[0-9]*
 ALL_TARGET=	${PYPY_NAMES}
 BUILD_WRKSRC=	${WRKDIR}
 USE_BZIP2=	yes
-USES=		gettext iconv
+USES=		compiler:c11 gettext iconv
 MAKEFILE=	${FILESDIR}/Makefile
 PKGINSTALL=	${WRKDIR}/pkg-install
 PKGDEINSTALL=	${WRKDIR}/pkg-deinstall
@@ -61,18 +61,9 @@ MAKE_ENV+=	DISTVERSION=${DISTVERSION} PY
 LOCALBASE_REFIX=	\
 		${PYPY_LIBDIR}/lib_pypy/_sqlite3.py
 
-NO_STAGE=	yes
 .include <bsd.port.options.mk>
 .include "${MASTERDIR}/files/bsd.pypy.inst.mk"
 
-.if ${OSVERSION} < 1000024 || ( ${ARCH} != "i386" && ${ARCH} != "amd64" )
-.if ${CC:T} == cc && ( exists(/usr/bin/clang) || exists(${LOCALBASE}/clang) )
-CC=		clang
-.else
-USE_GCC=	4.2+
-.endif
-.endif
-
 .if ${PORT_OPTIONS:MPYPY} || defined(PYTHON_CMD)
 PYTHON_CMD?=	${LOCALBASE}/bin/pypy
 .elif ${PORT_OPTIONS:MPYPY_MINMEM}
@@ -128,7 +119,7 @@ WITH_JVM=	yes
 .endfor # inst in ${PYPY_INST}
 
 .if defined(WITH_BOEHM_GC)
-LIB_DEPENDS+=	gc:${PORTSDIR}/devel/boehm-gc
+LIB_DEPENDS+=	libgc.so:${PORTSDIR}/devel/boehm-gc
 .endif
 
 .if defined(WITH_CLI)
@@ -299,11 +290,11 @@ post-build:
 
 do-install:
 .for dir in ${PYPYDIRS}
-	(cd ${WRKSRC}/${dir}; ${COPYTREE_SHARE} . ${PREFIX}/${dir})
+	(cd ${WRKSRC}/${dir}; ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/${dir})
 .endfor
 .for name in ${PYPY_NAMES:O}
 	${STRIP_CMD} ${WRKDIR}/${name}
-	${INSTALL_PROGRAM} ${WRKDIR}/${name} ${PREFIX}/bin/${name}-${PYPY_VER}
+	${INSTALL_PROGRAM} ${WRKDIR}/${name} ${STAGEDIR}${PREFIX}/bin/${name}-${PYPY_VER}
 	${ECHO} bin/${name}-${PYPY_VER} >> ${TMPPLIST}
 .endfor
 

Modified: head/lang/pypy3-devel/Makefile
==============================================================================
--- head/lang/pypy3-devel/Makefile	Thu Nov  7 15:07:21 2013	(r333112)
+++ head/lang/pypy3-devel/Makefile	Thu Nov  7 15:08:55 2013	(r333113)
@@ -13,9 +13,9 @@ COMMENT=	Fast, compliant implementation 
 LICENSE=	MIT PSFL
 LICENSE_COMB=	multi
 
-LIB_DEPENDS=	expat:${PORTSDIR}/textproc/expat2 \
-		ffi:${PORTSDIR}/devel/libffi \
-		sqlite3:${PORTSDIR}/databases/sqlite3
+LIB_DEPENDS=	libexpat.so:${PORTSDIR}/textproc/expat2 \
+		libffi.so:${PORTSDIR}/devel/libffi \
+		libsqlite3.so:${PORTSDIR}/databases/sqlite3
 
 PYTHON_DESC=	Use Python-2.7 to translate (slowest)
 PYPY_DESC=	Use PyPy to translate (fastest, highest memory usage)
@@ -41,7 +41,7 @@ ALL_TARGET=	${PYPY_NAMES}
 BUILD_WRKSRC=	${WRKDIR}
 LATEST_LINK=	${PORTNAME}-devel
 USE_BZIP2=	yes
-USES=		gettext iconv
+USES=		compiler:c11 gettext iconv
 MAKEFILE=	${FILESDIR}/Makefile
 PKGINSTALL=	${WRKDIR}/pkg-install
 PKGDEINSTALL=	${WRKDIR}/pkg-deinstall
@@ -64,18 +64,9 @@ MAKE_ENV+=	DISTVERSION=${DISTVERSION} PY
 LOCALBASE_REFIX=	\
 		lib_pypy/_sqlite3.py
 
-NO_STAGE=	yes
 .include <bsd.port.options.mk>
 .include "${MASTERDIR}/files/bsd.pypy.inst.mk"
 
-.if ${OSVERSION} < 1000024 || ( ${ARCH} != "i386" && ${ARCH} != "amd64" )
-.if ${CC:T} == cc && ( exists(/usr/bin/clang) || exists(${LOCALBASE}/clang) )
-CC=		clang
-.else
-USE_GCC=	4.2+
-.endif
-.endif
-
 .if ${PORT_OPTIONS:MPYPY} || defined(PYTHON_CMD)
 PYTHON_CMD?=	${LOCALBASE}/bin/pypy
 .elif ${PORT_OPTIONS:MPYPY_MINMEM}
@@ -113,7 +104,7 @@ WITH_BOEHM_GC=	yes
 .endfor # inst in ${PYPY_INST}
 
 .if defined(WITH_BOEHM_GC)
-LIB_DEPENDS+=	gc:${PORTSDIR}/devel/boehm-gc
+LIB_DEPENDS+=	libgc.so:${PORTSDIR}/devel/boehm-gc
 .endif
 
 # Translate FreeBSD ARCH types to PyPy ARCH types
@@ -271,12 +262,12 @@ post-build:
 
 do-install:
 .for _path in ${PYPYDIRS}
-	-${RM} ${PREFIX}/${_path:C/.*://}
-	(cd ${WRKSRC}/${_path:C/:.*//}; ${COPYTREE_SHARE} . ${PREFIX}/${_path:C/.*://})
+	${RM} -f ${STAGEDIR}${PREFIX}/${_path:C/.*://}
+	(cd ${WRKSRC}/${_path:C/:.*//}; ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/${_path:C/.*://})
 .endfor
 .for name in ${PYPY_NAMES:O}
 	${STRIP_CMD} ${WRKDIR}/${name}
-	${INSTALL_PROGRAM} ${WRKDIR}/${name} ${PREFIX}/bin/${name}3-${PYPY_VER}
+	${INSTALL_PROGRAM} ${WRKDIR}/${name} ${STAGEDIR}${PREFIX}/bin/${name}3-${PYPY_VER}
 	${ECHO} bin/${name}3-${PYPY_VER} >> ${TMPPLIST}
 .endfor
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201311071508.rA7F8tJs028280>