The package rpms/z3.git has added or updated architecture specific content in its spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s): https://src.fedoraproject.org/cgit/rpms/z3.git/commit/?id=31ee134bbfc4b23cfe....
Change: -%ifnarch %{ix86} x86_64
Thanks.
Full change: ============
commit 31ee134bbfc4b23cfe02223d826974c18f7ffb78 Author: Jerry James loganjerry@gmail.com Date: Wed Oct 31 21:04:06 2018 -0600
Add -no-sse patch to fix FTBFS on non-x86 arches.
diff --git a/z3-no-sse.patch b/z3-no-sse.patch new file mode 100644 index 0000000..801858a --- /dev/null +++ b/z3-no-sse.patch @@ -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 diff --git a/z3.spec b/z3.spec index 39fc170..c589363 100644 --- a/z3.spec +++ b/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/%%7Bname%7D-%%7Bversion%7D.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
arch-excludes@lists.fedoraproject.org