Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel devel/capstone: Update to 4.0.2



details:   https://anonhg.NetBSD.org/pkgsrc/rev/8179b5602a4b
branches:  trunk
changeset: 437230:8179b5602a4b
user:      riastradh <riastradh%pkgsrc.org@localhost>
date:      Tue Aug 18 20:20:46 2020 +0000

description:
devel/capstone: Update to 4.0.2

3.0.5
July 18, 2018

Release 3.0.5 is a stable release version, with important fixes in the core & several bindings against v3.0.5-rc3.
Library

    Fix the include path for Android builds when building cstool.
    Add posibility to disable universal build for Mac OS.
    cstool: Separate instruction bytes by spaces.
    Fix code path of pkg-config in Cmake.
    Update XCode project for XCode 9.1.
    Add Cortex-M support to cstool.
    Cmake forces to be build using MT with MSVC.
    Better support for Mac OS kernel.

X86

    Fix some issues in handling EVEX & VEX3 instructions.
    Fix immediate operand for AND instruction in ATT mode.
    Fix ATT syntax when imm operand is 0.
    Better handle XACQUIRE/XRELEASE.
    Fix imm operand of RETF.

Arm

    Fix an integer overlow bug.

Arm64

    Bug fix for incorrect operand type in certain load/store instructions.

Mips

    Mode CS_MODE_MIPS32R6 automatically sets CS_MODE_32

PowerPC

    Fix endian check.

Sparc

    Fix an integer overlow bug.

SystemZ

    Fix an integer overlow bug.

Python binding

    Raise error on accessing irrelevant data fields if skipdata & detail modes are enable.

4.0
December 18, 2018

Release 4.0 is a stable release version, with important fixes in the core & several bindings against v3.0.5.
Core

    New APIs: cs_regs_access()
    Add new options for cs_option(): CS_OPT_MNEMONIC & CS_OPT_UNSIGNED & CS_OPT_SYNTAX_MASM.
    Various updates & bugfixes for all architectures.
    Add 4 new architectures: EVM, M68K, M680X & TMS320C64x.
    Add new group types: CS_GRP_PRIVILEGE & CS_GRP_BRANCH_RELATIVE.
    Add new error types: CS_ERR_X86_MASM.

X86

    Add XOP code condition type in x86_xop_cc.
    Add some info on encoding to cs_x86 in cs_x86_encoding.
    Add register flags update in cs_x86.{eflags, fpu_flags}
    Change cs_x86.disp type from int32_t to int64_t.
    Add new groups: X86_GRP_VM & X86_GRP_FPU.
    Lots of new instructions (AVX)

Arm64

    Add instruction ARM64_INS_NEGS & ARM64_INS_NGCS.

Mips

    Add mode CS_MODE_MIPS2.

PowerPC

    Change cs_ppc_op.imm type from int32_t to int64_t.
    Add new groups: PPC_GRP_ICBT, PPC_GRP_P8ALTIVEC, PPC_GRP_P8VECTOR & PPC_GRP_QPX.
    Lots of new instructions (QPX among them)

Sparc

    Change cs_sparc_op.imm type from int32_t to int64_t.

Bindings

    New bindings: PowerShell & VB6

4.0.1
January 10, 2019

Release 4.0.1 is a stable release version, with minor bugfixes in the core & Python binding.
Core

    Fix some issues for packaging (Debian, Gentoo, etc).
    Better support for building with Mingw.
    cstool has new option -s to turn on skipdata mode.
    cstool -v now report build settings of the core.
    Add suite/capstone_get_setup.c so users can integrate with their own code to retrieve Capstone settings at build time.

