Do not support Java on i686 (rhbz#2104112).

Use new OCaml macros.
This commit is contained in:
Jerry James 2022-07-05 13:23:31 -06:00
parent d607dff554
commit 013801252f
1 changed files with 36 additions and 15 deletions

51
z3.spec
View File

@ -7,7 +7,7 @@
Name: z3
Version: 4.8.17
Release: 4%{?dist}
Release: 5%{?dist}
Summary: Satisfiability Modulo Theories (SMT) solver
License: MIT
@ -22,8 +22,10 @@ BuildRequires: gcc-c++
BuildRequires: gmp-devel
BuildRequires: graphviz
BuildRequires: help2man
%ifarch %{java_arches}
BuildRequires: java-devel
BuildRequires: javapackages-tools
%endif
BuildRequires: make
BuildRequires: ninja-build
BuildRequires: ocaml
@ -44,6 +46,11 @@ uninterpreted functions, and quantifiers.
%package libs
Summary: Library for applications that use z3 functionality
# This can be removed when F40 reaches EOL
%ifnarch %{java_arches}
Obsoletes: java-%{name} < 4.8.17-5
%endif
%description libs
Library for applications that use z3 functionality.
@ -62,6 +69,7 @@ Summary: API documentation for Z3
%description doc
API documentation for Z3.
%ifarch %{java_arches}
%package -n java-%{name}
Summary: Java interface to z3
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
@ -70,6 +78,7 @@ Requires: javapackages-tools
%description -n java-%{name}
Java interface to z3.
%endif
%package -n ocaml-%{name}
Summary: Ocaml interface to z3
@ -129,7 +138,11 @@ export PYTHON="%{python3}"
-DCMAKE_INSTALL_INCLUDEDIR=%{_includedir}/%{name} \
-DCMAKE_JAVA_COMPILE_FLAGS="-source;1.8;-target;1.8" \
-DZ3_BUILD_DOCUMENTATION:BOOL=ON \
%ifarch %{java_arches}
-DZ3_BUILD_JAVA_BINDINGS:BOOL=ON \
%else
-DZ3_BUILD_JAVA_BINDINGS:BOOL=OFF \
%endif
-DZ3_BUILD_PYTHON_BINDINGS:BOOL=ON \
-DZ3_INCLUDE_GIT_HASH:BOOL=OFF \
-DZ3_INCLUDE_GIT_DESCRIBE:BOOL=OFF \
@ -160,19 +173,21 @@ export LANG="C.UTF-8"
# Install the C++, python3, and Java interfaces
%cmake_install
%ifarch %{java_arches}
# Move the Java interface to its correct location
mkdir -p %{buildroot}%{_libdir}/%{name}
mkdir -p %{buildroot}%{_jnidir}
mv %{buildroot}%{_javadir}/*.jar %{buildroot}%{_jnidir}
ln -s %{_jnidir}/com.microsoft.z3.jar %{buildroot}%{_libdir}/%{name}
mv %{buildroot}%{_libdir}/lib%{name}java.so %{buildroot}%{_libdir}/%{name}
%endif
# Install the OCaml interface
pushd build/api/ml
mkdir -p %{buildroot}%{_libdir}/ocaml/Z3
cp -p META *.{a,cma,cmi,cmx,cmxa,cmxs,mli} %{buildroot}%{_libdir}/ocaml/Z3
mkdir -p %{buildroot}%{_libdir}/ocaml/stublibs
cp -p *.so %{buildroot}%{_libdir}/ocaml/stublibs
mkdir -p %{buildroot}%{ocamldir}/Z3
cp -p META *.{a,cma,cmi,cmx,cmxa,cmxs,mli} %{buildroot}%{ocamldir}/Z3
mkdir -p %{buildroot}%{ocamldir}/stublibs
cp -p *.so %{buildroot}%{ocamldir}/stublibs
popd
# We handle the documentation files below
@ -210,28 +225,34 @@ cd -
%doc %{_vpath_builddir}/doc/api/html examples
%license LICENSE.txt
%ifarch %{java_arches}
%files -n java-%{name}
%{_libdir}/%{name}/
%{_jnidir}/com.microsoft.z3*jar
%endif
%files -n ocaml-%{name}
%dir %{_libdir}/ocaml/Z3/
%{_libdir}/ocaml/Z3/META
%{_libdir}/ocaml/Z3/*.cma
%{_libdir}/ocaml/Z3/*.cmi
%{_libdir}/ocaml/Z3/*.cmxs
%{_libdir}/ocaml/stublibs/*.so
%dir %{ocamldir}/Z3/
%{ocamldir}/Z3/META
%{ocamldir}/Z3/*.cma
%{ocamldir}/Z3/*.cmi
%{ocamldir}/Z3/*.cmxs
%{ocamldir}/stublibs/*.so
%files -n ocaml-%{name}-devel
%{_libdir}/ocaml/Z3/*.a
%{_libdir}/ocaml/Z3/*.cmx
%{_libdir}/ocaml/Z3/*.cmxa
%{_libdir}/ocaml/Z3/*.mli
%{ocamldir}/Z3/*.a
%{ocamldir}/Z3/*.cmx
%{ocamldir}/Z3/*.cmxa
%{ocamldir}/Z3/*.mli
%files -n python3-%{name}
%{python3_sitelib}/%{name}/
%changelog
* Tue Jun 28 2022 Jerry James <loganjerry@gmail.com> - 4.8.17-5
- Do not support Java on i686 (rhbz#2104112)
- Use new OCaml macros
* Mon Jun 20 2022 Python Maint <python-maint@redhat.com> - 4.8.17-4
- Rebuilt for Python 3.11