From: "Christoph Junghans" <ottxor@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/sci:master commit in: app-forensics/vine/files/, app-forensics/vine/
Date: Sat, 16 Mar 2013 22:00:36 +0000 (UTC) [thread overview]
Message-ID: <1363471154.e235d6792773f759d383531a49aad96251effa6b.ottxor@gentoo> (raw)
commit: e235d6792773f759d383531a49aad96251effa6b
Author: Christoph Junghans <ottxor <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 16 21:35:53 2013 +0000
Commit: Christoph Junghans <ottxor <AT> gentoo <DOT> org>
CommitDate: Sat Mar 16 21:59:14 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=e235d679
initial commit
Package-Manager: portage-2.2.0_alpha166
---
app-forensics/vine/ChangeLog | 11 +++
app-forensics/vine/files/vine-1.0-binutils.patch | 16 ++++
app-forensics/vine/files/vine-1.0-gcc46.patch | 37 ++++++++
app-forensics/vine/files/vine-1.0-install.patch | 89 ++++++++++++++++++++
.../vine/files/vine-1.0-ocamlgraph182.patch | 68 +++++++++++++++
app-forensics/vine/metadata.xml | 8 ++
app-forensics/vine/vine-1.0.ebuild | 40 +++++++++
7 files changed, 269 insertions(+), 0 deletions(-)
diff --git a/app-forensics/vine/ChangeLog b/app-forensics/vine/ChangeLog
new file mode 100644
index 0000000..1cb3961
--- /dev/null
+++ b/app-forensics/vine/ChangeLog
@@ -0,0 +1,11 @@
+# ChangeLog for app-forensics/vine
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+*vine-1.0 (16 Mar 2013)
+
+ 16 Mar 2013; Christoph Junghans <ottxor@gentoo.org>
+ +files/vine-1.0-binutils.patch, +files/vine-1.0-gcc46.patch,
+ +files/vine-1.0-install.patch, +files/vine-1.0-ocamlgraph182.patch,
+ +metadata.xml, +vine-1.0.ebuild:
+ initial commit
diff --git a/app-forensics/vine/files/vine-1.0-binutils.patch b/app-forensics/vine/files/vine-1.0-binutils.patch
new file mode 100644
index 0000000..b9d55da
--- /dev/null
+++ b/app-forensics/vine/files/vine-1.0-binutils.patch
@@ -0,0 +1,16 @@
+https://groups.google.com/d/msg/bitblaze-users/Zpg7Ddzngns/o7LNnR0qqxwJ
+
+Index: libasmir/src/disasm/asm_program.cpp
+===================================================================
+--- libasmir/src/disasm/asm_program.cpp (older version)
++++ libasmir/src/disasm/asm_program.cpp (fixed version)
+@@ -7,6 +7,11 @@
+ #include "debug.h"
+ #include "asm_program.h"
+ #include "objdump.h"
++/* Some versions of glibc and the binutils libiberty library give
++ conflicting prototypes for basename(). We don't use that function
++ anyway, but to work around the problem, make libliberty.h think
++ that it has already been declared. */
++#define HAVE_DECL_BASENAME 1
+ #include "libiberty.h"
diff --git a/app-forensics/vine/files/vine-1.0-gcc46.patch b/app-forensics/vine/files/vine-1.0-gcc46.patch
new file mode 100644
index 0000000..89a5229
--- /dev/null
+++ b/app-forensics/vine/files/vine-1.0-gcc46.patch
@@ -0,0 +1,37 @@
+https://groups.google.com/d/msg/bitblaze-users/sTTPlFEzWo0/0ZjPL0QYC8IJ
+
+Index: libasmir/src/vex/irtoir-i386.cpp
+===================================================================
+--- libasmir/src/vex/irtoir-i386.cpp (old revision)
++++ libasmir/src/vex/irtoir-i386.cpp (new revision)
+@@ -9,6 +9,13 @@
+ web site at: http://bitblaze.cs.berkeley.edu/
+ */
+
++/* Because we use offsetof() for values that go in switch statement
++ cases, we need a definition in terms of __builtin_offsetof so that
++ GCC >= 4.6 can accept the results of offsetof() as a constant
++ expression. They've stopped supporting the traditional definition
++ as a macro &((type*)0)->memb, which appears in VEX's headers. */
++#include <stddef.h>
++
+ #include <string>
+ #include <vector>
+ #include <iostream>
+Index: libasmir/src/vex/irtoir-arm.cpp
+===================================================================
+--- libasmir/src/vex/irtoir-arm.cpp (old revision)
++++ libasmir/src/vex/irtoir-arm.cpp (new revision)
+@@ -9,6 +9,12 @@
+ web site at: http://bitblaze.cs.berkeley.edu/
+ */
+
++/* Because we use offsetof() for values that go in switch statement
++ cases, we need a definition in terms of __builtin_offsetof so that
++ GCC >= 4.6 can accept the results of offsetof() as a constant
++ expression. They've stopped supporting the traditional definition
++ as a macro &((type*)0)->memb, which appears in VEX's headers. */
++#include <stddef.h>
+
+ #include "irtoir-internal.h"
+ #include "libvex_guest_arm.h"
diff --git a/app-forensics/vine/files/vine-1.0-install.patch b/app-forensics/vine/files/vine-1.0-install.patch
new file mode 100644
index 0000000..62a84bc
--- /dev/null
+++ b/app-forensics/vine/files/vine-1.0-install.patch
@@ -0,0 +1,89 @@
+--- vine-1.0.orig/stp/ocaml/Makefile 2009-09-24 15:45:57.000000000 -0600
++++ vine-1.0/stp/ocaml/Makefile 2013-03-14 20:22:49.993194747 -0600
+@@ -14,3 +14,6 @@
+ Makefile
+
+ include $(OCAMLMAKEFILE)
++
++install: rawinstall
++
+--- vine-1.0.orig/stp/ocaml/OCamlMakefile 2009-09-24 15:45:57.000000000 -0600
++++ vine-1.0/stp/ocaml/OCamlMakefile 2013-03-14 20:20:23.012069386 -0600
+@@ -1126,10 +1126,10 @@
+ .PHONY: rawinstall
+ rawinstall: all
+ $(QUIET)printf "\nInstalling library to: $(OCAML_LIB_INSTALL)\n"
+- -install -d $(OCAML_LIB_INSTALL)
++ -install -d $(DESTDIR)$(OCAML_LIB_INSTALL)
+ for i in $(LIBINSTALL_FILES); do \
+ if [ -f $$i ]; then \
+- install -c -m 0644 $$i $(OCAML_LIB_INSTALL); \
++ install -c -m 0644 $$i $(DESTDIR)$(OCAML_LIB_INSTALL); \
+ fi; \
+ done
+ $(QUIET)printf "\nInstallation successful.\n"
+
+--- vine-1.0.orig/ocaml/Makefile 2009-09-24 15:45:57.000000000 -0600
++++ vine-1.0/ocaml/Makefile 2013-03-14 20:22:49.993194747 -0600
+@@ -14,3 +14,6 @@
+
+
+ include $(OCAMLMAKEFILE)
++
++install: rawinstall
++
+--- vine-1.0.orig/ocaml/OCamlMakefile 2009-09-24 15:45:57.000000000 -0600
++++ vine-1.0/ocaml/OCamlMakefile 2013-03-14 20:20:23.012069386 -0600
+@@ -1126,10 +1126,10 @@
+ .PHONY: rawinstall
+ rawinstall: all
+ $(QUIET)printf "\nInstalling library to: $(OCAML_LIB_INSTALL)\n"
+- -install -d $(OCAML_LIB_INSTALL)
++ -install -d $(DESTDIR)$(OCAML_LIB_INSTALL)
+ for i in $(LIBINSTALL_FILES); do \
+ if [ -f $$i ]; then \
+- install -c -m 0644 $$i $(OCAML_LIB_INSTALL); \
++ install -c -m 0644 $$i $(DESTDIR)$(OCAML_LIB_INSTALL); \
+ fi; \
+ done
+ $(QUIET)printf "\nInstallation successful.\n"
+--- vine-1.0.orig/trace/Makefile 2009-09-24 15:45:57.000000000 -0600
++++ vine-1.0/trace/Makefile 2013-03-14 20:22:49.993194747 -0600
+@@ -14,3 +14,6 @@
+
+
+ include $(OCAMLMAKEFILE)
++
++install: rawinstall
++
+--- vine-1.0.orig/trace_utils/Makefile 2009-09-24 15:45:57.000000000 -0600
++++ vine-1.0/trace_utils/Makefile 2013-03-16 14:31:46.375690732 -0600
+@@ -88,6 +88,8 @@
+ # * subprjs
+
+
++install:
++
+
+ %:
+ make -f $(OCAMLMAKEFILE) subprojs SUBTARGET=$@
+--- vine-1.0.orig/utils/Makefile 2009-09-24 15:45:57.000000000 -0600
++++ vine-1.0/utils/Makefile 2013-03-16 14:31:46.375690732 -0600
+@@ -88,6 +88,8 @@
+ # * subprjs
+
+
++install:
++
+
+ %:
+ make -f $(OCAMLMAKEFILE) subprojs SUBTARGET=$@
+--- vine-1.0.orig/doc/Makefile 2009-09-24 15:45:57.000000000 -0600
++++ vine-1.0/doc/Makefile 2013-03-16 14:41:59.182926821 -0600
+@@ -17,3 +17,6 @@
+
+ clean:
+ (cd howto && $(MAKE) clean)
++
++install:
++
diff --git a/app-forensics/vine/files/vine-1.0-ocamlgraph182.patch b/app-forensics/vine/files/vine-1.0-ocamlgraph182.patch
new file mode 100644
index 0000000..5cb79f2
--- /dev/null
+++ b/app-forensics/vine/files/vine-1.0-ocamlgraph182.patch
@@ -0,0 +1,68 @@
+Index: ocaml/vine_cfg.mli
+===================================================================
+--- ocaml/vine_cfg.mli (old version)
++++ ocaml/vine_cfg.mli (new version)
+@@ -86,6 +86,11 @@
+ (** [cfg#iter_edges f] calls [f a b] forall [(a,b)] where there is an edge
+ vine-1.0-from [a] to [b] in the CFG. *)
+
++ method fold_edges : 'b. ('a bb -> 'a bb -> 'b -> 'b) -> 'b -> 'b
++ (** [cfg#fold_edges f init] computes [f uN uN (... (f u1 v1
++init)...)] where [(u1, v1) ... (uN, vN)] is an enumeration of all
++the edges in the graph, in an unspecified order. *)
++
+ method get_info : 'a bb -> 'a
+ (** Returns the info associated with the given bb. *)
+
+@@ -225,6 +230,7 @@
+ val iter_vertex : (bbid -> unit) -> t -> unit
+ val fold_vertex : (vertex -> 'a -> 'a) -> t -> 'a -> 'a
+ val iter_edges_e : (E.t -> unit) -> t -> unit
++ val fold_edges_e : (E.t -> 'a -> 'a) -> t -> 'a -> 'a
+ val iter_succ : (vertex -> unit) -> t -> vertex -> unit
+ val iter_pred : (vertex -> unit) -> t -> vertex -> unit
+ val in_degree : t -> vertex -> int
+Index: ocaml/vine_cfg.ml
+===================================================================
+--- ocaml/vine_cfg.ml (old version)
++++ ocaml/vine_cfg.ml (new version)
+@@ -115,6 +115,7 @@
+ method iter_bb : ('a bb -> unit) -> unit
+ method fold_bb : 'b. ('a bb -> 'b -> 'b) -> 'b -> 'b
+ method iter_edges : ('a bb -> 'a bb -> unit) -> unit
++ method fold_edges : 'b. ('a bb -> 'a bb -> 'b -> 'b) -> 'b -> 'b
+ method get_info : 'a bb -> 'a
+ method set_info : 'a bb -> 'a -> unit
+ method get_id : 'a bb -> bbid
+@@ -306,6 +307,14 @@
+ self#iter_bb (fun b -> List.iter (f b) (self#succ b));
+ self#check_graph;
+
++ method fold_edges f a =
++ self#check_graph;
++ let res = self#fold_bb
++ (fun b a2 -> List.fold_left (fun a3 b2 -> f b b2 a3) a2 (self#succ b)) a
++ in
++ self#check_graph;
++ res
++
+ method length = Hashtbl.length blktbl
+
+ method get_info b =
+@@ -1122,6 +1131,7 @@
+ val iter_vertex : (bbid -> unit) -> t -> unit
+ val fold_vertex : (bbid -> 'a -> 'a) -> t -> 'a -> 'a
+ val iter_edges_e : (E.t -> unit) -> t -> unit
++ val fold_edges_e : (E.t -> 'a -> 'a) -> t -> 'a -> 'a
+ val iter_succ : (vertex -> unit) -> t -> vertex -> unit
+ val iter_pred : (vertex -> unit) -> t -> vertex -> unit
+ val in_degree : t -> vertex -> int
+@@ -1170,6 +1180,8 @@
+ let fold_vertex f (g:t) a = g#fold_bb (fun b -> f b.id) a
+ let iter_edges_e f (g:t) =
+ g#iter_edges (fun x y -> f (g#get_id x, g#get_id y))
++ let fold_edges_e f (g:t) a =
++ g#fold_edges (fun x y a -> f (g#get_id x, g#get_id y) a) a
+ let iter_succ f g v = List.iter f (bb_succ g v)
+ let iter_pred f g v = List.iter f (bb_pred g v)
+ let in_degree g v = List.length (bb_pred g v)
diff --git a/app-forensics/vine/metadata.xml b/app-forensics/vine/metadata.xml
new file mode 100644
index 0000000..745b9e1
--- /dev/null
+++ b/app-forensics/vine/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>ottxor@gentoo.org</email>
+ <name>Christoph Junghans</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-forensics/vine/vine-1.0.ebuild b/app-forensics/vine/vine-1.0.ebuild
new file mode 100644
index 0000000..5225990
--- /dev/null
+++ b/app-forensics/vine/vine-1.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/gmetadom/gmetadom-0.2.6.ebuild,v 1.9 2012/05/04 18:35:48 jdhore Exp $
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="The BitBlaze Static Analysis Component"
+HOMEPAGE="http://bitblaze.cs.berkeley.edu/vine.html"
+SRC_URI="http://bitblaze.cs.berkeley.edu/release/${P}/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+DEPEND="
+ dev-lang/ocaml
+ dev-ml/findlib
+ dev-ml/camlidl
+ >=dev-libs/gmetadom-0.2.6-r1[ocaml]
+ dev-ml/extlib
+ sys-devel/binutils
+ dev-ml/ocamlgraph"
+RDEPEND="${DEPEND}"
+
+MAKEOPTS="${MAKEOPTS} -j1"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-binutils.patch \
+ "${FILESDIR}"/${P}-gcc46.patch \
+ "${FILESDIR}"/${P}-install.patch \
+ "${FILESDIR}"/${P}-ocamlgraph182.patch
+}
+
+src_compile() {
+ emake CC=$(tc-getCC) CCFLAGS="${CFLAGS} -fpic"
+}
next reply other threads:[~2013-03-16 22:00 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-16 22:00 Christoph Junghans [this message]
-- strict thread matches above, loose matches on Subject: below --
2016-02-22 13:25 [gentoo-commits] proj/sci:master commit in: app-forensics/vine/files/, app-forensics/vine/ Justin Lecher
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1363471154.e235d6792773f759d383531a49aad96251effa6b.ottxor@gentoo \
--to=ottxor@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox