diff options
| author | Paul Eggert | 2014-06-01 16:58:38 -0700 |
|---|---|---|
| committer | Paul Eggert | 2014-06-01 16:58:38 -0700 |
| commit | eed652d649d28e9dafdb01f9c7425d7d28899e0d (patch) | |
| tree | 07fbdfd51e4877c85a23b996dc244ff7f21a0d57 /m4 | |
| parent | b9928bbace87a54feffa5fc21eab791f658406b9 (diff) | |
| download | emacs-eed652d649d28e9dafdb01f9c7425d7d28899e0d.tar.gz emacs-eed652d649d28e9dafdb01f9c7425d7d28899e0d.zip | |
Merge from gnulib.
This incorporates:
2014-06-02 acl: apply pure attribute to two functions
2014-06-01 gnulib-common.m4: add _GL_UNUSED_LABEL
2014-05-31 dup2, fcntl, fcntl-h: port to AIX 7.1
2014-05-30 ftoastr: work around compiler bug in IBM xlc 12.1
* lib/acl-internal.h, lib/fcntl.in.h, lib/ftoastr.h:
* m4/dup2.m4, m4/fcntl.m4, m4/gnulib-common.m4:
Update from gnulib.
Diffstat (limited to 'm4')
| -rw-r--r-- | m4/dup2.m4 | 12 | ||||
| -rw-r--r-- | m4/fcntl.m4 | 12 | ||||
| -rw-r--r-- | m4/gnulib-common.m4 | 11 |
3 files changed, 31 insertions, 4 deletions
diff --git a/m4/dup2.m4 b/m4/dup2.m4 index 89638a0bfe3..6498fc20245 100644 --- a/m4/dup2.m4 +++ b/m4/dup2.m4 | |||
| @@ -8,6 +8,7 @@ AC_DEFUN([gl_FUNC_DUP2], | |||
| 8 | [ | 8 | [ |
| 9 | AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) | 9 | AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) |
| 10 | AC_REQUIRE([AC_CANONICAL_HOST]) | 10 | AC_REQUIRE([AC_CANONICAL_HOST]) |
| 11 | AC_CHECK_FUNCS_ONCE([getdtablesize]) | ||
| 11 | m4_ifdef([gl_FUNC_DUP2_OBSOLETE], [ | 12 | m4_ifdef([gl_FUNC_DUP2_OBSOLETE], [ |
| 12 | AC_CHECK_FUNCS_ONCE([dup2]) | 13 | AC_CHECK_FUNCS_ONCE([dup2]) |
| 13 | if test $ac_cv_func_dup2 = no; then | 14 | if test $ac_cv_func_dup2 = no; then |
| @@ -23,6 +24,11 @@ AC_DEFUN([gl_FUNC_DUP2], | |||
| 23 | #include <fcntl.h> | 24 | #include <fcntl.h> |
| 24 | #include <errno.h>]], | 25 | #include <errno.h>]], |
| 25 | [int result = 0; | 26 | [int result = 0; |
| 27 | #ifdef HAVE_GETDTABLESIZE | ||
| 28 | int bad_fd = getdtablesize (); | ||
| 29 | #else | ||
| 30 | int bad_fd = 1000000; | ||
| 31 | #endif | ||
| 26 | #ifdef FD_CLOEXEC | 32 | #ifdef FD_CLOEXEC |
| 27 | if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1) | 33 | if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1) |
| 28 | result |= 1; | 34 | result |= 1; |
| @@ -37,7 +43,7 @@ AC_DEFUN([gl_FUNC_DUP2], | |||
| 37 | if (dup2 (0, 0) != -1) | 43 | if (dup2 (0, 0) != -1) |
| 38 | result |= 8; | 44 | result |= 8; |
| 39 | /* Many gnulib modules require POSIX conformance of EBADF. */ | 45 | /* Many gnulib modules require POSIX conformance of EBADF. */ |
| 40 | if (dup2 (2, 1000000) == -1 && errno != EBADF) | 46 | if (dup2 (2, bad_fd) == -1 && errno != EBADF) |
| 41 | result |= 16; | 47 | result |= 16; |
| 42 | /* Flush out some cygwin core dumps. */ | 48 | /* Flush out some cygwin core dumps. */ |
| 43 | if (dup2 (2, -1) != -1 || errno != EBADF) | 49 | if (dup2 (2, -1) != -1 || errno != EBADF) |
| @@ -56,7 +62,9 @@ AC_DEFUN([gl_FUNC_DUP2], | |||
| 56 | linux*) # On linux between 2008-07-27 and 2009-05-11, dup2 of a | 62 | linux*) # On linux between 2008-07-27 and 2009-05-11, dup2 of a |
| 57 | # closed fd may yield -EBADF instead of -1 / errno=EBADF. | 63 | # closed fd may yield -EBADF instead of -1 / errno=EBADF. |
| 58 | gl_cv_func_dup2_works="guessing no" ;; | 64 | gl_cv_func_dup2_works="guessing no" ;; |
| 59 | freebsd*) # on FreeBSD 6.1, dup2(1,1000000) gives EMFILE, not EBADF. | 65 | aix* | freebsd*) |
| 66 | # on AIX 7.1 and FreeBSD 6.1, dup2 (1,toobig) gives EMFILE, | ||
| 67 | # not EBADF. | ||
| 60 | gl_cv_func_dup2_works="guessing no" ;; | 68 | gl_cv_func_dup2_works="guessing no" ;; |
| 61 | haiku*) # on Haiku alpha 2, dup2(1, 1) resets FD_CLOEXEC. | 69 | haiku*) # on Haiku alpha 2, dup2(1, 1) resets FD_CLOEXEC. |
| 62 | gl_cv_func_dup2_works="guessing no" ;; | 70 | gl_cv_func_dup2_works="guessing no" ;; |
diff --git a/m4/fcntl.m4 b/m4/fcntl.m4 index 4a2771fae35..f824beb6597 100644 --- a/m4/fcntl.m4 +++ b/m4/fcntl.m4 | |||
| @@ -19,7 +19,7 @@ AC_DEFUN([gl_FUNC_FCNTL], | |||
| 19 | AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) | 19 | AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) |
| 20 | AC_REQUIRE([gl_FCNTL_H_DEFAULTS]) | 20 | AC_REQUIRE([gl_FCNTL_H_DEFAULTS]) |
| 21 | AC_REQUIRE([AC_CANONICAL_HOST]) | 21 | AC_REQUIRE([AC_CANONICAL_HOST]) |
| 22 | AC_CHECK_FUNCS_ONCE([fcntl]) | 22 | AC_CHECK_FUNCS_ONCE([fcntl getdtablesize]) |
| 23 | if test $ac_cv_func_fcntl = no; then | 23 | if test $ac_cv_func_fcntl = no; then |
| 24 | gl_REPLACE_FCNTL | 24 | gl_REPLACE_FCNTL |
| 25 | else | 25 | else |
| @@ -28,11 +28,21 @@ AC_DEFUN([gl_FUNC_FCNTL], | |||
| 28 | AC_CACHE_CHECK([whether fcntl handles F_DUPFD correctly], | 28 | AC_CACHE_CHECK([whether fcntl handles F_DUPFD correctly], |
| 29 | [gl_cv_func_fcntl_f_dupfd_works], | 29 | [gl_cv_func_fcntl_f_dupfd_works], |
| 30 | [AC_RUN_IFELSE([AC_LANG_PROGRAM([[ | 30 | [AC_RUN_IFELSE([AC_LANG_PROGRAM([[ |
| 31 | #ifdef HAVE_GETDTABLESIZE | ||
| 32 | # include <unistd.h> | ||
| 33 | #endif | ||
| 31 | #include <fcntl.h> | 34 | #include <fcntl.h> |
| 32 | #include <errno.h> | 35 | #include <errno.h> |
| 33 | ]], [[int result = 0; | 36 | ]], [[int result = 0; |
| 37 | #ifdef HAVE_GETDTABLESIZE | ||
| 38 | int bad_fd = getdtablesize (); | ||
| 39 | #else | ||
| 40 | int bad_fd = 1000000; | ||
| 41 | #endif | ||
| 34 | if (fcntl (0, F_DUPFD, -1) != -1) result |= 1; | 42 | if (fcntl (0, F_DUPFD, -1) != -1) result |= 1; |
| 35 | if (errno != EINVAL) result |= 2; | 43 | if (errno != EINVAL) result |= 2; |
| 44 | if (fcntl (0, F_DUPFD, bad_fd) != -1) result |= 4; | ||
| 45 | if (errno != EINVAL) result |= 8; | ||
| 36 | return result; | 46 | return result; |
| 37 | ]])], | 47 | ]])], |
| 38 | [gl_cv_func_fcntl_f_dupfd_works=yes], | 48 | [gl_cv_func_fcntl_f_dupfd_works=yes], |
diff --git a/m4/gnulib-common.m4 b/m4/gnulib-common.m4 index 20ce40e7441..1bb316bb157 100644 --- a/m4/gnulib-common.m4 +++ b/m4/gnulib-common.m4 | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | # gnulib-common.m4 serial 34 | 1 | # gnulib-common.m4 serial 35 |
| 2 | dnl Copyright (C) 2007-2014 Free Software Foundation, Inc. | 2 | dnl Copyright (C) 2007-2014 Free Software Foundation, Inc. |
| 3 | dnl This file is free software; the Free Software Foundation | 3 | dnl This file is free software; the Free Software Foundation |
| 4 | dnl gives unlimited permission to copy and/or distribute it, | 4 | dnl gives unlimited permission to copy and/or distribute it, |
| @@ -49,6 +49,15 @@ AC_DEFUN([gl_COMMON_BODY], [ | |||
| 49 | is a misnomer outside of parameter lists. */ | 49 | is a misnomer outside of parameter lists. */ |
| 50 | #define _UNUSED_PARAMETER_ _GL_UNUSED | 50 | #define _UNUSED_PARAMETER_ _GL_UNUSED |
| 51 | 51 | ||
| 52 | /* gcc supports the "unused" attribute on possibly unused labels, and | ||
| 53 | g++ has since version 4.5. */ | ||
| 54 | #if !defined __cplusplus || __GNUC__ > 4 \ | ||
| 55 | || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5) | ||
| 56 | # define _GL_UNUSED_LABEL _GL_UNUSED | ||
| 57 | #else | ||
| 58 | # define _GL_UNUSED_LABEL | ||
| 59 | #endif | ||
| 60 | |||
| 52 | /* The __pure__ attribute was added in gcc 2.96. */ | 61 | /* The __pure__ attribute was added in gcc 2.96. */ |
| 53 | #if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) | 62 | #if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) |
| 54 | # define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) | 63 | # define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) |