aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorDavid Holm2014-07-25 15:49:04 +0200
committerJack Nagel2014-08-30 10:55:04 -0500
commit11797f8d41d026a825fffc9e6ab653b0133d3d38 (patch)
tree8aac96245b78b32cf7109b67078fb2a04bb93129 /Library
parent56a46d859b2136c1cd92df9d37c15ef4146a9008 (diff)
downloadhomebrew-11797f8d41d026a825fffc9e6ab653b0133d3d38.tar.bz2
bokken 1.6
Closes #31122. Signed-off-by: Jack Nagel <jacknagel@gmail.com>
Diffstat (limited to 'Library')
-rw-r--r--Library/Formula/bokken.rb53
1 files changed, 53 insertions, 0 deletions
diff --git a/Library/Formula/bokken.rb b/Library/Formula/bokken.rb
new file mode 100644
index 000000000..fba21414f
--- /dev/null
+++ b/Library/Formula/bokken.rb
@@ -0,0 +1,53 @@
+require "formula"
+
+class Bokken < Formula
+ homepage "https://inguma.eu/projects/bokken"
+ url "https://inguma.eu/attachments/download/197/bokken-1.6.tar.gz"
+ sha1 "9d7a3f8773f01c26c9db84e00c415dbff063f224"
+
+ depends_on :python
+ depends_on "graphviz"
+ depends_on "pygtk"
+ depends_on "pygtksourceview"
+ depends_on "radare2"
+
+ resource "distorm64" do
+ url "http://ftp.de.debian.org/debian/pool/main/d/distorm64/distorm64_1.7.30.orig.tar.gz"
+ sha1 "420b0750ab23775bf3e4ff0ccd4b9a4ebb498787"
+ end
+
+ resource "pyew" do
+ # Upstream only provides binary packages so pull from Debian.
+ url "http://ftp.de.debian.org/debian/pool/main/p/pyew/pyew_2.0.orig.tar.gz"
+ sha1 "d158b65c17cccda4dd8b7a3d39f1795dfb8e68c4"
+ end
+
+ def install
+ resource("distorm64").stage do
+ cd "build/mac" do
+ system "make"
+ mkdir_p libexec/"distorm64"
+ (libexec/"distorm64").install "libdistorm64.dylib"
+ ln_s "libdistorm64.dylib", libexec/"distorm64/libdistorm64.so"
+ end
+ end
+
+ resource("pyew").stage do
+ (libexec/"pyew").install Dir["*"]
+ # Make sure that the launcher looks for pyew.py in the correct path (fixed
+ # in pyew ab9ea236335e).
+ inreplace libexec/"pyew/pyew", "\./pyew.py", "`dirname $0`/pyew.py"
+ end
+
+ python_path = "#{libexec}/lib/python2.7/site-packages:#{libexec}/pyew"
+ ld_library_path = "#{libexec}/distorm64"
+ (libexec/"bokken").install Dir["*"]
+ (bin/"bokken").write <<-EOS.undent
+ #!/usr/bin/env bash
+ env \
+ PYTHONPATH=#{python_path}:${PYTHONPATH} \
+ LD_LIBRARY_PATH=#{ld_library_path}:${LD_LIBRARY_PATH} \
+ python #{libexec}/bokken/bokken.py "${@}"
+ EOS
+ end
+end