mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-29 11:38:52 +02:00
352 lines
11 KiB
Bash
352 lines
11 KiB
Bash
SUMMARY="UNIX-like reverse engineering framework and commandline tools"
|
|
DESCRIPTION="Forensics tool, scriptable commandline hexadecimal editor, \
|
|
able to open disk files, analyzing binaries in several common and less common \
|
|
formats, disassemble code for several CPU architectures, debug programs, \
|
|
attach to remote GDB servers, and much more."
|
|
HOMEPAGE="https://radare.org/"
|
|
COPYRIGHT="2007-2025 pancake
|
|
2007-2015 Skia
|
|
2012-2015 pof
|
|
2008-2015 nibble
|
|
2007-2015 ret2libc
|
|
2009-2016 defragger
|
|
2005-2006 Matt Mackall
|
|
2009-2015 earada
|
|
2009-2015 Jody Frankowski
|
|
2009-2015 Anton Kochkov
|
|
2011-2015 RoValles
|
|
2009-2015 dso
|
|
2013-2016 condret
|
|
2012-2015 Fedor Sakharov
|
|
2012-2015 Bhootravi
|
|
2013-2015 th0rpe
|
|
2015 julien (jvoisin) voisin
|
|
2014-2015 jn
|
|
2009-2015 montekki
|
|
2009-2015 ninjahacker
|
|
2015 riq
|
|
2015 qnix
|
|
2015 danielps
|
|
2015 dkreuter
|
|
2015 ampotos
|
|
2008 Anant Narayanan
|
|
2008-2015 inisider
|
|
2015 nodepad
|
|
2008-2013 xvilka
|
|
2013-2015 sghctoma
|
|
2013-2014 batchdrake
|
|
2010-2015 Adam Pridgen
|
|
2010-2013 eloi
|
|
2014 jfrankowski
|
|
2009-2015 The Lemon Man
|
|
2013-2015 fenugrec
|
|
2004 Philippe Biondi
|
|
2015 aaronpuchert
|
|
2010-2015 dark_k3y
|
|
2015 Felix Held
|
|
2012-2013 Alexander
|
|
2014 Jonathan Neuschöfer
|
|
2016 bobby.smiles
|
|
2015-2016 oddcoder
|
|
2009-2016 Alexandru Caciulescu
|
|
2015-2016 javierprtd
|
|
2016 SkUaTeR
|
|
2009-2016 madprogrammer
|
|
2016 moritz
|
|
2016 n4x0r
|
|
2016 soez
|
|
2013 Daniel Holden
|
|
2010 Bean Lee
|
|
2014-2016 defragger
|
|
2014-2016 madprogrammer
|
|
1986-2016 Free Software Foundation, Inc.
|
|
2005 QNX Software Systems.
|
|
2001-2004 Fabrice Bellard
|
|
2009 Intel Corporation
|
|
1988-2004 Keith Packard
|
|
1988-2004 Bart Massey
|
|
2007-2015 dso
|
|
2002-2013 Vivek Thampi
|
|
1999-2013 Dieter Baron and Thomas Klausner
|
|
1995-2013 Jean-loup Gailly
|
|
2012 Alexander Demin
|
|
2005 Jan Wilmans
|
|
2002-2009 Bas Wijnen
|
|
2014-2016 condret
|
|
2016 unlogic
|
|
2012 Karl Hobley
|
|
2007 Vanya A. Sergeev
|
|
2007-2012 Synopsys Inc
|
|
1994-1995 Myricom, Inc.
|
|
1986-1995 Ian F. Darwin
|
|
2003 Christos Zoulas
|
|
1992-1994 Henry Spencer
|
|
2011 Remy Oukaour
|
|
2000-2001 Markus Friedl
|
|
2008 Nadia Heninger
|
|
2008 J. Alex Halderman
|
|
2003-2010 University of Illinois at Urbana-Champaign
|
|
1987-1994 The Regents of the University of California
|
|
2000-2001 Aaron D. Gifford
|
|
1991-1992 RSA Data Security, Inc.
|
|
2012 Yann Collet
|
|
1995-1999 Cryptography Research, Inc. All
|
|
1997-1998 Andrew Tridgell
|
|
2002-2003 Steve French
|
|
2010-2016 Sebastian Reichel"
|
|
LICENSE="GNU GPL v3
|
|
GNU LGPL v3"
|
|
REVISION="1"
|
|
SOURCE_URI="https://github.com/radare/radare2/archive/$portVersion.tar.gz"
|
|
CHECKSUM_SHA256="f0677266eeb505bec4df12961cbb2adb92cf8202ff3dab05690bcb24c4bf5c52"
|
|
SOURCE_FILENAME="radare2-$portVersion.tar.gz"
|
|
sdbVer="2.4.2"
|
|
SOURCE_URI_2="https://github.com/radareorg/sdb/archive/refs/tags/$sdbVer.tar.gz"
|
|
CHECKSUM_SHA256_2="4b5c1c387307759aeeb76704d130a9bbe98bf68ae7bbab796efeb052e5e25e47"
|
|
SOURCE_FILENAME_2="sdb-$sdbVer.tar.gz"
|
|
SOURCE_DIR_2="sdb-$sdbVer"
|
|
srcGitRev_3="3087a2ce5bcb66cc1fcd9f34d3e5ce3bd43a67d9"
|
|
SOURCE_URI_3="https://github.com/quickjs-ng/quickjs/archive/$srcGitRev_3.tar.gz"
|
|
CHECKSUM_SHA256_3="875ade015fdc7660bec9547f973efc04b6a6dbfa8d7c72a9c1af6798319dfabb"
|
|
SOURCE_FILENAME_3="quickjs-$srcGitRev_3.tar.gz"
|
|
SOURCE_DIR_3="quickjs-$srcGitRev_3"
|
|
#srcGitRev_4="347a0a50a28beed1d6fb7a9279bcf79796d8e005"
|
|
#SOURCE_URI_4="https://github.com/radareorg/radare2-testbins/archive/$srcGitRev_4.tar.gz"
|
|
#CHECKSUM_SHA256_4="6eb6ca01864e3b5ab0a290c3ed940c837398dedb68c45755a3326cefde338cf6"
|
|
#SOURCE_DIR_4="radare2-testbins-$srcGitRev_4"
|
|
|
|
ARCHITECTURES="all !x86_gcc2"
|
|
SECONDARY_ARCHITECTURES="x86"
|
|
|
|
commandBinDir=$binDir
|
|
commandSuffix=$secondaryArchSuffix
|
|
if [ "$targetArchitecture" = x86_gcc2 ]; then
|
|
commandBinDir=$prefix/bin
|
|
commandSuffix=
|
|
fi
|
|
|
|
libVersion="$portVersion"
|
|
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
|
|
|
|
PROVIDES="
|
|
radare2$secondaryArchSuffix = $portVersion
|
|
cmd:r2$commandSuffix = $portVersion
|
|
cmd:r2agent$commandSuffix = $portVersion
|
|
cmd:r2p$commandSuffix = $portVersion
|
|
cmd:r2pm$commandSuffix = $portVersion
|
|
cmd:r2pm.sh$commandSuffix = $portVersion
|
|
cmd:r2r$commandSuffix = $portVersion
|
|
cmd:rabin2$commandSuffix = $portVersion
|
|
cmd:radare2$commandSuffix = $portVersion
|
|
cmd:radiff2$commandSuffix = $portVersion
|
|
cmd:rafind2$commandSuffix = $portVersion
|
|
cmd:rafs2$commandSuffix = $portVersion
|
|
cmd:ragg2$commandSuffix = $portVersion
|
|
cmd:ragg2_cc$commandSuffix = $portVersion
|
|
cmd:rahash2$commandSuffix = $portVersion
|
|
cmd:rasign2$commandSuffix = $portVersion
|
|
cmd:rarun2$commandSuffix = $portVersion
|
|
cmd:rasm2$commandSuffix = $portVersion
|
|
cmd:ravc2$commandSuffix = $portVersion
|
|
cmd:rax2$commandSuffix = $portVersion
|
|
cmd:r2sdb$commandSuffix = $sdbVer
|
|
cmd:rapatch2$commandSuffix = $sdbVer
|
|
lib:libr_anal$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_arch$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_asm$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_bin$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_bp$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_config$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_cons$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_core$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_debug$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_egg$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_esil$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_flag$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_fs$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_io$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_lang$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_magic$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_main$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_muta$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_reg$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_search$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_socket$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_syscall$secondaryArchSuffix = $libVersionCompat
|
|
lib:libr_util$secondaryArchSuffix = $libVersionCompat
|
|
lib:libsdb$secondaryArchSuffix = $sdbVer
|
|
"
|
|
REQUIRES="
|
|
haiku$secondaryArchSuffix
|
|
lib:libcapstone$secondaryArchSuffix
|
|
lib:libexecinfo$secondaryArchSuffix
|
|
lib:liblz4$secondaryArchSuffix
|
|
lib:libgmp$secondaryArchSuffix
|
|
lib:libmagic$secondaryArchSuffix
|
|
lib:libxxhash$secondaryArchSuffix
|
|
lib:libz$secondaryArchSuffix
|
|
lib:libzip$secondaryArchSuffix
|
|
"
|
|
|
|
PROVIDES_devel="
|
|
radare2${secondaryArchSuffix}_devel = $portVersion
|
|
devel:libr_anal$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_arch$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_asm$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_bin$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_bp$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_config$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_cons$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_core$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_debug$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_egg$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_esil$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_flag$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_fs$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_io$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_lang$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_magic$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_main$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_muta$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_reg$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_search$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_socket$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_syscall$secondaryArchSuffix = $libVersionCompat
|
|
devel:libr_util$secondaryArchSuffix = $libVersionCompat
|
|
devel:libsdb$secondaryArchSuffix = $sdbVer
|
|
"
|
|
REQUIRES_devel="
|
|
radare2${secondaryArchSuffix} == $portVersion base
|
|
devel:libcapstone$secondaryArchSuffix >= 5.0
|
|
devel:liblz4$secondaryArchSuffix
|
|
devel:libxxhash$secondaryArchSuffix
|
|
devel:libz$secondaryArchSuffix
|
|
devel:libzip$secondaryArchSuffix
|
|
"
|
|
|
|
BUILD_REQUIRES="
|
|
haiku${secondaryArchSuffix}_devel
|
|
devel:libcapstone$secondaryArchSuffix >= 5.0
|
|
devel:libexecinfo$secondaryArchSuffix
|
|
devel:liblz4$secondaryArchSuffix
|
|
devel:libgmp$secondaryArchSuffix
|
|
devel:libmagic$secondaryArchSuffix
|
|
devel:libssl$secondaryArchSuffix
|
|
devel:libxxhash$secondaryArchSuffix
|
|
devel:libz$secondaryArchSuffix
|
|
devel:libzip$secondaryArchSuffix
|
|
"
|
|
BUILD_PREREQUIRES="
|
|
cmd:cmake
|
|
cmd:gcc$secondaryArchSuffix
|
|
cmd:meson
|
|
cmd:ninja
|
|
cmd:pkg_config$secondaryArchSuffix
|
|
cmd:python3
|
|
"
|
|
|
|
# What happend with libr2.so?
|
|
defineDebugInfoPackage radare2$secondaryArchSuffix \
|
|
"$commandBinDir"/r2agent \
|
|
"$commandBinDir"/rabin2 \
|
|
"$commandBinDir"/radare2 \
|
|
"$commandBinDir"/radiff2 \
|
|
"$commandBinDir"/rafind2 \
|
|
"$commandBinDir"/ragg2 \
|
|
"$commandBinDir"/rahash2 \
|
|
"$commandBinDir"/rarun2 \
|
|
"$commandBinDir"/rasm2 \
|
|
"$commandBinDir"/ravc2\
|
|
"$commandBinDir"/rax2 \
|
|
"$libDir"/libr_anal.so.$libVersion \
|
|
"$libDir"/libr_arch.so.$libVersion \
|
|
"$libDir"/libr_asm.so.$libVersion \
|
|
"$libDir"/libr_bin.so.$libVersion \
|
|
"$libDir"/libr_bp.so.$libVersion \
|
|
"$libDir"/libr_config.so.$libVersion \
|
|
"$libDir"/libr_cons.so.$libVersion \
|
|
"$libDir"/libr_core.so.$libVersion \
|
|
"$libDir"/libr_debug.so.$libVersion \
|
|
"$libDir"/libr_egg.so.$libVersion \
|
|
"$libDir"/libr_esil.so.$libVersion \
|
|
"$libDir"/libr_flag.so.$libVersion \
|
|
"$libDir"/libr_fs.so.$libVersion \
|
|
"$libDir"/libr_io.so.$libVersion \
|
|
"$libDir"/libr_lang.so.$libVersion \
|
|
"$libDir"/libr_magic.so.$libVersion \
|
|
"$libDir"/libr_main.so.$libVersion \
|
|
"$libDir"/libr_muta.so.$libVersion \
|
|
"$libDir"/libr_reg.so.$libVersion \
|
|
"$libDir"/libr_search.so.$libVersion \
|
|
"$libDir"/libr_socket.so.$libVersion \
|
|
"$libDir"/libr_syscall.so.$libVersion \
|
|
"$libDir"/libr_util.so.$libVersion \
|
|
"$libDir"/libsdb.so.$sdbVer
|
|
|
|
BUILD()
|
|
{
|
|
# sub projects
|
|
mkdir -p $sourceDir/subprojects/{qjs,sdb}
|
|
cp -r $sourceDir2/* subprojects/sdb
|
|
cp -R $sourceDir3/* subprojects/qjs
|
|
cp subprojects/packagefiles/qjs/meson.build subprojects/qjs
|
|
|
|
# test files
|
|
# mkdir -p test/bins
|
|
# cp -r $sourceDir4/* test/bins
|
|
|
|
# no need for these here, using system packages
|
|
rm -rf shlr/zip/{zip,zlib,include}
|
|
rm -rf shlr/lz4/{deps.mk,LICENSE,lz4.*,Makefile,README.md}
|
|
rm -f libr/hash/xxhash.c libr/hash/xxhash.h
|
|
|
|
export LDFLAGS="-lnetwork"
|
|
meson setup --buildtype=debugoptimized \
|
|
--prefix=$prefix \
|
|
--bindir=$commandBinDir \
|
|
--libdir=$libDir \
|
|
--includedir=$includeDir \
|
|
-Duse_sys_capstone=true \
|
|
-Duse_sys_lz4=true \
|
|
-Duse_sys_magic=true \
|
|
-Duse_sys_magic=true \
|
|
-Duse_sys_openssl=true \
|
|
-Duse_sys_zip=true \
|
|
-Duse_sys_zlib=true \
|
|
-Denable_tests=false \
|
|
-Duse_webui=false \
|
|
build
|
|
ninja -C build
|
|
}
|
|
|
|
TEST_REQUIRES="
|
|
cmd:radare2
|
|
"
|
|
|
|
INSTALL()
|
|
{
|
|
ninja -C build install
|
|
|
|
prepareInstalledDevelLibs libr_anal libr_arch libr_asm libr_bin \
|
|
libr_bp libr_config libr_cons libr_core libr_debug libr_egg libr_esil \
|
|
libr_flag libr_fs libr_io libr_lang libr_magic libr_main libr_muta \
|
|
libr_reg libr_search libr_socket libr_syscall libr_util libsdb
|
|
fixPkgconfig
|
|
|
|
packageEntries devel \
|
|
$developDir
|
|
}
|
|
|
|
TEST()
|
|
{
|
|
# Summary of Failures:
|
|
#
|
|
# 65/65 thread TIMEOUT 30.05s killed by signal 15 SIGTERM
|
|
#
|
|
# Ok: 64
|
|
# Fail: 0
|
|
# Timeout: 1
|
|
|
|
meson test --no-rebuild --print-errorlogs -C build
|
|
}
|