Arm

    Fix 4.0 regression: the tbh [r0, r1, lsl #1] instruction sets the operand.shift.value back again.
    Remove ARM_REG_PC group for BX instruction.

X86

    endbr32 and endbr64 instructions are now properly decoded in both CS_MODE_32 and CS_MODE_64.

M680X

    Fix some issues reported by clang-analyzer.

Python binding

    Fix skipdata setup.
    Add getter/setter for skipdata_mnem & skipdata_callback.

4.0.2
May 8, 2020

Release 4.0.2 is a stable release version, with minor bugfixes in the core & some bindings.
Core

    Windows kernel-mode driver support
    Fix installation path on FreeBSD and DragonFly

Cstool

    Add armv8, ppc32 & thumbv8 modes
    Print instruction ID

X86

    Support CS_OPT_UNSIGNED for ATT syntax
    Fix operand size for some instructions
    Fix LOCK prefixes
    Recognize xacquire/xrelease prefix
    Fix call/jmp access mode of mem operand
    Add ENDBR32, ENDBR64 to reduce mode
    Other minor fixes

Arm

    Update writeback for STR_POST_REG

ARM64

    Support CS_OPT_UNSIGNED
    Fix register access flags for memory instructions
    Fix UMOV vess

M68K

    Store correct register value in op.reg_pair

PowerPC

    BDZLA is absolute branch

SystemZ

    Fix truncated 64bit imm operand
    Fix base/index printing

Python binding

    Fix skipdata struct being destroyed
    Add repr for capstone.CsInsn

Java binding

    Fix Java bindings to use pointers instead of longs

Ocaml binding

    Fix x86_op record

diffstat:

 devel/capstone/Makefile.common                                        |   6 +-
 devel/capstone/PLIST                                                  |   8 ++-
 devel/capstone/distinfo                                               |  16 ++--
 devel/capstone/patches/patch-bindings_python_capstone_____init____.py |  10 +-
 devel/capstone/patches/patch-bindings_python_setup.py                 |  17 +++--
 devel/capstone/patches/patch-cstool_Makefile                          |  12 ++--
 devel/py-capstone/PLIST                                               |  30 +++++++++-
 7 files changed, 66 insertions(+), 33 deletions(-)

diffs (208 lines):

diff -r 12620df308a8 -r 8179b5602a4b devel/capstone/Makefile.common
--- a/devel/capstone/Makefile.common    Tue Aug 18 20:20:33 2020 +0000
+++ b/devel/capstone/Makefile.common    Tue Aug 18 20:20:46 2020 +0000
@@ -1,11 +1,11 @@
-# $NetBSD: Makefile.common,v 1.4 2020/01/26 17:30:56 rillig Exp $
+# $NetBSD: Makefile.common,v 1.5 2020/08/18 20:20:46 riastradh Exp $
 #
 # used by devel/py-capstone/Makefile
 
-DISTNAME=      capstone-3.0.5rc2
+DISTNAME=      capstone-4.0.2
 CATEGORIES=    devel
 MASTER_SITES=  ${MASTER_SITE_GITHUB:=aquynh/}
-GITHUB_TAG=    3.0.5-rc2
+GITHUB_TAG=    4.0.2
 
 HOMEPAGE=      https://www.capstone-engine.org/
 
diff -r 12620df308a8 -r 8179b5602a4b devel/capstone/PLIST
--- a/devel/capstone/PLIST      Tue Aug 18 20:20:33 2020 +0000
+++ b/devel/capstone/PLIST      Tue Aug 18 20:20:46 2020 +0000
@@ -1,16 +1,20 @@
-@comment $NetBSD: PLIST,v 1.2 2018/02/23 02:42:06 khorben Exp $
+@comment $NetBSD: PLIST,v 1.3 2020/08/18 20:20:46 riastradh Exp $
 bin/cstool
 include/capstone/arm.h
 include/capstone/arm64.h
 include/capstone/capstone.h
+include/capstone/evm.h
+include/capstone/m680x.h
+include/capstone/m68k.h
 include/capstone/mips.h
 include/capstone/platform.h
 include/capstone/ppc.h
 include/capstone/sparc.h
 include/capstone/systemz.h
+include/capstone/tms320c64x.h
 include/capstone/x86.h
 include/capstone/xcore.h
 lib/libcapstone.a
 lib/libcapstone.so
-lib/libcapstone.so.3
+lib/libcapstone.so.4
 lib/pkgconfig/capstone.pc
diff -r 12620df308a8 -r 8179b5602a4b devel/capstone/distinfo
--- a/devel/capstone/distinfo   Tue Aug 18 20:20:33 2020 +0000
+++ b/devel/capstone/distinfo   Tue Aug 18 20:20:46 2020 +0000
@@ -1,9 +1,9 @@
-$NetBSD: distinfo,v 1.12 2018/08/25 14:39:11 wiz Exp $
+$NetBSD: distinfo,v 1.13 2020/08/18 20:20:46 riastradh Exp $
 
-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-bindings_python_capstone_____init____.py) = a634a7fb27da8c9a391504d42801180293ec767c
-SHA1 (patch-bindings_python_setup.py) = 8d209df5d7ed4b2cc8283394fd1ec9659ab86a72
-SHA1 (patch-cstool_Makefile) = 8bdc86ca209f44a26141d5c45c2be84c0e951ddb
+SHA1 (capstone-4.0.2.tar.gz) = c0dfa4f6236a4505916ce67d63b856bf806b0d83
+RMD160 (capstone-4.0.2.tar.gz) = d99a45aee7fea4f27d07ff154946b2485b6e4bac
+SHA512 (capstone-4.0.2.tar.gz) = 7f93534517307b737422a8825b66b2a1f3e1cca2049465d60ab12595940154aaf843ba40ed348fce58de58b990c19a0caef289060eb72898cb008a88c470970e
+Size (capstone-4.0.2.tar.gz) = 3439542 bytes
+SHA1 (patch-bindings_python_capstone_____init____.py) = ea410a99d4cd4ee0a109a7225b739971472c387d
+SHA1 (patch-bindings_python_setup.py) = aebe4104ece594a7432961dd07c5d739da70f963
+SHA1 (patch-cstool_Makefile) = 68dd0a175d0e2270e2813f784cae5ca9f89a3a05
diff -r 12620df308a8 -r 8179b5602a4b devel/capstone/patches/patch-bindings_python_capstone_____init____.py
--- a/devel/capstone/patches/patch-bindings_python_capstone_____init____.py     Tue Aug 18 20:20:33 2020 +0000
+++ b/devel/capstone/patches/patch-bindings_python_capstone_____init____.py     Tue Aug 18 20:20:46 2020 +0000
@@ -1,13 +1,13 @@
-$NetBSD: patch-bindings_python_capstone_____init____.py,v 1.1 2018/03/24 17:10:42 joerg Exp $
+$NetBSD: patch-bindings_python_capstone_____init____.py,v 1.2 2020/08/18 20:20:46 riastradh Exp $
 
