%bcond_with java Name: capstone Version: 4.0.2 Release: 3 Summary: A lightweight multi-platform, multi-architecture disassembly framework License: BSD URL: http://www.capstone-engine.org/ Source0: https://github.com/aquynh/%{name}/archive/%{version}.tar.gz %global with_python3 1 BuildRequires: gcc git capstone %if 0%{with java} Buildrequires: jna java-devel %endif %if 0%{?with_python3} BuildRequires: python%{python3_pkgversion} python%{python3_pkgversion}-devel python%{python3_pkgversion}-setuptools %endif %description Capstone is a lightweight multi-platform, multi-architecture disassembly framework.It supports multi-architectures, Multiple platforms. Clean & intuitive is the key principle in designing the API for Capstone. Capstone is thread-safe. %package -n %{name}-devel Summary: Development headers and libraries to build upon %{name} Requires:%{name} = %{version}-%{release} %description -n %{name}-devel Development headers and libraries to build upon %{name} %if 0%{?with_python3} %package -n python%{python3_pkgversion}-capstone Requires: %{name} = %{version}-%{release} Summary: Python3 bindings for %{name} Provides: %{name}-python%{python3_pkgversion} = %{version}-%{release} Provides: %{name}-python%{python3_pkgversion}%{?_isa} = %{version}-%{release} Obsoletes: %{name}-python%{python3_pkgversion} < %{version}-%{release} %{?python_provide:%python_provide python%{python3_pkgversion}-capstone} %description -n python%{python3_pkgversion}-capstone Python3 bindings for %{name}. %endif %if 0%{with java} %package java Summary: Java bindings for %{name} Requires: %{name} = %{version}-%{release} BuildArch: noarch %description java This package contains java bindings for %{name}. %endif %prep %autosetup -n %{name}-%{version} -p1 -Sgit %build DESTDIR="%{buildroot}" V=1 CFLAGS="%{optflags}" \ LIBDIRARCH="%{_lib}" INCDIR="%{_includedir}" \ make PYTHON2=%{__python2} PYTHON3=%{__python3} %{?_smp_mflags} sed -i 's;%{buildroot};;' capstone.pc grep -v archive capstone.pc > capstone.pc.tmp mv capstone.pc.tmp capstone.pc pushd bindings/python %if 0%{?with_python3} %py3_build %endif popd %if 0%{with java} pushd bindings/java %if 0%{?with_python3} make PYTHON2=%{__python3} PYTHON3=%{__python3} CFLAGS="%{optflags}" %endif popd %endif %install DESTDIR=%{buildroot} LIBDIRARCH=%{_lib} \ INCDIR="%{_includedir}" make install %delete_la_and_a pushd bindings/python %if 0%{?with_python3} %py3_install %endif popd %if 0%{with java} install -D -p -m 0644 bindings/java/%{name}.jar %{buildroot}/%{_javadir}/%{name}.jar %endif %pre %preun %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %license LICENSE.TXT LICENSE_LLVM.TXT %doc CREDITS.TXT ChangeLog README.md SPONSORS.TXT %{_libdir}/*.so.* %{_bindir}/cstool %files devel %{_includedir}/* %{_libdir}/*.so %{_libdir}/pkgconfig/* %if 0%{?with_python3} %files -n python%{python3_pkgversion}-capstone %{python3_sitelib}/*egg-info %{python3_sitelib}/%{name} %endif %if 0%{with java} %files java %{_javadir}/ %endif %changelog * Sat Mar 20 2021 shenyangyang - 4.0.2-3 - DESC:Delete unneeded so for bumping version * Mon Feb 1 2021 wangjie - 4.0.2-2 - DESC:remove capstone-4.0.1.tar.gz and 0001-Fix-include-path-in-pkg-config-for-Makefile-too-1339.patch after upgrade 4.0.2 * Mon Feb 1 2021 wangjie - 4.0.2-1 - DESC:upgrade 4.0.2 * Fri Oct 30 2020 wangjie - 4.0.1-3 - Type:NA - ID:NA - SUG:NA - DESC:remove python2 * Mon Oct 28 2019 caomeng - 4.0.1-2 - Type:NA - ID:NA - SUG:NA - DESC:add bcondwith java * Sat Oct 12 2019 openEuler Buildteam - 4.0.1-1 - Package init