Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Jan 2014 07:00:24 +0000 (UTC)
From:      Kubilay Kocak <koobs@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r341330 - in head/devel: . capstone capstone/files
Message-ID:  <201401270700.s0R70Omt066935@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: koobs
Date: Mon Jan 27 07:00:24 2014
New Revision: 341330
URL: http://svnweb.freebsd.org/changeset/ports/341330
QAT: https://qat.redports.org/buildarchive/r341330/

Log:
  devel/capstone: Multi-platform, multi-architecture disassembly framework [NEW PORT]
  
  Capstone is a lightweight multi-platform, multi-architecture disassembly
  framework.
  
  Features:
   * Supported architectures: ARM, ARM64 (aka ARMv8), Mips, PowerPC & X86
   * Clean/simple/lightweight/intuitive architecture-neutral API
   * Provide details on disassembled instruction (called "decomposer")
   * Provide some semantics of the disassembled instruction, such as list of
     implicit registers read & written.
   * Implemented in pure C language, with bindings for Python, Ruby, C#, Java,
     GO, OCaml & Vala available.
   * Native support for Windows & *nix (including MacOSX, Linux, *BSD & Solaris)
   * Thread-safe by design
   * Distributed under the open source BSD license
  
  WWW: http://capstone-engine.org/
  
  PR:		ports/186102
  Submitted by:	Oliver Pinter <oliver.pntr@gmail.com>

Added:
  head/devel/capstone/
  head/devel/capstone/Makefile   (contents, props changed)
  head/devel/capstone/distinfo   (contents, props changed)
  head/devel/capstone/files/
  head/devel/capstone/files/patch-Makefile   (contents, props changed)
  head/devel/capstone/files/patch-tests_Makefile   (contents, props changed)
  head/devel/capstone/pkg-descr   (contents, props changed)
  head/devel/capstone/pkg-plist   (contents, props changed)
Modified:
  head/devel/Makefile

Modified: head/devel/Makefile
==============================================================================
--- head/devel/Makefile	Mon Jan 27 06:21:51 2014	(r341329)
+++ head/devel/Makefile	Mon Jan 27 07:00:24 2014	(r341330)
@@ -182,6 +182,7 @@
     SUBDIR += c-unit
     SUBDIR += c4
     SUBDIR += calibrator
+    SUBDIR += capstone
     SUBDIR += cbind
     SUBDIR += cbrowser
     SUBDIR += cc65

Added: head/devel/capstone/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/capstone/Makefile	Mon Jan 27 07:00:24 2014	(r341330)
@@ -0,0 +1,22 @@
+# $FreeBSD$
+
+PORTNAME=	capstone
+PORTVERSION=	2.0
+CATEGORIES=	devel
+MASTER_SITES=	http://capstone-engine.org/download/2.0/
+
+MAINTAINER=	oliver.pntr@gmail.com
+COMMENT=	Multi-platform, multi-architecture disassembly framework
+
+LICENSE=	BSD3CLAUSE
+
+USES=		gmake
+USE_LDCONFIG=	yes
+
+MAKE_ENV=	INSTALL_LIBRARY="${INSTALL_LIB}"
+
+post-build:
+	# The pkgconfig file is generated and points to stagedir
+	${REINPLACE_CMD} -e '/libdir/s|\(libdir=\)\(.*\)\(devel/capstone/work/stage\)|\1|g' ${WRKSRC}/capstone.pc
+
+.include <bsd.port.mk>

Added: head/devel/capstone/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/capstone/distinfo	Mon Jan 27 07:00:24 2014	(r341330)
@@ -0,0 +1,2 @@
+SHA256 (capstone-2.0.tar.gz) = 5d871b1e52047d1b2882bbcc6f049205ba6acc8d55d746937d22af5d0b33fa9e
+SIZE (capstone-2.0.tar.gz) = 1731759

Added: head/devel/capstone/files/patch-Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/capstone/files/patch-Makefile	Mon Jan 27 07:00:24 2014	(r341330)
@@ -0,0 +1,52 @@
+--- Makefile.orig	2014-01-22 11:33:35.000000000 +0100
++++ Makefile	2014-01-25 19:13:32.000000000 +0100
+@@ -15,7 +15,7 @@
+ STRIP = $(CROSS)strip
+ endif
+ 
+-CFLAGS += -fPIC -O3 -Wall -Iinclude
++CFLAGS += -fPIC -Wall -Iinclude
+ 
+ ifeq ($(USE_SYS_DYN_MEM),yes)
+ CFLAGS += -DUSE_SYS_DYN_MEM
+@@ -38,6 +38,14 @@
+ endif
+ endif
+ 
++LIBDATADIR = $(LIBDIR)
++UNAME_S := $(shell uname -s)
++ifeq ($(UNAME_S), FreeBSD)
++LIBDATADIR = $(DESTDIR)$(PREFIX)/libdata
++else
++LIBDATADIR = $(LIBDIR)
++endif
++
+ INSTALL_BIN ?= install
+ INSTALL_DATA ?= $(INSTALL_BIN) -m0644
+ INSTALL_LIBRARY ?= $(INSTALL_BIN) -m0755
+@@ -88,7 +96,6 @@
+ 
+ LIBOBJ += MCInst.o
+ 
+-UNAME_S := $(shell uname -s)
+ # OSX?
+ ifeq ($(UNAME_S),Darwin)
+ EXT = dylib
+@@ -156,14 +163,14 @@
+ 	$(INSTALL_DATA) lib$(LIBNAME).$(AR_EXT) $(LIBDIR)
+ 	mkdir -p $(INCDIR)/$(LIBNAME)
+ 	$(INSTALL_DATA) include/*.h $(INCDIR)/$(LIBNAME)
+-	mkdir -p $(LIBDIR)/pkgconfig
+-	$(INSTALL_DATA) $(PKGCFGF) $(LIBDIR)/pkgconfig/
++	mkdir -p $(LIBDATADIR)/pkgconfig
++	$(INSTALL_DATA) $(PKGCFGF) $(LIBDATADIR)/pkgconfig/
+ 
+ uninstall:
+ 	rm -rf $(INCDIR)/$(LIBNAME)
+ 	rm -f $(LIBDIR)/lib$(LIBNAME).$(EXT)
+ 	rm -f $(LIBDIR)/lib$(LIBNAME).$(AR_EXT)
+-	rm -f $(LIBDIR)/pkgconfig/$(LIBNAME).pc
++	rm -f $(LIBDATADIR)/pkgconfig/$(LIBNAME).pc
+ 
+ clean:
+ 	rm -f $(LIBOBJ) lib$(LIBNAME).*

Added: head/devel/capstone/files/patch-tests_Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/capstone/files/patch-tests_Makefile	Mon Jan 27 07:00:24 2014	(r341330)
@@ -0,0 +1,22 @@
+--- tests/Makefile.orig	2014-01-25 19:14:03.000000000 +0100
++++ tests/Makefile	2014-01-25 19:14:24.000000000 +0100
+@@ -11,7 +11,7 @@
+ endif
+ 
+ 
+-CFLAGS += -fPIC -O3 -Wall -I$(INCDIR) -L$(LIBDIR)
++CFLAGS += -fPIC -Wall -I$(INCDIR) -L$(LIBDIR)
+ 
+ LIBNAME = capstone
+ 
+@@ -48,8 +48,8 @@
+ $(BINARY): $(OBJS)
+ 
+ %$(BIN_EXT): %.o
+-	${CC} $(CFLAGS) $(LDFLAGS) $< -O3 -Wall -l$(LIBNAME) -o $@
+-	${CC} $(CFLAGS) $(LDFLAGS) $< -O3 -Wall ../lib$(LIBNAME).$(AR_EXT) -o $(subst $(BIN_EXT),,$@).static$(BIN_EXT)
++	${CC} $(CFLAGS) $(LDFLAGS) $< -Wall -l$(LIBNAME) -o $@
++	${CC} $(CFLAGS) $(LDFLAGS) $< -Wall ../lib$(LIBNAME).$(AR_EXT) -o $(subst $(BIN_EXT),,$@).static$(BIN_EXT)
+ 
+ %.o: %.c
+ 	${CC} ${CFLAGS} -c $< -o $@

Added: head/devel/capstone/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/capstone/pkg-descr	Mon Jan 27 07:00:24 2014	(r341330)
@@ -0,0 +1,16 @@
+Capstone is a lightweight multi-platform, multi-architecture disassembly
+framework.
+
+Features:
+ * Supported architectures: ARM, ARM64 (aka ARMv8), Mips, PowerPC & X86
+ * Clean/simple/lightweight/intuitive architecture-neutral API
+ * Provide details on disassembled instruction (called "decomposer")
+ * Provide some semantics of the disassembled instruction, such as list of
+   implicit registers read & written.
+ * Implemented in pure C language, with bindings for Python, Ruby, C#, Java,
+   GO, OCaml & Vala available.
+ * Native support for Windows & *nix (including MacOSX, Linux, *BSD & Solaris)
+ * Thread-safe by design
+ * Distributed under the open source BSD license
+
+WWW: http://capstone-engine.org/

Added: head/devel/capstone/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/capstone/pkg-plist	Mon Jan 27 07:00:24 2014	(r341330)
@@ -0,0 +1,10 @@
+include/capstone/arm.h
+include/capstone/arm64.h
+include/capstone/capstone.h
+include/capstone/mips.h
+include/capstone/ppc.h
+include/capstone/x86.h
+lib/libcapstone.a
+lib/libcapstone.so
+libdata/pkgconfig/capstone.pc
+@dirrmtry include/capstone



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201401270700.s0R70Omt066935>