patch 8.2.2852: configure can add --as-needed a second time

Problem:    Configure can add --as-needed a second time.
Solution:   Only add --as-needed if not already there.  (Natanael Copa,
            closes #8189, closes #8181)
diff --git a/src/auto/configure b/src/auto/configure
index 934b34c..0b423a6 100755
--- a/src/auto/configure
+++ b/src/auto/configure
@@ -14937,7 +14937,9 @@
 LINK_AS_NEEDED=
 # Check if linker supports --as-needed and --no-as-needed options
 if $CC -Wl,--help 2>/dev/null | grep as-needed > /dev/null; then
-  LDFLAGS=`echo "$LDFLAGS" | sed -e 's/ *-Wl,--as-needed//g' | sed -e 's/$/ -Wl,--as-needed/'`
+  if ! echo "$LDFLAGS" | grep -q -- '-Wl,[^[:space:]]*--as-needed'; then
+    LDFLAGS="$LDFLAGS -Wl,--as-needed"
+  fi
   LINK_AS_NEEDED=yes
 fi
 if test "$LINK_AS_NEEDED" = yes; then
diff --git a/src/configure.ac b/src/configure.ac
index 657cc97..cc8d61f 100644
--- a/src/configure.ac
+++ b/src/configure.ac
@@ -4519,7 +4519,9 @@
 LINK_AS_NEEDED=
 # Check if linker supports --as-needed and --no-as-needed options
 if $CC -Wl,--help 2>/dev/null | grep as-needed > /dev/null; then
-  LDFLAGS=`echo "$LDFLAGS" | sed -e 's/ *-Wl,--as-needed//g' | sed -e 's/$/ -Wl,--as-needed/'`
+  if ! echo "$LDFLAGS" | grep -q -- '-Wl,[[^[:space:]]]*--as-needed'; then
+    LDFLAGS="$LDFLAGS -Wl,--as-needed"
+  fi
   LINK_AS_NEEDED=yes
 fi
 if test "$LINK_AS_NEEDED" = yes; then
diff --git a/src/version.c b/src/version.c
index 0d3c2ad..f7406ee 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2852,
+/**/
     2851,
 /**/
     2850,