Cutter: new recipe (#2103)

This commit is contained in:
miqlas
2018-01-12 09:50:28 +01:00
committed by Jérôme Duval
parent ae37c16400
commit 18ebfd8f8d
3 changed files with 181 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
resource app_flags B_SINGLE_LAUNCH | B_ARGV_ONLY;
resource app_version {
major = @MAJOR@,
middle = @MIDDLE@,
minor = @MINOR@,
variety = B_APPV_FINAL,
internal = 0,
short_info = "A Qt and C++ GUI for radare2 reverse engineering framework",
long_info = "A reverse engineering GUI"
};
resource app_signature "application/x-vnd.Cutter";
resource vector_icon {
$"6E63696602050005FF080204BFB9B497B97DB497C5F5B497CADCBFB9CADCB97D"
$"CADCC5F5BFB9CADCC5F5CADCB97DCADCB497BFB9B497C5F5B497B97D0204BFB9"
$"B497B97DB497C5F5B497CADCBFB9CADCB97DCADCC5F5BFB9CADCC5F5CADCB97D"
$"CADCB497BFB9B497C5F5B497B97D0610FF3FFAFFBFB9B5FBC519B5FBBA5AB5FB"
$"B5FBBFB9B5FBBA59B5FBC130B6E3C3D2B64EC293B6E3C3D2B79FC270B79FC270"
$"B756C196B72EBFB9B72EC0ACB72EBAFFBFB9B72EBAFFB72EC239B72EC607B9F3"
$"C477B83FC607B9F3C1DBBEADBFEBC1DEC5F3C594C5F3C594C5F3C40DC763BFB9"
$"C845C1FEC845BDA0C845BA39C644BBB5C784BA39C644B882C644B882C644BA4B"
$"C83BBFB9C977BCDEC977C519C977C977BFB9C977C519C977BA590A06BCD3BB31"
$"B794C511C00BC511BD52BFEABFD6BB31BCD3BB310A0DBBAB9F49BBABA1C2BD53"
$"A085BEFB9F49BEFBA1C2BEFBA43BBD53A2FEBBABA1C2BBABA43BBA03A2FEB85B"
$"A1C2BA03A085BBAB9F490610FF3FFAFFBFB9B5FBC519B5FBBA5AB5FBB5FBBFB9"
$"B5FBBA59B5FBC130B6E3C3D2B64EC293B6E3C3D2B79FC270B79FC270B756C196"
$"B72EBFB9B72EC0ACB72EBAFFBFB9B72EBAFFB72EC239B72EC607B9F3C477B83F"
$"C607B9F3C1DBBEADBFEBC1DEC5F3C594C5F3C594C5F3C40DC763BFB9C845C1FE"
$"C845BDA0C845BA39C644BBB5C784BA39C644B882C644B882C644BA4BC83BBFB9"
$"C977BCDEC977C519C977C977BFB9C977C519C977BA590A06BCD3BB31B794C511"
$"C00BC511BD52BFEABFD6BB31BCD3BB310A0DBBAB9F49BBABA1C2BD53A085BEFB"
$"9F49BEFBA1C2BEFBA43BBD53A2FEBBABA1C2BBABA43BBA03A2FEB85BA1C2BA03"
$"A085BBAB9F49050A000100000A0001011001178200040A0103020304000A0003"
$"0506071001178100040A00010420346C"
};

View File

@@ -0,0 +1,117 @@
SUMMARY="A Qt and C++ GUI for radare2 reverse engineering framework"
DESCRIPTION="Radare is a portable reversing framework that can...
* Disassemble (and assemble for) many different architectures
* Debug with local native and remote debuggers (gdb, rap, webui, r2pipe, \
winedbg, windbg)
* Run on Linux, *BSD, Windows, OSX, Android, iOS, Solaris and Haiku
* Perform forensics on filesystems and data carving
* Be scripted in Python, Javascript, Go and more
* Support collaborative analysis using the embedded webserver
* Visualize data structures of several file types
* Patch programs to uncover new features or fix vulnerabilities
* Use powerful analysis capabilities to speed up reversing
* Aid in software exploitation"
HOMEPAGE="https://github.com/radareorg/cutter"
COPYRIGHT="2017 xarkes, thestr4ng3r, ballessay, Hugo Teso"
LICENSE="GNU GPL v3"
REVISION="1"
SOURCE_URI="$HOMEPAGE/archive/v$portVersion.tar.gz"
CHECKSUM_SHA256="ed1be7778f6a733343d4628a0ba2598f6c3f521e08c6d45289a58c2313e2297b"
PATCHES="cutter-$portVersion.patchset"
ADDITIONAL_FILES="cutter.rdef.in"
ARCHITECTURES="!x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
cutter$secondaryArchSuffix = $portVersion
cmd:cutter$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libQt5Gui$secondaryArchSuffix
lib:libQt5Svg$secondaryArchSuffix
lib:libQt5Widgets$secondaryArchSuffix
lib:libr_anal$secondaryArchSuffix
lib:libr_asm$secondaryArchSuffix
lib:libr_bin$secondaryArchSuffix
lib:libr_bp$secondaryArchSuffix
lib:libr_config$secondaryArchSuffix
lib:libr_cons$secondaryArchSuffix
lib:libr_core$secondaryArchSuffix
lib:libr_crypto$secondaryArchSuffix
lib:libr_debug$secondaryArchSuffix
lib:libr_egg$secondaryArchSuffix
lib:libr_flag$secondaryArchSuffix
lib:libr_fs$secondaryArchSuffix
lib:libr_hash$secondaryArchSuffix
lib:libr_io$secondaryArchSuffix
lib:libr_lang$secondaryArchSuffix
lib:libr_magic$secondaryArchSuffix
lib:libr_parse$secondaryArchSuffix
lib:libr_reg$secondaryArchSuffix
lib:libr_search$secondaryArchSuffix
lib:libr_socket$secondaryArchSuffix
lib:libr_syscall$secondaryArchSuffix
lib:libr_util$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libmagic$secondaryArchSuffix
devel:libQt5Core$secondaryArchSuffix
devel:libQt5Gui$secondaryArchSuffix
devel:libQt5Svg$secondaryArchSuffix
devel:libQt5Widgets$secondaryArchSuffix
devel:libr2$secondaryArchSuffix
devel:libssl$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:qmake$secondaryArchSuffix >= 5
"
BUILD()
{
cd src
mkdir -p build
cd build
export RADARE2_INC_DIR="`finddir B_SYSTEM_HEADERS_DIRECTORY`/libr"
cmake ..
make $jobArgs
}
INSTALL()
{
cd src/build
mkdir -p $appsDir
cp cutter $appsDir/Cutter
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
# local MINOR="`echo "$portVersion" | cut -d. -f3`"
# Not used right now
local MINOR="0"
sed \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
$portDir/additional-files/cutter.rdef.in > cutter.rdef
addResourcesToBinaries cutter.rdef \
$appsDir/Cutter
addAppDeskbarSymlink $appsDir/Cutter
}
TEST()
{
make test
}

View File

@@ -0,0 +1,26 @@
From d7738ed7b32ba004bc6fead3b208e5c00706c0c1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
Date: Thu, 11 Jan 2018 21:21:34 +0100
Subject: Help to find Radare2
diff --git a/src/cmake/FindRadare2.cmake b/src/cmake/FindRadare2.cmake
index db9a078..21ca5b4 100644
--- a/src/cmake/FindRadare2.cmake
+++ b/src/cmake/FindRadare2.cmake
@@ -8,10 +8,11 @@
# If libr was found using find_library and not pkg-config, the following variables will also be set:
# RADARE2_LIBRARY_<name> - Path to library r_<name>
-if(WIN32)
+if(WIN32 OR HAIKU)
find_path(RADARE2_INCLUDE_DIRS
NAMES r_core.h r_bin.h r_util.h
HINTS
+ "$ENV{RADARE2_INC_DIR}"
"$ENV{HOME}/bin/prefix/radare2/include/libr"
/usr/local/include/libr
/usr/include/libr)
--
2.15.1