svn commit: r420576 - in head/lang: pypy pypy/files pypy3/files
David Naylor
dbn at FreeBSD.org
Sun Aug 21 18:36:51 UTC 2016
Author: dbn
Date: Sun Aug 21 18:36:49 2016
New Revision: 420576
URL: https://svnweb.freebsd.org/changeset/ports/420576
Log:
lang/pypy(3): unbreak on PowerPC.
Unbreak build by:
- correctly detecting PowerPC architecture,
- excluding PowerPC specific assembler code (as there is none), and
- fixing the JIT due to long double == double for PowerPC.
Special thanks to swills who diligently tested multiple iterations of patches
to eventually end up at a solution.
Added:
head/lang/pypy/files/patch-pypy_module___cffi__backend_misc.py (contents, props changed)
head/lang/pypy/files/patch-rpython_jit_backend_detect__cpu.py (contents, props changed)
head/lang/pypy/files/patch-rpython_translator_c_src_asm.c (contents, props changed)
head/lang/pypy/files/patch-rpython_translator_c_src_asm.h (contents, props changed)
head/lang/pypy3/files/patch-pypy_module___cffi__backend_misc.py (contents, props changed)
head/lang/pypy3/files/patch-rpython_jit_backend_detect__cpu.py (contents, props changed)
head/lang/pypy3/files/patch-rpython_translator_c_src_asm.c (contents, props changed)
head/lang/pypy3/files/patch-rpython_translator_c_src_asm.h (contents, props changed)
Modified:
head/lang/pypy/Makefile
Modified: head/lang/pypy/Makefile
==============================================================================
--- head/lang/pypy/Makefile Sun Aug 21 17:11:30 2016 (r420575)
+++ head/lang/pypy/Makefile Sun Aug 21 18:36:49 2016 (r420576)
@@ -10,8 +10,6 @@ DISTNAME?= ${PORTNAME}2-v${PORTVERSION}-
MAINTAINER= python at FreeBSD.org
COMMENT= Fast, compliant implementation of the Python language
-BROKEN_powerpc64= Does not build
-
LIB_DEPENDS= libexpat.so:textproc/expat2 \
libffi.so:devel/libffi
TEST_DEPENDS= ${PREFIX}/${PYPY_DIR}/lib_pypy/_gdbm_cffi.${PYPY_CFFI_VER}.so:databases/pypy-gdbm \
Added: head/lang/pypy/files/patch-pypy_module___cffi__backend_misc.py
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/lang/pypy/files/patch-pypy_module___cffi__backend_misc.py Sun Aug 21 18:36:49 2016 (r420576)
@@ -0,0 +1,10 @@
+--- pypy/module/_cffi_backend/misc.py.orig 2016-06-14 07:46:04 UTC
++++ pypy/module/_cffi_backend/misc.py
+@@ -253,6 +253,7 @@ _is_nonnull_longdouble = rffi.llexternal
+ sandboxsafe=True)
+
+ # split here for JIT backends that don't support floats/longlongs/etc.
++ at jit.dont_look_inside
+ def is_nonnull_longdouble(cdata):
+ return _is_nonnull_longdouble(read_raw_longdouble_data(cdata))
+ def is_nonnull_float(cdata, size):
Added: head/lang/pypy/files/patch-rpython_jit_backend_detect__cpu.py
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/lang/pypy/files/patch-rpython_jit_backend_detect__cpu.py Sun Aug 21 18:36:49 2016 (r420576)
@@ -0,0 +1,10 @@
+--- rpython/jit/backend/detect_cpu.py.orig 2016-06-14 07:46:04 UTC
++++ rpython/jit/backend/detect_cpu.py
+@@ -61,6 +61,7 @@ def detect_model_from_host_platform():
+ 'i86pc': MODEL_X86, # Solaris/Intel
+ 'x86': MODEL_X86, # Apple
+ 'Power Macintosh': MODEL_PPC_64,
++ 'powerpc': MODEL_PPC_64, # freebsd
+ 'ppc64': MODEL_PPC_64,
+ 'ppc64le': MODEL_PPC_64,
+ 'x86_64': MODEL_X86,
Added: head/lang/pypy/files/patch-rpython_translator_c_src_asm.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/lang/pypy/files/patch-rpython_translator_c_src_asm.c Sun Aug 21 18:36:49 2016 (r420576)
@@ -0,0 +1,13 @@
+--- rpython/translator/c/src/asm.c.orig 2016-06-14 07:46:04 UTC
++++ rpython/translator/c/src/asm.c
+@@ -8,10 +8,6 @@
+ /* # include "src/asm_gcc_x86_64.c" */
+ #endif
+
+-#if defined(__GNUC__) && defined(__ppc__)
+-# include "src/asm_ppc.c"
+-#endif
+-
+ #if defined(_MSC_VER)
+ # include "src/asm_msvc.c"
+ #endif
Added: head/lang/pypy/files/patch-rpython_translator_c_src_asm.h
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/lang/pypy/files/patch-rpython_translator_c_src_asm.h Sun Aug 21 18:36:49 2016 (r420576)
@@ -0,0 +1,13 @@
+--- rpython/translator/c/src/asm.h.orig 2016-06-14 07:46:04 UTC
++++ rpython/translator/c/src/asm.h
+@@ -10,10 +10,6 @@
+ # include "src/asm_gcc_x86_64.h"
+ #endif
+
+-#if defined(__GNUC__) && defined(__ppc__)
+-# include "src/asm_ppc.h"
+-#endif
+-
+ #if defined(MS_WINDOWS) && defined(_MSC_VER)
+ # include "src/asm_msvc.h"
+ #endif
Added: head/lang/pypy3/files/patch-pypy_module___cffi__backend_misc.py
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/lang/pypy3/files/patch-pypy_module___cffi__backend_misc.py Sun Aug 21 18:36:49 2016 (r420576)
@@ -0,0 +1,10 @@
+--- pypy/module/_cffi_backend/misc.py.orig 2016-06-14 07:46:04 UTC
++++ pypy/module/_cffi_backend/misc.py
+@@ -253,6 +253,7 @@ _is_nonnull_longdouble = rffi.llexternal
+ sandboxsafe=True)
+
+ # split here for JIT backends that don't support floats/longlongs/etc.
++ at jit.dont_look_inside
+ def is_nonnull_longdouble(cdata):
+ return _is_nonnull_longdouble(read_raw_longdouble_data(cdata))
+ def is_nonnull_float(cdata, size):
Added: head/lang/pypy3/files/patch-rpython_jit_backend_detect__cpu.py
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/lang/pypy3/files/patch-rpython_jit_backend_detect__cpu.py Sun Aug 21 18:36:49 2016 (r420576)
@@ -0,0 +1,10 @@
+--- rpython/jit/backend/detect_cpu.py.orig 2016-06-14 07:46:04 UTC
++++ rpython/jit/backend/detect_cpu.py
+@@ -61,6 +61,7 @@ def detect_model_from_host_platform():
+ 'i86pc': MODEL_X86, # Solaris/Intel
+ 'x86': MODEL_X86, # Apple
+ 'Power Macintosh': MODEL_PPC_64,
++ 'powerpc': MODEL_PPC_64, # freebsd
+ 'ppc64': MODEL_PPC_64,
+ 'ppc64le': MODEL_PPC_64,
+ 'x86_64': MODEL_X86,
Added: head/lang/pypy3/files/patch-rpython_translator_c_src_asm.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/lang/pypy3/files/patch-rpython_translator_c_src_asm.c Sun Aug 21 18:36:49 2016 (r420576)
@@ -0,0 +1,13 @@
+--- rpython/translator/c/src/asm.c.orig 2016-06-14 07:46:04 UTC
++++ rpython/translator/c/src/asm.c
+@@ -8,10 +8,6 @@
+ /* # include "src/asm_gcc_x86_64.c" */
+ #endif
+
+-#if defined(__GNUC__) && defined(__ppc__)
+-# include "src/asm_ppc.c"
+-#endif
+-
+ #if defined(_MSC_VER)
+ # include "src/asm_msvc.c"
+ #endif
Added: head/lang/pypy3/files/patch-rpython_translator_c_src_asm.h
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/lang/pypy3/files/patch-rpython_translator_c_src_asm.h Sun Aug 21 18:36:49 2016 (r420576)
@@ -0,0 +1,13 @@
+--- rpython/translator/c/src/asm.h.orig 2016-06-14 07:46:04 UTC
++++ rpython/translator/c/src/asm.h
+@@ -10,10 +10,6 @@
+ # include "src/asm_gcc_x86_64.h"
+ #endif
+
+-#if defined(__GNUC__) && defined(__ppc__)
+-# include "src/asm_ppc.h"
+-#endif
+-
+ #if defined(MS_WINDOWS) && defined(_MSC_VER)
+ # include "src/asm_msvc.h"
+ #endif
More information about the svn-ports-all
mailing list