debian/0000755000000000000000000000000011674056411007173 5ustar debian/source/0000755000000000000000000000000011673154211010467 5ustar debian/source/format0000644000000000000000000000001411673154211011675 0ustar 3.0 (quilt) debian/compat0000644000000000000000000000000211673154211010365 0ustar 8 debian/docs0000644000000000000000000000001511674042036010040 0ustar README doc/* debian/control0000644000000000000000000000421511674050212010571 0ustar Source: distorm64 Priority: extra Maintainer: David Martínez Moreno Build-Depends: debhelper (>= 8.0.0), python-dev (>> 2.7) Standards-Version: 3.9.2 Section: libs Homepage: http://ragestorm.net/distorm/ Package: libdistorm64-dev Section: libdevel Architecture: any Depends: libdistorm64-1 (= ${binary:Version}), ${misc:Depends} Description: ultimate disassembler library for x86 code - header files Distorm64 is a fast disassembler library for the x86-64 instruction set. These are the header files. For more information, see the libdistorm64-1 package description. Package: libdistorm64-1 Section: libs Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Description: ultimate disassembler library for x86 code Distorm64 is a fast disassembler library for the x86-64 instruction set. Main features are: - It's really fast. - It supports multi-threading. - It supports AMD64, and all other 80x86 instruction sets. - It supports up to date instruction sets, such as VMX and SSE4. - It handles instruction prefixes in a serious manner. - Unused/extra prefixes are dropped (output as DB'ed). - Lock prefix works only on lockable instructions if the first operand is in the form of memory indirection. - REPn/z prefix works only on repeatable string instructions as well as I/O instructions. - Segment Override prefixes are possible where memory indirection address is being used (and specially treated with string and I/O instructions). - Some SSE2 instructions support pseudo opcodes (CMP family). - "Native" instructions, those which have the same mnemonic in different decoding modes, unless there's an operand size prefix, which then a suffix letter is concatenated to the mnemonic in order to indicate the operation size (instructions like: PUSHA, IRET, etc.). - XLAT instruction is treated specially when prefixed. - Drops invalid instructions when their operands are invalid. - Won't decode instructions which are longer than 15 bytes. - CR8 register is now accessible using the Lock prefix in 32 bits decoding mode. - In 64-bit decoding mode the Segment Override prefixes CS, DS, ES and SS are ignored. debian/patches/0000755000000000000000000000000011674050704010621 5ustar debian/patches/series0000644000000000000000000000005311673767165012053 0ustar 101_python_path 102_versatile_make_install debian/patches/101_python_path0000644000000000000000000000102011673527413013460 0ustar Description: Compile Distorm64 with Python 2.7 Distorm expects Python 2.5 in the include file, so modify it to make Python 2.7 the default. Author: David Martínez Moreno Forwarded: no Last-Update: 2011-12-18 --- distorm64-1.7.30.orig/src/pydistorm.h +++ distorm64-1.7.30/src/pydistorm.h @@ -22,7 +22,7 @@ This library is licensed under the BSD l #include "decoder.h" #ifdef __GNUC__ - #include + #include #elif _MSC_VER #include #endif debian/patches/102_versatile_make_install0000644000000000000000000000324211674050704015650 0ustar Description: Add to Makefile usual facilities like DESTDIR and TARGET. With this patch Makefile accepts a DESTDIR for installation, and changing the name of the shared object is easier, as there's only one place to touch. Forwarded: no Last-Update: <2011-12-20> --- a/build/linux/Makefile +++ b/build/linux/Makefile @@ -2,26 +2,29 @@ # diStorm64 (Linux Port) # -TARGET = libdistorm64.so +TARGET = libdistorm64.so.1 +STATIC_TARGET = libdistorm64.a COBJS = ../../src/x86defs.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 PYOBJS = ../../src/x86defs.o ../../src/wstring.o ../../src/textdefs.o ../../src/pydistorm.o ../../src/prefix.o ../../src/operands.o ../../src/insts.o ../../src/instructions.o ../../src/decoder.o CC = gcc CFLAGS = -O2 -Wall -fPIC -DSUPPORT_64BIT_OFFSET -D_DLL +DESTDIR ?= /usr/local/lib all: clib py clean: - /bin/rm -rf ../../src/*.o ${TARGET} ../../distorm64.a + /bin/rm -rf ../../src/*.o ${TARGET} ../../$(STATIC_TARGET) clib: ${COBJS} - ${CC} ${CFLAGS} ${VERSION} ${COBJS} -fPIC -shared -o ${TARGET} - ar rs ../../distorm64.a ${COBJS} + ${CC} ${CFLAGS} ${VERSION} ${COBJS} -fPIC -Wl,-soname,${TARGET} -shared -o ${TARGET} + ar rs ../../$(STATIC_TARGET) ${COBJS} py: ${PYOBJS} - ${CC} ${CFLAGS} ${VERSION} ${PYOBJS} -fPIC -shared -o ${TARGET} + ${CC} ${CFLAGS} ${VERSION} ${PYOBJS} -fPIC -Wl,-soname,${TARGET} -shared -o ${TARGET} -install: libdistorm64.so - install -s ${TARGET} /usr/local/lib +install: ${TARGET} + install -d ${DESTDIR} + install -s ${TARGET} ${DESTDIR} @echo "... running ldconfig might be smart ..." .c.o: debian/libdistorm64-dev.dirs0000644000000000000000000000003611674051001013141 0ustar usr/lib usr/include/distorm64 debian/rules0000755000000000000000000000122511674044514010254 0ustar #!/usr/bin/make -f # -*- makefile -*- # Sample debian/rules that uses debhelper. # This file was originally written by Joey Hess and Craig Small. # As a special exception, when this file is copied by dh-make into a # dh-make output file, you may use that output file without restriction. # This special exception was added by Craig Small in version 0.37 of dh-make. # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 %: dh $@ override_dh_auto_build: make -C build/linux override_dh_auto_install: make -C build/linux install DESTDIR=$(CURDIR)/debian/tmp/usr/lib override_dh_clean: dh_clean make -C build/linux clean override_dh_pysupport: debian/libdistorm64-1.dirs0000644000000000000000000000001011673154211012521 0ustar usr/lib debian/libdistorm64-1.install0000644000000000000000000000002211673766430013245 0ustar usr/lib/lib*.so.* debian/copyright0000644000000000000000000000475311674041702011134 0ustar Format: http://dep.debian.net/deps/dep5 Upstream-Name: DiStorm64 Source: http://ragestorm.net/distorm/ Files: * Copyright: 2003-2008, Gil Dabah License: BSD-3-Clause Files: debian/* Copyright: 2011 David Martínez Moreno License: GPL-2.0+ License: GPL-2.0+ This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. . This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see . . On Debian systems, the complete text of the GNU General Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". License: BSD-3-Clause Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. debian/changelog0000644000000000000000000000024311674046037011047 0ustar distorm64 (1.7.30-1) unstable; urgency=low * Initial release (closes: #652711). -- David Martínez Moreno Tue, 20 Dec 2011 00:49:32 -0800 debian/libdistorm64-dev.install0000644000000000000000000000005611674050772013666 0ustar src/*.h /usr/include/distorm64/ *.a /usr/lib/