---- bindings/python/capstone/__init__.py.orig  2017-03-02 14:21:24.000000000 +0000
+--- bindings/python/capstone/__init__.py.orig  2020-05-08 10:03:30.000000000 +0000
 +++ bindings/python/capstone/__init__.py
-@@ -214,7 +214,7 @@ else:
+@@ -280,7 +280,7 @@ else:
  _found = False
  
  def _load_lib(path):
 -    lib_file = join(path, _lib)
 +    lib_file = join(sys.prefix, 'lib', _lib)
-     try:
+     if os.path.exists(lib_file):
          return ctypes.cdll.LoadLibrary(lib_file)
-     except OSError:
+     else:
diff -r 12620df308a8 -r 8179b5602a4b devel/capstone/patches/patch-bindings_python_setup.py
--- a/devel/capstone/patches/patch-bindings_python_setup.py     Tue Aug 18 20:20:33 2020 +0000
+++ b/devel/capstone/patches/patch-bindings_python_setup.py     Tue Aug 18 20:20:46 2020 +0000
@@ -1,18 +1,19 @@
-$NetBSD: patch-bindings_python_setup.py,v 1.1 2018/03/24 17:10:42 joerg Exp $
+$NetBSD: patch-bindings_python_setup.py,v 1.2 2020/08/18 20:20:46 riastradh Exp $
 
---- bindings/python/setup.py.orig      2018-03-24 13:56:27.958002410 +0000
+--- bindings/python/setup.py.orig      2020-05-08 10:03:30.000000000 +0000
 +++ bindings/python/setup.py
-@@ -129,11 +129,9 @@ def build_libraries():
+@@ -140,14 +140,6 @@ def build_libraries():
          # Do not build tests & static library
          os.system('cmake -DCMAKE_BUILD_TYPE=RELEASE -DCAPSTONE_BUILD_TESTS=0 -DCAPSTONE_BUILD_STATIC=0 -G "NMake Makefiles" ..')
          os.system("nmake")
 -    else:   # Unix incl. cygwin
 -        os.system("CAPSTONE_BUILD_CORE_ONLY=yes bash ./make.sh")
- 
--    shutil.copy(LIBRARY_FILE, LIBS_DIR)
--    if STATIC_LIBRARY_FILE: shutil.copy(STATIC_LIBRARY_FILE, LIBS_DIR)
-+    #shutil.copy(LIBRARY_FILE, LIBS_DIR)
-+    #if STATIC_LIBRARY_FILE: shutil.copy(STATIC_LIBRARY_FILE, LIBS_DIR)
+-
+-    shutil.copy(VERSIONED_LIBRARY_FILE, os.path.join(LIBS_DIR, LIBRARY_FILE))
+-
+-    # only copy static library if it exists (it's a build option)
+-    if STATIC_LIBRARY_FILE and os.path.exists(STATIC_LIBRARY_FILE):
+-        shutil.copy(STATIC_LIBRARY_FILE, LIBS_DIR)
      os.chdir(cwd)
  
  
diff -r 12620df308a8 -r 8179b5602a4b devel/capstone/patches/patch-cstool_Makefile
--- a/devel/capstone/patches/patch-cstool_Makefile      Tue Aug 18 20:20:33 2020 +0000
+++ b/devel/capstone/patches/patch-cstool_Makefile      Tue Aug 18 20:20:46 2020 +0000
@@ -1,19 +1,19 @@
-$NetBSD: patch-cstool_Makefile,v 1.2 2018/08/25 14:39:11 wiz Exp $
+$NetBSD: patch-cstool_Makefile,v 1.3 2020/08/18 20:20:46 riastradh Exp $
 
 Fix path to the libraries installed.
 
