The package rpms/radare2.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/radare2.git/commit/?id=2c71e4e2e4579... https://src.fedoraproject.org/cgit/rpms/radare2.git/commit/?id=efc9e633aef26....
Change: -ExcludeArch: s390x +ExcludeArch: s390x
Thanks.
Full change: ============
commit 2c71e4e2e4579208800dc16a8a2110cb049bc0d0 Author: Michal Ambroz rebus@seznam.cz Date: Wed Jun 9 22:00:52 2021 +0200
bump to 5.3.0
diff --git a/.gitignore b/.gitignore index 3668516..add1c15 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ /radare2-5.1.1.tar.gz /radare2-5.2.0.tar.gz /radare2-5.2.1.tar.gz +/radare2-5.3.0.tar.gz diff --git a/radare2-5.2.1-meson_rhel8.patch b/radare2-5.2.1-meson_rhel8.patch deleted file mode 100644 index 967d8d3..0000000 --- a/radare2-5.2.1-meson_rhel8.patch +++ /dev/null @@ -1,49 +0,0 @@ -From abb813ebe328c7eb2480d63cbf100d66493cf09a Mon Sep 17 00:00:00 2001 -From: Michal Ambroz 723625+xambroz@users.noreply.github.com -Date: Tue, 11 May 2021 22:55:37 +0200 -Subject: [PATCH] Make meson compatible with older versions (RHEL8 meson 0.49) - -This patch makes it possible to build with older version of meson. -It is needed to build radare2 on RedHat Enterprise Linux 8 where the meson version 0.49 is older than on RHEL7+EPEL7 or Fedora. - -Issues fixed: -- set minimum meson version down to 0.49 (version available in RHEL8) -- meson 0.49 has bug which prevents processing of '' split-lines => build r2_version_number on single line -- on meson 0.49 the ternary operator is not possible to use with some constructs (subdir in add_install_scripts) => replace one ternary operator with if-else construct ---- - meson.build | 13 +++++++------ - 1 file changed, 7 insertions(+), 6 deletions(-) - -diff --git a/meson.build b/meson.build -index 271ebd71af1..0c47a07bcbc 100644 ---- a/meson.build -+++ b/meson.build -@@ -1,4 +1,4 @@ --project('radare2', 'c', license : 'LGPL3', meson_version : '>=0.50.1', version : '5.2.1') -+project('radare2', 'c', license : 'LGPL3', meson_version : '>=0.49', version : '5.2.1') - - py3_exe = import('python').find_installation('python3') - git_exe = find_program('git', required: false) -@@ -10,10 +10,7 @@ vers = r2_version.split('.') - r2_version_major = vers[0].to_int() - r2_version_minor = vers[1].to_int() - r2_version_patch = vers[2].split('-')[0].to_int() --r2_version_number \ -- = (r2_version_major * 10000) \ -- + (r2_version_minor * 100) \ -- + (r2_version_patch) -+r2_version_number = (r2_version_major * 10000) + (r2_version_minor * 100) + (r2_version_patch) - - repo = '.' - if meson.is_subproject() -@@ -709,5 +706,9 @@ if cli_enabled - install_dir: r2_zsh_compdir - ) - -- meson.add_install_script(host_machine.system() == 'windows' ? 'sys/create_r2.bat' : 'sys/create_r2.sh') -+ if host_machine.system() == 'windows' -+ meson.add_install_script('sys/create_r2.bat') -+ else -+ meson.add_install_script('sys/create_r2.sh') -+ endif - endif diff --git a/radare2-5.2.1-xxhash.patch b/radare2-5.2.1-xxhash.patch deleted file mode 100644 index 5be65a4..0000000 --- a/radare2-5.2.1-xxhash.patch +++ /dev/null @@ -1,28 +0,0 @@ -From f5712f01740e2d729547786b2a869fdd23b430bd Mon Sep 17 00:00:00 2001 -From: Michal Ambroz 723625+xambroz@users.noreply.github.com -Date: Tue, 11 May 2021 22:35:27 +0200 -Subject: [PATCH] Improve the xxhash system library detection - -The pkgconfig module is named libxxhash on Debian/Fedora/RedHat/SuSE/Arch so I added libxxhash on first place. -Keeping the xxhash checked second. ---- - meson.build | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/meson.build b/meson.build -index 271ebd71af1..1093598229e 100644 ---- a/meson.build -+++ b/meson.build -@@ -237,8 +237,11 @@ if sys_magic.found() and get_option('use_sys_magic') - endif - - # handle xxhash library --sys_xxhash = dependency('xxhash', required: false) -+sys_xxhash = dependency('libxxhash', required: false) - use_sys_xxhash = false -+if not sys_xxhash.found() -+ sys_xxhash = dependency('xxhash', required: false) -+endif - if not sys_xxhash.found() - sys_xxhash = cc.find_library('xxhash', required: false) - endif diff --git a/radare2.rpmlintrc b/radare2.rpmlintrc new file mode 100644 index 0000000..bcf112a --- /dev/null +++ b/radare2.rpmlintrc @@ -0,0 +1,8 @@ +from Config import addFilter + + +# radare2.src: W: spelling-error %description -l en_US scriptable -> scrip table, scrip-table, script able +addFilter('radare2.*: spelling-error.*scriptable') + +# radare2.src: W: spelling-error %description -l en_US opcode -> op code, op-code, code +addFilter('radare2.*: spelling-error.*opcode') diff --git a/radare2.spec b/radare2.spec index f434be5..06da506 100644 --- a/radare2.spec +++ b/radare2.spec @@ -1,16 +1,17 @@ Name: radare2 Summary: The reverse engineering framework -Version: 5.2.1 -%global rel 2 +Version: 5.3.0 +%global rel 1 URL: https://radare.org/ VCS: https://github.com/radareorg/radare2 +# https://github.com/radareorg/radare2/releases
-%if 0%{?rhel} && 0%{?rhel} == 8 +# %%if 0%%{?rhel} && 0i%%{?rhel} == 8 # Radare2 fails to build on EPEL8+s390x # https://bugzilla.redhat.com/show_bug.cgi?id=1960046 # https://docs.fedoraproject.org/en-US/packaging-guidelines/#_architecture_bui... -ExcludeArch: s390x -%endif +# ExcludeArch: s390x +# %%endif
# by default it builds from the released version of radare2 @@ -20,8 +21,8 @@ ExcludeArch: s390x %global gituser radareorg %global gitname radare2
-%global gitdate 20210411 -%global commit cf3db945083fb4dab951874e5ec1283128deab11 +%global gitdate 20210601 +%global commit ee753c25094c6e1c62dfb9596423824251dbc943 %global shortcommit %(c=%{commit}; echo ${c:0:7})
@@ -33,12 +34,6 @@ Release: 0.%{rel}.%{gitdate}git%{shortcommit}%{?dist} Source0: https://github.com/%%7Bgituser%7D/%%7Bgitname%7D/archive/%%7Bcommit%7D/%%7Bn... %endif
-# make it possible to use older version of messon - needed for EPEL8 which has older version than EPEL7 -Patch0: https://github.com/radareorg/radare2/pull/18684.patch#/radare2-5.2.1-meson_r... - -# improve the detection of the system xxhash. pkgconfig module name is libxxhash not xhash -Patch1: https://github.com/radareorg/radare2/pull/18683.patch#/radare2-5.2.1-xxhash.... -
License: LGPLv3+ and GPLv2+ and BSD and MIT and ASL 2.0 and MPLv2.0 and zlib # Radare2 as a package is targeting to be licensed/compiled as LGPLv3+ @@ -222,8 +217,6 @@ rm -rf shlr/zip shlr/lz4 # Remove xxhash files because we use system dependencies rm -f libr/hash/xxhash.c libr/hash/xxhash.h
- - # Webui contains pre-build and/or minimized versions of JS libraries without source code # Consider installing the web-interface from https://github.com/radare/radare2-webui rm -rf ./shlr/www/* @@ -239,7 +232,6 @@ sed -i -e "s|meson_version : '>=......'|meson_version : '>=0.49.1'|;" meson.buil %endif
- %build # Whereever possible use the system-wide libraries instead of bundles %meson \ @@ -258,6 +250,7 @@ sed -i -e "s|meson_version : '>=......'|meson_version : '>=0.49.1'|;" meson.buil -Denable_r2r=false %meson_build
+ %install %meson_install # install README.Fedora for the www part @@ -266,16 +259,21 @@ cp ./shlr/www/README.Fedora %{buildroot}/%{_datadir}/%{name}/%{version}/www/READ # remove unneeded fortunes rm %{buildroot}/%{_datadir}/doc/%{name}/fortunes.fun
+# Make directory for the plugins +# Users can learn the dirname by "r2 -H" +mkdir -p %{buildroot}%{_libdir}/%{name}/%{version} + + %if 0%{?rhel} && 0%{?rhel} <= 8 %ldconfig_scriptlets %endif
+ %check # Do not run the testsuite yet - it pulls another package # https://github.com/radare/radare2-regressions from github make tests
- %files %license COPYING COPYING.LESSER %doc CONTRIBUTING.md DEVELOPERS.md README.md @@ -289,6 +287,8 @@ rm %{buildroot}/%{_datadir}/doc/%{name}/fortunes.fun %doc %{_datadir}/%{name}/%{version}/www/README.Fedora %{_bindir}/r* %{_libdir}/libr_*.so.%{version}* +# Empty directory for plugins +%{_libdir}/%{name} %{_mandir}/man1/r*.1.* %{_mandir}/man7/esil.7.* %{_datadir}/zsh/site-functions/_r* @@ -316,6 +316,15 @@ rm %{buildroot}/%{_datadir}/doc/%{name}/fortunes.fun
%changelog +* Wed Jun 09 2021 Michal Ambroz <rebus at, seznam.cz> 5.3.0-1 +- re-enable build for s390x on EPEL8 (libuv should be available for 8.4) +- bump to 5.3.0 +- remove radare2-5.2.1-meson_rhel8.patch - accepted upstream +- remove radare2-5.2.1-xxhash.patch - accepted upstream + +* Sat May 15 2021 Michal Ambroz <rebus at, seznam.cz> 5.2.1-3 +- adding the global plugins directory - for example /usr/lib64/radare2/5.2.1 + * Tue May 11 2021 Michal Ambroz <rebus at, seznam.cz> 5.2.1-2 - patch for older version of meson used on EPEL8 - use pkgconfig where possible for BR diff --git a/sources b/sources index dc25127..c7bee1d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (radare2-5.2.1.tar.gz) = c744f5c8fff163022a7a9a913fe34dfa0dee0d9ab3b18bd4cc038c2d487dbfeba2f1523aa12a3166a2c22c45bcc71e802fae101b72fc2e6adab96b522c0de17b +SHA512 (radare2-5.3.0.tar.gz) = f9d5ffd6f39efdcd447c2bc65ad3129576292a11942c99da8d0c10217621a6d1db72baaf7badadcbbaf75c54be0439a9257de4f56d47cefdce457ffb08167ff8
commit efc9e633aef26832e5cfd047b55fb964455ad678 Author: Michal Ambroz rebus@seznam.cz Date: Wed May 12 23:39:34 2021 +0200
ExcludeArch for EPEL8 + s390x
diff --git a/radare2.spec b/radare2.spec index a7b1445..f434be5 100644 --- a/radare2.spec +++ b/radare2.spec @@ -5,6 +5,14 @@ Version: 5.2.1 URL: https://radare.org/ VCS: https://github.com/radareorg/radare2
+%if 0%{?rhel} && 0%{?rhel} == 8 +# Radare2 fails to build on EPEL8+s390x +# https://bugzilla.redhat.com/show_bug.cgi?id=1960046 +# https://docs.fedoraproject.org/en-US/packaging-guidelines/#_architecture_bui... +ExcludeArch: s390x +%endif + + # by default it builds from the released version of radare2 # to build from git use rpmbuild --without=releasetag %bcond_without releasetag @@ -312,6 +320,7 @@ rm %{buildroot}/%{_datadir}/doc/%{name}/fortunes.fun - patch for older version of meson used on EPEL8 - use pkgconfig where possible for BR - use ldconfig_scriptlets only on older platforms +- add ExcludeArch for s390x on EPEL8
* Thu Apr 22 2021 Henrik Nordstrom henrik@henriknordstrom.net - 5.2.1-1 - Update to version 5.2.1
commit 224fff17dcec05f722c0af866a7edf4b233c33e1 Author: Michal Ambroz rebus@seznam.cz Date: Wed May 12 00:52:15 2021 +0200
allow build with older meson version 0.49 as used in EPEL8/RHEL8
diff --git a/radare2-5.2.1-meson_rhel8.patch b/radare2-5.2.1-meson_rhel8.patch new file mode 100644 index 0000000..967d8d3 --- /dev/null +++ b/radare2-5.2.1-meson_rhel8.patch @@ -0,0 +1,49 @@ +From abb813ebe328c7eb2480d63cbf100d66493cf09a Mon Sep 17 00:00:00 2001 +From: Michal Ambroz 723625+xambroz@users.noreply.github.com +Date: Tue, 11 May 2021 22:55:37 +0200 +Subject: [PATCH] Make meson compatible with older versions (RHEL8 meson 0.49) + +This patch makes it possible to build with older version of meson. +It is needed to build radare2 on RedHat Enterprise Linux 8 where the meson version 0.49 is older than on RHEL7+EPEL7 or Fedora. + +Issues fixed: +- set minimum meson version down to 0.49 (version available in RHEL8) +- meson 0.49 has bug which prevents processing of '' split-lines => build r2_version_number on single line +- on meson 0.49 the ternary operator is not possible to use with some constructs (subdir in add_install_scripts) => replace one ternary operator with if-else construct +--- + meson.build | 13 +++++++------ + 1 file changed, 7 insertions(+), 6 deletions(-) + +diff --git a/meson.build b/meson.build +index 271ebd71af1..0c47a07bcbc 100644 +--- a/meson.build ++++ b/meson.build +@@ -1,4 +1,4 @@ +-project('radare2', 'c', license : 'LGPL3', meson_version : '>=0.50.1', version : '5.2.1') ++project('radare2', 'c', license : 'LGPL3', meson_version : '>=0.49', version : '5.2.1') + + py3_exe = import('python').find_installation('python3') + git_exe = find_program('git', required: false) +@@ -10,10 +10,7 @@ vers = r2_version.split('.') + r2_version_major = vers[0].to_int() + r2_version_minor = vers[1].to_int() + r2_version_patch = vers[2].split('-')[0].to_int() +-r2_version_number \ +- = (r2_version_major * 10000) \ +- + (r2_version_minor * 100) \ +- + (r2_version_patch) ++r2_version_number = (r2_version_major * 10000) + (r2_version_minor * 100) + (r2_version_patch) + + repo = '.' + if meson.is_subproject() +@@ -709,5 +706,9 @@ if cli_enabled + install_dir: r2_zsh_compdir + ) + +- meson.add_install_script(host_machine.system() == 'windows' ? 'sys/create_r2.bat' : 'sys/create_r2.sh') ++ if host_machine.system() == 'windows' ++ meson.add_install_script('sys/create_r2.bat') ++ else ++ meson.add_install_script('sys/create_r2.sh') ++ endif + endif diff --git a/radare2-5.2.1-xxhash.patch b/radare2-5.2.1-xxhash.patch new file mode 100644 index 0000000..5be65a4 --- /dev/null +++ b/radare2-5.2.1-xxhash.patch @@ -0,0 +1,28 @@ +From f5712f01740e2d729547786b2a869fdd23b430bd Mon Sep 17 00:00:00 2001 +From: Michal Ambroz 723625+xambroz@users.noreply.github.com +Date: Tue, 11 May 2021 22:35:27 +0200 +Subject: [PATCH] Improve the xxhash system library detection + +The pkgconfig module is named libxxhash on Debian/Fedora/RedHat/SuSE/Arch so I added libxxhash on first place. +Keeping the xxhash checked second. +--- + meson.build | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 271ebd71af1..1093598229e 100644 +--- a/meson.build ++++ b/meson.build +@@ -237,8 +237,11 @@ if sys_magic.found() and get_option('use_sys_magic') + endif + + # handle xxhash library +-sys_xxhash = dependency('xxhash', required: false) ++sys_xxhash = dependency('libxxhash', required: false) + use_sys_xxhash = false ++if not sys_xxhash.found() ++ sys_xxhash = dependency('xxhash', required: false) ++endif + if not sys_xxhash.found() + sys_xxhash = cc.find_library('xxhash', required: false) + endif diff --git a/radare2.spec b/radare2.spec index 8be01bf..a7b1445 100644 --- a/radare2.spec +++ b/radare2.spec @@ -1,7 +1,7 @@ Name: radare2 Summary: The reverse engineering framework Version: 5.2.1 -%global rel 1 +%global rel 2 URL: https://radare.org/ VCS: https://github.com/radareorg/radare2
@@ -25,6 +25,13 @@ Release: 0.%{rel}.%{gitdate}git%{shortcommit}%{?dist} Source0: https://github.com/%%7Bgituser%7D/%%7Bgitname%7D/archive/%%7Bcommit%7D/%%7Bn... %endif
+# make it possible to use older version of messon - needed for EPEL8 which has older version than EPEL7 +Patch0: https://github.com/radareorg/radare2/pull/18684.patch#/radare2-5.2.1-meson_r... + +# improve the detection of the system xxhash. pkgconfig module name is libxxhash not xhash +Patch1: https://github.com/radareorg/radare2/pull/18683.patch#/radare2-5.2.1-xxhash.... + + License: LGPLv3+ and GPLv2+ and BSD and MIT and ASL 2.0 and MPLv2.0 and zlib # Radare2 as a package is targeting to be licensed/compiled as LGPLv3+ # during build for Fedora the GPL code is not omitted so effectively it is GPLv2+ @@ -65,26 +72,31 @@ BuildRequires: sed BuildRequires: gcc BuildRequires: meson BuildRequires: ninja-build -BuildRequires: file-devel -BuildRequires: xxhash-devel BuildRequires: pkgconfig +# xxhash-devel +BuildRequires: pkgconfig(libxxhash) +BuildRequires: pkgconfig(libzip) +BuildRequires: pkgconfig(zlib) +BuildRequires: pkgconfig(liblz4) +BuildRequires: pkgconfig(capstone) >= 3.0.4 +BuildRequires: pkgconfig(libuv) +BuildRequires: pkgconfig(openssl)
%if 0%{?rhel} +BuildRequires: file-devel BuildRequires: bzip2-devel BuildRequires: python3 # %%meson macro using the %%set_build_flags from Fedora/EPEL, but not bringing the dependency # https://src.fedoraproject.org/rpms/meson/pull-request/9 BuildRequires: epel-rpm-macros +# On RHEL xxhash-devel is not bringing the xxhash as dependency +BuildRequires: xxhash
%else +# file-devel +BuildRequires: pkgconfig(libmagic) BuildRequires: pkgconfig(bzip2) %endif -BuildRequires: pkgconfig(libzip) -BuildRequires: pkgconfig(zlib) -BuildRequires: pkgconfig(liblz4) -BuildRequires: pkgconfig(capstone) >= 3.0.4 -BuildRequires: pkgconfig(libuv) -BuildRequires: pkgconfig(openssl)
Requires: %{name}-common = %{version}-%{release}
@@ -199,6 +211,10 @@ sed -i -e "s|%{version}-git|%{version}|g;" configure configure.acr %endif # Removing zip/lzip and lz4 files because we use system dependencies rm -rf shlr/zip shlr/lz4 +# Remove xxhash files because we use system dependencies +rm -f libr/hash/xxhash.c libr/hash/xxhash.h + +
# Webui contains pre-build and/or minimized versions of JS libraries without source code # Consider installing the web-interface from https://github.com/radare/radare2-webui @@ -242,8 +258,9 @@ cp ./shlr/www/README.Fedora %{buildroot}/%{_datadir}/%{name}/%{version}/www/READ # remove unneeded fortunes rm %{buildroot}/%{_datadir}/doc/%{name}/fortunes.fun
+%if 0%{?rhel} && 0%{?rhel} <= 8 %ldconfig_scriptlets - +%endif
%check # Do not run the testsuite yet - it pulls another package @@ -252,6 +269,7 @@ rm %{buildroot}/%{_datadir}/doc/%{name}/fortunes.fun
%files +%license COPYING COPYING.LESSER %doc CONTRIBUTING.md DEVELOPERS.md README.md %doc doc/3D/ doc/node.js/ doc/pdb/ doc/sandbox/ %doc doc/avr.md doc/brainfuck.md doc/calling-conventions.md doc/debug.md @@ -261,7 +279,6 @@ rm %{buildroot}/%{_datadir}/doc/%{name}/fortunes.fun %dir %{_datadir}/%{name}/%{version}/www # Webui removed cuz of having minified js code and missing source code %doc %{_datadir}/%{name}/%{version}/www/README.Fedora -%license COPYING COPYING.LESSER %{_bindir}/r* %{_libdir}/libr_*.so.%{version}* %{_mandir}/man1/r*.1.* @@ -291,6 +308,11 @@ rm %{buildroot}/%{_datadir}/doc/%{name}/fortunes.fun
%changelog +* Tue May 11 2021 Michal Ambroz <rebus at, seznam.cz> 5.2.1-2 +- patch for older version of meson used on EPEL8 +- use pkgconfig where possible for BR +- use ldconfig_scriptlets only on older platforms + * Thu Apr 22 2021 Henrik Nordstrom henrik@henriknordstrom.net - 5.2.1-1 - Update to version 5.2.1