Add -no-sse patch to fix FTBFS on non-x86 arches.
This commit is contained in:
parent
9257eb278f
commit
31ee134bbf
|
@ -0,0 +1,49 @@
|
|||
--- scripts/mk_util.py.orig 2018-10-15 13:52:38.000000000 -0600
|
||||
+++ scripts/mk_util.py 2018-10-31 19:27:59.067093823 -0600
|
||||
@@ -112,7 +112,7 @@ GUARD_CF=False
|
||||
ALWAYS_DYNAMIC_BASE=False
|
||||
|
||||
FPMATH="Default"
|
||||
-FPMATH_FLAGS="-mfpmath=sse -msse -msse2"
|
||||
+FPMATH_FLAGS=""
|
||||
|
||||
|
||||
def check_output(cmd):
|
||||
@@ -294,10 +294,10 @@ def test_fpmath(cc):
|
||||
t = TempFile('tstsse.cpp')
|
||||
t.add('int main() { return 42; }\n')
|
||||
t.commit()
|
||||
- if exec_compiler_cmd([cc, CPPFLAGS, 'tstsse.cpp', LDFLAGS, '-mfpmath=sse -msse -msse2']) == 0:
|
||||
+ if None:
|
||||
FPMATH_FLAGS="-mfpmath=sse -msse -msse2"
|
||||
return "SSE2-GCC"
|
||||
- elif exec_compiler_cmd([cc, CPPFLAGS, 'tstsse.cpp', LDFLAGS, '-msse -msse2']) == 0:
|
||||
+ elif None:
|
||||
FPMATH_FLAGS="-msse -msse2"
|
||||
return "SSE2-CLANG"
|
||||
elif exec_compiler_cmd([cc, CPPFLAGS, 'tstsse.cpp', LDFLAGS, '-mfpu=vfp -mfloat-abi=hard']) == 0:
|
||||
--- src/util/hwf.cpp.orig 2018-10-15 13:52:38.000000000 -0600
|
||||
+++ src/util/hwf.cpp 2018-10-31 19:28:42.528890124 -0600
|
||||
@@ -46,9 +46,9 @@ Revision History:
|
||||
// clear to the compiler what instructions should be used. E.g., for sqrt(), the Windows compiler selects
|
||||
// the x87 FPU, even when /arch:SSE2 is on.
|
||||
// Luckily, these are kind of standardized, at least for Windows/Linux/macOS.
|
||||
-#ifdef __clang__
|
||||
+//#ifdef __clang__
|
||||
#undef USE_INTRINSICS
|
||||
-#endif
|
||||
+//#endif
|
||||
|
||||
#ifdef USE_INTRINSICS
|
||||
#include <emmintrin.h>
|
||||
--- src/util/mpz.cpp.orig 2018-10-15 13:52:38.000000000 -0600
|
||||
+++ src/util/mpz.cpp 2018-10-31 19:40:55.519174699 -0600
|
||||
@@ -30,7 +30,7 @@ Revision History:
|
||||
#else
|
||||
#error No multi-precision library selected.
|
||||
#endif
|
||||
-#include <immintrin.h>
|
||||
+
|
||||
|
||||
// Available GCD algorithms
|
||||
// #define EUCLID_GCD
|
12
z3.spec
12
z3.spec
|
@ -1,4 +1,4 @@
|
|||
%global medtag 3b1b82bef05a
|
||||
%global medtag b301a59899ff
|
||||
|
||||
Name: z3
|
||||
Version: 4.8.1
|
||||
|
@ -8,6 +8,8 @@ Summary: Satisfiability Modulo Theories (SMT) solver
|
|||
License: MIT
|
||||
URL: https://github.com/Z3Prover/z3
|
||||
Source0: https://github.com/Z3Prover/z3/archive/%{name}-%{version}.tar.gz
|
||||
# Do not try to build with SSE2 support on non-x86 arches.
|
||||
Patch0: %{name}-no-sse.patch
|
||||
|
||||
BuildRequires: doxygen
|
||||
BuildRequires: gcc-c++
|
||||
|
@ -89,6 +91,9 @@ Python 3 interface to z3.
|
|||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{name}-%{version}
|
||||
%ifnarch %{ix86} x86_64
|
||||
%patch0
|
||||
%endif
|
||||
|
||||
# Install python objects into the right place, enable verbose builds, use
|
||||
# Fedora CFLAGS, preserve timestamps when installing, include the entire
|
||||
|
@ -108,11 +113,6 @@ sed -e "s|^\(PYTHON_PACKAGE_DIR=\).*|\1'%{python3_sitearch}'|" \
|
|||
-e "s/OCAML_FLAGS = ''/OCAML_FLAGS = '-g'/" \
|
||||
-i scripts/mk_util.py
|
||||
|
||||
# Do not try to build with SSE2 support on non-x86 arches.
|
||||
%ifnarch %{ix86} x86_64
|
||||
sed -i 's/exec_compiler_cmd.*-msse.*:/None:/' scripts/mk_util.py
|
||||
%endif
|
||||
|
||||
# Comply with the Java packaging guidelines
|
||||
sed -e 's,\(System\.load\)Library("\(.*\)"),\1("%{_libdir}/z3/\2.so"),' \
|
||||
-i scripts/update_api.py
|
||||
|
|
Loading…
Reference in New Issue