diff options
author | dobo90 | 2015-06-08 19:30:45 +0200 |
---|---|---|
committer | dobo90 | 2015-06-08 19:30:45 +0200 |
commit | e94a3a2b2ec58a5e0f96e7d6dd59b974bed4cdba (patch) | |
tree | 8c629f106e3ef757851019889fe89a5394741d95 | |
download | aur-e94a3a2b2ec58a5e0f96e7d6dd59b974bed4cdba.tar.gz |
Initial import
-rw-r--r-- | .SRCINFO | 17 | ||||
-rw-r--r-- | PKGBUILD | 84 | ||||
-rw-r--r-- | edb.install | 32 | ||||
-rw-r--r-- | edb32.desktop | 16 |
4 files changed, 149 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..e71e22c8a778 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,17 @@ +pkgbase = bin32-edb-debugger + pkgdesc = EDB (Evan's Debugger) is a QT4 based binary mode debugger with the goal of having usability on par with OllyDbg - 32 bit version (used to debug 32-bit applications on x86_64 architecture). + pkgver = 0.9.20 + pkgrel = 1 + url = http://www.codef00.com/projects.php#Debugger + install = edb.install + arch = x86_64 + license = GPL2 + makedepends = boost>=1.35.0 + depends = lib32-qt4>=4.5 + source = http://www.codef00.com/projects/debugger-0.9.20.tgz + source = edb32.desktop + md5sums = 5916d415f598fae8632dd763f58e11d1 + md5sums = 4df05c4a3e3ee228510b46076f12e7d3 + +pkgname = bin32-edb-debugger + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..be20bb7e79cf --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,84 @@ +# Maintainer : Dobroslaw Kijowski [dobo] <dobo90_at_gmail.com> +# Contributor: revel <revelΘmuub·net> +# Contributor: shild <sxp@bk.ru> + +pkgname=bin32-edb-debugger +pkgver=0.9.20 +pkgrel=1 +pkgdesc="EDB (Evan's Debugger) is a QT4 based binary mode debugger with the goal of having usability on par with OllyDbg - 32 bit version (used to debug 32-bit applications on x86_64 architecture)." +arch=('x86_64') +url="http://www.codef00.com/projects.php#Debugger" +license=('GPL2') +depends=('lib32-qt4>=4.5') +makedepends=('boost>=1.35.0') +install=edb.install +source=(http://www.codef00.com/projects/debugger-${pkgver}.tgz + edb32.desktop) +md5sums=(5916d415f598fae8632dd763f58e11d1 + 4df05c4a3e3ee228510b46076f12e7d3) + +# WARNING: this PKGBUILD contains few nasty hacks because of qmake's stubbornness +# and qtconfig.h "bug" in Arch Linux (https://bbs.archlinux.org/viewtopic.php?id=133403) + +prepare() { + cd ${srcdir}/debugger + + # add qmake flags in project files + for file in src/src.pro plugins/{plugins.pri,plugins-x86_64.pri} + do + sed -i '1s/^/QMAKE_CXXFLAGS += -m32\n/' ${file} + sed -i '1s/^/QMAKE_LFLAGS += -m32\n/' ${file} + sed -i '1s/^/QT_ARCH = i386\n/' ${file} + # needed in versions 0.9.20+ + sed -i 's#VPATH += arch/x86_64 $$LEVEL/include/arch/x86_64#VPATH += arch/x86 $$LEVEL/include/arch/x86#g' ${file} + sed -i 's#INCLUDEPATH += arch/x86_64 $$LEVEL/include/arch/x86_64#INCLUDEPATH += arch/x86 $$LEVEL/include/arch/x86#g' ${file} + sed -i 's#INCLUDEPATH += $$LEVEL/include/arch/x86_64#INCLUDEPATH += $$LEVEL/include/arch/x86#g' ${file} + done + + # hardcode library path because it would intefere with 64-bit edb + sed -i 's#load_plugins(edb::v1::config().plugin_path);#load_plugins("/usr/lib32/edb");#' src/main.cpp +} + +build() { + cd ${srcdir}/debugger + + # generate all Makefiles... + qmake-qt4 -makefile + make qmake + + for dir in src plugins + do + cd ${dir} && make qmake && cd .. + done + + # ...and fix march in them + for file in $(find src plugins -name Makefile) + do + sed -i 's/-march=x86-64/-march=i686/g' ${file} + done + + make + + # that's rediculous, see https://bbs.archlinux.org/viewtopic.php?id=133403 + # yup, we're patchin binary files... but i think it's still more simple way + # than patching system header or defining macro in all source code files + for file in $(find -name \*.so) + do + sed -i 's/buildkey=x86_64 linux g++-4 full-config/buildkey=i386 linux g++-4 full-config\o00\o00/' ${file} + done +} + +package() { + cd ${srcdir}/debugger + + make INSTALL_ROOT=${pkgdir}/usr install + + mv ${pkgdir}/usr/lib64 ${pkgdir}/usr/lib32 + mv ${pkgdir}/usr/bin/edb ${pkgdir}/usr/bin/edb32 + + install -D -m 644 src/images/edb48-logo.png ${pkgdir}/usr/share/pixmaps/edb32.png + install -D -m 644 src/images/edb48-logo.png ${pkgdir}/usr/share/icons/hicolor/48x48/apps/edb32.png + + cd .. + install -D -m 644 edb32.desktop ${pkgdir}/usr/share/applications/edb32.desktop +} diff --git a/edb.install b/edb.install new file mode 100644 index 000000000000..2c587702bc4c --- /dev/null +++ b/edb.install @@ -0,0 +1,32 @@ +post_install() { + echo "====" + echo "NOTE" + echo "====" + echo "* Since the tools that ./edb_make_symbolmap is dependant on are not uniform" + echo " across all the platforms that I intend to support. I have built symbol" + echo " file generation into edb directly. Running './edb --symbols <filename>' will" + echo " create a symbol file in the same format as the old script. For now, ELF is the" + echo " only supported format but more will be added as needed. This also means" + echo " that future versions of edb will be able to generate symbols as needed" + echo " if no symbol file is provided, making things \"just work\" more often." + echo "===" + echo " EBD's plugins are installed by default into /usr/lib/edb." + echo " If you have previously used EDB and have it set to look in a" + echo " different directory, then you will need to adjust this. Also" + echo " EDB looks for plugins in the current working directory as well" + echo " as the directory specified in the options, so that unpriviledged" + echo " users can use plugins not installed system wide." + echo "" + + update-desktop-database -q + gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor +} + +post_upgrade() { + post_install +} + +post_remove() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor +} diff --git a/edb32.desktop b/edb32.desktop new file mode 100644 index 000000000000..d1a01d7a4c26 --- /dev/null +++ b/edb32.desktop @@ -0,0 +1,16 @@ +[Desktop Entry] +Name=Evan's Debugger (32-bit version) +GenericName=Debugger +Comment=QT4 based binary mode debugger +TryExec=edb32 +Exec=edb32 +Terminal=false +Type=Application +Icon=edb32 +Categories=Application;Development; +Actions=Debug +MimeType=application/x-executable + +[Desktop Action Debug] +Exec=edb32 --run %f +Name=Evan's Debugger 32-bit (debug with) |