aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulien Lepiller <julien@lepiller.eu>2017-08-11 20:54:40 +0200
committerJulien Lepiller <julien@lepiller.eu>2017-08-26 13:01:36 +0200
commit446695775d6d8d15546c5d0fc535e9f5c83a7b7e (patch)
tree5d7f0525cec68dac0bb94a8adccb71223191ba70
parentf70be0113f135d81db8ce3ee1acf997c0bcefe00 (diff)
downloadguix-446695775d6d8d15546c5d0fc535e9f5c83a7b7e.tar
guix-446695775d6d8d15546c5d0fc535e9f5c83a7b7e.tar.gz
gnu: Add radare2.
* gnu/packages/engineering.scm (radare2): New variable.
-rw-r--r--gnu/packages/engineering.scm55
1 files changed, 53 insertions, 2 deletions
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index b4ccc446fb..008a96b244 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -23,6 +23,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages engineering)
+ #:use-module (srfi srfi-1)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix gexp)
@@ -60,6 +61,7 @@
#:use-module (gnu packages linux) ;FIXME: for pcb
#:use-module (gnu packages m4)
#:use-module (gnu packages maths)
+ #:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
@@ -71,8 +73,7 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages tex)
#:use-module (gnu packages wxwidgets)
- #:use-module (gnu packages xorg)
- #:use-module (srfi srfi-1))
+ #:use-module (gnu packages xorg))
(define-public librecad
(package
@@ -1078,3 +1079,53 @@ bindings for Python, Java, OCaml and more.")
(define-public python2-capstone
(package-with-python2 python-capstone))
+
+(define-public radare2
+ (package
+ (name "radare2")
+ (version "1.6.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://radare.mikelloc.com/get/" version "/"
+ name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "16ggsk40zz6hyvclvqj1r4bh4hb78jf0d6ppry1jk4r0j30wm7cm"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* "libr/asm/p/Makefile"
+ (("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) "))
+ (substitute* "libr/parse/p/Makefile"
+ (("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) "))
+ (substitute* "libr/bin/p/Makefile"
+ (("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) "))))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f; tests require git and network access
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'mklibdir
+ (lambda* (#:key inputs #:allow-other-keys)
+ (mkdir-p (string-append (assoc-ref %outputs "out") "/lib"))
+ #t)))
+ #:configure-flags
+ (list "--with-sysmagic" "--with-syszip" "--with-openssl"
+ "--without-nonpic" "--with-rpath" "--with-syscapstone")
+ #:make-flags
+ (list "CC=gcc")))
+ (inputs
+ `(("openssl" ,openssl)
+ ("zip" ,zip)
+ ("gmp" ,gmp)
+ ("capstone" ,capstone)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "https://radare.org/")
+ (synopsis "Portable reversing framework")
+ (description
+ "Radare project started as a forensics tool, a scriptable commandline
+hexadecimal editor able to open disk files, but later support for analyzing
+binaries, disassembling code, debugging programs, attaching to remote gdb
+servers, ...")
+ (license license:lgpl3)))