./emulators/keystone, Multi-platform and multi-arch assembler framework

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


Branch: CURRENT, Version: 0.9.1, Package name: keystone-0.9.1, 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.


Required to run:
[lang/python27]

Required to build:
[pkgtools/cwrappers]

Master sites:

SHA1: 0ac37259154af91dd58cfc2dc5a5ecf8e801d3d3
RMD160: 8ddd3674623ca107c05ff9400deff47ef6b882ad
Filesize: 4224.757 KB

Version history: (Expand)


CVS history: (Expand)


   2018-02-19 01:52:29 by Kamil Rytarowski | Files touched by this commit (5) | Package updated
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-18 16:45:43 by Kamil Rytarowski | Files touched by this commit (1)
Log message:
Include pyversion.mk to fix build

CMake Error at llvm/CMakeLists.txt:340 (message):
  Unable to find Python interpreter, required for builds and testing.
   2016-06-14 08:59:43 by Kamil Rytarowski | Files touched by this commit (1) | Package updated
Log message:
Add buildlink3.mk to emulators/keystone

Bump PKGREVISION.
   2016-06-11 23:08:21 by Kamil Rytarowski | Files touched by this commit (1)
Log message:
Remove stray references to pkgsrc-wip
   2016-06-11 23:03:41 by Kamil Rytarowski | Files touched by this commit (5)
Log message:
Import keystone-0.9 as emulators/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.

Originally packaged in pkgsrc-wip by myself.