This patch (adapted from nixpkgs for Build.PL) configures Getopt::Long to pass
options so they will be available at the second GetOptions call.

Also an option to specify the search path for libfontconfig is added.

--- GD-2.56/Build.PL	2014-10-27 20:34:54.000000000 -0500
+++ GD-2.56/Build.PL	2015-02-22 10:08:12.569973657 -0600
@@ -2,14 +2,14 @@
 
 use strict;
 use Module::Build;
-use Getopt::Long;
+use Getopt::Long qw(:config pass_through);
 use Config;
 
 # =====> PATHS: CHECK AND ADJUST <=====
 my (@INC,@LIBPATH,@LIBS);
 my $AUTOCONFIG = 0;      # global set by try_to_autoconfigure() below
 
-my ($options,$lib_gd_path,$lib_ft_path,$lib_png_path,$lib_jpeg_path,$lib_xpm_path,$lib_zlib_path);
+my ($options,$lib_gd_path,$lib_ft_path,$lib_png_path,$lib_jpeg_path,$lib_xpm_path,$lib_zlib_path,$lib_fontconfig_path);
 
 unless (try_to_autoconfigure(\$options,\$lib_gd_path,\@INC,\@LIBPATH,\@LIBS)) {
     die <<END;
@@ -38,6 +38,7 @@
 			"lib_jpeg_path=s" => \$lib_jpeg_path,
 			"lib_xpm_path=s"  => \$lib_xpm_path,
 			"lib_zlib_path=s" => \$lib_zlib_path,
+			"lib_fontconfig_path=s" => \$lib_fontconfig_path,
 		       );
 unless ($result) {
   die <<END;
@@ -53,6 +54,7 @@
      -lib_jpeg_path path            path to libjpeg
      -lib_xpm_path  path            path to libxpm
      -lib_zlib_path path            path to libpng
+     -lib_fontconfig_path path      path to fontconfig
      -ignore_missing_gd             Ignore missing or old libgd installations and try to compile anyway
 
 If no options are passed on the command line.  The program will
@@ -100,6 +102,12 @@
     @INC     = ("-I$lib_zlib_path/include", @INC);
     @LIBPATH = ("-L$lib_zlib_path/lib", @LIBPATH); 
 }
+if( defined($lib_fontconfig_path) ) 
+{
+    print "Fontconfig library used from:     $lib_fontconfig_path\n";
+    @INC     = ("-I$lib_fontconfig_path/include", @INC);
+    @LIBPATH = ("-L$lib_fontconfig_path/lib", @LIBPATH); 
+}
 #############################################################################################
 
 if ($^O eq 'VMS'){