diff options
author | khorben <khorben@pkgsrc.org> | 2018-02-23 02:42:06 +0000 |
---|---|---|
committer | khorben <khorben@pkgsrc.org> | 2018-02-23 02:42:06 +0000 |
commit | 072ebe2486063300e2719e7f4c08da50058e39bf (patch) | |
tree | 1bba3950c8f0b0639c8d5fa9ebfbfc615a8c8d08 /devel/capstone | |
parent | c5ab68af1522ad1dd5eb811def6a53500592b3f8 (diff) | |
download | pkgsrc-072ebe2486063300e2719e7f4c08da50058e39bf.tar.gz |
Update devel/capstone to version 3.0.5-rc2
This provides important fixes in the core & several bindings:
Library
Fix build for Visual Studio 2012
Fix X86_REL_ADDR macro
Add CS_VERSION_MAJOR, CS_VERSION_MINOR, CS_VERSION_EXTRA
Better support for embedding Capstone into Windows kernel drivers
Support to embedded Capstone into MacOS kernel
Support MacOS 10.11 and up
Better support for Cygwin
Support build packages for FreeBSD & DragonflyBSD
Add a command-line tool "cstool"
Properly handle switching to Endian mode at run-time for Arm, Arm64, Mips & Sparc
X86
Some random 16-bit code can be handled wrongly.
Remove abundant operand type X86_OP_FP
Fix instructions MOVQ, LOOP, LOOPE, LOOPNE, CALL/JMP rel16, REPNE LODSD, MOV *AX, MOFFS, FAR JMP/CALL
Add X86_REG_EFLAGS for STC and STD
Fix instruction attributes for SYSEXIT, MOVW, ROL, LGS, SLDT
Rename registers ST0-ST7 to be consistent with asm output
Arm
Properly handle IT instruction
Fix LDRSB
Fix writeback for LDR
Fix Thumb BigEndian setup
Arm
Fix arith extender
Fix writeback for LDR
Rename enum arm64_mrs_reg to arm64_sysreg
PowerPC
Print 0 offset for memory operand
Sparc
Fix POPC instruction
Python binding
Better PyPy support
Add __version__
Better support for Python 3
Fix CS_SKIPDATA_CALLBACK prototype
Cast skipdata function inside binding to simplify the API
Java binding
Better handle input with invalid code
PowerShell binding
New binding
Build-tested with devel/ropper and devel/{py-,}radare2 on NetBSD/amd64.
Diffstat (limited to 'devel/capstone')
-rw-r--r-- | devel/capstone/Makefile | 4 | ||||
-rw-r--r-- | devel/capstone/Makefile.common | 6 | ||||
-rw-r--r-- | devel/capstone/PLIST | 3 | ||||
-rw-r--r-- | devel/capstone/distinfo | 12 | ||||
-rw-r--r-- | devel/capstone/patches/patch-Makefile | 44 | ||||
-rw-r--r-- | devel/capstone/patches/patch-cstool_Makefile | 19 |
6 files changed, 31 insertions, 57 deletions
diff --git a/devel/capstone/Makefile b/devel/capstone/Makefile index 669fc23d7b4..3114888c387 100644 --- a/devel/capstone/Makefile +++ b/devel/capstone/Makefile @@ -1,9 +1,7 @@ -# $NetBSD: Makefile,v 1.9 2016/06/13 01:51:04 kamil Exp $ +# $NetBSD: Makefile,v 1.10 2018/02/23 02:42:06 khorben Exp $ .include "Makefile.common" -PKGREVISION= 2 - MAINTAINER= pkgsrc-users@NetBSD.org COMMENT= Lightweight multi-platform, multi-architecture disassembly framework LICENSE= modified-bsd diff --git a/devel/capstone/Makefile.common b/devel/capstone/Makefile.common index 1d371cc9749..3fc3eeab9b5 100644 --- a/devel/capstone/Makefile.common +++ b/devel/capstone/Makefile.common @@ -1,12 +1,12 @@ -# $NetBSD: Makefile.common,v 1.1 2016/06/13 01:51:04 kamil Exp $ +# $NetBSD: Makefile.common,v 1.2 2018/02/23 02:42:06 khorben Exp $ # # used by devel/py-capstone/Makefile -DISTNAME= capstone-3.0.4 +DISTNAME= capstone-3.0.5rc2 CATEGORIES= devel MASTER_SITES= ${MASTER_SITE_GITHUB:=aquynh/} +GITHUB_TAG= 3.0.5-rc2 HOMEPAGE= http://www.capstone-engine.org/ DISTINFO_FILE= ${.CURDIR}/../../devel/capstone/distinfo -PATCHDIR= ${.CURDIR}/../../devel/capstone/patches diff --git a/devel/capstone/PLIST b/devel/capstone/PLIST index 45f8776df02..e249a1364ed 100644 --- a/devel/capstone/PLIST +++ b/devel/capstone/PLIST @@ -1,4 +1,5 @@ -@comment $NetBSD: PLIST,v 1.1 2014/12/05 11:51:58 wiz Exp $ +@comment $NetBSD: PLIST,v 1.2 2018/02/23 02:42:06 khorben Exp $ +bin/cstool include/capstone/arm.h include/capstone/arm64.h include/capstone/capstone.h diff --git a/devel/capstone/distinfo b/devel/capstone/distinfo index effb5cee627..7b44c72d737 100644 --- a/devel/capstone/distinfo +++ b/devel/capstone/distinfo @@ -1,7 +1,7 @@ -$NetBSD: distinfo,v 1.9 2016/02/20 11:40:30 jperkin Exp $ +$NetBSD: distinfo,v 1.10 2018/02/23 02:42:06 khorben Exp $ -SHA1 (capstone-3.0.4.tar.gz) = 6153bbb4a4141fd9e6996d646cf7c81953cfe75a -RMD160 (capstone-3.0.4.tar.gz) = 3f96993cc7cd2fbc1080e785bb7c7ae7f209d0f9 -SHA512 (capstone-3.0.4.tar.gz) = a5c29e7c559b5391d6a4ec9a7f766699ea6d321aa2f1fc57fdcec893107fa3ef2f5f6323629971c1129f1ca087df4f3ad03d0a8234d2eae368c8ccfec04dbf4d -Size (capstone-3.0.4.tar.gz) = 2800818 bytes -SHA1 (patch-Makefile) = a29910046034f468101b6b291c4f995923d09528 +SHA1 (capstone-3.0.5rc2.tar.gz) = 52052e754c4f92128d16d5b028b85f646547f091 +RMD160 (capstone-3.0.5rc2.tar.gz) = 960473fc8f4b7113adc291b768e668e27a7c8b56 +SHA512 (capstone-3.0.5rc2.tar.gz) = 31bafdb0b3183d0c054a4244cc135db9a3c3dc5cb2e2af706bfede0d53cca8cba81d74b74ef9a4adbfd6c79cc408864dd80b8203791e17bd6c98bb69ea4f6894 +Size (capstone-3.0.5rc2.tar.gz) = 2829338 bytes +SHA1 (patch-cstool_Makefile) = 94c029a1f667ceffad787f056c332c11001344df diff --git a/devel/capstone/patches/patch-Makefile b/devel/capstone/patches/patch-Makefile deleted file mode 100644 index cc7e707fbbb..00000000000 --- a/devel/capstone/patches/patch-Makefile +++ /dev/null @@ -1,44 +0,0 @@ -$NetBSD: patch-Makefile,v 1.2 2016/02/20 11:40:30 jperkin Exp $ - -Unbreak build on FreeBSD and DragonflyBSD. - -Patch accepted upstream: -https://github.com/aquynh/capstone/commit/453b41a29ed7f02f8319329cc86853d394b85a1e - -Fix install_name on Darwin. - ---- Makefile.orig 2015-07-15 07:44:42.000000000 +0000 -+++ Makefile -@@ -70,12 +70,18 @@ LIBDIRARCH ?= lib - LIBDIR = $(DESTDIR)$(PREFIX)/$(LIBDIRARCH) - - LIBDATADIR = $(LIBDIR) -+ -+# Don't redefine $LIBDATADIR when global environment variable -+# USE_GENERIC_LIBDATADIR is set. This is used by the pkgsrc framework. -+ -+ifndef USE_GENERIC_LIBDATADIR - ifeq ($(UNAME_S), FreeBSD) - LIBDATADIR = $(DESTDIR)$(PREFIX)/libdata - endif - ifeq ($(UNAME_S), DragonFly) - LIBDATADIR = $(DESTDIR)$(PREFIX)/libdata - endif -+endif - - INSTALL_BIN ?= install - INSTALL_DATA ?= $(INSTALL_BIN) -m0644 -@@ -248,7 +254,7 @@ IS_APPLE := $(shell $(CC) -dM -E - < /de - ifeq ($(IS_APPLE),1) - EXT = dylib - VERSION_EXT = $(API_MAJOR).$(EXT) --$(LIBNAME)_LDFLAGS += -dynamiclib -install_name lib$(LIBNAME).$(VERSION_EXT) -current_version $(PKG_MAJOR).$(PKG_MINOR).$(PKG_EXTRA) -compatibility_version $(PKG_MAJOR).$(PKG_MINOR) -+$(LIBNAME)_LDFLAGS += -dynamiclib -install_name ${LIBDIR}/lib$(LIBNAME).$(VERSION_EXT) -current_version $(PKG_MAJOR).$(PKG_MINOR).$(PKG_EXTRA) -compatibility_version $(PKG_MAJOR).$(PKG_MINOR) - AR_EXT = a - # Homebrew wants to make sure its formula does not disable FORTIFY_SOURCE - # However, this is not really necessary because 'CAPSTONE_USE_SYS_DYN_MEM=yes' by default -@@ -463,4 +469,3 @@ define generate-pkgcfg - echo 'Libs: -L$${libdir} -lcapstone' >> $(PKGCFGF) - echo 'Cflags: -I$${includedir}' >> $(PKGCFGF) - endef -- diff --git a/devel/capstone/patches/patch-cstool_Makefile b/devel/capstone/patches/patch-cstool_Makefile new file mode 100644 index 00000000000..79e2f8684db --- /dev/null +++ b/devel/capstone/patches/patch-cstool_Makefile @@ -0,0 +1,19 @@ +$NetBSD: patch-cstool_Makefile,v 1.1 2018/02/23 02:42:06 khorben Exp $ + +Fix path to the libraries installed. + +--- cstool/Makefile.orig 2017-03-02 14:21:24.000000000 +0000 ++++ cstool/Makefile +@@ -6,8 +6,10 @@ include ../functions.mk + + LIBNAME = capstone + +-CFLAGS = -I../include +-LDFLAGS = -O3 -Wall -L.. -l$(LIBNAME) ++PREFIX ?= /usr ++LIBDIRARCH ?= lib ++CFLAGS = -I../include -O3 -Wall ++LDFLAGS = -Wl,-rpath,$(PREFIX)/$(LIBDIRARCH) -L.. -l$(LIBNAME) + + TARGET = cstool + SOURCES := $(wildcard *.c) |