Do not use libiberty's getpagesize on Android
commit82ef0f70744ca47057b9e95cd926dbcb25ebb0c8
authorJoel Brobecker <brobecker@adacore.com>
Fri, 6 Nov 2015 21:39:19 +0000 (6 13:39 -0800)
committerJoel Brobecker <brobecker@adacore.com>
Fri, 6 Nov 2015 21:39:58 +0000 (6 13:39 -0800)
treefd8a8c523c3231d0ca55cb306e322e1680c36a00
parented60fec722981ecfbd9d1c46b4a2294b228711e9
Do not use libiberty's getpagesize on Android

Building libiberty on Android currently fails with the error message
shown below.  This was discovered by trying to build GDBserver
for Android, which stopped building after libiberty became
a GDBserver dependency.

Here is the error message:

[...]/getpagesize.c:64:1: error: redefinition of 'getpagesize'
In file included from /[...]/getpagesize.c:34:0:
/[...]/usr/include/unistd.h:171:23: note: previous definition of 'getpagesize' was here

And looking at the definition, one can see that it defined as
a static inline function...

   static __inline__ int getpagesize(void) {
     extern unsigned int __page_size;
     return __page_size;
   }

... which explains why the AC_CHECK_FUNCS test failed to detect
the function, since there is no associated symbol to be linked in.

This patch prevents getpagesize.c to be compiled in by hard-coding
the fact that getpagesize is available on android hosts.

libiberty/ChangeLog:

        * configure.ac: Set AC_CV_FUNC_GETPAGESIZE to "yes" on
        Android hosts.
        * configure: Regenerate.
libiberty/ChangeLog
libiberty/configure
libiberty/configure.ac