diff -ur php-5.3.29.orig/ext/gd/config.m4 php-5.3.29/ext/gd/config.m4
--- php-5.3.29.orig/ext/gd/config.m4	2014-08-13 21:22:50.000000000 +0200
+++ php-5.3.29/ext/gd/config.m4	2020-03-15 00:12:39.282357757 +0100
@@ -160,32 +160,14 @@
 
 AC_DEFUN([PHP_GD_FREETYPE2],[
   if test "$PHP_FREETYPE_DIR" != "no"; then
+    FREETYPE2_CFLAGS=`pkg-config freetype2 --cflags`
+    FREETYPE2_LIBS=`pkg-config freetype2 --libs`
 
-    for i in $PHP_FREETYPE_DIR /usr/local /usr; do
-      if test -f "$i/include/freetype2/freetype/freetype.h"; then
-        FREETYPE2_DIR=$i
-        FREETYPE2_INC_DIR=$i/include/freetype2
-        break
-      fi
-    done
-
-    if test -z "$FREETYPE2_DIR"; then
-      AC_MSG_ERROR([freetype.h not found.])
-    fi
-
-    PHP_CHECK_LIBRARY(freetype, FT_New_Face,
-    [
-      PHP_ADD_LIBRARY_WITH_PATH(freetype, $FREETYPE2_DIR/$PHP_LIBDIR, GD_SHARED_LIBADD)
-      PHP_ADD_INCLUDE($FREETYPE2_DIR/include)
-      PHP_ADD_INCLUDE($FREETYPE2_INC_DIR)
-      AC_DEFINE(USE_GD_IMGSTRTTF, 1, [ ])
-      AC_DEFINE(HAVE_LIBFREETYPE,1,[ ])
-      AC_DEFINE(ENABLE_GD_TTF,1,[ ])
-    ],[
-      AC_MSG_ERROR([Problem with freetype.(a|so). Please check config.log for more information.])
-    ],[
-      -L$FREETYPE2_DIR/$PHP_LIBDIR
-    ])
+    PHP_EVAL_INCLINE($FREETYPE2_CFLAGS)
+    PHP_EVAL_LIBLINE($FREETYPE2_LIBS, GD_SHARED_LIBADD)
+    AC_DEFINE(USE_GD_IMGSTRTTF, 1, [ ])
+    AC_DEFINE(HAVE_LIBFREETYPE,1,[ ])
+    AC_DEFINE(ENABLE_GD_TTF,1,[ ])
   else
     AC_MSG_RESULT([If configure fails try --with-freetype-dir=<DIR>])
   fi
