|
|
@@ -0,0 +1,228 @@ |
|
|
SUMMARY="A fork of the radare2 reverse engineering framework" |
|
|
DESCRIPTION="Rizin is a fork of the radare2 reverse engineering framework with a focus on \ |
|
|
usability, working features and code cleanliness. |
|
|
|
|
|
Rizin is portable and it can be used to analyze binaries, disassemble code, debug programs, as a \ |
|
|
forensics tool, as a scriptable command-line hexadecimal editor able to open disk files, and much \ |
|
|
more!" |
|
|
HOMEPAGE="https://github.com/rizinorg/rizin" |
|
|
COPYRIGHT="2022 RizinOrg et all" |
|
|
LICENSE="Apache v2 |
|
|
CC-BY-SA-4.0 |
|
|
CC0 1.0 |
|
|
BSD (3-clause) |
|
|
GNU LGPL v3 |
|
|
MIT |
|
|
MPL v1.1 |
|
|
NCSA |
|
|
RSA-MD" |
|
|
REVISION="1" |
|
|
SOURCE_URI="https://github.com/rizinorg/rizin/archive/refs/tags/v$portVersion.tar.gz" |
|
|
CHECKSUM_SHA256="e823d7ce9ffdb81e00fe8d9faeb70b63aa8211f6695c6b524abdb6fc03df1a08" |
|
|
SOURCE_FILENAME="rizin-v$portVersion.tar.gz" |
|
|
|
|
|
ARCHITECTURES="all !x86_gcc2" |
|
|
SECONDARY_ARCHITECTURES="x86" |
|
|
|
|
|
commandBinDir=$binDir |
|
|
commandSuffix=$secondaryArchSuffix |
|
|
if [ "$targetArchitecture" = x86_gcc2 ]; then |
|
|
commandSuffix= |
|
|
commandBinDir=$prefix/bin |
|
|
fi |
|
|
|
|
|
libVersion="$portVersion" |
|
|
libVersionCompat="$libVersion compat >= ${libVersion%.*}" |
|
|
|
|
|
PROVIDES=" |
|
|
rizin$secondaryArchSuffix = $portVersion |
|
|
cmd:rizin$commandSuffix |
|
|
cmd:rz_agent$commandSuffix |
|
|
cmd:rz_asm$commandSuffix |
|
|
cmd:rz_ax$commandSuffix |
|
|
cmd:rz_bin$commandSuffix |
|
|
cmd:rz_diff$commandSuffix |
|
|
cmd:rz_find$commandSuffix |
|
|
cmd:rz_gg$commandSuffix |
|
|
cmd:rz_hash$commandSuffix |
|
|
cmd:rz_pm$commandSuffix |
|
|
cmd:rz_run$commandSuffix |
|
|
cmd:rz_sign$commandSuffix |
|
|
cmd:rz_test$commandSuffix |
|
|
lib:librz_analysis$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_asm$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_bin$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_bp$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_config$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_cons$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_core$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_crypto$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_debug$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_demangler$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_diff$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_egg$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_flag$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_hash$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_il$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_io$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_lang$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_magic$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_main$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_parse$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_reg$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_search$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_sign$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_socket$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_syscall$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_type$secondaryArchSuffix = $libVersionCompat |
|
|
lib:librz_util$secondaryArchSuffix = $libVersionCompat |
|
|
" |
|
|
REQUIRES=" |
|
|
haiku$secondaryArchSuffix |
|
|
lib:libcapstone$secondaryArchSuffix |
|
|
lib:libbz2$secondaryArchSuffix |
|
|
lib:libexecinfo$secondaryArchSuffix |
|
|
lib:liblz4$secondaryArchSuffix |
|
|
lib:liblzma$secondaryArchSuffix |
|
|
lib:libmagic$secondaryArchSuffix |
|
|
lib:libpython3.7m$secondaryArchSuffix |
|
|
lib:libssl$secondaryArchSuffix |
|
|
lib:libtree_sitter$secondaryArchSuffix |
|
|
lib:libuv$secondaryArchSuffix |
|
|
lib:libxxhash$secondaryArchSuffix |
|
|
lib:libz$secondaryArchSuffix |
|
|
lib:libzip$secondaryArchSuffix |
|
|
" |
|
|
|
|
|
PROVIDES_devel=" |
|
|
rizin${secondaryArchSuffix}_devel = $portVersion |
|
|
devel:librz_analysis$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_asm$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_bin$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_bp$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_config$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_cons$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_core$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_crypto$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_debug$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_demangler$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_diff$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_egg$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_flag$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_hash$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_il$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_io$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_lang$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_magic$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_main$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_parse$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_reg$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_search$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_sign$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_socket$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_syscall$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_type$secondaryArchSuffix = $libVersionCompat |
|
|
devel:librz_util$secondaryArchSuffix = $libVersionCompat |
|
|
" |
|
|
REQUIRES_devel=" |
|
|
rizin$secondaryArchSuffix == $portVersion base |
|
|
" |
|
|
|
|
|
BUILD_REQUIRES=" |
|
|
haiku${secondaryArchSuffix}_devel |
|
|
pyyaml_python3 |
|
|
devel:libcapstone$secondaryArchSuffix |
|
|
devel:libbz2$secondaryArchSuffix |
|
|
devel:libexecinfo$secondaryArchSuffix |
|
|
devel:liblz4$secondaryArchSuffix |
|
|
devel:liblzma$secondaryArchSuffix |
|
|
devel:libmagic$secondaryArchSuffix |
|
|
devel:libpython3.7m$secondaryArchSuffix |
|
|
devel:libssl$secondaryArchSuffix |
|
|
devel:libtree_sitter$secondaryArchSuffix |
|
|
devel:libuv$secondaryArchSuffix |
|
|
devel:libxxhash$secondaryArchSuffix |
|
|
devel:libz$secondaryArchSuffix |
|
|
devel:libzip$secondaryArchSuffix |
|
|
" |
|
|
BUILD_PREREQUIRES=" |
|
|
cmd:cmake |
|
|
cmd:git |
|
|
cmd:make |
|
|
cmd:meson |
|
|
cmd:ninja |
|
|
cmd:gcc$secondaryArchSuffix |
|
|
cmd:pkg_config$secondaryArchSuffix |
|
|
cmd:python3 |
|
|
cmd:tree_sitter |
|
|
cmd:xxhsum |
|
|
" |
|
|
|
|
|
BUILD() |
|
|
{ |
|
|
meson build \ |
|
|
--buildtype=release \ |
|
|
--wrap=default \ |
|
|
--prefix=$prefix \ |
|
|
--bindir=$commandBinDir \ |
|
|
--datadir=$dataDir \ |
|
|
--libdir=$libDir \ |
|
|
--includedir=$includeDir \ |
|
|
--mandir=$manDir \ |
|
|
-D use_sys_capstone=enabled \ |
|
|
-D use_sys_magic=enabled \ |
|
|
-D use_sys_libzip=enabled \ |
|
|
-D use_sys_zlib=enabled \ |
|
|
-D use_sys_lz4=enabled \ |
|
|
-D use_sys_xxhash=enabled \ |
|
|
-D use_sys_openssl=enabled \ |
|
|
-D use_sys_tree_sitter=enabled \ |
|
|
-D enable_tests=false \ |
|
|
-D enable_rz_test=false |
|
|
ninja -C build |
|
|
} |
|
|
|
|
|
INSTALL() |
|
|
{ |
|
|
ninja -C build install |
|
|
|
|
|
prepareInstalledDevelLibs \ |
|
|
librz_analysis \ |
|
|
librz_asm \ |
|
|
librz_bin \ |
|
|
librz_bp \ |
|
|
librz_config \ |
|
|
librz_cons \ |
|
|
librz_core \ |
|
|
librz_crypto \ |
|
|
librz_debug \ |
|
|
librz_demangler \ |
|
|
librz_diff \ |
|
|
librz_egg \ |
|
|
librz_flag \ |
|
|
librz_hash \ |
|
|
librz_il \ |
|
|
librz_io \ |
|
|
librz_lang \ |
|
|
librz_magic \ |
|
|
librz_main \ |
|
|
librz_parse \ |
|
|
librz_reg \ |
|
|
librz_search \ |
|
|
librz_sign \ |
|
|
librz_socket \ |
|
|
librz_syscall \ |
|
|
librz_type \ |
|
|
librz_util |
|
|
fixPkgconfig |
|
|
|
|
|
packageEntries devel \ |
|
|
$developDir |
|
|
} |
|
|
|
|
|
TEST() |
|
|
{ |
|
|
#some test will fail, so far 3 tests crash also |
|
|
#export PATH=$PATH/$sourceDir/build/binrz/rizzin |
|
|
meson test --no-rebuild -v -C build |
|
|
} |