Description: use pkg-config (via ExtUtils::PkgConfig) instead of the removed gdlib-config.
Additionally remove parts from try_to_autoconfigure which are not needed, at least on Debian,
and adjust some variable to the different output of pkg-config.
pkg-config doesn't return "features", so we're hardcoding it for now, taken from gdlib-config
as of src:libgd2 2.2.3-1.1 (rebuilt with gdlib-config re-enabled).
.
This patch might need more massaging before upstreaming it wrt non-Debian systems,
and inclusion of ExtUtils::PkgConfig into the distributions metadata.
Origin: vendor
Bug: https://rt.cpan.org/Ticket/Display.html?id=114788
Bug-Debian: https://bugs.debian.org/825629
Forwarded: no
Author: gregor herrmann <[email protected]>
Last-Update: 2016-09-25

--- a/Makefile.PL
+++ b/Makefile.PL
@@ -1,6 +1,7 @@
use ExtUtils::MakeMaker qw(prompt WriteMakefile);
use Config;
use strict;
+use ExtUtils::PkgConfig;

# if this is a dev version the version number can be a string with underscores
# remove them to prevent a warning and that's what perl will do it it was
@@ -273,27 +274,23 @@

sub try_to_autoconfigure {
  my ($options,$lib_gd_path,$INC,$LIBPATH,$LIBS) = @_;
-  my $config = `gdlib-config --all`;
-  return unless $config;
+  my %config = ExtUtils::PkgConfig->find ('gdlib');
+  return unless %config;
  $AUTOCONFIG++;

-  my ($version) = $config =~ /^GD library\s+(\S+)/m;
+  my ($version) = $config{modversion};
  warn "Configuring for libgd version $version.\n";

-  my ($cflags)     = $config =~ /^cflags:\s+(.+)/m;
-  my ($ldflags)    = $config =~ /^ldflags:\s+(.+)/m;
-  my ($libs)       = $config =~ /^libs:\s+(.+)/m;
-  my ($libdir)     = $config =~ /^libdir:\s+(.+)/m;
-  my ($features)   = $config =~ /^features:\s+(.+)/m;
-  my ($includedir) = $config =~ /^includedir:\s+(.+)/m;
+  my ($cflags)     = $config{cflags};
+  my ($libs)       = $config{libs};
+  my ($libdir)     = ExtUtils::PkgConfig->variable('gdlib', 'libdir');
+  my ($features)   = 'GD_GIF GD_GIFANIM GD_OPENPOLYGON GD_ZLIB GD_PNG GD_FREETYPE GD_FONTCONFIG GD_JPEG GD_XPM GD_TIFF GD_WEBP';

  @$INC          = map {s/^-I// && "-I$_"} split /\s+/,$cflags;
-  @$LIBPATH      = map {s/^-L// && "-L$_"} split /\s+/,$ldflags;
  @$LIBS         = split /\s+/,$libs;

-  push @$LIBS,"-lgd";
  push @$LIBPATH,"-L$libdir";
-  ($$lib_gd_path = $libdir) =~ s!/[^/]+$!!;
+  $$lib_gd_path  = $libdir;
  $$options      = $features;

  my ($minor, $patch)    = $version =~ /^2\.(\d+)\.(\d+)$/;
@@ -301,8 +298,6 @@
    $$options     .= " GD_UNCLOSEDPOLY GD_ANIMGIF GD_FTCIRCLE VERSION_33";
  }

-  my @correct_inc = map {s/^-I// && $_} split /\s+/,$cflags;
-  check_for_stray_headers($includedir,@correct_inc);
  return 1;
}