---- cstool/Makefile.orig       2017-03-02 14:21:24.000000000 +0000
+--- cstool/Makefile.orig       2020-05-08 10:03:30.000000000 +0000
 +++ cstool/Makefile
 @@ -6,8 +6,10 @@ include ../functions.mk
  
  LIBNAME = capstone
  
--CFLAGS = -I../include
--LDFLAGS = -O3 -Wall -L.. -l$(LIBNAME)
+-CFLAGS += -I../include -I.
+-LDFLAGS += -O3 -Wall -L.. -l$(LIBNAME)
 +PREFIX ?= /usr
 +LIBDIRARCH ?= lib
-+CFLAGS = -I../include -O3 -Wall
-+LDFLAGS += -Wl,-rpath,$(PREFIX)/$(LIBDIRARCH) -L.. -l$(LIBNAME)
++CFLAGS += -I../include -I. -O3 -Wall
++LDFLAGS += $(COMPILER_RPATH_FLAG)$(PREFIX)/$(LIBDIRARCH) -L.. -l$(LIBNAME)
  
  TARGET = cstool
  SOURCES := $(wildcard *.c)
diff -r 12620df308a8 -r 8179b5602a4b devel/py-capstone/PLIST
--- a/devel/py-capstone/PLIST   Tue Aug 18 20:20:33 2020 +0000
+++ b/devel/py-capstone/PLIST   Tue Aug 18 20:20:46 2020 +0000
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.3 2018/03/24 17:10:42 joerg Exp $
+@comment $NetBSD: PLIST,v 1.4 2020/08/18 20:20:46 riastradh Exp $
 ${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
 ${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
 ${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
@@ -19,16 +19,38 @@
 ${PYSITELIB}/capstone/arm_const.py
 ${PYSITELIB}/capstone/arm_const.pyc
 ${PYSITELIB}/capstone/arm_const.pyo
+${PYSITELIB}/capstone/evm.py
+${PYSITELIB}/capstone/evm.pyc
+${PYSITELIB}/capstone/evm.pyo
+${PYSITELIB}/capstone/evm_const.py
+${PYSITELIB}/capstone/evm_const.pyc
+${PYSITELIB}/capstone/evm_const.pyo
 ${PYSITELIB}/capstone/include/capstone/arm.h
 ${PYSITELIB}/capstone/include/capstone/arm64.h
 ${PYSITELIB}/capstone/include/capstone/capstone.h
+${PYSITELIB}/capstone/include/capstone/evm.h
+${PYSITELIB}/capstone/include/capstone/m680x.h
+${PYSITELIB}/capstone/include/capstone/m68k.h
 ${PYSITELIB}/capstone/include/capstone/mips.h
 ${PYSITELIB}/capstone/include/capstone/platform.h
 ${PYSITELIB}/capstone/include/capstone/ppc.h
 ${PYSITELIB}/capstone/include/capstone/sparc.h
 ${PYSITELIB}/capstone/include/capstone/systemz.h
+${PYSITELIB}/capstone/include/capstone/tms320c64x.h
 ${PYSITELIB}/capstone/include/capstone/x86.h
 ${PYSITELIB}/capstone/include/capstone/xcore.h
+${PYSITELIB}/capstone/m680x.py
+${PYSITELIB}/capstone/m680x.pyc
+${PYSITELIB}/capstone/m680x.pyo
+${PYSITELIB}/capstone/m680x_const.py
+${PYSITELIB}/capstone/m680x_const.pyc
+${PYSITELIB}/capstone/m680x_const.pyo
+${PYSITELIB}/capstone/m68k.py
+${PYSITELIB}/capstone/m68k.pyc
+${PYSITELIB}/capstone/m68k.pyo
+${PYSITELIB}/capstone/m68k_const.py
+${PYSITELIB}/capstone/m68k_const.pyc
+${PYSITELIB}/capstone/m68k_const.pyo
 ${PYSITELIB}/capstone/mips.py
 ${PYSITELIB}/capstone/mips.pyc
 ${PYSITELIB}/capstone/mips.pyo
@@ -53,6 +75,12 @@
 ${PYSITELIB}/capstone/sysz_const.py
 ${PYSITELIB}/capstone/sysz_const.pyc
 ${PYSITELIB}/capstone/sysz_const.pyo
+${PYSITELIB}/capstone/tms320c64x.py
+${PYSITELIB}/capstone/tms320c64x.pyc
+${PYSITELIB}/capstone/tms320c64x.pyo
+${PYSITELIB}/capstone/tms320c64x_const.py
+${PYSITELIB}/capstone/tms320c64x_const.pyc
+${PYSITELIB}/capstone/tms320c64x_const.pyo
 ${PYSITELIB}/capstone/x86.py
 ${PYSITELIB}/capstone/x86.pyc
 ${PYSITELIB}/capstone/x86.pyo



Home | Main Index | Thread Index | Old Index