diff -ruN ./original/include/apr.h ./changed/include/apr.h --- ./original/include/apr.h 2016-01-04 13:12:47.009354091 -0500 +++ ./changed/include/apr.h 2016-01-04 10:18:31.701765503 -0500 @@ -80,7 +80,7 @@ #define APR_HAVE_LIMITS_H 1 #define APR_HAVE_NETDB_H 1 #define APR_HAVE_NETINET_IN_H 1 -#define APR_HAVE_NETINET_SCTP_H 1 +#define APR_HAVE_NETINET_SCTP_H 0 #define APR_HAVE_NETINET_SCTP_UIO_H 0 #define APR_HAVE_NETINET_TCP_H 1 #define APR_HAVE_PROCESS_H 0 @@ -220,19 +220,19 @@ #define APR_USE_SHMEM_MMAP_SHM 0 #define APR_USE_SHMEM_MMAP_ZERO 0 #define APR_USE_SHMEM_SHMGET_ANON 0 -#define APR_USE_SHMEM_SHMGET 1 +#define APR_USE_SHMEM_SHMGET 0 #define APR_USE_SHMEM_MMAP_ANON 1 #define APR_USE_SHMEM_BEOS 0 #define APR_USE_FLOCK_SERIALIZE 0 -#define APR_USE_SYSVSEM_SERIALIZE 1 +#define APR_USE_SYSVSEM_SERIALIZE 0 #define APR_USE_POSIXSEM_SERIALIZE 0 #define APR_USE_FCNTL_SERIALIZE 0 #define APR_USE_PROC_PTHREAD_SERIALIZE 0 #define APR_USE_PTHREAD_SERIALIZE 1 #define APR_HAS_FLOCK_SERIALIZE 1 -#define APR_HAS_SYSVSEM_SERIALIZE 1 +#define APR_HAS_SYSVSEM_SERIALIZE 0 #define APR_HAS_POSIXSEM_SERIALIZE 1 #define APR_HAS_FCNTL_SERIALIZE 1 #define APR_HAS_PROC_PTHREAD_SERIALIZE 1 @@ -260,7 +260,7 @@ #define APR_HAVE_MEMCHR 1 #define APR_HAVE_STRUCT_RLIMIT 1 #define APR_HAVE_UNION_SEMUN 0 -#define APR_HAVE_SCTP 1 +#define APR_HAVE_SCTP 0 #define APR_HAVE_IOVEC 1 /* APR Feature Macros */ @@ -278,7 +278,7 @@ #define APR_HAS_USER 1 #define APR_HAS_LARGE_FILES 0 #define APR_HAS_XTHREAD_FILES 0 -#define APR_HAS_OS_UUID 1 +#define APR_HAS_OS_UUID 0 #define APR_PROCATTR_USER_SET_REQUIRES_PASSWORD 0 @@ -349,8 +349,8 @@ #define UINT64_C(v) (v ## ULL) #endif #else - typedef long apr_int64_t; - typedef unsigned long apr_uint64_t; + typedef long long apr_int64_t; + typedef unsigned long long apr_uint64_t; #endif typedef size_t apr_size_t; diff -ruN ./original/include/arch/netware/DEPS ./changed/include/arch/netware/DEPS --- ./original/include/arch/netware/DEPS 1969-12-31 19:00:00.000000000 -0500 +++ ./changed/include/arch/netware/DEPS 2016-01-04 10:18:31.705765573 -0500 @@ -0,0 +1,3 @@ +include_rules = [ + '+../original/apr_private_common.h', +] diff -ruN ./original/include/arch/unix/apr_private.h ./changed/include/arch/unix/apr_private.h --- ./original/include/arch/unix/apr_private.h 2016-01-04 13:12:47.193357456 -0500 +++ ./changed/include/arch/unix/apr_private.h 2016-01-04 10:18:31.705765573 -0500 @@ -31,7 +31,7 @@ #define DEV_RANDOM "/dev/urandom" /* Define if struct dirent has an inode member */ -#define DIRENT_INODE d_fileno +/* #define DIRENT_INODE d_fileno */ /* Define if struct dirent has a d_type member */ #define DIRENT_TYPE d_type @@ -73,7 +73,7 @@ /* #undef GETSERVBYNAME_IS_THREAD_SAFE */ /* Define if getservbyname_r has the glibc style */ -#define GETSERVBYNAME_R_GLIBC2 1 +/* #define GETSERVBYNAME_R_GLIBC2 1 */ /* Define if getservbyname_r has the OSF/1 style */ /* #undef GETSERVBYNAME_R_OSF1 */ @@ -82,7 +82,7 @@ /* #undef GETSERVBYNAME_R_SOLARIS */ /* Define if accept4 function is supported */ -#define HAVE_ACCEPT4 1 +/* #define HAVE_ACCEPT4 1 */ /* Define if async i/o supports message q's */ /* #undef HAVE_AIO_MSGQ */ @@ -141,7 +141,7 @@ /* #undef HAVE_DL_H */ /* Define if dup3 function is supported */ -#define HAVE_DUP3 1 +/* #define HAVE_DUP3 1 */ /* Define if EGD is supported */ /* #undef HAVE_EGD */ @@ -150,7 +150,7 @@ #define HAVE_EPOLL 1 /* Define if epoll_create1 function is supported */ -#define HAVE_EPOLL_CREATE1 1 +/* #define HAVE_EPOLL_CREATE1 1 */ @@ -183,10 +183,19 @@ #define HAVE_GETENV 1 /* Define to 1 if you have the `getgrgid_r' function. */ -#define HAVE_GETGRGID_R 1 +// Removed due to incompatability with Android NDK r16 +// On older NDK versions, _POSIX_THREAD_SAFE_FUNCTIONS was unconditionally +// #undef'd. On newer versions, it is unconditionally defined as the Posix +// version. This causes issues in +// user/unix/groupinfo.c, as APR seems to unconditionally define +// HAVE_GETGRGID_R AND HAVE_GETGRNAM_R, and the only thing that was previously +// preventing it from using getgrgid_r/getgrnam_r was +// _POSIX_THREAD_SAFE_FUNCTIONS being undefined. +// #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ -#define HAVE_GETGRNAM_R 1 +// Removed due to incompatability with Android NDK r16 +// #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 @@ -195,13 +195,13 @@ #define HAVE_GETHOSTBYNAME_R 1 /* Define to 1 if you have the `getifaddrs' function. */ -#define HAVE_GETIFADDRS 1 +/* #define HAVE_GETIFADDRS 1 */ /* Define if getnameinfo exists */ #define HAVE_GETNAMEINFO 1 /* Define to 1 if you have the `getpass' function. */ -#define HAVE_GETPASS 1 +/* #define HAVE_GETPASS 1 */ /* Define to 1 if you have the `getpassphrase' function. */ /* #undef HAVE_GETPASSPHRASE */ @@ -318,7 +318,7 @@ /* #undef HAVE_NET_ERRNO_H */ /* Define to 1 if you have the `nl_langinfo' function. */ -#define HAVE_NL_LANGINFO 1 +/* #define HAVE_NL_LANGINFO 1 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_OS2_H */ @@ -360,7 +360,7 @@ #define HAVE_PTHREAD_MUTEX_RECURSIVE 1 /* Define if cross-process robust mutexes are available */ -#define HAVE_PTHREAD_MUTEX_ROBUST 1 +/* #define HAVE_PTHREAD_MUTEX_ROBUST 1 */ /* Define if PTHREAD_PROCESS_SHARED is defined in pthread.h */ #define HAVE_PTHREAD_PROCESS_SHARED 1 @@ -372,7 +372,7 @@ #define HAVE_PTHREAD_RWLOCK_INIT 1 /* Define to 1 if you have the `pthread_yield' function. */ -#define HAVE_PTHREAD_YIELD 1 +/* #define HAVE_PTHREAD_YIELD 1 */ /* Define to 1 if you have the `putenv' function. */ #define HAVE_PUTENV 1 @@ -474,7 +474,7 @@ #define HAVE_SOCKLEN_T 1 /* Define if the SOCK_CLOEXEC flag is supported */ -#define HAVE_SOCK_CLOEXEC 1 +/* #define HAVE_SOCK_CLOEXEC 1 */ /* Define if SO_ACCEPTFILTER is defined in sys/socket.h */ /* #undef HAVE_SO_ACCEPTFILTER */ @@ -531,7 +531,7 @@ /* #undef HAVE_STRUCT_STAT_ST_ATIME_N */ /* Define to 1 if `st_atim.tv_nsec' is a member of `struct stat'. */ -#define HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC 1 +/* #define HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC 0 */ /* Define to 1 if `st_blocks' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLOCKS 1 @@ -543,7 +543,7 @@ /* #undef HAVE_STRUCT_STAT_ST_CTIME_N */ /* Define to 1 if `st_ctim.tv_nsec' is a member of `struct stat'. */ -#define HAVE_STRUCT_STAT_ST_CTIM_TV_NSEC 1 +/* #define HAVE_STRUCT_STAT_ST_CTIM_TV_NSEC 1 */ /* Define to 1 if `st_mtimensec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMENSEC */ @@ -552,7 +552,7 @@ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ -#define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 +/* #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 @@ -594,13 +594,13 @@ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ -#define HAVE_SYS_SEM_H 1 +/* #define HAVE_SYS_SEM_H 1 */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SENDFILE_H 1 /* Define to 1 if you have the header file. */ -#define HAVE_SYS_SHM_H 1 +/* #define HAVE_SYS_SHM_H 1 */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SIGNAL_H 1 @@ -633,7 +633,7 @@ #define HAVE_SYS_UN_H 1 /* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_UUID_H */ +#undef HAVE_SYS_UUID_H /* Define to 1 if you have the header file. */ #define HAVE_SYS_WAIT_H 1 @@ -687,7 +687,7 @@ /* #undef HAVE_UUID_H */ /* Define to 1 if you have the header file. */ -#define HAVE_UUID_UUID_H 1 +/* #define HAVE_UUID_UUID_H 1 */ /* Define if C compiler supports VLA */ #define HAVE_VLA 1