Port Android port to older Android systems
* exec/config.h.in: Autoheader. * exec/configure.ac: Check for declarations of stpcpy and stpncpy. * exec/exec.c (stpcpy, stpncpy): Use replacements if declarations are not present; this happens when a new Android NDK is building for an old version of Android.
This commit is contained in:
parent
86b7ed619c
commit
5a58a6bc47
3 changed files with 14 additions and 5 deletions
|
@ -38,6 +38,14 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */
|
|||
/* Define to number of the `exec' system call. */
|
||||
#undef EXEC_SYSCALL
|
||||
|
||||
/* Define to 1 if you have the declaration of `stpcpy', and to 0 if you don't.
|
||||
*/
|
||||
#undef HAVE_DECL_STPCPY
|
||||
|
||||
/* Define to 1 if you have the declaration of `stpncpy', and to 0 if you
|
||||
don't. */
|
||||
#undef HAVE_DECL_STPNCPY
|
||||
|
||||
/* Define to 1 if you have the `getpagesize' function. */
|
||||
#undef HAVE_GETPAGESIZE
|
||||
|
||||
|
|
|
@ -55,6 +55,7 @@ AC_TYPE_PID_T
|
|||
|
||||
AC_HEADER_STDBOOL
|
||||
AC_CHECK_FUNCS([getpagesize stpcpy stpncpy])
|
||||
AC_CHECK_DECLS([stpcpy, stpncpy])
|
||||
|
||||
AH_BOTTOM([
|
||||
#ifdef HAVE_STDBOOL_H
|
||||
|
|
10
exec/exec.c
10
exec/exec.c
|
@ -50,7 +50,7 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */
|
|||
|
||||
/* Define replacements for required string functions. */
|
||||
|
||||
#ifndef HAVE_STPCPY
|
||||
#if !defined HAVE_STPCPY || !defined HAVE_DECL_STPCPY
|
||||
|
||||
/* Copy SRC to DEST, returning the address of the terminating '\0' in
|
||||
DEST. */
|
||||
|
@ -72,14 +72,14 @@ rpl_stpcpy (char *dest, const char *src)
|
|||
}
|
||||
|
||||
#define stpcpy rpl_stpcpy
|
||||
#endif /* !HAVE_STPCPY */
|
||||
#endif /* !defined HAVE_STPCPY || !defined HAVE_DECL_STPCPY */
|
||||
|
||||
#ifndef HAVE_STPNCPY
|
||||
#if !defined HAVE_STPNCPY || !defined HAVE_DECL_STPNCPY
|
||||
|
||||
/* Copy no more than N bytes of SRC to DST, returning a pointer past
|
||||
the last non-NUL byte written into DST. */
|
||||
|
||||
char *
|
||||
static char *
|
||||
rpl_stpncpy (char *dest, const char *src, size_t n)
|
||||
{
|
||||
char c, *s;
|
||||
|
@ -140,7 +140,7 @@ rpl_stpncpy (char *dest, const char *src, size_t n)
|
|||
}
|
||||
|
||||
#define stpncpy rpl_stpncpy
|
||||
#endif /* !HAVE_STPNCPY */
|
||||
#endif /* !defined HAVE_STPNCPY || !defined HAVE_DECL_STPNCPY */
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue