diff -rupN --no-dereference libspatialite-5.0.1/configure.ac libspatialite-5.0.1-new/configure.ac
--- libspatialite-5.0.1/configure.ac	2021-03-08 08:57:19.015858195 +0100
+++ libspatialite-5.0.1-new/configure.ac	2021-03-08 08:57:19.017858195 +0100
@@ -312,35 +312,10 @@ AC_ARG_ENABLE(geos, [AS_HELP_STRING(
   [], [enable_geos=yes])
 if test x"$enable_geos" != "xno"; then
   #-----------------------------------------------------------------------
-  #   --with-geosconfig
-  #
-  AC_ARG_WITH([geosconfig],
-        [AS_HELP_STRING([--with-geosconfig=FILE], [specify an alternative geos-config file])],
-	[GEOSCONFIG="$withval"], [GEOSCONFIG=""])
-  if test "x$GEOSCONFIG" = "x"; then
-        # GEOSCONFIG was not specified, so search within the current path
-        AC_PATH_PROG([GEOSCONFIG], [geos-config])	
-        # If we couldn't find geos-config, display an error
-        if test "x$GEOSCONFIG" = "x"; then
-                AC_MSG_ERROR([could not find geos-config within the current path. You may need to try re-running configure with a --with-geosconfig parameter.])
-        fi
-  else
-        # GEOSCONFIG was specified; display a message to the user
-        if test "x$GEOSCONFIG" = "xyes"; then
-                AC_MSG_ERROR([you must specify a parameter to --with-geosconfig, e.g. --with-geosconfig=/path/to/geos-config])
-        else
-                if test -f $GEOSCONFIG; then
-                        AC_MSG_RESULT([Using user-specified geos-config file: $GEOSCONFIG])
-                else
-                        AC_MSG_ERROR([the user-specified geos-config file $GEOSCONFIG does not exist])
-                fi     
-        fi
-  fi
-  # Extract the linker and include flags
-  GEOS_LDFLAGS=`$GEOSCONFIG --ldflags`
-  GEOS_CFLAGS=-I`$GEOSCONFIG --includes`
-  AC_SUBST([GEOS_LDFLAGS])
-  AC_SUBST([GEOS_CFLAGS])	
+  PKG_CHECK_MODULES([GEOS], [geos], , AC_MSG_ERROR(['geos' is required but it doesn't seem to be installed on this system.]))
+  GEOS_LDFLAGS="$GEOS_LIBS"
+  AC_SUBST(GEOS_CFLAGS)
+  AC_SUBST(GEOS_LDFLAGS)
   # Ensure that we can parse geos_c.h
   CPPFLAGS_SAVE="$CPPFLAGS"
   CPPFLAGS="$GEOS_CFLAGS"
