Unverified Commit da6aa9cd authored by Jonas Heinrich's avatar Jonas Heinrich Committed by GitHub
Browse files

Merge pull request #221448 from wegank/autotrace-bump

autotrace: 0.31.1 -> 0.31.9
parents 389975d8 6c072b2d
Loading
Loading
Loading
Loading
+0 −11
Original line number Diff line number Diff line
{ stdenv, fetchurl }:

stdenv.mkDerivation {
  pname = "autofig";
  version = "0.1";

  src = fetchurl {
    url = "http://autotrace.sourceforge.net/tools/autofig.tar.gz";
    sha256 = "11cs9hdbgcl3aamcs3149i8kvyyldmnjf6yq81kbcf8fdmfk2zdq";
  };
}
+44 −111
Original line number Diff line number Diff line
{ lib, stdenv, fetchurl, callPackage, libpng12, imagemagick
, autoreconfHook, glib, pstoedit, pkg-config, gettext, gd, darwin
, runtimeShell }:

# TODO: Figure out why the resultant binary is somehow linked against
# libpng16.so.16 rather than libpng12.
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, autoreconfHook
, gettext
, intltool
, pkg-config
, glib
, imagemagick
, libpng
, pstoedit
, darwin
}:

stdenv.mkDerivation rec {
  pname = "autotrace";
  version = "0.31.1";
  version = "0.31.9";

  src = fetchurl {
    url = "mirror://sourceforge/autotrace/AutoTrace/0.31.1/${pname}-${version}.tar.gz";
    sha256 = "1xmgja5fv48mdbsa51inf7ksz36nqd6bsaybrk5xgprm6cy946js";
  src = fetchFromGitHub {
    owner = "autotrace";
    repo = "autotrace";
    rev = version;
    hash = "sha256-8qqB6oKmbz95dNLtdLvb69cEj/P7TzdoKEyJ8+4ITzs=";
  };

  # The below commented out part is for an identically-named project
  # on GitHub which appears to derive somehow from the Sourceforge
  # version, but I have no idea what the lineage is of this project.
  # It will build, but it segfaults when I attempt to run -centerline.
  # Someone may need this for some reason, so I've left it here.
  #
  #src = fetchFromGitHub {
  #  owner = "autotrace";
  #  repo = "autotrace";
  #  rev = "b3ac8818d86943102cb4f13734e0b527c42dc45a";
  #  sha256 = "0z5h2mvxwckk2msi361zk1nc9fdcvxyimyc2hlyqd6h8k3p7zdi4";
  #};
  #postConfigure = ''
  #  sed -i -e "s/at_string/gchar */g" *.c
  #  sed -i -e "s/at_address/gpointer/g" *.c
  #  sed -i -e "s/at_bitmap_type/struct _at_bitmap/g" *.c
  #  sed -i -e "s/AT_BITMAP_BITS(bitmap)/AT_BITMAP_BITS(\&bitmap)/g" input-magick.c
  #'';

  autofig = callPackage ./autofig.nix {};
  nativeBuildInputs = [ autoreconfHook glib autofig pkg-config gettext ];
  buildInputs = [ libpng12 imagemagick pstoedit ]
    ++ lib.optionals stdenv.isDarwin
       (with darwin.apple_sdk.frameworks; [ gd ApplicationServices ]);
  patches = [
    (fetchpatch {
      name = "imagemagick7-support.patch";
      url = "https://github.com/autotrace/autotrace/pull/105.patch";
      hash = "sha256-Q82LRF/BsJ/Ii2s+7yaYHs9agMKYVYIMnbwqz8P92s0=";
    })
  ];

  postUnpack = ''
    pushd $sourceRoot
    autofig autotrace-config.af
    popd
  '';
  nativeBuildInputs = [
    autoreconfHook
    gettext
    intltool
    pkg-config
  ];

  # This complains about various m4 files, but it appears to not be an
  # actual error.
  preConfigure = ''
    glib-gettextize --copy --force
    # pstoedit-config no longer exists, it was replaced with pkg-config
    mkdir wrappers
    cat >wrappers/pstoedit-config <<'EOF'
    #!${runtimeShell}
    # replace --version with --modversion for pkg-config
    args=''${@/--version/--modversion}
    exec pkg-config pstoedit "''${args[@]}"
    EOF
    chmod +x wrappers/pstoedit-config
    export PATH="$PATH:$PWD/wrappers"
  '';
  buildInputs = [
    glib
    imagemagick
    libpng
    pstoedit
  ] ++ lib.optionals stdenv.isDarwin [
    darwin.apple_sdk.frameworks.Foundation
  ];

  meta = with lib; {
    homepage = "https://autotrace.sourceforge.net/";
    homepage = "https://github.com/autotrace/autotrace";
    description = "Utility for converting bitmap into vector graphics";
    platforms = platforms.unix;
    maintainers = with maintainers; [ hodapp ];
    license = licenses.gpl2;
    knownVulnerabilities = [
      "CVE-2013-1953"
      "CVE-2016-7392"
      "CVE-2017-9151"
      "CVE-2017-9152"
      "CVE-2017-9153"
      "CVE-2017-9154"
      "CVE-2017-9155"
      "CVE-2017-9156"
      "CVE-2017-9157"
      "CVE-2017-9158"
      "CVE-2017-9159"
      "CVE-2017-9160"
      "CVE-2017-9161"
      "CVE-2017-9162"
      "CVE-2017-9163"
      "CVE-2017-9164"
      "CVE-2017-9165"
      "CVE-2017-9166"
      "CVE-2017-9167"
      "CVE-2017-9168"
      "CVE-2017-9169"
      "CVE-2017-9170"
      "CVE-2017-9171"
      "CVE-2017-9172"
      "CVE-2017-9173"
      "CVE-2017-9174"
      "CVE-2017-9175"
      "CVE-2017-9176"
      "CVE-2017-9177"
      "CVE-2017-9178"
      "CVE-2017-9179"
      "CVE-2017-9180"
      "CVE-2017-9181"
      "CVE-2017-9182"
      "CVE-2017-9183"
      "CVE-2017-9184"
      "CVE-2017-9185"
      "CVE-2017-9186"
      "CVE-2017-9187"
      "CVE-2017-9188"
      "CVE-2017-9189"
      "CVE-2017-9190"
      "CVE-2017-9191"
      "CVE-2017-9192"
      "CVE-2017-9193"
      "CVE-2017-9194"
      "CVE-2017-9195"
      "CVE-2017-9196"
      "CVE-2017-9197"
      "CVE-2017-9198"
      "CVE-2017-9199"
      "CVE-2017-9200"
    ];
  };
}