./emulators/py-keystone, Python bindings for keystone

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 0.9.2nb1, Package name: py310-keystone-0.9.2nb1, Maintainer: pkgsrc-users

Keystone is a lightweight multi-platform, multi-architecture assembler
framework.

It offers some unparalleled features:
* Multi-architecture, with support for Arm, Arm64 (AArch64/Armv8), Hexagon,
Mips, PowerPC, Sparc, SystemZ & X86 (include 16/32/64bit).
* Clean/simple/lightweight/intuitive architecture-neutral API.
* Implemented in C/C++ languages, with bindings for Python, NodeJS, Ruby,
Go & Rust available.
* Native support for Windows & *nix (with Mac OSX, Linux, *BSD & Solaris
confirmed).
* Thread-safe by design.
* Open source - with a dual license.

Keystone is based on LLVM, but it goes much further with a lot more to offer.

This package ships with Python bindings.


Required to run:
[lang/python27] [emulators/keystone]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 4329.318 KB

Version history: (Expand)


CVS history: (Expand)


   2022-01-04 21:55:40 by Thomas Klausner | Files touched by this commit (1595)
Log message:
*: bump PKGREVISION for egg.mk users

They now have a tool dependency on py-setuptools instead of a DEPENDS
   2021-03-12 15:48:12 by Nia Alarie | Files touched by this commit (1)
Log message:
py-keystone: needs cmake.
   2021-02-10 11:35:13 by Adam Ciarcinski | Files touched by this commit (7) | Package updated
Log message:
keystone py-keystone: updated to 0.9.2

Version 0.9.2

This version fixes some important bugs inside the core of Keystone, added some \ 
new bindings & made some minor improvements. All users of Keystone are \ 
encouraged to upgrade to v0.9.1.
   2018-02-19 01:52:29 by Kamil Rytarowski | Files touched by this commit (5)
Log message:
keystone: py-keystone: Update to 0.9.1

upstream changelog
==================
Version 0.9.1
July 27, 2016

Core & tool

    Fix a segfault in kstool (on missing assembly input).
    kstool now allows to specify instruction address.
    Build Mac libraries in universal format by default.
    Add lib32 option to cross-compile to 32-bit *nix (on 64-bit system).
    Add lib_only option to only build libraries (skip kstool).
    New bindings: Haskell & OCaml.

X86

    Fix instructions: LJMP, LCALL, CDQE, SHR, SHL, SAR, SAL, LOOP, LOOPE, LOOPNE.
    Better handling a lot of tricky input caught by assert() before.
    Better support for Nasm syntax.

Arm

    Fix BLX instruction.

Python binding

    Better Python3 support.
    Expose @stat_count in KsError class when ks_asm() returns with error. See \ 
sample code in bindings/python/sample_asm_count.py

Go binding

    Fix Go binding for 32-bit
   2016-06-11 23:06:48 by Kamil Rytarowski | Files touched by this commit (3)
Log message:
Import keystone-0.9 as emulators/py-keystone

Keystone is a lightweight multi-platform, multi-architecture assembler
framework.

It offers some unparalleled features:
 *   Multi-architecture, with support for Arm, Arm64 (AArch64/Armv8), Hexagon,
     Mips, PowerPC, Sparc, SystemZ & X86 (include 16/32/64bit).
 *   Clean/simple/lightweight/intuitive architecture-neutral API.
 *   Implemented in C/C++ languages, with bindings for Python, NodeJS, Ruby,
     Go & Rust available.
 *   Native support for Windows & *nix (with Mac OSX, Linux, *BSD & Solaris
     confirmed).
 *   Thread-safe by design.
 *   Open source - with a dual license.

Keystone is based on LLVM, but it goes much further with a lot more to offer.

This package ships with Python bindings.

Originally packaged in pkgsrc-wip by myself.