From 49661ea3858cf8494926cccf57d3e8c6dcb47117 Mon Sep 17 00:00:00 2001 From: Dengke Du Date: Wed, 14 Dec 2016 18:13:08 +0800 Subject: [PATCH] apr: fix off_t size doesn't match in glibc when cross compiling In configure.in, it contains the following: APR_CHECK_SIZEOF_EXTENDED([#include ], off_t, 8) the macro "APR_CHECK_SIZEOF_EXTENDED" was defined in build/apr_common.m4, it use the "AC_TRY_RUN" macro, this macro let the off_t to 8, when cross compiling enable. So it was hardcoded for cross compiling, we should detect it dynamic based on the sysroot's glibc. We change it to the following: AC_CHECK_SIZEOF(off_t) The same for the following hardcoded types for cross compiling: pid_t 8 ssize_t 8 size_t 8 off_t 8 Change the above correspondingly. Signed-off-by: Dengke Du Upstream-Status: Pending --- configure.in | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/configure.in b/configure.in index 27b8539..fb408d1 100644 --- a/configure.in +++ b/configure.in @@ -1801,7 +1801,7 @@ else socklen_t_value="int" fi -APR_CHECK_SIZEOF_EXTENDED([#include ], pid_t, 8) +AC_CHECK_SIZEOF(pid_t) if test "$ac_cv_sizeof_pid_t" = "$ac_cv_sizeof_short"; then pid_t_fmt='#define APR_PID_T_FMT "hd"' @@ -1873,7 +1873,7 @@ APR_CHECK_TYPES_FMT_COMPATIBLE(size_t, unsigned long, lu, [size_t_fmt="lu"], [ APR_CHECK_TYPES_FMT_COMPATIBLE(size_t, unsigned int, u, [size_t_fmt="u"]) ]) -APR_CHECK_SIZEOF_EXTENDED([#include ], ssize_t, 8) +AC_CHECK_SIZEOF(ssize_t) dnl the else cases below should no longer occur; AC_MSG_CHECKING([which format to use for apr_ssize_t]) @@ -1891,7 +1891,7 @@ fi ssize_t_fmt="#define APR_SSIZE_T_FMT \"$ssize_t_fmt\"" -APR_CHECK_SIZEOF_EXTENDED([#include ], size_t, 8) +AC_CHECK_SIZEOF(size_t) # else cases below should no longer occur; AC_MSG_CHECKING([which format to use for apr_size_t]) @@ -1909,7 +1909,7 @@ fi size_t_fmt="#define APR_SIZE_T_FMT \"$size_t_fmt\"" -APR_CHECK_SIZEOF_EXTENDED([#include ], off_t, 8) +AC_CHECK_SIZEOF(off_t) if test "${ac_cv_sizeof_off_t}${apr_cv_use_lfs64}" = "4yes"; then # Enable LFS