diff options
author | Filip Parag | 2020-03-05 20:54:17 +0100 |
---|---|---|
committer | Filip Parag | 2020-03-05 20:54:17 +0100 |
commit | 413b50eca80b98531e68658f928d94568a05e31d (patch) | |
tree | 0cc7e62a3e51089a69afcac27c7651febd902fad | |
download | aur-413b50eca80b98531e68658f928d94568a05e31d.tar.gz |
patched for gcc 9.2
-rw-r--r-- | .SRCINFO | 26 | ||||
-rw-r--r-- | PKGBUILD | 39 | ||||
-rw-r--r-- | ddd-3.3.12-gcc44.patch | 10 | ||||
-rw-r--r-- | friend-default.patch | 68 | ||||
-rw-r--r-- | tmd018 | 135 |
5 files changed, 278 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..1c725a78848a --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,26 @@ +pkgbase = ddd-ftn + pkgdesc = A graphical front-end for command-line debuggers such as GDB, JDB, pydb, perl debugger adapted for use at Faculty of Technical Sciences, University of Novi Sad + pkgver = 3.3.12 + pkgrel = 12 + url = http://www.gnu.org/software/ddd/ + arch = x86_64 + license = GPL3 + license = LGPL3 + depends = gcc-libs + depends = openmotif + depends = libxaw + optdepends = gdb: to use the Gnu debugger + optdepends = java-runtime-openjdk: to use the Java debugger + optdepends = pydb: to use the Python debugger + optdepends = perl: to use the Perl debugger + source = http://ftp.gnu.org/gnu/ddd/ddd-ftn-3.3.12.tar.gz + source = ddd-3.3.12-gcc44.patch + source = friend-default.patch + source = tmd018 + sha1sums = b91d2dfb1145af409138bd34517a898341724e56 + sha1sums = 3d43c9d56347f248732b1d72f29c7bf799f03864 + sha1sums = 4fcb220ed3f2b84b9f6a9090a7e147341ed98ee2 + sha1sums = 951627de48d73ec85c8270b781374adba25fc4c0 + +pkgname = ddd-ftn + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..e176fe7b6ae9 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,39 @@ +# Maintainer: Filip Parag <aur@filiparag.com> +# Maintainer: Bojan Stipić <bojanstipic@uns.ac.rs> + +pkgname=ddd-ftn +pkgver=3.3.12 +pkgrel=12 +pkgdesc="A graphical front-end for command-line debuggers such as GDB, JDB, pydb, perl debugger adapted for use at Faculty of Technical Sciences, University of Novi Sad" +arch=('x86_64') +url="http://www.gnu.org/software/ddd/" +license=('GPL3' 'LGPL3') +depends=('gcc-libs' 'openmotif' 'libxaw') +optdepends=('gdb: to use the Gnu debugger' + 'java-runtime-openjdk: to use the Java debugger' + 'pydb: to use the Python debugger' + 'perl: to use the Perl debugger') +source=(http://ftp.gnu.org/gnu/ddd/${pkgname}-${pkgver}.tar.gz ddd-3.3.12-gcc44.patch friend-default.patch tmd018) +sha1sums=('b91d2dfb1145af409138bd34517a898341724e56' + '3d43c9d56347f248732b1d72f29c7bf799f03864' + '4fcb220ed3f2b84b9f6a9090a7e147341ed98ee2' + '951627de48d73ec85c8270b781374adba25fc4c0') + +prepare() { + cd ${pkgname}-${pkgver} + patch -p1 -i "${srcdir}/ddd-3.3.12-gcc44.patch" + patch -p1 -i "${srcdir}/friend-default.patch" + patch -p1 -i "${srcdir}/tmd018" +} + +build() { + cd ${pkgname}-${pkgver} + LIBS+="-pthread" ./configure --prefix=/usr + make -O2 +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + install -D -m644 icons/ddd.xpm "${pkgdir}/usr/share/pixmaps/ddd.xpm" +} diff --git a/ddd-3.3.12-gcc44.patch b/ddd-3.3.12-gcc44.patch new file mode 100644 index 000000000000..2464b2b4a9c4 --- /dev/null +++ b/ddd-3.3.12-gcc44.patch @@ -0,0 +1,10 @@ +--- ddd-3.3.12-orig/ddd/strclass.C ++++ ddd-3.3.12/ddd/strclass.C +@@ -39,6 +39,7 @@ + #include <limits.h> + #include <new> + #include <stdlib.h> ++#include <stdio.h> + + void string::error(const char* msg) const + { diff --git a/friend-default.patch b/friend-default.patch new file mode 100644 index 000000000000..4175f4ad70a8 --- /dev/null +++ b/friend-default.patch @@ -0,0 +1,68 @@ +--- ddd-3.3.12-orig/ddd/strclass.C ++++ ddd-3.3.12/ddd/strclass.C +index 7ef16fa..faea640 100644 +--- i/ddd/strclass.h ++++ w/ddd/strclass.h +@@ -810,10 +810,10 @@ public: + friend int split(const string& x, string *res, int maxn, + const regex& sep); + +- friend string common_prefix(const string& x, const string& y, +- int startpos = 0); +- friend string common_suffix(const string& x, const string& y, +- int startpos = -1); ++ inline string common_prefix(const string& x, const string& y); ++ friend string common_prefix(const string& x, const string& y, int startpos); ++ inline string common_suffix(const string& x, const string& y); ++ friend string common_suffix(const string& x, const string& y, int startpos); + friend string replicate(char c, int n); + friend string replicate(const string& y, int n); + friend string join(const string *src, int n, const string& sep); +@@ -863,9 +863,10 @@ public: + friend inline std::ostream& operator<<(std::ostream& s, const subString& x); + friend std::istream& operator>>(std::istream& s, string& x); + +- friend int readline(std::istream& s, string& x, +- char terminator = '\n', +- int discard_terminator = 1); ++ inline int readline(std::istream& s, string& x); ++ inline int readline(std::istream& s, string& x, char terminator); ++ friend int readline(std::istream& s, string& x, char terminator, ++ int discard_terminator); + + // Status + unsigned int length() const; +@@ -1456,6 +1457,16 @@ inline string operator + (char x, const subString& y) + string r; cat(x, y, r); return r; + } + ++inline string common_prefix(const string& x, const string& y) ++{ ++ return common_prefix(x, y, 0); ++} ++ ++inline string common_suffix(const string& x, const string& y) ++{ ++ return common_suffix(x, y, -1); ++} ++ + inline string reverse(const string& x) + { + string r; r.rep = string_Sreverse(x.rep, r.rep); return r; +@@ -1476,6 +1487,16 @@ inline string capitalize(const string& x) + string r; r.rep = string_Scapitalize(x.rep, r.rep); return r; + } + ++inline int readline(std::istream& s, string& x) ++{ ++ return readline(s, x, '\n', 1); ++} ++ ++inline int readline(std::istream& s, string& x, char terminator) ++{ ++ return readline(s, x, terminator, 1); ++} ++ + // prepend + + inline string& string::prepend(const string& y) diff --git a/tmd018 b/tmd018 new file mode 100644 index 000000000000..d1b1f5dabafc --- /dev/null +++ b/tmd018 @@ -0,0 +1,135 @@ +Index: ddd-3.3.12/ddd/Ddd.in.m4 +=================================================================== +--- ddd-3.3.12.orig/ddd/Ddd.in.m4 2014-10-10 23:13:16.569640891 +0200 ++++ ddd-3.3.12/ddd/Ddd.in.m4 2014-10-10 23:13:16.561640891 +0200 +@@ -109,7 +109,7 @@ + Ddd*openDebuggerConsole: on + Ddd*openSourceWindow: on + Ddd*openDataWindow: off +- ++Ddd*displayPlacement: XmHORIZONTAL + + ! On if programs are to be run in a separate top-level window. + ! If this is off, input/output is sent to the debugger console. +@@ -122,7 +122,7 @@ + + ! On if DDD windows are to be iconified/uniconified as a whole. + ! If this is off, every DDD window can be iconified on its own. +-Ddd*groupIconify: off ++Ddd*groupIconify: on + + + ! On if DDD windows are to be uniconified when GDB becomes ready. +@@ -145,7 +145,7 @@ + ! + ! In this release, the default is still Motif, but this may change to KDE + ! in some future version. +-Ddd*cutCopyPasteBindings: Motif ++Ddd*cutCopyPasteBindings: KDE + + + ! The key bindings to use for Ctrl+A (Select All): +@@ -474,9 +474,46 @@ + ! Ddd*sourceButtons: \ + ! run\nstep\nnext\nstepi\nnexti\ncont\nfinish\nkill\n\ + ! up\ndown\nBack\nForward\nEdit\ninterrupt^C ++Ddd*sourceButtons: \ ++Reload\n\ ++run\n\ ++interrupt\n\ ++step\n\ ++next\n\ ++stepi\n\ ++nexti\n\ ++cont\n\ ++kill + + ! The data window buttons (none: no buttons) +-Ddd*dataButtons: ++! Ddd*dataButtons: ++Ddd*dataButtons: \ ++graph display `x /1sb &()` //String\n\ ++graph display `x /1cb &()` //Char\n\ ++graph display `x /1db &()` //ByteD\n\ ++graph display `x /1xb &()` //ByteH\n\ ++graph display `x /1ub &()` //ByteU\n\ ++graph display `x /1dh &()` //WordD\n\ ++graph display `x /1xh &()` //WordH\n\ ++graph display `x /1uh &()` //WordU\n\ ++graph display `x /20xw ($esp)` //Stack\n\ ++graph display ($eflags & 1) != 0 // c\n\ ++graph display ($eflags & 64) != 0 // z\n\ ++graph display ($eflags & 128) != 0 // s\n\ ++graph display ($eflags & 1024) != 0 // d\n\ ++graph display ($eflags & 2048) != 0 // o\n\ ++graph display $eax & 255 // al\n\ ++graph display $eax >> 8 & 255 // ah\n\ ++graph display $eax & 65535 // ax\n\ ++graph display $ebx & 255 // bl\n\ ++graph display $ebx >> 8 & 255 // bh\n\ ++graph display $ebx & 65535 // bx\n\ ++graph display $ecx & 255 // cl\n\ ++graph display $ecx >> 8 & 255 // ch\n\ ++graph display $ecx & 65535 // cx\n\ ++graph display $edx & 255 // dl\n\ ++graph display $edx >> 8 & 255 // dh\n\ ++graph display $edx & 65535 // dx + + ! The command tool buttons, as of DDD 2.0 and later. + Ddd*toolButtons: \ +@@ -833,7 +870,7 @@ + ! Ddd*cacheGlyphImages: on + + ! Do we wish to display line numbers? (Default in DDD 2.1.1 and earlier) +-Ddd*displayLineNumbers: off ++Ddd*displayLineNumbers: on + + ! Do we wish to cache source files in memory? + Ddd*cacheSourceFiles: on +@@ -946,11 +983,11 @@ + + ! Focus Policy + ! POINTER means point-and-type, EXPLICIT means click-and-type. +-Ddd*keyboardFocusPolicy: POINTER ++Ddd*keyboardFocusPolicy: EXPLICIT + + ! Warnings + ! Do we wish to suppress X warnings? +-Ddd*suppressWarnings: off ++Ddd*suppressWarnings: on + + ! Do we wish to warn if multiple DDD instances are running? + Ddd*warnIfLocked: off +Index: ddd-3.3.12/ddd/examine.C +=================================================================== +--- ddd-3.3.12.orig/ddd/examine.C 2014-10-10 23:13:16.569640891 +0200 ++++ ddd-3.3.12/ddd/examine.C 2014-10-10 23:13:16.561640891 +0200 +@@ -196,7 +196,7 @@ + strip_space(repeat); + strip_space(address); + +- if (GDB == gdb->type() && gdb->cpu == cpu_intel) { ++ if (GDB == gdb->type()) { + + /* Intel x86 8 and 16-bit handling: + When you have an assembly line like this: +Index: ddd-3.3.12/ddd/fonts.C +=================================================================== +--- ddd-3.3.12.orig/ddd/fonts.C 2014-10-10 23:13:16.569640891 +0200 ++++ ddd-3.3.12/ddd/fonts.C 2014-10-10 23:13:16.561640891 +0200 +@@ -162,12 +162,12 @@ + switch (font) + { + case DefaultDDDFont: +- return "-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*"; ++ return "-*-helvetica-bold-r-*-*-*-120-*-*-*-*-*-*"; + case VariableWidthDDDFont: +- return "-*-helvetica-medium-r-*-*-*-120-*-*-*-*-iso8859-*"; ++ return "-*-helvetica-medium-r-*-*-*-120-*-*-*-*-*-*"; + case FixedWidthDDDFont: + case DataDDDFont: +- return "-*-lucidatypewriter-medium-r-*-*-*-120-*-*-*-*-iso8859-*"; ++ return "-*-lucidatypewriter-medium-r-*-*-*-120-*-*-*-*-*-*"; + case SymbolDDDFont: + return "-*-symbol-*-*-*-*-*-120-*-*-*-*-adobe-*"; + } |