distorm: Powerful disassembler library for x86/AMD64. New package
This commit is contained in:
11
mingw-w64-distorm/001-detect-mingw-python.patch
Normal file
11
mingw-w64-distorm/001-detect-mingw-python.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- distorm-3.3.0/setup.py.orig 2016-05-17 14:02:58.274320400 +0300
|
||||
+++ distorm-3.3.0/setup.py 2016-05-17 14:03:39.420820400 +0300
|
||||
@@ -177,7 +177,7 @@
|
||||
# Setup the library
|
||||
ext_modules = None
|
||||
libraries = None
|
||||
- if 'windows' in system:
|
||||
+ if 'windows' in system and not 'GCC' in sys.version:
|
||||
libraries = [(
|
||||
'distorm3', dict(
|
||||
package='distorm3',
|
||||
42
mingw-w64-distorm/Makefile
Normal file
42
mingw-w64-distorm/Makefile
Normal file
@@ -0,0 +1,42 @@
|
||||
#
|
||||
# diStorm3 (Linux Port)
|
||||
#
|
||||
|
||||
LIB_NAME = libdistorm3
|
||||
SHARED_EXT = .dll
|
||||
STATIC_EXT = .a
|
||||
IMPORT_EXT = ${SHARED_EXT}${STATIC_EXT}
|
||||
|
||||
TARGET = ${LIB_NAME}${SHARED_EXT}
|
||||
STATICLIB = ${LIB_NAME}${STATIC_EXT}
|
||||
IMPORTLIB = ${LIB_NAME}${IMPORT_EXT}
|
||||
COBJS = ../../src/mnemonics.o ../../src/wstring.o ../../src/textdefs.o ../../src/prefix.o ../../src/operands.o ../../src/insts.o ../../src/instructions.o ../../src/distorm.o ../../src/decoder.o
|
||||
CC = gcc
|
||||
CFLAGS = -O2 -Wall -DSUPPORT_64BIT_OFFSET -DDISTORM_STATIC
|
||||
WINDRES = windres
|
||||
|
||||
INSTALL_PREFIX = /usr/local
|
||||
|
||||
all: clib
|
||||
|
||||
clean:
|
||||
/bin/rm -rf ../../src/*.o ${TARGET} ../../${STATICLIB} ../../${IMPORTLIB} ./../*.o
|
||||
|
||||
resource.o: resource.rc
|
||||
$(WINDRES) --include-dir=. resource.rc $@
|
||||
|
||||
clib: ${COBJS}
|
||||
${CC} ${CFLAGS} ${VERSION} ${COBJS} -shared -o ${TARGET} -Wl,--out-implib,${IMPORTLIB}
|
||||
ar rs ${STATICLIB} ${COBJS}
|
||||
|
||||
install: ${TARGET}
|
||||
mkdir ${DESTDIR}${INSTALL_PREFIX}
|
||||
mkdir ${DESTDIR}${INSTALL_PREFIX}/bin
|
||||
mkdir ${DESTDIR}${INSTALL_PREFIX}/lib
|
||||
install -s ${TARGET} ${DESTDIR}${INSTALL_PREFIX}/bin
|
||||
install -s ${IMPORTLIB} ${DESTDIR}${INSTALL_PREFIX}/lib
|
||||
install -s ${STATICLIB} ${DESTDIR}${INSTALL_PREFIX}/lib
|
||||
|
||||
.c.o:
|
||||
${CC} ${CFLAGS} ${VERSION} -c $< -o $@
|
||||
|
||||
46
mingw-w64-distorm/PKGBUILD
Normal file
46
mingw-w64-distorm/PKGBUILD
Normal file
@@ -0,0 +1,46 @@
|
||||
# Maintainer: Alexey Pavlov <alexpux@gmail.com>
|
||||
|
||||
_realname=distorm
|
||||
pkgbase=mingw-w64-${_realname}
|
||||
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
|
||||
pkgver=3.3.0
|
||||
pkgrel=1
|
||||
pkgdesc="Powerful disassembler library for x86/AMD64 (mingw-w64)"
|
||||
arch=('any')
|
||||
url="https://github.com/gdabah/distorm"
|
||||
license=('GPL3')
|
||||
#depends=("${MINGW_PACKAGE_PREFIX}-python2")
|
||||
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
|
||||
optdepends=("${MINGW_PACKAGE_PREFIX}-python2")
|
||||
options=('strip' 'staticlibs')
|
||||
source=(${_realname}-${pkgver}.tar.gz::https://github.com/gdabah/distorm/archive/v${pkgver}.tar.gz
|
||||
Makefile
|
||||
001-detect-mingw-python.patch)
|
||||
sha256sums=('887e12671aafcb198ba90fa9de5a81fc0a2e682f420618ef7ba6cc4e84c04438'
|
||||
'a35882522a38d3ab685fd33dba746baf3704e6932e1c5707a8bd97e37ac51766'
|
||||
'bbe2c5bc9a088f93017b0f730b9b8730e943855a89085863bc674b528b9f59bb')
|
||||
|
||||
prepare() {
|
||||
cd ${_realname}-${pkgver}
|
||||
patch -p1 -i ${srcdir}/001-detect-mingw-python.patch
|
||||
cp -f ${srcdir}/Makefile make/win32/
|
||||
}
|
||||
|
||||
build() {
|
||||
cd ${_realname}-${pkgver}
|
||||
make -C make/win32
|
||||
}
|
||||
|
||||
package() {
|
||||
cd ${_realname}-${pkgver}
|
||||
|
||||
make -C make/win32 DESTDIR="${pkgdir}" INSTALL_PREFIX=${MINGW_PREFIX} install
|
||||
|
||||
sed -e '1i#!/usr/bin/env python2' -i python/distorm3/sample.py
|
||||
install -Dm 755 python/distorm3/sample.py "${pkgdir}${MINGW_PREFIX}/bin/disasm.py"
|
||||
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
|
||||
${MINGW_PREFIX}/bin/python2 setup.py install --prefix=${MINGW_PREFIX#\/} --root="${pkgdir}" -O1
|
||||
|
||||
install -Dm 644 include/*.h -t "${pkgdir}${MINGW_PREFIX}/include"
|
||||
install -Dm 644 COPYING "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"
|
||||
}
|
||||
Reference in New Issue
Block a user