diff options
author | Dengke Du <dengke.du@windriver.com> | 2016-12-19 13:40:14 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-12-22 08:50:16 +0000 |
commit | 971fc297132b9fd2938cd28a75f6689116688101 (patch) | |
tree | c444bf1677c62502c71e5c2b80dcdc1c6a20dae1 /.gitignore | |
parent | 669edd04432f8e76e32bd7f34f4d9aa63eef4038 (diff) | |
download | poky-971fc297132b9fd2938cd28a75f6689116688101.tar.gz |
Revert "subversion: fix "svnadmin create" fail on x86"
This reverts commit cfe6f3e251240c9d9a70354be0501600357f0b87.
This is because the apr configure wrong, when the apr configure meets the
cross compiling, it pass 8 bytes to "off_t", in apr source code configure.in,
it was hardcoded:
APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>], 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.
But in glibc on the x86 or multilib target the "off_t" was 4 bytes, so this
cases dismatch for softwares which use the apr.h, such as subversion, run this:
svnadmin create test
It failed because the "APR_OFF_T_FMT" was "lld" in apr.h when apr configure,
but the "apr_off_t" was 4 bytes, in the apr source code: apr_snprintf.c
i_quad = va_arg(ap, apr_int64_t);
When the function apr_vformatter meets "lld", it would use the above to parse,
but the above read 8 bytes, so the follow-up data go to wrong.
So we should configure the apr correct when cross compiling. I do this on the
following patchs.
(From OE-Core rev: fbdfb39c011676fe61a4d58b62226126e0e9ec62)
Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to '.gitignore')
0 files changed, 0 insertions, 0 deletions