--- eresi-0.0.20110516.orig/debian/etrace.dirs +++ eresi-0.0.20110516/debian/etrace.dirs @@ -0,0 +1,2 @@ +usr/bin +usr/share/man/man1 --- eresi-0.0.20110516.orig/debian/libmjollnir0-dev.dirs +++ eresi-0.0.20110516/debian/libmjollnir0-dev.dirs @@ -0,0 +1,2 @@ +usr/include +usr/lib --- eresi-0.0.20110516.orig/debian/libmjollnir0.dirs +++ eresi-0.0.20110516/debian/libmjollnir0.dirs @@ -0,0 +1 @@ +usr/lib --- eresi-0.0.20110516.orig/debian/libe2dbg0.dirs +++ eresi-0.0.20110516/debian/libe2dbg0.dirs @@ -0,0 +1 @@ +usr/lib --- eresi-0.0.20110516.orig/debian/libaspect0-dev.dirs +++ eresi-0.0.20110516/debian/libaspect0-dev.dirs @@ -0,0 +1,2 @@ +usr/include +usr/lib --- eresi-0.0.20110516.orig/debian/eresi.docs +++ eresi-0.0.20110516/debian/eresi.docs @@ -0,0 +1,4 @@ +README.FIRST +doc/*.txt +doc/*.html +doc/doxygen.conf --- eresi-0.0.20110516.orig/debian/changelog +++ eresi-0.0.20110516/debian/changelog @@ -0,0 +1,37 @@ +eresi (0.0.20110516-0~rzr2) oneiric; urgency=low + + * + + -- Philippe Coval Mon, 16 May 2011 13:46:59 +0200 + +eresi (0.0.20110516-0~rzr1) natty; urgency=low + + * New upstream release + + -- Philippe Coval Mon, 16 May 2011 13:45:18 +0200 + +eresi (1:0.8a25-3) unstable; urgency=low + + * debian/paches/01_fix_gcc4.4.dpatch: + - Patch from Ubuntu to fix build error by dprintf redefinition. + (Closes: #552861) + * debian/control: + - Added strict dependencies of -dev packages + + -- Andrés Roldán Thu, 29 Oct 2009 12:50:14 +0000 + +eresi (1:0.8a25-2) unstable; urgency=low + + * debian/patches/01_implicit-pointer-conversion.dpatch: + - Add include to remove GCC warning on implicit pointer conversion. + (Closes: #508094) + * debian/patches/01_dont-cp-eresirc.dpatch: + - Don't try to copy files on builder's home. (Closes: #508104) + + -- Andrés Roldán Tue, 09 Dec 2008 21:30:28 +0000 + +eresi (1:0.8a25-1) unstable; urgency=low + + * Initial release. (Closes: #434826) + + -- Andrés Roldán Wed, 12 Nov 2008 19:39:02 +0000 --- eresi-0.0.20110516.orig/debian/libui0.dirs +++ eresi-0.0.20110516/debian/libui0.dirs @@ -0,0 +1 @@ +usr/lib --- eresi-0.0.20110516.orig/debian/eresi.manpages +++ eresi-0.0.20110516/debian/eresi.manpages @@ -0,0 +1 @@ +doc/eresi.1 --- eresi-0.0.20110516.orig/debian/elfsh.links +++ eresi-0.0.20110516/debian/elfsh.links @@ -0,0 +1,3 @@ +usr/share/man/man1/eresi.1 usr/share/man/man1/elfsh.1 +usr/share/man/man1/eresi.1 usr/share/man/man1/elfsh32.1 +usr/share/man/man1/eresi.1 usr/share/man/man1/elfsh64.1 --- eresi-0.0.20110516.orig/debian/eresi.changelogs +++ eresi-0.0.20110516/debian/eresi.changelogs @@ -0,0 +1 @@ +doc/Changelog --- eresi-0.0.20110516.orig/debian/librevm0.dirs +++ eresi-0.0.20110516/debian/librevm0.dirs @@ -0,0 +1 @@ +usr/lib --- eresi-0.0.20110516.orig/debian/etrace.links +++ eresi-0.0.20110516/debian/etrace.links @@ -0,0 +1,3 @@ +usr/share/man/man1/eresi.1 usr/share/man/man1/etrace.1 +usr/share/man/man1/eresi.1 usr/share/man/man1/etrace32.1 +usr/share/man/man1/eresi.1 usr/share/man/man1/etrace64.1 --- eresi-0.0.20110516.orig/debian/libelfsh0.postinst +++ eresi-0.0.20110516/debian/libelfsh0.postinst @@ -0,0 +1,9 @@ +#!/bin/sh + +#DEBHELPER# + +set -e + +if [ "$1" = "configure" ]; then + ldconfig +fi --- eresi-0.0.20110516.orig/debian/evarista.links +++ eresi-0.0.20110516/debian/evarista.links @@ -0,0 +1,3 @@ +usr/share/man/man1/eresi.1 usr/share/man/man1/evarista.1 +usr/share/man/man1/eresi.1 usr/share/man/man1/evarista32.1 +usr/share/man/man1/eresi.1 usr/share/man/man1/evarista64.1 --- eresi-0.0.20110516.orig/debian/libaspect0.postinst +++ eresi-0.0.20110516/debian/libaspect0.postinst @@ -0,0 +1,9 @@ +#!/bin/sh + +#DEBHELPER# + +set -e + +if [ "$1" = "configure" ]; then + ldconfig +fi --- eresi-0.0.20110516.orig/debian/libui0-dev.dirs +++ eresi-0.0.20110516/debian/libui0-dev.dirs @@ -0,0 +1,2 @@ +usr/include +usr/lib --- eresi-0.0.20110516.orig/debian/libasm0-dev.dirs +++ eresi-0.0.20110516/debian/libasm0-dev.dirs @@ -0,0 +1,2 @@ +usr/include +usr/lib --- eresi-0.0.20110516.orig/debian/evarista.dirs +++ eresi-0.0.20110516/debian/evarista.dirs @@ -0,0 +1,2 @@ +usr/bin +usr/share/man/man1 --- eresi-0.0.20110516.orig/debian/e2dbg.dirs +++ eresi-0.0.20110516/debian/e2dbg.dirs @@ -0,0 +1,2 @@ +usr/bin +usr/share/man/man1 --- eresi-0.0.20110516.orig/debian/rules +++ eresi-0.0.20110516/debian/rules @@ -0,0 +1,104 @@ +#!/usr/bin/make -f +# + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +include /usr/share/dpatch/dpatch.make + +CURDIR=`pwd` +BUILD_DIR=`pwd`/debian + +build: build-stamp +build-stamp: patch-stamp + dh_testdir + + if [ ! `dpkg-architecture -iamd64` ]; then \ + ./configure --enable-32-64 --enable-readline; \ + else \ + ./configure --enable-32 --enable-readline; \ + fi + + $(MAKE) + touch build-stamp + +clean: unpatch + dh_testdir + dh_testroot + [ ! -f Makefile ] || $(MAKE) distclean + dh_clean + rm -f patch-stamp build-stamp + +install_file=install -p -m644 -o root -g root +install_bin=install -p -m755 -o root -g root +install_dir=install -p -d -m755 -o root -g root + +install: build + dh_testdir + dh_testroot + dh_installdirs + + for lib in aspect e2dbg edfmt elfsh etrace mjollnir revm stderesi ui; do \ + $(install_file) lib$${lib}/lib$${lib}32.so $(CURDIR)/debian/lib$${lib}0/usr/lib/lib$${lib}32.so.0; \ + if [ -f lib$${lib}/lib$${lib}64.so ]; then \ + $(install_file) lib$${lib}/lib$${lib}64.so $(CURDIR)/debian/lib$${lib}0/usr/lib/lib$${lib}64.so.0; \ + fi; \ + ln -s lib$${lib}32.so.0 $(CURDIR)/debian/lib$${lib}0/usr/lib/lib$${lib}32.so.0.8a25; \ + if [ ! `dpkg-architecture -iamd64` ]; then \ + ln -s lib$${lib}64.so.0 $(CURDIR)/debian/lib$${lib}0/usr/lib/lib$${lib}64.so.0.8a25; \ + fi; \ + ln -s lib$${lib}32.so.0 $(CURDIR)/debian/lib$${lib}0-dev/usr/lib/lib$${lib}32.so; \ + if [ -f $(CURDIR)/debian/lib$${lib}0-dev/usr/lib/lib$${lib}64.so ]; then \ + ln -s lib$${lib}64.so.0 $(CURDIR)/debian/lib$${lib}0-dev/usr/lib/lib$${lib}64.so; \ + fi; \ + $(install_file) lib$${lib}/lib$${lib}32.a $(CURDIR)/debian/lib$${lib}0-dev/usr/lib; \ + if [ -f lib$${lib}/lib$${lib}64.a ]; then \ + $(install_file) lib$${lib}/lib$${lib}64.a $(CURDIR)/debian/lib$${lib}0-dev/usr/lib; \ + fi; \ + $(install_file) lib$${lib}/include/*.h $(CURDIR)/debian/lib$${lib}0-dev/usr/include; \ + done + + $(install_file) libasm/libasm.so $(CURDIR)/debian/libasm0/usr/lib/libasm.so.0 + ln -s libasm.so.0 $(CURDIR)/debian/libasm0/usr/lib/libasm.so.0.8a25 + ln -s libasm.so.0 $(CURDIR)/debian/libasm0-dev/usr/lib/libasm.so + $(install_file) libasm/libasm.a $(CURDIR)/debian/libasm0-dev/usr/lib + $(install_file) libasm/include/*.h $(CURDIR)/debian/libasm0-dev/usr/include + + for binfile in elfsh evarista etrace e2dbg; do \ + $(install_bin) $${binfile}/$${binfile}32 $(CURDIR)/debian/$${binfile}/usr/bin; \ + if [ -f $${binfile}/$${binfile}64 ]; then \ + $(install_bin) $${binfile}/$${binfile}64 $(CURDIR)/debian/$${binfile}/usr/bin; \ + fi; \ + if [ ! `dpkg-architecture -iamd64` ]; then \ + ln -s $${binfile}64 $(CURDIR)/debian/$${binfile}/usr/bin/$${binfile}; \ + else \ + ln -s $${binfile}32 $(CURDIR)/debian/$${binfile}/usr/bin/$${binfile}; \ + fi; \ + done + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installdocs + dh_installexamples + dh_installman + dh_installchangelogs + dh_link + dh_strip + dh_compress + dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_fixperms + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install --- eresi-0.0.20110516.orig/debian/libedfmt0-dev.dirs +++ eresi-0.0.20110516/debian/libedfmt0-dev.dirs @@ -0,0 +1,2 @@ +usr/include +usr/lib --- eresi-0.0.20110516.orig/debian/libstderesi0.postinst +++ eresi-0.0.20110516/debian/libstderesi0.postinst @@ -0,0 +1,9 @@ +#!/bin/sh + +#DEBHELPER# + +set -e + +if [ "$1" = "configure" ]; then + ldconfig +fi --- eresi-0.0.20110516.orig/debian/libstderesi0.dirs +++ eresi-0.0.20110516/debian/libstderesi0.dirs @@ -0,0 +1 @@ +usr/lib --- eresi-0.0.20110516.orig/debian/libui0.postinst +++ eresi-0.0.20110516/debian/libui0.postinst @@ -0,0 +1,9 @@ +#!/bin/sh + +#DEBHELPER# + +set -e + +if [ "$1" = "configure" ]; then + ldconfig +fi --- eresi-0.0.20110516.orig/debian/librevm0-dev.dirs +++ eresi-0.0.20110516/debian/librevm0-dev.dirs @@ -0,0 +1,2 @@ +usr/include +usr/lib --- eresi-0.0.20110516.orig/debian/libmjollnir0.postinst +++ eresi-0.0.20110516/debian/libmjollnir0.postinst @@ -0,0 +1,9 @@ +#!/bin/sh + +#DEBHELPER# + +set -e + +if [ "$1" = "configure" ]; then + ldconfig +fi --- eresi-0.0.20110516.orig/debian/libetrace0.postinst +++ eresi-0.0.20110516/debian/libetrace0.postinst @@ -0,0 +1,9 @@ +#!/bin/sh + +#DEBHELPER# + +set -e + +if [ "$1" = "configure" ]; then + ldconfig +fi --- eresi-0.0.20110516.orig/debian/librevm0.postinst +++ eresi-0.0.20110516/debian/librevm0.postinst @@ -0,0 +1,9 @@ +#!/bin/sh + +#DEBHELPER# + +set -e + +if [ "$1" = "configure" ]; then + ldconfig +fi --- eresi-0.0.20110516.orig/debian/libedfmt0.dirs +++ eresi-0.0.20110516/debian/libedfmt0.dirs @@ -0,0 +1 @@ +usr/lib --- eresi-0.0.20110516.orig/debian/libe2dbg0.postinst +++ eresi-0.0.20110516/debian/libe2dbg0.postinst @@ -0,0 +1,9 @@ +#!/bin/sh + +#DEBHELPER# + +set -e + +if [ "$1" = "configure" ]; then + ldconfig +fi --- eresi-0.0.20110516.orig/debian/libstderesi0-dev.dirs +++ eresi-0.0.20110516/debian/libstderesi0-dev.dirs @@ -0,0 +1,2 @@ +usr/include +usr/lib --- eresi-0.0.20110516.orig/debian/copyright +++ eresi-0.0.20110516/debian/copyright @@ -0,0 +1,180 @@ +Format-Specification: http://wiki.debian.org/Proposals/CopyrightFormat?action=recall&rev=196 +Debianized-By: Andres Roldan +Debianized-Date: Thu, 19 Jun 2008 22:01:43 COT +Upstream-Name: The ERESI Team +Upstream-Source: http://www.eresi-project.org/ + +Files: * +Copyright: Copyright 2007-2008, ERESI Project +License: GPL-2+ | other + +License: GPL-2+ + On Debian systems, the complete text of the GNU General Public + License can be found in /usr/share/common-licenses/GPL file. + +License: other + In addition, as a special exception, the copyright holder + gives permission to link the code of this program with + any version of the OpenSSL library which is distributed + under a license identical to that listed in the included + COPYING.OpenSSL file, and distribute linked combinations + including the two. You must obey the GNU General Public + License in all respects for all of the code used other + than OpenSSL. If you modify this file, you may extend this + exception to your version of the file, but you are not + obligated to do so. If you do not wish to do so, delete + this exception statement from your version. + +Files: liballocproxy/alloc_arena.c, liballocproxy/alloc_hooks.c, liballocproxy/alloc_malloc.c, liballocproxy/elfsh_hooks.c, liballocproxy/include/*, libaspect/include/aproxy.h +Copyright: Copyright 1996-2002, 2003, 2004 Free Software Foundation, Inc. +License: LGPL-2+ + On Debian systems, the full text of the LGPL can be found in + /usr/share/common-licenses/LGPL-2 + +Files: libe2dbg/kernel/include/ke2dbg-vars.h +Copyright: Copyright 2004, Droids Corporation. + +Files: libmjollnir/bin/elfThor.c, libmjollnir/src/init.c, libmjollnir/src/symtab.c, libmjollnir/tools/desDiff.pl +Copyright: Copyright 2006-2007, Asgard Labs, thorolf +License: BSD + This software is not subject to any export provision of the United States + Department of Commerce, and may be exported to any country or planet. + . + 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 immediately at the beginning of the file, without modification, + 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. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. + +Files: libmjollnir/src/cfg.c +Copyright: Copyright 2006-2008, Devhell Labs / Asgard Labs + +Files: libmjollnir/src/function.c +Copyright: Copyright 2006-2008, Asgard Labs, thorolf +Copyright: Copyright 2006-2007, devhell, jfv +Copyright: Copyright rfd labs, strauss + +Files: libmjollnir/src/container.c, libmjollnir/include/libmjollnir-objects.h, libmjollnir/include/libmjollnir.h +Copyright: Copyright 2001-2007, Devhell Labs, Rfdslabs, Asgardlabs + +Files: libmjollnir/Makefile +Copyright: Copyright 2001-2006, - Devhell Labs / Asgard Labs (sk, jfv, thorolf) +License: BSD + This software is not subject to any export provision of the United States + Department of Commerce, and may be exported to any country or planet. + . + 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 immediately at the beginning of the file, without modification, + 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. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. + +Files: libmjollnir/tools/mjollnirUnitTest.c, libmjollnir/tools/mkDb.sh +Copyright: Copyright 2006, Asgard Labs, thorolf +License: BSD + This software is not subject to any export provision of the United States + Department of Commerce, and may be exported to any country or planet. + . + 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 immediately at the beginning of the file, without modification, + 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. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. + +Files: libmjollnir/include/libmjollnir-int.h +Copyright: Copyright 2006-2008, Asgard Labs, thorolf +License: BSD + This software is not subject to any export provision of the United States + Department of Commerce, and may be exported to any country or planet. + . + 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 immediately at the beginning of the file, without modification, + 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. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. + +Files: libregex/* +Copyright: Copyright 2002, 2003, 2005, Free Software Foundation, Inc. +License: LGPL-2+ + +Files: libstderesi/cmd/configure.c +Copyright: Copyright 2006, thorkill, Asgard Labs Inc. + +Files: debian/* +Copyright: Copyright 2008, Andres Roldan +License: GPL-2+ + +This is the Debian packaged version of ERESI. + --- eresi-0.0.20110516.orig/debian/eresi.examples +++ eresi-0.0.20110516/debian/eresi.examples @@ -0,0 +1 @@ +doc/eresirc.example --- eresi-0.0.20110516.orig/debian/control +++ eresi-0.0.20110516/debian/control @@ -0,0 +1,533 @@ +Source: eresi +Section: devel +Priority: optional +Maintainer: Andrés Roldán +Build-Depends: debhelper (>= 4), dpatch (>= 1.11), libssl-dev, libreadline5-dev +Standards-Version: 3.8.0.1 + +Package: eresi +Architecture: any +Depends: elfsh, e2dbg, etrace, evarista +Description: The ERESI Reverse Engineering Software Interface + ERESI is a general purpose hybrid framework : it includes both static + analysis and runtime analysis capabilities. These features are accessed + by primitives of the ERESI reverse engineering language which makes the + framework more adaptable to the precise needs of her users. It brings + an environment of choice for program analysis through instrumentation, + debugging, and tracing as it also provides more than ten exclusive major + built-in features . ERESI can also be used for security auditing, hooking, + integrity checking or logging binary programs. The project prones modularity + and reusability of code and allows users to create their own project on top + of the ERESI language interpreter in just a few lines. + . + Among other features, the base code can display program graphs on demand + using its automated flow analysis primitives. The tools are enhanced for + hardened or raw systems which have no executable data segments and no + native debug API or even explicit program information. + +Package: elfsh +Architecture: any +Depends: ${shlibs:Depends} +Description: The ELF shell + The ELF shell is an interactive, modular, and scriptable ELF + (Executable & Linking Format) machine for static binary instrumentation + of executable files, shared libraries and relocatable ELF objects. + Its innovative features make it usable by reverse engineers and security + analysts for embedded analysis using compiled C code extensions of binary + programs. It features execution flow redirection that allows for dynamic + analyzers generation and binary-level testing. ELFsh is compatible with + kernel hardening patches : It can perform operational modifications on + non-executable stack and heap based systems, and this for multiple + architectures. + . + The main features of the ELF shell are : + . + * Injection of new compiled C code into a binary executable or dynamic + library file. + * Function redirection for all kind of functions. + * Relinking of dynamic or static binary files to add all sorts of + dependences without moving the original address space. + * Full access in read/write mode to the ELF data structures from the + scripting language, including but not limited to: + - The Global Offset Table (.got) section + - The dynamic linking section (.dynamic) + - The constructors (.ctors) and destructors (.dtors) array + - The ELF GNU version tables + - The ELF interpreter (.interp) section + - ELF dynamic and static symbol tables (.dynsym and .symtab) + - ELF relocation tables (.rel(a).*) + - ELF Hash table (.hash) + - All other sections in raw read/write mode using hexadecimal strings + +Package: libelfsh0 +Section: libs +Architecture: any +Depends: ${shlibs:Depends} +Description: The ELF shell library + The ELF shell library is the binary manipulation library of the ELF + shell. It contains primitives for static on-disk modifications and + consultation of binary programs linked within the Executable & + Linking Format (ELF) 32bits or 64bits. + . + The main features of the ELF shell library are : + . + * Full API for all ELF structures. + * ET_REL injection into ET_EXEC/ET_DYN ELF files. + * ALTGOT redirection technique, for external functions redirections on RISC + architectures. + * ALTPLT redirection technique, for external functions redirections. + * CFLOW redirection technique, for internal functions redirections. + * EXTPLT partial relinking technique, for adding unknown extern symbols to + the program. + * EXTSTATIC static file relinking technique. + * Partial SHT reconstruction technique. + * PaX protection attributes access in RW mode. + * Core files manipulation. + +Package: libelfsh0-dev +Section: libdevel +Architecture: any +Depends: ${shlibs:Depends}, libelfsh0 (= ${binary:Version}) +Description: The ELF shell library + The ELF shell library is the binary manipulation library of the ELF + shell. It contains primitives for static on-disk modifications and + consultation of binary programs linked within the Executable & + Linking Format (ELF) 32bits or 64bits. + . + The main features of the ELF shell library are : + . + * Full API for all ELF structures. + * ET_REL injection into ET_EXEC/ET_DYN ELF files. + * ALTGOT redirection technique, for external functions redirections on RISC + architectures. + * ALTPLT redirection technique, for external functions redirections. + * CFLOW redirection technique, for internal functions redirections. + * EXTPLT partial relinking technique, for adding unknown extern symbols to + the program. + * EXTSTATIC static file relinking technique. + * Partial SHT reconstruction technique. + * PaX protection attributes access in RW mode. + * Core files manipulation. + . + This package contains the development files provided by elfsh (the + static library - i.e the .a file - and the elfsh headers). + +Package: e2dbg +Architecture: any +Depends: ${shlibs:Depends} +Description: The Embedded ELF debugger + The Embedded ELF Debugger is the implementation of a new concept of + debugger that run inside the process to be debugged instead of being + an external entity accessing from the outside the target address space. + Instead of using system-specific API such as ptrace, the debugger is + linked into a library that is getting injected in a process using the + LD_PRELOAD environment variable. This makes e2dbg very efficient as it + does not need context switching for inspecting the target process. + The ERESI debugger can also be scripted in the same conditions as a + complete ERESI interpreter is embedded into the debugger. + . + The main features of the Embedded ELF debugger are : + . + * Debugging on dynamic ELF binaries without using ptrace + * Runtime injection of software extension developed in C language. + * Runtime static and extern functions redirection. + * Breakpoints and stepping using the sigaction syscall. + * Possibility of registers reading and writing on such events. + * Instruction tracing until next event. + * Runtime access to the linkmap linked list of the runtime linker. + * Support for debugging of multithread processes. + * Backtracing capabilities including on multithread processes. + * Innovative unintrusive debugging technique : Allocation proxying + +Package: libe2dbg0 +Section: libs +Architecture: any +Depends: ${shlibs:Depends} +Description: The Embedded ELF debugger library + The Embedded ELF Debugger is the implementation of a new concept of + debugger that run inside the process to be debugged instead of being + an external entity accessing from the outside the target address space. + Instead of using system-specific API such as ptrace, the debugger is + linked into a library that is getting injected in a process using the + LD_PRELOAD environment variable. This makes e2dbg very efficient as it + does not need context switching for inspecting the target process. + The ERESI debugger can also be scripted in the same conditions as a + complete ERESI interpreter is embedded into the debugger. + . + This package contains the shared libraries used by elfsh. + +Package: libe2dbg0-dev +Section: libdevel +Architecture: any +Depends: ${shlibs:Depends}, libe2dbg0 (= ${binary:Version}) +Description: The Embedded ELF debugger library + The Embedded ELF Debugger is the implementation of a new concept of + debugger that run inside the process to be debugged instead of being + an external entity accessing from the outside the target address space. + Instead of using system-specific API such as ptrace, the debugger is + linked into a library that is getting injected in a process using the + LD_PRELOAD environment variable. This makes e2dbg very efficient as it + does not need context switching for inspecting the target process. + The ERESI debugger can also be scripted in the same conditions as a + complete ERESI interpreter is embedded into the debugger. + . + This package contains the development files provided by elfsh (the + static library - i.e the .a file - and the elfsh headers). + +Package: etrace +Architecture: any +Depends: ${shlibs:Depends} +Description: The Embedded ELF tracer + The ERESI tracer is an embedded tracer which operates directly + from within the traced the binary itself. We acheive this modus + operandi by using binary module injection and function redirection. + A new binary is created where all functions are hooked so we can + display the program entering and leaving functions. As the tracer + is directly into the traced binary, we gain performance as we don't + need to single-step, in comparison with others tracers relying on a + kernel interface like its ptrace debugging API. Another major + difference is that etrace works on all functions without using a + predefined list, as done by most other tracers. Etrace was designed + for reverse engineering targets with not only glibc functions, but + also a custom function present in your binary or in a specific library. + . + The main features of the ELF tracer (etrace) are : + . + * Command-line tracing on ELF binaries without using ptrace. + * A logical organization of trace events fully integrated in the scripting + language. + * Support debug format information (if available) to display names and types + of function parameters. + * Advanced user control over selection of traced functions with regular + expressions. + +Package: evarista +Architecture: any +Depends: ${shlibs:Depends} +Description: Program transformer and data-flow analyzer for binary programs + The Evarista analyzer, a work in progress program transformer and + data-flow analyzer for binary programs directly implemented in the + ERESI language. + +Package: libasm0 +Section: libs +Architecture: any +Depends: ${shlibs:Depends} +Description: Disassembling engine provided to the ERESI framework + Libasm provides rich information on the code of binary files loaded + in the ERESI framework, such as instruction and operands analysis, + semantic attributes for instructions and operands, allowing + straight-forward construction of the Control Flow Graph and the Call + Graph (among others). Libasm relies on a modular and extensible + handling of instruction formats using the reflective vector data + structure provided by libaspect, which lead to a uniform intregration + of libasm features into the ERESI framework language. + . + Libasm can be used in many operations requesting an access to + instructions information: + . + * Generate listing of instructions for basic blocks or functions + on-demand. + * Helping at building different kind of flow graphs by assigning + semantic attributes to instructions and operands. + * Searching for longuests sequences of valid instruction in a buffer. + * Searching for push or pop sequences in binary code. + * Disassembling Sparc opcodes with IA32 engine to check if code may + be valid on both architecture. + +Package: libasm0-dev +Section: libdevel +Architecture: any +Depends: ${shlibs:Depends}, libasm0 (= ${binary:Version}) +Description: Disassembling engine provided to the ERESI framework + Libasm provides rich information on the code of binary files loaded + in the ERESI framework, such as instruction and operands analysis, + semantic attributes for instructions and operands, allowing + straight-forward construction of the Control Flow Graph and the Call + Graph (among others). Libasm relies on a a modular and extensible + handling of instruction formats using the reflective vector data + structure provided by libaspect, which lead to a uniform intregration + of libasm features into the ERESI framework language. + . + Libasm can be used in many operations requesting an access to + instructions information: + . + * Generate listing of instructions for basic blocks or functions + on-demand. + * Helping at building different kind of flow graphs by assigning + semantic attributes to instructions and operands. + * Searching for longuests sequences of valid instruction in a buffer. + * Searching for push or pop sequences in binary code. + * Disassembling Sparc opcodes with IA32 engine to check if code may + be valid on both architecture. + . + This package contains the development files provided by libasm (the + static library - i.e the .a file - and the libasm headers). + +Package: libmjollnir0 +Section: libs +Architecture: any +Depends: ${shlibs:Depends} +Description: Flow analysis and fingerprinting component of the ERESI framework + Libmjollnir it is the main receipt of all the original API for code + analysis in ERESI. It can do a control flow graphs and call graphs with + function pointers, perform an 'unstrip', fingerprint functions using + hashing algorithms like MD5 and prepare control flow and function call + graphs which can be accessed by containers API. + . + The main features of this library are : + . + * API and generic container data structures for binary analysis. + * Construction of Control Flow Graphs. + * Construction of Call graphs. + * Fingerprinting of function blocks using hashing algorithms. + * 'Recovery' (unstrip without original names) of the symbol table. + * Function pointers recognition. + * Entry Point Fingerprinting. + +Package: libmjollnir0-dev +Section: libdevel +Architecture: any +Depends: ${shlibs:Depends}, libmjollnir0 (= ${binary:Version}) +Description: Flow analysis and fingerprinting component of the ERESI framework + Libmjollnir it is the main receipt of all the original API for code + analysis in ERESI. It can do a control flow graphs and call graphs with + function pointers, perform an 'unstrip', fingerprint functions using + hashing algorithms like MD5 and prepare control flow and function call + graphs which can be accessed by containers API. + . + The main features of this library are : + . + * API and generic container data structures for binary analysis. + * Construction of Control Flow Graphs. + * Construction of Call graphs. + * Fingerprinting of function blocks using hashing algorithms. + * 'Recovery' (unstrip without original names) of the symbol table. + * Function pointers recognition. + * Entry Point Fingerprinting. + . + This package contains the development files provided by libmjollnir + (the static library - i.e the .a file - and the libmjollnir headers). + +Package: librevm0 +Section: libs +Architecture: any +Depends: ${shlibs:Depends} +Description: The Reverse Engineering Vector Machine + Librevm is a compact library that includes the Eresi interpreter. REVM + is a central piece of software in the ERESI framework as it exports a + complete API for interpreting programs written in the Eresi language + independently of the binary format, architecture, or Operating System + environment. + . + The main features of the REVM library are : + . + * A complete interpreter of the Eresi language (foreach, match, gotos, + arithmetics ..) + * Generation of graphviz input files from Control Flow Graphs (CFG) and + Call Graphs of analyzed binary programs, using the analysis API of the + Eresi component libmjollnir. + * Full resolved disassembling of sections, functions, or basic blocks, + using features from the Eresi disassembly engine libasm. + * A configuration system allowing user variables, for personalizing the + REVM behavior for your own convenience. + * A generic API of Eresi commands to manage prompt, workspaces, and + terminal colors. + * A generic module system for dynamically loaded Eresi extensions. + * Handling of I/O for receiving commands from readline or from the + network (optional). + * Capability of logging work sessions on disk for future consultation. + +Package: librevm0-dev +Section: libdevel +Architecture: any +Depends: ${shlibs:Depends}, librevm0 (= ${binary:Version}) +Description: The Reverse Engineering Vector Machine + Librevm is a compact library that includes the Eresi interpreter. REVM + is a central piece of software in the ERESI framework as it exports a + complete API for interpreting programs written in the Eresi language + independently of the binary format, architecture, or Operating System + environment. + . + The main features of the REVM library are : + . + * A complete interpreter of the Eresi language (foreach, match, gotos, + arithmetics ..) + * Generation of graphviz input files from Control Flow Graphs (CFG) and + Call Graphs of analyzed binary programs, using the analysis API of the + Eresi component libmjollnir. + * Full resolved disassembling of sections, functions, or basic blocks, + using features from the Eresi disassembly engine libasm. + * A configuration system allowing user variables, for personalizing the + REVM behavior for your own convenience. + * A generic API of Eresi commands to manage prompt, workspaces, and + terminal colors. + * A generic module system for dynamically loaded Eresi extensions. + * Handling of I/O for receiving commands from readline or from the + network (optional). + * Capability of logging work sessions on disk for future consultation. + . + This package contains the development files provided by librevm (the + static library - i.e the .a file - and the librevm headers). + +Package: libaspect0 +Section: libs +Architecture: any +Depends: ${shlibs:Depends} +Description: The ERESI aspect library + Libaspect is a general purpose low-level library dedicated to feature-based, + aspect-oriented project modeling written in the C language. It is especially + relevant when embedded into a runtime environment such as ERESI, because it + makes the project to become reflective by allowing its uniform internal + structures to be modified directly from the Eresi language provided you + also link with librevm which is the interpreter for such language. Libaspect + also provides facilities for the project to auto-profile itself, which has + a concrete use in fast-diagnostic debugging of the analysis framework. + . + The main features of the ERESI aspects library are : + . + * A generic and extensive API and data structures for using hash tables. + * A generic modeling API and data structure called a reflective vector + aspect for modular feature-based portability system in the project + development. + * A generic macro system and help API for the auto-profiling of program's + functions developed in the C or C++ languages. + * A complete type definition system for the specification of new data types + in the Eresi meta-language and their use in domain specific Intermediate + Representation (IR), with a direct use in the realm of reflection, program + transformation and type-based decompilation. + +Package: libaspect0-dev +Section: libdevel +Architecture: any +Depends: ${shlibs:Depends}, libaspect0 (= ${binary:Version}) +Description: The ERESI aspect library + Libaspect is a general purpose low-level library dedicated to feature-based, + aspect-oriented project modeling written in the C language. It is especially + relevant when embedded into a runtime environment such as ERESI, because it + makes the project to become reflective by allowing its uniform internal + structures to be modified directly from the Eresi language provided you + also link with librevm which is the interpreter for such language. Libaspect + also provides facilities for the project to auto-profile itself, which has + a concrete use in fast-diagnostic debugging of the analysis framework. + . + The main features of the ERESI aspects library are : + . + * A generic and extensive API and data structures for using hash tables. + * A generic modeling API and data structure called a reflective vector + aspect for modular feature-based portability system in the project + development. + * A generic macro system and help API for the auto-profiling of program's + functions developed in the C or C++ languages. + * A complete type definition system for the specification of new data types + in the Eresi meta-language and their use in domain specific Intermediate + Representation (IR), with a direct use in the realm of reflection, program + transformation and type-based decompilation. + . + This package contains the development files provided by libaspect (the + static library - i.e the .a file - and the libaspect headers). + +Package: libedfmt0 +Section: libs +Architecture: any +Depends: ${shlibs:Depends} +Description: The ERESI debug format library + Libedfmt is the component dedicated for debug formats parsing. This + library simplifies the handling of debug formats that has a different + organization, requires a different parser, and even contain different + information, and provides a uniform representation which contains common + and important information. This library opens the door to automatic debug + format reconstruction in a unified representation. We currently support + conversions from stabs and dwarf2 formats to the ERESI debug format but + also store results of our automatic analysis in there for future consultation. + . + The main features of the ERESI debug format library are : + . + * Create an uniform format representation for each supported debug format. + * Export types in the ERESI engine indicated by debug information. + * Annotate global variables of the analyzed program using their type + information in the ERESI engine. + * Gives function prototypes to Etrace. + +Package: libedfmt0-dev +Section: libdevel +Architecture: any +Depends: ${shlibs:Depends}, libedfmt0 (= ${binary:Version}) +Description: The ERESI debug format library + Libedfmt is the component dedicated for debug formats parsing. This + library simplifies the handling of debug formats that has a different + organization, requires a different parser, and even contain different + information, and provides a uniform representation which contains common + and important information. This library opens the door to automatic debug + format reconstruction in a unified representation. We currently support + conversions from stabs and dwarf2 formats to the ERESI debug format but + also store results of our automatic analysis in there for future consultation. + . + The main features of the ERESI debug format library are : + . + * Create an uniform format representation for each supported debug format. + * Export types in the ERESI engine indicated by debug information. + * Annotate global variables of the analyzed program using their type + information in the ERESI engine. + * Gives function prototypes to Etrace. + . + This package contains the development files provided by libedfmt (the + static library - i.e the .a file - and the libedfmt headers). + +Package: libui0 +Section: libs +Architecture: any +Depends: ${shlibs:Depends} +Description: The ERESI user interface + Libui is the user interface of the ERESI project based on readline. + +Package: libui0-dev +Section: libdevel +Architecture: any +Depends: ${shlibs:Depends}, libui0 (= ${binary:Version}) +Description: The ERESI user interface + Libui is the user interface of the ERESI project based on readline. + . + This package contains the development files provided by libui (the + static library - i.e the .a file - and the libui headers). + +Package: libstderesi0 +Section: libs +Architecture: any +Depends: ${shlibs:Depends} +Description: The ERESI standard library + Libstderesi is a collection of 100+ builtin commands shared between many + ERESI components. It was unmerged from librevm which is now only holding + the ERESI language interpreter. + +Package: libstderesi0-dev +Section: libdevel +Architecture: any +Depends: ${shlibs:Depends}, libstderesi0 (= ${binary:Version}) +Description: The ERESI standard library + Libstderesi is a collection of 100+ builtin commands shared between many + ERESI components. It was unmerged from librevm which is now only holding + the ERESI language interpreter. + . + This package contains the development files provided by libstderesi (the + static library - i.e the .a file - and the libstderesi headers). + +Package: libetrace0 +Section: libs +Architecture: any +Depends: ${shlibs:Depends} +Description: The ERESI tracer library + Libetrace is a collection of generic routines to deal with program traces. + It was unmerged from libelfsh which now only contains ELF dependent code. + +Package: libetrace0-dev +Section: libdevel +Architecture: any +Depends: ${shlibs:Depends}, libetrace0 (= ${binary:Version}) +Description: The ERESI tracer library + Libetrace is a collection of generic routines to deal with program traces. + It was unmerged from libelfsh which now only contains ELF dependent code. + . + This package contains the development files provided by libetrace (the + static library - i.e the .a file - and the libetrace headers). + --- eresi-0.0.20110516.orig/debian/libasm0.postinst +++ eresi-0.0.20110516/debian/libasm0.postinst @@ -0,0 +1,9 @@ +#!/bin/sh + +#DEBHELPER# + +set -e + +if [ "$1" = "configure" ]; then + ldconfig +fi --- eresi-0.0.20110516.orig/debian/libaspect0.dirs +++ eresi-0.0.20110516/debian/libaspect0.dirs @@ -0,0 +1 @@ +usr/lib --- eresi-0.0.20110516.orig/debian/compat +++ eresi-0.0.20110516/debian/compat @@ -0,0 +1 @@ +5 --- eresi-0.0.20110516.orig/debian/libedfmt0.postinst +++ eresi-0.0.20110516/debian/libedfmt0.postinst @@ -0,0 +1,9 @@ +#!/bin/sh + +#DEBHELPER# + +set -e + +if [ "$1" = "configure" ]; then + ldconfig +fi --- eresi-0.0.20110516.orig/debian/libetrace0.dirs +++ eresi-0.0.20110516/debian/libetrace0.dirs @@ -0,0 +1 @@ +usr/lib --- eresi-0.0.20110516.orig/debian/libelfsh0.dirs +++ eresi-0.0.20110516/debian/libelfsh0.dirs @@ -0,0 +1 @@ +usr/lib --- eresi-0.0.20110516.orig/debian/libe2dbg0-dev.dirs +++ eresi-0.0.20110516/debian/libe2dbg0-dev.dirs @@ -0,0 +1,2 @@ +usr/include +usr/lib --- eresi-0.0.20110516.orig/debian/libelfsh0-dev.dirs +++ eresi-0.0.20110516/debian/libelfsh0-dev.dirs @@ -0,0 +1,2 @@ +usr/include +usr/lib --- eresi-0.0.20110516.orig/debian/libasm0.dirs +++ eresi-0.0.20110516/debian/libasm0.dirs @@ -0,0 +1 @@ +usr/lib --- eresi-0.0.20110516.orig/debian/elfsh.dirs +++ eresi-0.0.20110516/debian/elfsh.dirs @@ -0,0 +1,2 @@ +usr/bin +usr/share/man/man1 --- eresi-0.0.20110516.orig/debian/libetrace0-dev.dirs +++ eresi-0.0.20110516/debian/libetrace0-dev.dirs @@ -0,0 +1,2 @@ +usr/include +usr/lib --- eresi-0.0.20110516.orig/debian/e2dbg.links +++ eresi-0.0.20110516/debian/e2dbg.links @@ -0,0 +1,3 @@ +usr/share/man/man1/eresi.1 usr/share/man/man1/e2dbg.1 +usr/share/man/man1/eresi.1 usr/share/man/man1/e2dbg32.1 +usr/share/man/man1/eresi.1 usr/share/man/man1/e2dbg64.1 --- eresi-0.0.20110516.orig/debian/patches/01_mass_soname_change.dpatch +++ eresi-0.0.20110516/debian/patches/01_mass_soname_change.dpatch @@ -0,0 +1,317 @@ +#! /bin/sh -e +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Massive SONAME change + +if [ $# -ne 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi +case "$1" in + -patch) patch -f --no-backup-if-mismatch -p1 < $0;; + -unpatch) patch -f --no-backup-if-mismatch -R -p1 < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +@DPATCH@ + +diff -urN eresi-0.8a25.orig/libasm/Makefile eresi-0.8a25/libasm/Makefile +--- eresi-0.8a25.orig/libasm/Makefile 2008-04-06 23:16:25.000000000 +0000 ++++ eresi-0.8a25/libasm/Makefile 2008-06-13 20:28:56.992446734 +0000 +@@ -79,7 +79,7 @@ + ifeq ($(IRIX),1) + @$(LD) ${OBJS_libasm} -o libasm.so -shared + else +- @$(CC) ${OBJS_libasm} -o libasm.so -shared ++ @$(CC) ${OBJS_libasm} -Wl,-soname=libasm.so.0 -o libasm.so -shared + endif + + clean: +@@ -89,7 +89,7 @@ + + fclean: clean + @$(RM) ${NAME_libasm} ${NAME_libasm_o} ${NAME_mydisasm} ${NAME_cmpdump} +- @$(RM) *.so *.o *.a ++ @$(RM) *.so* *.o *.a + @$(RM) mydisasm + + tags: +diff -urN eresi-0.8a25.orig/libaspect/Makefile eresi-0.8a25/libaspect/Makefile +--- eresi-0.8a25.orig/libaspect/Makefile 2008-04-06 23:15:53.000000000 +0000 ++++ eresi-0.8a25/libaspect/Makefile 2008-06-13 20:29:25.895448861 +0000 +@@ -24,7 +24,7 @@ + + libaspect32.so : $(OBJ32) + @$(CC) -L../liballocproxy/ -lallocproxy \ +- $(DLOPT) -shared $(OBJ32) -o $(NAME32).so ++ $(DLOPT) -shared $(OBJ32) -Wl,-soname=$(NAME32).so.0 -o $(NAME32).so + @$(AR) $(NAME32).a $(OBJ32) + @$(RANLIB) $(NAME32).a + $(LD) -r $(OBJ32) -o $(NAME32).o +@@ -32,8 +32,8 @@ + all32: libaspect32.so + + libaspect64.so : $(OBJ64) +- @$(LD) -L../liballocproxy/ -lallocproxy \ +- $(DLOPT) -shared $(OBJ64) -o $(NAME64).so ++ @$(CC) -L../liballocproxy/ -lallocproxy \ ++ $(DLOPT) -shared $(OBJ64) -Wl,-soname=$(NAME64).so.0 -o $(NAME64).so + @$(AR) $(NAME64).a $(OBJ64) + @$(RANLIB) $(NAME64).a + $(LD) -r $(OBJ64) -o $(NAME64).o +@@ -46,7 +46,7 @@ + include/*\# include/*~ include/.\#* + + fclean : clean +- @$(RM) *.so *.a ++ @$(RM) *.so* *.a + + %.32.o : %.c + $(CC) $(CFLAGS32) -c -o $@ $< +diff -urN eresi-0.8a25.orig/libe2dbg/Makefile eresi-0.8a25/libe2dbg/Makefile +--- eresi-0.8a25.orig/libe2dbg/Makefile 2008-04-06 23:16:30.000000000 +0000 ++++ eresi-0.8a25/libe2dbg/Makefile 2008-06-13 20:29:40.443438969 +0000 +@@ -53,7 +53,7 @@ + + $(DBGNAME32O): + @$(CC) -shared $(COBJ32) $(EXTRAOBJ32) $(UOBJ32) $(LDFLAGS32) \ +- $(KERNSHLIB32) -o $(DBGNAME32).so ++ $(KERNSHLIB32) -Wl,-soname=$(DBGNAME32).so.0 -o $(DBGNAME32).so + @$(AR) $(DBGNAME32).a $(COBJ32) $(UOBJ32) $(EXTRAOBJ32) + @$(RANLIB) $(DBGNAME32).a + @$(LD) -r $(COBJ32) $(EXTRAOBJ32) $(UOBJ32) -o $(DBGNAME32O) +@@ -71,7 +71,7 @@ + + $(DBGNAME64O) : + @$(CC) -shared $(OBJ64) $(EXTRAOBJ64) $(UOBJ64) $(LDFLAGS64) \ +- $(KERNSHLIB64) -o $(DBGNAME64).so ++ $(KERNSHLIB64) -Wl,-soname=$(DBGNAME64).so.0 -o $(DBGNAME64).so + @$(AR) $(DBGNAME64).a $(OBJ64) + @$(RANLIB) $(DBGNAME64).a + @$(LD) -r $(OBJ64) $(EXTRAOBJ64) -o $(DBGNAME64O) +@@ -94,7 +94,7 @@ + + fclean : clean + @$(RM) $(KDBGNAME64O) $(KDBGNAME32O) $(DBGNAME32O) $(DBGNAME64O) +- @$(RM) $(DBGNAME32).so $(DBGNAME64).so $(DBGNAME32).a $(DBGNAME64).a ++ @$(RM) $(DBGNAME32).so* $(DBGNAME64).so* $(DBGNAME32).a $(DBGNAME64).a + + %.32.o : %.c + $(CC) $(CFLAGS32) -c -o $@ $< +diff -urN eresi-0.8a25.orig/libedfmt/Makefile eresi-0.8a25/libedfmt/Makefile +--- eresi-0.8a25.orig/libedfmt/Makefile 2008-04-06 23:15:32.000000000 +0000 ++++ eresi-0.8a25/libedfmt/Makefile 2008-06-13 20:29:53.496425173 +0000 +@@ -33,14 +33,14 @@ + all : all32 all64 + + libedfmt32.so : $(OBJ32) +- @$(CC) $(LDFLAGS32) -shared $(OBJ32) -o $(NAME32).so ++ @$(CC) $(LDFLAGS32) -shared $(OBJ32) -Wl,-soname=$(NAME32).so.0 -o $(NAME32).so + @$(AR) $(NAME32).a $(OBJ32) + @$(RANLIB) $(NAME32).a + @$(LD) -r $(OBJ32) -o $(NAME32).o + all32: libedfmt32.so + + libedfmt64.so : $(OBJ64) +- @$(CC) $(LDFLAGS64) -shared $(OBJ64) -o $(NAME64).so ++ @$(CC) $(LDFLAGS64) -shared $(OBJ64) -Wl,-soname=$(NAME64).so.0 -o $(NAME64).so + @$(AR) $(NAME64).a $(OBJ64) + @$(RANLIB) $(NAME64).a + @$(LD) -r $(OBJ64) -o $(NAME64).o +@@ -55,9 +55,9 @@ + doxygen doc/doxygen.conf + + fclean : clean +- @$(RM) $(NAME).so $(NAME).a \ +- $(NAME32).so $(NAME32).a \ +- $(NAME64).so $(NAME64).a ++ @$(RM) $(NAME).so* $(NAME).a \ ++ $(NAME32).so* $(NAME32).a \ ++ $(NAME64).so* $(NAME64).a + + %.32.o : %.c + $(CC) $(CFLAGS32) -c -o $@ $< +diff -urN eresi-0.8a25.orig/libelfsh/Makefile eresi-0.8a25/libelfsh/Makefile +--- eresi-0.8a25.orig/libelfsh/Makefile 2008-04-06 23:15:37.000000000 +0000 ++++ eresi-0.8a25/libelfsh/Makefile 2008-06-13 20:30:03.659428361 +0000 +@@ -41,7 +41,7 @@ + libelfsh32.so : $(OBJ32) + @$(CC) -L../liballocproxy/ -lallocproxy \ + -L../libaspect/ -laspect32 -DERESI32 \ +- $(KERNSHLIB32) -shared $(OBJ32) -o $(NAME32).so ++ $(KERNSHLIB32) -shared $(OBJ32) -Wl,-soname=$(NAME32).so.0 -o $(NAME32).so + @$(AR) $(NAME32).a $(OBJ32) + @$(RANLIB) $(NAME32).a + @$(LD) -r $(OBJ32) -o $(NAME32).o +@@ -52,7 +52,7 @@ + libelfsh64.so : $(OBJ64) + @$(CC) -L../liballocproxy/ -lallocproxy \ + -L../libaspect/ -laspect64 -DERESI64 \ +- $(KERNSHLIB64) -shared $(OBJ64) -o $(NAME64).so ++ $(KERNSHLIB64) -shared $(OBJ64) -Wl,-soname=$(NAME64).so.0 -o $(NAME64).so + @$(AR) $(NAME64).a $(OBJ64) + @$(RANLIB) $(NAME64).a + @$(LD) -r $(OBJ64) -o $(NAME64).o +@@ -66,7 +66,7 @@ + include/libelfsh/.\#* + + fclean : clean +- @$(RM) *.so *.a ++ @$(RM) *.so* *.a + + + docs: +diff -urN eresi-0.8a25.orig/libetrace/Makefile eresi-0.8a25/libetrace/Makefile +--- eresi-0.8a25.orig/libetrace/Makefile 2008-04-06 23:15:44.000000000 +0000 ++++ eresi-0.8a25/libetrace/Makefile 2008-06-13 20:30:13.458447791 +0000 +@@ -31,7 +31,7 @@ + all32 : $(OBJ32) + @$(CC) -L../liballocproxy/ \ + -lallocproxy -L../libaspect/ -laspect32 -DERESI32 \ +- -lelfsh32 -L../libelfsh/ -shared $(OBJ32) -o $(NAME32).so ++ -lelfsh32 -L../libelfsh/ -shared $(OBJ32) -Wl,-soname=$(NAME32).so.0 -o $(NAME32).so + @$(AR) $(NAME32).a $(OBJ32) + @$(RANLIB) $(NAME32).a + @$(LD) -r $(OBJ32) -o $(NAME32).o +@@ -39,7 +39,7 @@ + all64 : $(OBJ64) + @$(CC) -L../liballocproxy/ \ + -lallocproxy -L../libaspect/ -laspect64 -DERESI64 \ +- -lelfsh64 -L../libelfsh/ -shared $(OBJ64) -o $(NAME64).so ++ -lelfsh64 -L../libelfsh/ -shared $(OBJ64) -Wl,-soname=$(NAME64).so.0 -o $(NAME64).so + @$(AR) $(NAME64).a $(OBJ64) + @$(RANLIB) $(NAME64).a + @$(LD) -r $(OBJ64) -o $(NAME64).o +@@ -51,7 +51,7 @@ + include/libelfsh/.\#* + + fclean : clean +- @$(RM) *.so *.a ++ @$(RM) *.so* *.a + + + docs: +diff -urN eresi-0.8a25.orig/libmjollnir/Makefile eresi-0.8a25/libmjollnir/Makefile +--- eresi-0.8a25.orig/libmjollnir/Makefile 2008-04-06 23:16:30.000000000 +0000 ++++ eresi-0.8a25/libmjollnir/Makefile 2008-06-13 20:30:27.760483035 +0000 +@@ -41,7 +41,7 @@ + all : all32 all64 + + $(NAME32).so : $(OBJ32) +- @$(CC) $(BITS) -shared $(OBJ32) -o $(NAME32).so -lcrypto $(LDFLAGS32) ++ @$(CC) $(BITS) -shared $(OBJ32) -Wl,-soname=$(NAME32).so.0 -o $(NAME32).so -lcrypto $(LDFLAGS32) + @ar rc ${NAME32}.a ${OBJ32} + @${RANLIB} ${NAME32}.a + # $(CC) $(CFLAGS32) $(LDFLAGS32) $(SRCT) -o $(OBJT) $(STATOPT) -lmjollnir32 +@@ -50,7 +50,7 @@ + all32: $(NAME32).so + + $(NAME64).so : $(OBJ64) +- @$(CC) $(BITS) -shared $(OBJ64) -o $(NAME64).so -lcrypto $(LDFLAGS64) ++ @$(CC) $(BITS) -shared $(OBJ64) -Wl,-soname=$(NAME64).so.0 -o $(NAME64).so -lcrypto $(LDFLAGS64) + @ar rc ${NAME64}.a ${OBJ64} + @${RANLIB} ${NAME64}.a + @$(LD) -r $(OBJ64) -o $(NAME64).o +@@ -65,7 +65,7 @@ + include/\#* include/*~ $(OBJT) $(OBJM) + + fclean: clean +- rm -f bin/elfThor mjollnirUnitTest *.a *.so *~ $(NAME64).o $(NAME32).o ++ rm -f bin/elfThor mjollnirUnitTest *.a *.so* *~ $(NAME64).o $(NAME32).o + + .c.o: + $(CC) $(CFLAGS) -c $*.c -o $*.o +diff -urN eresi-0.8a25.orig/librevm/Makefile eresi-0.8a25/librevm/Makefile +--- eresi-0.8a25.orig/librevm/Makefile 2008-04-06 23:15:46.000000000 +0000 ++++ eresi-0.8a25/librevm/Makefile 2008-06-13 20:30:41.661428337 +0000 +@@ -47,7 +47,7 @@ + $(MAKE) -C api all32 + + $(NAME32).so : +- $(CC) -shared $(OBJ32) -o $(NAME32).so $(LDFLAGS32) \ ++ $(CC) -shared $(OBJ32) -Wl,-soname=$(NAME32).so.0 -o $(NAME32).so $(LDFLAGS32) \ + $(STATOPT) $(NCURSESLNOPT) $(READLNOPT) + ar rc ${NAME32}.a ${OBJ32} + @$(RANLIB) ${NAME32}.a +@@ -62,7 +62,7 @@ + $(MAKE) -C api all64 + + lib64 : +- $(CC) -shared $(OBJ64) -o $(NAME64).so $(LDFLAGS64) \ ++ $(CC) -shared $(OBJ64) -Wl,-soname=$(NAME64).so.0 -o $(NAME64).so $(LDFLAGS64) \ + $(STATOPT) $(NCURSESLNOPT) $(READLNOPT) + ar rc ${NAME64}.a ${OBJ64} + ranlib ${NAME64}.a +@@ -77,7 +77,7 @@ + @$(RM) include/*~ include/\#* include/*\# include/.\#* + + fclean : clean +- @$(RM) *.o *.so *.a $(OBJ_DYN) ++ @$(RM) *.o *.so* *.a $(OBJ_DYN) + + docs: + doxygen doc/doxygen.conf +diff -urN eresi-0.8a25.orig/libstderesi/Makefile eresi-0.8a25/libstderesi/Makefile +--- eresi-0.8a25.orig/libstderesi/Makefile 2008-04-06 23:16:28.000000000 +0000 ++++ eresi-0.8a25/libstderesi/Makefile 2008-06-13 20:30:57.399446298 +0000 +@@ -44,7 +44,7 @@ + $(MAKE) -C cmd all32 + + $(NAME32).so : +- $(CC) -shared $(OBJ32) -o $(NAME32).so $(LDFLAGS32) \ ++ $(CC) -shared $(OBJ32) -Wl,-soname=$(NAME32).so.0 -o $(NAME32).so $(LDFLAGS32) \ + $(STATOPT) $(NCURSESLNOPT) $(READLNOPT) + ar rc ${NAME32}.a ${OBJ32} + @$(RANLIB) ${NAME32}.a +@@ -59,7 +59,7 @@ + $(MAKE) -C cmd all64 + + $(NAME64).so : +- $(CC) -shared $(OBJ64) -o $(NAME64).so $(LDFLAGS64) \ ++ $(CC) -shared $(OBJ64) -Wl,-soname=$(NAME64).so.0 -o $(NAME64).so $(LDFLAGS64) \ + $(STATOPT) $(NCURSESLNOPT) $(READLNOPT) + ar rc ${NAME64}.a ${OBJ64} + ranlib ${NAME64}.a +@@ -73,7 +73,7 @@ + @$(RM) include/*~ include/\#* include/*\# include/.\#* + + fclean : clean +- @$(RM) *.o *.so *.a $(OBJ_DYN) ++ @$(RM) *.o *.so* *.a $(OBJ_DYN) + + docs: + doxygen doc/doxygen.conf +diff -urN eresi-0.8a25.orig/libui/Makefile eresi-0.8a25/libui/Makefile +--- eresi-0.8a25.orig/libui/Makefile 2008-04-06 23:15:49.000000000 +0000 ++++ eresi-0.8a25/libui/Makefile 2008-06-13 20:31:08.798447288 +0000 +@@ -50,7 +50,7 @@ + all : all32 all64 + + $(NAME32).so : $(OBJ32) +- @$(LD) $(LDFLAGS32) $(BITS) -shared $(OBJ32) -o $(NAME32).so ++ @$(LD) $(LDFLAGS32) $(BITS) -shared $(OBJ32) -Wl,-soname=$(NAME32).so.0 -o $(NAME32).so + @$(AR) $(NAME32).a $(OBJ32) + @$(RANLIB) $(NAME32).a + +@@ -58,7 +58,7 @@ + + + $(NAME64).so : $(OBJ64) +- @$(LD) $(LDFLAGS64) $(BITS) -shared $(OBJ64) -o $(NAME64).so ++ @$(LD) $(LDFLAGS64) $(BITS) -shared $(OBJ64) -Wl,-soname=$(NAME64).so.0 -o $(NAME64).so + @$(AR) $(NAME64).a $(OBJ64) + @$(RANLIB) $(NAME64).a + +@@ -76,7 +76,7 @@ + @echo TAGS generated succesfully + + fclean : clean +- @$(RM) *.so *.a *.o ++ @$(RM) *.so* *.a *.o + + %.32.o : %.c + $(CC) $(CFLAGS32) -c -o $@ $< --- eresi-0.0.20110516.orig/debian/patches/01_fix_gcc4.4.dpatch +++ eresi-0.0.20110516/debian/patches/01_fix_gcc4.4.dpatch @@ -0,0 +1,18 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## fix_gcc4.4.dpatch by Fabrice Coutadeur +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Delete the definition of dprintf, defined already in stdio.h + +@DPATCH@ +diff -urN eresi-0.8a25.orig/librevm/include/revm.h eresi-0.8a25/librevm/include/revm.h +--- eresi-0.8a25.orig/librevm/include/revm.h 2008-04-06 23:15:45.000000000 +0000 ++++ eresi-0.8a25/librevm/include/revm.h 2009-10-29 11:58:19.000000000 +0000 +@@ -683,7 +683,6 @@ + void revm_workfiles_load(); + int revm_implicit(revmcmd_t *actual); + int revm_workfiles_unload(); +-int dprintf(int fd, char *format, ...); + void revm_pht_print(elfsh_Phdr *phdr, uint16_t num, eresi_Addr base); + char *revm_fetch_sht_typedesc(elfsh_Word typenum); + int revm_sht_print(elfsh_Shdr *shdr, u_int num, char rtflag); --- eresi-0.0.20110516.orig/debian/patches/01_alloc-proxy.dpatch +++ eresi-0.0.20110516/debian/patches/01_alloc-proxy.dpatch @@ -0,0 +1,36 @@ +#! /bin/sh -e +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Change calloc wrapper cast + +if [ $# -ne 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi +case "$1" in + -patch) patch -f --no-backup-if-mismatch -p1 < $0;; + -unpatch) patch -f --no-backup-if-mismatch -R -p1 < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +@DPATCH@ + +diff -urN eresi-0.8a25.orig/libe2dbg/user/alloc-proxy.c eresi-0.8a25/libe2dbg/user/alloc-proxy.c +--- eresi-0.8a25.orig/libe2dbg/user/alloc-proxy.c 2008-04-06 23:16:29.000000000 +0000 ++++ eresi-0.8a25/libe2dbg/user/alloc-proxy.c 2008-06-13 00:40:53.504453358 +0000 +@@ -132,11 +132,7 @@ + * @param nbr + * @return + */ +-#if __FreeBSD__ > 5 || defined(__OpenBSD__) + void *calloc(size_t t, size_t nbr) +-#else +-void *calloc(size_t t, u_int nbr) +-#endif + { + void *(*callocptr)(); + void *chunk; --- eresi-0.0.20110516.orig/debian/patches/01_configure.dpatch +++ eresi-0.0.20110516/debian/patches/01_configure.dpatch @@ -0,0 +1,83 @@ +#! /bin/sh -e +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Make ERESI's configure usable + +if [ $# -ne 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi +case "$1" in + -patch) patch -f --no-backup-if-mismatch -p1 < $0;; + -unpatch) patch -f --no-backup-if-mismatch -R -p1 < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +@DPATCH@ + +diff -urN eresi-0.8a25.orig/configure eresi-0.8a25/configure +--- eresi-0.8a25.orig/configure 2008-04-06 23:16:31.000000000 +0000 ++++ eresi-0.8a25/configure 2008-06-13 23:31:48.960199969 +0000 +@@ -22,7 +22,7 @@ + SHELL=`which bash` + + if [ $0 = "bash" ]; then +- function printHelp ++ printHelp + fi + + printHelp() +@@ -386,7 +386,7 @@ + LPTHREAD="-lc_r" + fi + +-echo "#define ELFSH_MODPATH \"/usr/local/share/elfsh/\" " >> $VARSFILE ++echo "#define ELFSH_MODPATH \"/usr/share/elfsh/\" " >> $VARSFILE + + MODPATHSET="1"; + FREEBSD="1"; +@@ -444,15 +444,15 @@ + # Set default variables in case it was not precised + + if [ "$MODPATHSET" != "1" ]; then +- echo "#define ELFSH_MODPATH \"/usr/local/share/elfsh/\"" >> $VARSFILE ++ echo "#define ELFSH_MODPATH \"/usr/share/elfsh/\"" >> $VARSFILE + fi + + if [ "$LIBPATHSET" != "1" ]; then +- echo "#define ELFSH_LIBPATH \"/lib;/usr/lib;/usr/local/lib\"" >> $VARSFILE ++ echo "#define ELFSH_LIBPATH \"/lib;/usr/lib;/usr/lib\"" >> $VARSFILE + fi + + if [ "$TESTING" != "1" ]; then +- echo "#define ELFSH_DBGPATH \"$PREFIX/usr/local/lib/\"" >> $VARSFILE ++ echo "#define ELFSH_DBGPATH \"$PREFIX/usr/lib/\"" >> $VARSFILE + fi + + if [ "$SLOGSET" != "1" ]; then +@@ -514,17 +514,17 @@ + echo "MOD_TARGET = $MOD_TARGET" >> Makefile + + if [ "$FREEBSD" = "1" ]; then +-echo "BASEPATH = \$(DESTDIR)/usr/local" >> Makefile +-echo "MANPATH = \$(BASEPATH)/man" >> Makefile ++echo "BASEPATH = \$(DESTDIR)/usr" >> Makefile ++echo "MANPATH = \$(BASEPATH)/share/man" >> Makefile + else +-echo "BASEPATH = \$(DESTDIR)/usr/local" >> Makefile ++echo "BASEPATH = \$(DESTDIR)/usr" >> Makefile + echo "MANPATH = \$(BASEPATH)/share/man" >> Makefile + fi + + echo "MODPATH = \$(BASEPATH)/share/elfsh/" >> Makefile + echo "BINPATH = \$(BASEPATH)/bin/" >> Makefile + echo "LIBPATH = \$(BASEPATH)/lib/" >> Makefile +-echo "#define LIBPATH \"$PREFIX/usr/local/lib/\"" >> $VARSFILE ++echo "#define LIBPATH \"$PREFIX/usr/lib/\"" >> $VARSFILE + echo "INCPATH = \$(BASEPATH)/include/" >> Makefile + echo "RM = rm -f " >> Makefile + echo "" >> Makefile --- eresi-0.0.20110516.orig/debian/patches/01_implicit-pointer-conversion.dpatch +++ eresi-0.0.20110516/debian/patches/01_implicit-pointer-conversion.dpatch @@ -0,0 +1,32 @@ +#! /bin/sh -e +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Add include to avoid 'implicit converted pointer' warnings + +if [ $# -ne 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi +case "$1" in + -patch) patch -f --no-backup-if-mismatch -p1 < $0;; + -unpatch) patch -f --no-backup-if-mismatch -R -p1 < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +@DPATCH@ + +diff -urN eresi-0.8a25.orig/librevm/vm/fini.c eresi-0.8a25/librevm/vm/fini.c +--- eresi-0.8a25.orig/librevm/vm/fini.c 2008-04-06 23:15:45.000000000 +0000 ++++ eresi-0.8a25/librevm/vm/fini.c 2008-12-09 21:15:40.000000000 +0000 +@@ -7,6 +7,7 @@ + * $Id: fini.c,v 1.1 2008-02-16 12:32:27 thor Exp $ + */ + #include "revm.h" ++#include "../../libetrace/include/libetrace.h" + + + --- eresi-0.0.20110516.orig/debian/patches/00list +++ eresi-0.0.20110516/debian/patches/00list @@ -0,0 +1,6 @@ +01_configure +01_mass_soname_change +01_alloc-proxy +01_implicit-pointer-conversion +01_dont-cp-eresirc +01_fix_gcc4.4 --- eresi-0.0.20110516.orig/debian/patches/01_dont-cp-eresirc.dpatch +++ eresi-0.0.20110516/debian/patches/01_dont-cp-eresirc.dpatch @@ -0,0 +1,35 @@ +#! /bin/sh -e +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Don't touch the builder's home + +if [ $# -ne 1 ]; then + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1 +fi +case "$1" in + -patch) patch -f --no-backup-if-mismatch -p1 < $0;; + -unpatch) patch -f --no-backup-if-mismatch -R -p1 < $0;; + *) + echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 + exit 1;; +esac + +exit 0 + +@DPATCH@ + +diff -urN eresi-0.8a25.orig/configure eresi-0.8a25/configure +--- eresi-0.8a25.orig/configure 2008-12-09 21:15:00.000000000 +0000 ++++ eresi-0.8a25/configure 2008-12-09 21:28:35.000000000 +0000 +@@ -638,10 +638,6 @@ + echo " @echo 'Kernsh has been built successfully.' " >> Makefile + fi + +-if [ ! -e ~/.eresirc ]; then +-echo " @cp doc/eresirc.example ~/.eresirc " >> Makefile +-fi +- + echo ".PHONY: modules " >> Makefile + echo "modules: " >> Makefile + echo "# @echo 'Building ELFsh modules suite...' " >> Makefile