diff --git a/.gitignore b/.gitignore index 11b9f51..0958ad6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1 @@ -/capstone-3.0.4-e710e4f.tar.gz -/capstone-3.0.5-db19431.tar.gz -/capstone-4.0.0-75c0528.tar.gz -/capstone-4.0.1.tar.gz -/capstone-4.0.2.tar.gz +/capstone-*.tar.gz diff --git a/capstone-python.patch b/capstone-3.0.5-python.patch similarity index 100% rename from capstone-python.patch rename to capstone-3.0.5-python.patch diff --git a/0001-Fix-include-path-in-pkg-config-for-Makefile-too-1339.patch b/capstone-4.0.1-includedir.patch similarity index 98% rename from 0001-Fix-include-path-in-pkg-config-for-Makefile-too-1339.patch rename to capstone-4.0.1-includedir.patch index b45690a..04385d4 100644 --- a/0001-Fix-include-path-in-pkg-config-for-Makefile-too-1339.patch +++ b/capstone-4.0.1-includedir.patch @@ -1,3 +1,4 @@ +Fixed with 5.0.0 From d36b7395e69c70a8d98f78f2bcb20a32bf9f3173 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 11 Jan 2019 13:48:11 +0000 diff --git a/capstone-5.0.1-ocaml.patch b/capstone-5.0.1-ocaml.patch new file mode 100644 index 0000000..a577369 --- /dev/null +++ b/capstone-5.0.1-ocaml.patch @@ -0,0 +1,12 @@ +diff -ru capstone-5.0.1/bindings/ocaml/Makefile capstone-5.0.1.new/bindings/ocaml/Makefile +--- capstone-5.0.1/bindings/ocaml/Makefile 2023-08-22 18:03:55.000000000 +0200 ++++ capstone-5.0.1.new/bindings/ocaml/Makefile 2023-11-12 10:28:45.320198200 +0100 +@@ -2,7 +2,7 @@ + # By Nguyen Anh Quynh , 2013-2015 + + LIB = capstone +-FLAGS = '-Wall -Wextra -Wwrite-strings' ++FLAGS = '-Wall -Wextra -Wwrite-strings -I ../../include -L ../../' + PYTHON2 ?= python + + all: arm_const.cmxa arm64_const.cmxa m680x_const.cmxa mips_const.cmxa ppc_const.cmxa sparc_const.cmxa sysz_const.cmxa x86_const.cmxa xcore_const.cmxa arm.cmxa arm64.cmxa m680x.cmxa mips.cmxa ppc.cmxa x86.cmxa sparc.cmxa systemz.cmxa xcore.cmxa capstone.cmxa test_basic.cmx test_detail.cmx test_x86.cmx test_arm.cmx test_arm64.cmx test_mips.cmx test_ppc.cmx test_sparc.cmx test_systemz.cmx test_xcore.cmx test_m680x.cmx ocaml.o diff --git a/capstone-5.0.1-platform.patch b/capstone-5.0.1-platform.patch new file mode 100644 index 0000000..771f674 --- /dev/null +++ b/capstone-5.0.1-platform.patch @@ -0,0 +1,22 @@ +diff -uNr capstone-5.0.orig/bindings/python/setup.py capstone-5.0/bindings/python/setup.py +--- capstone-5.0.orig/bindings/python/setup.py 2023-08-07 16:55:34.314825530 -0500 ++++ capstone-5.0/bindings/python/setup.py 2023-08-07 21:06:59.182376477 -0500 +@@ -201,15 +201,9 @@ + idx = sys.argv.index('bdist_wheel') + 1 + sys.argv.insert(idx, '--plat-name') + name = get_platform() +- if 'linux' in name: +- # linux_* platform tags are disallowed because the python ecosystem is fubar +- # linux builds should be built in the centos 5 vm for maximum compatibility +- # see https://github.com/pypa/manylinux +- # see also https://github.com/angr/angr-dev/blob/master/bdist.sh +- sys.argv.insert(idx + 1, 'manylinux1_' + platform.machine()) +- else: +- # https://www.python.org/dev/peps/pep-0425/ +- sys.argv.insert(idx + 1, name.replace('.', '_').replace('-', '_')) ++ pyversion = platform.python_version() ++ major_version, minor_version = map(int, pyversion.split('.')[:2]) ++ sys.argv.insert(idx + 1, name.replace('.', '_').replace('-', '_') + "_" + str(major_version) + str(minor_version)) + + setup( + provides=['capstone'], diff --git a/capstone.spec b/capstone.spec index d7a4387..188d34c 100644 --- a/capstone.spec +++ b/capstone.spec @@ -1,36 +1,42 @@ Name: capstone -Version: 4.0.2 -Release: 7%{?dist} +Version: 5.0.6 +Release: %autorelease Summary: A lightweight multi-platform, multi-architecture disassembly framework - -%global gituser aquynh -%global gitname capstone -# 4.0.2 release -%global commit 1d230532840a37ac032c6ab80128238fc930c6c1 -%global shortcommit %(c=%{commit}; echo ${c:0:7}) - -License: BSD +License: BSD-3-Clause AND BSD-4-Clause AND APSL-2.0 AND NCSA AND MIT URL: http://www.capstone-engine.org/ -VCS: https://github.com/aquynh/capstone/ -# https://github.com/aquynh/capstone/releases -# Source0: https://github.com/%%{gituser}/%%{gitname}/archive/%%{commit}/%%{name}-%%{version}-%%{shortcommit}.tar.gz -Source0: https://github.com/%{gituser}/%{gitname}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz - -# Test suite binary samples to be used for disassembly -# Source1: - -# Fedora 29 makes python executable separate from python2 and python3. This patch makes -# it possible to specify PYTHON2 and PYTHON3 binary to be explicit that by "python" we mean "python2" -# Patch0: capstone-python.patch - -# Upstream patch which fixes libcapstone.pc. -# See: https://github.com/aquynh/capstone/issues/1339 -# Patch1: 0001-Fix-include-path-in-pkg-config-for-Makefile-too-1339.patch +VCS: git:https://github.com/capstone-engine/capstone/ +# https://github.com/capstone-engine/capstone/releases %global common_desc %{expand: Capstone is a disassembly framework with the target of becoming the ultimate disasm engine for binary analysis and reversing in the security community.} + +%define _lto_cflags %{nil} +#%%global _hardened_build 1 + +%global gituser capstone-engine +%global gitname capstone +# 5.0.5 release +%global gitdate 20250323 +%global commit accf4df62f1fba6f92cae692985d27063552601c +%global shortcommit %(c=%{commit}; echo ${c:0:7}) + +# Source0: https://github.com/%%{gituser}/%%{gitname}/archive/%%{commit}/%%{name}-%%{version}-%%{shortcommit}.tar.gz +Source0: https://github.com/%{gituser}/%{gitname}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz + +# Manpage for cstool is missing in the package, add one generated by help2man +Source1: cstool.1 + +# modified to remove the GH CI modifications from this patch +# Patch: https://patch-diff.githubusercontent.com/raw/capstone-engine/capstone/pull/2099.patch +# Patch0: https://github.com/capstone-engine/capstone/pull/2099.patch#/capstone-5.0.1-cibuildwheel.patch +# Patch0: capstone-5.0.1-platform.patch + +# Ocaml binding is not using local path for the includes/links +Patch1: capstone-5.0.1-ocaml.patch + + # Build with python3 package by default %bcond_without python3 @@ -41,29 +47,46 @@ disasm engine for binary analysis and reversing in the security community.} %bcond_without python2 %endif +# Build with java binding +%bcond_without java + +# Build without ocaml binding - it is not ready to be distributed as ocaml shared library +%bcond_with ocaml + + %global srcname distribute BuildRequires: gcc BuildRequires: make BuildRequires: git + +%if %{with java} +%ifarch %{java_arches} BuildRequires: jna BuildRequires: java-devel +%endif +%endif %if %{with python2} BuildRequires: python2 BuildRequires: python2-devel +BuildRequires: python2-pip BuildRequires: python2-setuptools %endif %if %{with python3} BuildRequires: python%{python3_pkgversion} BuildRequires: python%{python3_pkgversion}-devel +BuildRequires: python%{python3_pkgversion}-pip BuildRequires: python%{python3_pkgversion}-setuptools +BuildRequires: python%{python3_pkgversion}-pytest %endif -%global _hardened_build 1 - +%if %{with ocaml} +BuildRequires: ocaml +BuildRequires: ocaml-ocamlbuild +%endif %description %{common_desc} @@ -78,16 +101,26 @@ The %{name}-devel package contains libraries and header files for developing applications that use %{name}. +%package static +Summary: Static linking of %{name} library + +%description static +%{common_desc} +The %{name}-static package contains files needed for static linking +of %{name} library into static binaries. + + %if %{with python2} %package -n python2-capstone +BuildArch: noarch %{?python_provide:%python_provide python2-capstone} # Remove before F30 +# loading the libcapstone dynamically using ctypes, not tied to certain architecture Provides: %{name}-python = %{version}-%{release} -Provides: %{name}-python%{?_isa} = %{version}-%{release} Obsoletes: %{name}-python < %{version}-%{release} Summary: Python bindings for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: %{name} = %{version}-%{release} %description -n python2-capstone %{common_desc} @@ -99,11 +132,11 @@ The python2-capstone package contains python bindings for %{name}. %if %{with python3} %package -n python%{python3_pkgversion}-capstone +BuildArch: noarch %{?python_provide:%python_provide python%{python3_pkgversion}-capstone} Provides: %{name}-python%{python3_pkgversion} = %{version}-%{release} -Provides: %{name}-python%{python3_pkgversion}%{?_isa} = %{version}-%{release} Obsoletes: %{name}-python%{python3_pkgversion} < %{version}-%{release} -Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: %{name} = %{version}-%{release} Summary: Python3 bindings for %{name} @@ -114,7 +147,8 @@ The python%{python3_pkgversion}-capstone package contains python3 bindings for % %endif - +%if %{with java} +%ifarch %{java_arches} %package java Summary: Java bindings for %{name} Requires: %{name} = %{version}-%{release} @@ -123,13 +157,29 @@ BuildArch: noarch %description java %{common_desc} The %{name}-java package contains java bindings for %{name}. +%endif +%endif +%if %{with ocaml} +%package -n ocaml-%{name} +Summary: OCaml bindings for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description -n ocaml-%{name} +%{common_desc} +The ocaml-%{name} package contains OCaml bindings for %{name}. +%endif %prep # autosetup -n %%{gitname}-%%{commit} -S git -%autosetup -n %{gitname}-%{version} -S git +%autosetup -n %{gitname}-%{version} -p1 +%if %{with python3} +pushd bindings/python +%pyproject_buildrequires +popd +%endif %build @@ -138,11 +188,9 @@ PREFIX="%{_prefix}" LIBDIRARCH="%{_lib}" INCDIR="%{_includedir}" \ %make_build PYTHON2=%{__python2} PYTHON3=%{__python3} # Fix pkgconfig file -sed -i 's;%{buildroot};;' capstone.pc grep -v archive capstone.pc > capstone.pc.tmp mv capstone.pc.tmp capstone.pc - # build python bindings pushd bindings/python @@ -151,11 +199,14 @@ pushd bindings/python %endif %if %{with python3} +# %%pyproject_wheel %py3_build %endif popd -# build java bindings needs some python +%if %{with java} +%ifarch %{java_arches} +# build java bindings needs some python runtime pushd bindings/java %if %{with python3} %make_build PYTHON2=%{__python3} PYTHON3=%{__python3} CFLAGS="%{optflags}" # %{?_smp_mflags} parallel seems broken @@ -163,46 +214,98 @@ pushd bindings/java %make_build PYTHON2=%{__python2} PYTHON3=%{__python2} CFLAGS="%{optflags}" # %{?_smp_mflags} parallel seems broken %endif popd +%endif +%endif +%if %{with ocaml} +pushd bindings/ocaml +# build ocaml bindings needs some python runtime +%if %{with python3} +%make_build PYTHON2=%{__python3} PYTHON3=%{__python3} CFLAGS="%{optflags}" -j1 # %{?_smp_mflags} parallel seems broken +%else +%make_build PYTHON2=%{__python2} PYTHON3=%{__python2} CFLAGS="%{optflags}" -j1 # %{?_smp_mflags} parallel seems broken +%endif +popd +%endif %install DESTDIR=%{buildroot} PREFIX="%{_prefix}" LIBDIRARCH=%{_lib} \ INCDIR="%{_includedir}" make install + +# cleanup static libraries find %{buildroot} -name '*.la' -exec rm -f {} ';' -find %{buildroot} -name '*.a' -exec rm -f {} ';' +# find %%{buildroot} -name '*.a' -exec rm -f {} ';' + +# add the manpage +install -d -D %{buildroot}%{_mandir}/man1 +install -p -m 644 -D %{SOURCE1} %{buildroot}%{_mandir}/man1/ + # install python bindings pushd bindings/python %if %{with python2} %py2_install + +# cleanup the install +rm -rf %{buildroot}%{python2_sitelib}/capstone/lib/libcapstone.a +rm -rf %{buildroot}%{python2_sitelib}/capstone/lib/libcapstone.so +rm -rf %{buildroot}%{python2_sitelib}/capstone/include/capstone %endif %if %{with python3} %py3_install +# %%pyproject_install +# %%pyproject_save_files capstone + +# cleanup the install +rm -rf %{buildroot}%{python3_sitelib}/capstone/lib/libcapstone.a +rm -rf %{buildroot}%{python3_sitelib}/capstone/lib/libcapstone.so +rm -rf %{buildroot}%{python3_sitelib}/capstone/include/capstone + %endif popd +%if %{with java} +%ifarch %{java_arches} # install java bindings install -D -p -m 0644 bindings/java/%{name}.jar %{buildroot}/%{_javadir}/%{name}.jar +%endif +%endif + +%if %{with ocaml} +# install ocaml binding +%endif %check -ln -s libcapstone.so.4 libcapstone.so +# ln -s libcapstone.so.5 libcapstone.so make check LD_LIBRARY_PATH="`pwd`" +%if %{with python3} +pushd bindings/python +export LIBCAPSTONE_PATH=%{buildroot}%{_libdir} +%pytest -sv -k "not testcb and not test_cs_disasm_quick" --ignore 'tests/test_sh.py' +popd +%endif + +%if %{with ocaml} +pushd bindings/ocaml +make check LD_LIBRARY_PATH="`pwd`" +popd +%endif + %ldconfig_scriptlets - %files %license LICENSE.TXT LICENSE_LLVM.TXT %doc CREDITS.TXT ChangeLog README.md SPONSORS.TXT %{_libdir}/*.so.* %{_bindir}/cstool - +%{_mandir}/man1/cstool.1* %files devel @@ -211,6 +314,10 @@ make check LD_LIBRARY_PATH="`pwd`" %{_libdir}/pkgconfig/* +%files static +%license LICENSE.TXT LICENSE_LLVM.TXT +%{_libdir}/libcapstone.a + %if %{with python2} %files -n python2-capstone @@ -219,155 +326,25 @@ make check LD_LIBRARY_PATH="`pwd`" %endif - %if %{with python3} +#%%files -n python%%{python3_pkgversion}-capstone -f %%{pyproject_files} %files -n python%{python3_pkgversion}-capstone -%{python3_sitelib}/*egg-info -%{python3_sitelib}/%{name} +%{python3_sitelib}/capstone* %endif - +%if %{with java} +%ifarch %{java_arches} %files java %{_javadir}/ +%endif +%endif + + +%if %{with ocaml} +%files -n ocaml-%{name} +%endif + %changelog -* Wed Jul 21 2021 Fedora Release Engineering - 4.0.2-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Fri Jun 04 2021 Python Maint - 4.0.2-6 -- Rebuilt for Python 3.10 - -* Fri May 14 2021 Michal Ambroz - 4.0.2-5 -- modernize specfile, using with bcond and py*_build macros - -* Tue Jan 26 2021 Fedora Release Engineering - 4.0.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Mon Jul 27 2020 Fedora Release Engineering - 4.0.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 22 2020 Riccardo Schirone - 4.0.2-2 -- Use make_build macro instead of make (thanks to tstellar) - -* Mon Jul 20 2020 Riccardo Schirone - 4.0.2-1 -- Rebase to upstream version 4.0.2 - -* Fri Jul 10 2020 Jiri Vanek - 4.0.1-13 -- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 - -* Tue May 26 2020 Miro Hrončok - 4.0.1-12 -- Rebuilt for Python 3.9 - -* Tue Jan 28 2020 Fedora Release Engineering - 4.0.1-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Tue Jan 21 2020 Kalev Lember - 4.0.1-10 -- Avoid hardcoding /usr prefix - -* Tue Oct 15 2019 Michal Ambroz - 4.0.1-9 -- do not build python2 package for rhel8 - -* Thu Oct 10 2019 Michal Ambroz - 4.0.1-8 -- fix descriptions of sub-packages -- remove buildroot from the build phase - -* Thu Oct 10 2019 Michal Ambroz - 4.0.1-7 -- remove python2 from rawhide/fc32 package - -* Thu Oct 03 2019 Miro Hrončok - 4.0.1-6 -- Rebuilt for Python 3.8.0rc1 (#1748018) - -* Mon Aug 19 2019 Miro Hrončok - 4.0.1-5 -- Rebuilt for Python 3.8 - -* Wed Jul 24 2019 Fedora Release Engineering - 4.0.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jan 31 2019 Fedora Release Engineering - 4.0.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Sat Jan 12 2019 Richard W.M. Jones - 4.0.1-2 -- Add upstream patch which fixes libcapstone.pc - https://github.com/aquynh/capstone/issues/1339 - -* Fri Jan 11 2019 Michal Ambroz - 4.0.1-1 -- bump to 4.0.1 release - -* Mon Aug 27 2018 Michal Ambroz - 3.0.5-1 -- bump to 3.0.5 - -* Thu Jul 12 2018 Fedora Release Engineering - 3.0.4-18 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Mon Jul 02 2018 Miro Hrončok - 3.0.4-17 -- Rebuilt for Python 3.7 - -* Tue Jun 26 2018 Michal Ambroz - 3.0.4-16 -- unify the naming convention for the python packages -- fix the python3 package naming for EPEL7 - -* Tue Jun 19 2018 Miro Hrončok - 3.0.4-15 -- Rebuilt for Python 3.7 - -* Fri Feb 09 2018 Igor Gnatenko - 3.0.4-14 -- Escape macros in %%changelog - -* Wed Feb 07 2018 Fedora Release Engineering - 3.0.4-13 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Sun Aug 20 2017 Zbigniew Jędrzejewski-Szmek - 3.0.4-12 -- Add Provides for the old name without %%_isa - -* Sat Aug 19 2017 Zbigniew Jędrzejewski-Szmek - 3.0.4-11 -- Python 2 binary package renamed to python2-capstone - See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3 - -* Wed Aug 02 2017 Fedora Release Engineering - 3.0.4-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 3.0.4-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Fri Feb 10 2017 Fedora Release Engineering - 3.0.4-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Mon Dec 19 2016 Miro Hrončok - 3.0.4-7 -- Rebuild for Python 3.6 - -* Tue Jul 19 2016 Fedora Release Engineering - 3.0.4-6 -- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages - -* Wed Feb 03 2016 Fedora Release Engineering - 3.0.4-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Tue Oct 27 2015 Stefan Cornelius - 3.0.4-4 -- Really add dist tag this time - -* Sun Oct 25 2015 Stefan Cornelius - 3.0.4-3 -- Fix issues found during package review: dist tag, git sources - -* Thu Jul 16 2015 Stefan Cornelius - 3.0.4-2 -- Fix EPEL6 build problems - -* Wed Jul 15 2015 Stefan Cornelius - 3.0.4-1 -- new version 3.0.4. Includes security fixes. - -* Tue May 12 2015 Stefan Cornelius - 3.0.3-2 -- Addressed issues found during package review. - -* Fri May 08 2015 Stefan Cornelius - 3.0.3-1 -- Update to version 3.0.3 - -* Fri May 08 2015 Stefan Cornelius - 3.0.2-3 -- Added python3 and hardened build support. Update java building. -- Various cleanups. - -* Wed May 06 2015 Stefan Cornelius - 3.0.2-2 -- Update to 3.0.2. Fix 64bit issues. add %%check. - -* Sat Sep 27 2014 Adel Gadllah - 2.1.2-2 -- Addressed issues found during package review. - -* Mon May 19 2014 Adel Gadllah - 2.1.2-1 -- Initial package +%autochangelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..6930d59 --- /dev/null +++ b/changelog @@ -0,0 +1,188 @@ +* Thu Jan 16 2025 Fedora Release Engineering - 5.0.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Wed Jul 31 2024 Michal Ambroz - 5.0.1-6 +- add static subpackage for static building with capstone + +* Wed Jul 17 2024 Fedora Release Engineering - 5.0.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Fri Jun 07 2024 Python Maint - 5.0.1-4 +- Rebuilt for Python 3.13 + +* Tue Jan 23 2024 Fedora Release Engineering - 5.0.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Fedora Release Engineering - 5.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Sep 15 2023 Jonathan Wright - 5.0.1-1 +- Update to 5.0.1 + +* Wed Jul 19 2023 Jonathan Wright - 5.0-1 +- Modernize spec file using pyproject/wheel build + +* Wed Jul 19 2023 Fedora Release Engineering - 4.0.2-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jun 13 2023 Python Maint - 4.0.2-14 +- Rebuilt for Python 3.12 + +* Fri Jan 27 2023 Michal Ambroz - 4.0.2-13 +- update the new github page + +* Wed Jan 18 2023 Fedora Release Engineering - 4.0.2-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Wed Jul 20 2022 Fedora Release Engineering - 4.0.2-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild +- drop java binding for platforms not in %%{java_arches} + +* Mon Jun 13 2022 Python Maint - 4.0.2-10 +- Rebuilt for Python 3.11 + +* Sat Feb 05 2022 Jiri Vanek - 4.0.2-9 +- Rebuilt for java-17-openjdk as system jdk + +* Wed Jan 19 2022 Fedora Release Engineering - 4.0.2-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Wed Jul 21 2021 Fedora Release Engineering - 4.0.2-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Fri Jun 04 2021 Python Maint - 4.0.2-6 +- Rebuilt for Python 3.10 + +* Fri May 14 2021 Michal Ambroz - 4.0.2-5 +- modernize specfile, using with bcond and py*_build macros + +* Tue Jan 26 2021 Fedora Release Engineering - 4.0.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Jul 27 2020 Fedora Release Engineering - 4.0.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jul 22 2020 Riccardo Schirone - 4.0.2-2 +- Use make_build macro instead of make (thanks to tstellar) + +* Mon Jul 20 2020 Riccardo Schirone - 4.0.2-1 +- Rebase to upstream version 4.0.2 + +* Fri Jul 10 2020 Jiri Vanek - 4.0.1-13 +- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 + +* Tue May 26 2020 Miro Hrončok - 4.0.1-12 +- Rebuilt for Python 3.9 + +* Tue Jan 28 2020 Fedora Release Engineering - 4.0.1-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Tue Jan 21 2020 Kalev Lember - 4.0.1-10 +- Avoid hardcoding /usr prefix + +* Tue Oct 15 2019 Michal Ambroz - 4.0.1-9 +- do not build python2 package for rhel8 + +* Thu Oct 10 2019 Michal Ambroz - 4.0.1-8 +- fix descriptions of sub-packages +- remove buildroot from the build phase + +* Thu Oct 10 2019 Michal Ambroz - 4.0.1-7 +- remove python2 from rawhide/fc32 package + +* Thu Oct 03 2019 Miro Hrončok - 4.0.1-6 +- Rebuilt for Python 3.8.0rc1 (#1748018) + +* Mon Aug 19 2019 Miro Hrončok - 4.0.1-5 +- Rebuilt for Python 3.8 + +* Wed Jul 24 2019 Fedora Release Engineering - 4.0.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Jan 31 2019 Fedora Release Engineering - 4.0.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Sat Jan 12 2019 Richard W.M. Jones - 4.0.1-2 +- Add upstream patch which fixes libcapstone.pc + https://github.com/aquynh/capstone/issues/1339 + +* Fri Jan 11 2019 Michal Ambroz - 4.0.1-1 +- bump to 4.0.1 release + +* Mon Aug 27 2018 Michal Ambroz - 3.0.5-1 +- bump to 3.0.5 + +* Thu Jul 12 2018 Fedora Release Engineering - 3.0.4-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Mon Jul 02 2018 Miro Hrončok - 3.0.4-17 +- Rebuilt for Python 3.7 + +* Tue Jun 26 2018 Michal Ambroz - 3.0.4-16 +- unify the naming convention for the python packages +- fix the python3 package naming for EPEL7 + +* Tue Jun 19 2018 Miro Hrončok - 3.0.4-15 +- Rebuilt for Python 3.7 + +* Fri Feb 09 2018 Igor Gnatenko - 3.0.4-14 +- Escape macros in %%changelog + +* Wed Feb 07 2018 Fedora Release Engineering - 3.0.4-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sun Aug 20 2017 Zbigniew Jędrzejewski-Szmek - 3.0.4-12 +- Add Provides for the old name without %%_isa + +* Sat Aug 19 2017 Zbigniew Jędrzejewski-Szmek - 3.0.4-11 +- Python 2 binary package renamed to python2-capstone + See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3 + +* Wed Aug 02 2017 Fedora Release Engineering - 3.0.4-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 3.0.4-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Feb 10 2017 Fedora Release Engineering - 3.0.4-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Mon Dec 19 2016 Miro Hrončok - 3.0.4-7 +- Rebuild for Python 3.6 + +* Tue Jul 19 2016 Fedora Release Engineering - 3.0.4-6 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Wed Feb 03 2016 Fedora Release Engineering - 3.0.4-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Tue Oct 27 2015 Stefan Cornelius - 3.0.4-4 +- Really add dist tag this time + +* Sun Oct 25 2015 Stefan Cornelius - 3.0.4-3 +- Fix issues found during package review: dist tag, git sources + +* Thu Jul 16 2015 Stefan Cornelius - 3.0.4-2 +- Fix EPEL6 build problems + +* Wed Jul 15 2015 Stefan Cornelius - 3.0.4-1 +- new version 3.0.4. Includes security fixes. + +* Tue May 12 2015 Stefan Cornelius - 3.0.3-2 +- Addressed issues found during package review. + +* Fri May 08 2015 Stefan Cornelius - 3.0.3-1 +- Update to version 3.0.3 + +* Fri May 08 2015 Stefan Cornelius - 3.0.2-3 +- Added python3 and hardened build support. Update java building. +- Various cleanups. + +* Wed May 06 2015 Stefan Cornelius - 3.0.2-2 +- Update to 3.0.2. Fix 64bit issues. add %%check. + +* Sat Sep 27 2014 Adel Gadllah - 2.1.2-2 +- Addressed issues found during package review. + +* Mon May 19 2014 Adel Gadllah - 2.1.2-1 +- Initial package diff --git a/cstool.1 b/cstool.1 new file mode 100644 index 0000000..50efef0 --- /dev/null +++ b/cstool.1 @@ -0,0 +1,256 @@ +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3. +.TH CSTOOL "1" "November 2023" "Cstool for Capstone Disassembler Engine v5.0.1" "User Commands" +.SH NAME +Cstool \- manual page for Cstool for Capstone Disassembler Engine +.SH DESCRIPTION +Cstool for Capstone Disassembler Engine +.PP +Syntax: cstool [\-d|\-s|\-u|\-v] [start\-address\-in\-hex\-format] +.SS "The following options are supported:" +.TP +x16 +16\-bit mode (X86) +.TP +x32 +32\-bit mode (X86) +.TP +x64 +64\-bit mode (X86) +.TP +x16att +16\-bit mode (X86), syntax AT&T +.TP +x32att +32\-bit mode (X86), syntax AT&T +.TP +x64att +64\-bit mode (X86), syntax AT&T +.TP +arm +arm +.TP +armbe +arm + big endian +.TP +thumb +thumb mode +.TP +thumbbe +thumb + big endian +.TP +cortexm +thumb + cortex\-m extensions +.TP +armv8 +arm v8 +.TP +thumbv8 +thumb v8 +.TP +armv8be +arm v8 + big endian +.TP +thumbv8be +thumb v8 + big endian +.TP +arm64 +aarch64 mode +.TP +arm64be +aarch64 + big endian +.TP +mips +mips32 + little endian +.TP +mipsbe +mips32 + big endian +.TP +mips64 +mips64 + little endian +.TP +mips64be +mips64 + big endian +.TP +ppc32 +ppc32 + little endian +.TP +ppc32be +ppc32 + big endian +.TP +ppc32qpx +ppc32 + qpx + little endian +.TP +ppc32beqpx +ppc32 + qpx + big endian +.TP +ppc32ps +ppc32 + ps + little endian +.TP +ppc32beps +ppc32 + ps + big endian +.TP +ppc64 +ppc64 + little endian +.TP +ppc64be +ppc64 + big endian +.TP +ppc64qpx +ppc64 + qpx + little endian +.TP +ppc64beqpx +ppc64 + qpx + big endian +.TP +sparc +sparc +.TP +systemz +systemz (s390x) +.TP +xcore +xcore +.TP +m68k +m68k + big endian +.TP +m68k40 +m68k_040 +.TP +tms320c64x +TMS320C64x +.TP +m6800 +M6800/2 +.TP +m6801 +M6801/3 +.TP +m6805 +M6805 +.TP +m6808 +M68HC08 +.TP +m6809 +M6809 +.TP +m6811 +M68HC11 +.TP +cpu12 +M68HC12/HCS12 +.TP +hd6301 +HD6301/3 +.TP +hd6309 +HD6309 +.TP +hcs08 +HCS08 +.TP +evm +Ethereum Virtual Machine +.TP +6502 +MOS 6502 +.TP +65c02 +WDC 65c02 +.TP +w65c02 +WDC w65c02 +.TP +65816 +WDC 65816 (long m/x) +.TP +wasm: +Web Assembly +.TP +bpf +Classic BPF +.TP +bpfbe +Classic BPF + big endian +.TP +ebpf +Extended BPF +.TP +ebpfbe +Extended BPF + big endian +.TP +riscv32 +riscv32 +.TP +riscv64 +riscv64 +.TP +sh +superh SH1 +.TP +sh2 +superh SH2 +.TP +sh2e +superh SH2E +.TP +sh2dsp +superh SH2\-DSP +.TP +sh2a +superh SH2A +.TP +sh2afpu +superh SH2A\-FPU +.TP +sh3 +superh SH3 +.TP +sh3be +superh SH3 big endian +.TP +sh3e +superh SH3E +.TP +sh3ebe +superh SH3E big endian +.TP +sh3\-dsp +superh SH3\-DSP +.TP +sh3\-dspbe +superh SH3\-DSP big endian +.TP +sh4 +superh SH4 +.TP +sh4be +superh SH4 big endian +.TP +sh4a +superh SH4A +.TP +sh4abe +superh SH4A big endian +.TP +sh4al\-dsp +superh SH4AL\-DSP +.IP +sh4al\-dspbe superh SH4AL\-DSP big endian +tc110 tricore V1.1 +tc120 tricore V1.2 +tc130 tricore V1.3 +tc131 tricore V1.3.1 +tc160 tricore V1.6 +tc161 tricore V1.6.1 +tc162 tricore V1.6.2 +.SS "Extra options:" +.HP +\fB\-d\fR show detailed information of the instructions +.HP +\fB\-s\fR decode in SKIPDATA mode +.HP +\fB\-u\fR show immediates as unsigned +.HP +\fB\-v\fR show version & Capstone core build info +.PP diff --git a/sources b/sources index 657d090..4b5fed0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (capstone-4.0.2.tar.gz) = 7f93534517307b737422a8825b66b2a1f3e1cca2049465d60ab12595940154aaf843ba40ed348fce58de58b990c19a0caef289060eb72898cb008a88c470970e +SHA512 (capstone-5.0.6.tar.gz) = d4ed08a2ab4ed8ede51a163e98542129d6441889cf6936ac9e3f8027fb2dfcbb04a7aacba14c2a007e788790bb3939c173b47db3d95f5dd9eafce2f30ff493e1