Commit fbc9fff7 authored by Emily Trau's avatar Emily Trau
Browse files

ddd: 3.3.12 -> 3.4.0

parent 06f18e17
Loading
Loading
Loading
Loading
+51 −16
Original line number Diff line number Diff line
{lib, stdenv, fetchurl, motif, ncurses, libX11, libXt}:
{
  lib,
  stdenv,
  fetchurl,
  imagemagick,
  desktopToDarwinBundle,
  motif,
  ncurses,
  libX11,
  libXt,
  gdb,
}:

stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
  pname = "ddd";
  version = "3.3.12";
  version = "3.4.0";

  src = fetchurl {
    url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
    sha256 = "0p5nx387857w3v2jbgvps2p6mlm0chajcdw5sfrddcglsxkwvmis";
    url = "mirror://gnu/ddd/ddd-${finalAttrs.version}.tar.gz";
    hash = "sha256-XUy8iguwRYVDhm1nkwjFOj7wZuQC/loZGOGWmKPTWA8=";
  };
  buildInputs = [motif ncurses libX11 libXt];
  configureFlags = [ "--with-x" ];

  patches = [
    # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=504868
    ./gcc44.patch
  postPatch = ''
    substituteInPlace ddd/Ddd.in \
      --replace-fail 'debuggerCommand:' 'debuggerCommand: ${gdb}/bin/gdb'
  '';

  nativeBuildInputs = [ imagemagick ] ++ lib.optionals stdenv.isDarwin [ desktopToDarwinBundle ];

  buildInputs = [
    motif
    ncurses
    libX11
    libXt
  ];

  env.NIX_CFLAGS_COMPILE = "-fpermissive";
  # ioctl is not found without this flag. fixed in next release
  # Upstream issue ref: https://savannah.gnu.org/bugs/index.php?64188
  env = lib.optionalAttrs stdenv.isDarwin { NIX_CFLAGS_COMPILE = "-DHAVE_SYS_IOCTL_H"; };

  configureFlags = [
    "--enable-builtin-manual"
    "--enable-builtin-app-defaults"
  ];

  # From MacPorts: make will build the executable "ddd" and the X resource
  # file "Ddd" in the same directory, as HFS+ is case-insensitive by default
  # this will loosely FAIL
  makeFlags = [ "EXEEXT=exe" ];
  enableParallelBuilding = true;

  postInstall = ''
    install -D icons/ddd.xpm $out/share/pixmaps/ddd.xpm
    mv $out/bin/dddexe $out/bin/ddd
    convert icons/ddd.xbm ddd.png
    install -D ddd.png $out/share/icons/hicolor/48x48/apps/ddd.png
  '';

  meta = {
    homepage = "https://www.gnu.org/software/ddd";
    changelog = "https://www.gnu.org/software/ddd/news.html";
    description = "Graphical front-end for command-line debuggers";
    homepage = "https://www.gnu.org/software/ddd";
    license = lib.licenses.gpl3Only;
    mainProgram = "ddd";
    license = lib.licenses.gpl3Plus;
    platforms = lib.platforms.linux;
    maintainers = with lib.maintainers; [ emilytrau ];
    platforms = lib.platforms.unix;
  };
}
})
+0 −11
Original line number Diff line number Diff line
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=504868
--- a/ddd/strclass.C~ 2008-11-07 17:57:13.000000000 +0000
+++ b/ddd/strclass.C  2008-11-07 17:57:27.000000000 +0000
@@ -39,6 +39,7 @@
 #include <ctype.h>
 #include <limits.h>
 #include <new>
+#include <cstdio>
 #include <stdlib.h>
 
 void string::error(const char* msg) const