summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2022-07-04 18:10:08 -0400
committerPaul Smith <psmith@gnu.org>2022-07-09 10:47:13 -0400
commite33af0fb4a2ac8c3bb3220e892a013bb53c286fc (patch)
treea37d83f2019ade39213596784d258e690110fa24
parent6f7e06ec4eb1ba08f131826d6c28b498c388304b (diff)
downloadmake-git-e33af0fb4a2ac8c3bb3220e892a013bb53c286fc.tar.gz
* configure.ac: Check for stpcpy() support.
* src/misc.c (stpcpy): Define it if not provided.
-rw-r--r--configure.ac4
-rw-r--r--src/misc.c15
2 files changed, 17 insertions, 2 deletions
diff --git a/configure.ac b/configure.ac
index e0b7d060..b2c45d97 100644
--- a/configure.ac
+++ b/configure.ac
@@ -133,8 +133,8 @@ AS_IF([test "$ac_cv_func_gettimeofday" = yes],
[Define to 1 if you have a standard gettimeofday function])
])
-AC_CHECK_FUNCS([strtoll strdup strndup memrchr mempcpy umask mkstemp mktemp \
- fdopen dup dup2 getcwd realpath sigsetmask sigaction \
+AC_CHECK_FUNCS([strtoll strdup strndup stpcpy memrchr mempcpy umask mkstemp \
+ mktemp fdopen dup dup2 getcwd realpath sigsetmask sigaction \
getgroups seteuid setegid setlinebuf setreuid setregid \
getrlimit setrlimit setvbuf pipe strerror strsignal \
lstat readlink atexit isatty ttyname pselect posix_spawn \
diff --git a/src/misc.c b/src/misc.c
index eed1693b..0e889647 100644
--- a/src/misc.c
+++ b/src/misc.c
@@ -636,6 +636,21 @@ mempcpy (void *dest, const void *src, size_t n)
}
#endif
+#if !HAVE_STPCPY
+char *
+stpcpy (char *dest, const char *src)
+{
+ char *d = dest;
+ const char *s = src;
+
+ do
+ *d++ = *s;
+ while (*s++ != '\0');
+
+ return d - 1;
+}
+#endif
+
#if !HAVE_STRTOLL
# undef UNSIGNED
# undef USE_NUMBER_GROUPING