summaryrefslogtreecommitdiffstats
path: root/9/platforms/android-19/arch-arm64/usr/include
diff options
context:
space:
mode:
authorAndrew Hsieh <andrewhsieh@google.com>2014-06-26 18:19:40 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2014-06-25 03:43:48 +0000
commit50b27d2dd615b1efebed768d9786dc5fa3b3d370 (patch)
treec2cc709b05f700c9aad22168de53063a6b03f149 /9/platforms/android-19/arch-arm64/usr/include
parentdfe2da1c06219ea7816bd5e96dda590af0453d57 (diff)
parent1b55d7b281f282232ee58da5d09d3da5969ff11d (diff)
downloadprebuilts_ndk-50b27d2dd615b1efebed768d9786dc5fa3b3d370.zip
prebuilts_ndk-50b27d2dd615b1efebed768d9786dc5fa3b3d370.tar.gz
prebuilts_ndk-50b27d2dd615b1efebed768d9786dc5fa3b3d370.tar.bz2
Merge "Refresh 64-bit headers/libs (WW25)"
Diffstat (limited to '9/platforms/android-19/arch-arm64/usr/include')
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/dirent.h1
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/errno.h2
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/limits.h2
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/machine/fenv.h107
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/malloc.h3
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/netdb.h3
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/pthread.h2
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/resolv.h2
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/setjmp.h1
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/signal.h2
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/stdio.h6
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/stdlib.h37
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/string.h1
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/strings.h13
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/sys/_errdefs.h170
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/sys/_sigdefs.h75
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/sys/_system_properties.h153
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/sys/atomics.h84
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/sys/cdefs.h2
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/sys/ioctl.h1
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/sys/user.h2
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/sys/wait.h1
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/syslog.h40
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/time.h59
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/uchar.h (renamed from 9/platforms/android-19/arch-arm64/usr/include/sys/timeb.h)30
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/unistd.h4
-rw-r--r--9/platforms/android-19/arch-arm64/usr/include/wchar.h3
27 files changed, 137 insertions, 669 deletions
diff --git a/9/platforms/android-19/arch-arm64/usr/include/dirent.h b/9/platforms/android-19/arch-arm64/usr/include/dirent.h
index 71eb2e7..a849a61 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/dirent.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/dirent.h
@@ -75,7 +75,6 @@ extern int alphasort(const struct dirent**, const struct dirent**);
extern int alphasort64(const struct dirent64**, const struct dirent64**);
extern int scandir(const char*, struct dirent***, int (*)(const struct dirent*), int (*)(const struct dirent**, const struct dirent**));
extern int scandir64(const char*, struct dirent64***, int (*)(const struct dirent64*), int (*)(const struct dirent64**, const struct dirent64**));
-extern int getdents(unsigned int, struct dirent*, unsigned int);
__END_DECLS
diff --git a/9/platforms/android-19/arch-arm64/usr/include/errno.h b/9/platforms/android-19/arch-arm64/usr/include/errno.h
index 2e5ce5f..1a36b7a 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/errno.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/errno.h
@@ -41,7 +41,7 @@ __BEGIN_DECLS
#endif
/* internal function returning the address of the thread-specific errno */
-extern volatile int* __errno(void);
+extern volatile int* __errno(void) __pure2;
/* a macro expanding to the errno l-value */
#define errno (*__errno())
diff --git a/9/platforms/android-19/arch-arm64/usr/include/limits.h b/9/platforms/android-19/arch-arm64/usr/include/limits.h
index dc45902..fb09657 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/limits.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/limits.h
@@ -112,7 +112,7 @@
#define SSIZE_MAX LONG_MAX
-#define MB_LEN_MAX 6
+#define MB_LEN_MAX 4
/* New code should use sysconf(_SC_PAGE_SIZE) instead. */
#ifndef PAGE_SIZE
diff --git a/9/platforms/android-19/arch-arm64/usr/include/machine/fenv.h b/9/platforms/android-19/arch-arm64/usr/include/machine/fenv.h
index 2efeee3..a8568b8 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/machine/fenv.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/machine/fenv.h
@@ -27,15 +27,44 @@
*/
/*
- * Rewritten for Android.
+ * In ARMv8, AArch64 state, floating-point operation is controlled by:
*
- * The ARM FPSCR (Floating-point Status and Control Register) described here:
- * http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0344b/Chdfafia.html
- * has been split into the FPCR (Floating-point Control Register) and FPSR
- * (Floating-point Status Register) on the ARMv8. These are described briefly in
- * "Procedure Call Standard for the ARM 64-bit Architecture"
- * http://infocenter.arm.com/help/topic/com.arm.doc.ihi0055a/IHI0055A_aapcs64.pdf
- * section 5.1.2 SIMD and Floating-Point Registers
+ * * FPCR - 32Bit Floating-Point Control Register:
+ * * [31:27] - Reserved, Res0;
+ * * [26] - AHP, Alternative half-precision control bit;
+ * * [25] - DN, Default NaN mode control bit;
+ * * [24] - FZ, Flush-to-zero mode control bit;
+ * * [23:22] - RMode, Rounding Mode control field:
+ * * 00 - Round to Nearest (RN) mode;
+ * * 01 - Round towards Plus Infinity (RP) mode;
+ * * 10 - Round towards Minus Infinity (RM) mode;
+ * * 11 - Round towards Zero (RZ) mode.
+ * * [21:20] - Stride, ignored during AArch64 execution;
+ * * [19] - Reserved, Res0;
+ * * [18:16] - Len, ignored during AArch64 execution;
+ * * [15] - IDE, Input Denormal exception trap;
+ * * [14:13] - Reserved, Res0;
+ * * [12] - IXE, Inexact exception trap;
+ * * [11] - UFE, Underflow exception trap;
+ * * [10] - OFE, Overflow exception trap;
+ * * [9] - DZE, Division by Zero exception;
+ * * [8] - IOE, Invalid Operation exception;
+ * * [7:0] - Reserved, Res0.
+ *
+ * * FPSR - 32Bit Floating-Point Status Register:
+ * * [31] - N, Negative condition flag for AArch32 (AArch64 sets PSTATE.N);
+ * * [30] - Z, Zero condition flag for AArch32 (AArch64 sets PSTATE.Z);
+ * * [29] - C, Carry conditon flag for AArch32 (AArch64 sets PSTATE.C);
+ * * [28] - V, Overflow conditon flag for AArch32 (AArch64 sets PSTATE.V);
+ * * [27] - QC, Cumulative saturation bit, Advanced SIMD only;
+ * * [26:8] - Reserved, Res0;
+ * * [7] - IDC, Input Denormal cumulative exception;
+ * * [6:5] - Reserved, Res0;
+ * * [4] - IXC, Inexact cumulative exception;
+ * * [3] - UFC, Underflow cumulative exception;
+ * * [2] - OFC, Overflow cumulative exception;
+ * * [1] - DZC, Division by Zero cumulative exception;
+ * * [0] - IOC, Invalid Operation cumulative exception.
*/
#ifndef _ARM64_FENV_H_
@@ -45,7 +74,11 @@
__BEGIN_DECLS
-typedef __uint32_t fenv_t;
+typedef struct {
+ __uint32_t __control; /* FPCR, Floating-point Control Register */
+ __uint32_t __status; /* FPSR, Floating-point Status Register */
+} fenv_t;
+
typedef __uint32_t fexcept_t;
/* Exception flags. */
@@ -54,11 +87,9 @@ typedef __uint32_t fexcept_t;
#define FE_OVERFLOW 0x04
#define FE_UNDERFLOW 0x08
#define FE_INEXACT 0x10
+#define FE_DENORMAL 0x80
#define FE_ALL_EXCEPT (FE_DIVBYZERO | FE_INEXACT | FE_INVALID | \
- FE_OVERFLOW | FE_UNDERFLOW)
-
-#define _FPSCR_ENABLE_SHIFT 8
-#define _FPSCR_ENABLE_MASK (FE_ALL_EXCEPT << _FPSCR_ENABLE_SHIFT)
+ FE_OVERFLOW | FE_UNDERFLOW | FE_DENORMAL)
/* Rounding modes. */
#define FE_TONEAREST 0x0
@@ -66,56 +97,6 @@ typedef __uint32_t fexcept_t;
#define FE_DOWNWARD 0x2
#define FE_TOWARDZERO 0x3
-#define _FPSCR_RMODE_SHIFT 22
-
-#define FPCR_IOE (1 << 8)
-#define FPCR_DZE (1 << 9)
-#define FPCR_OFE (1 << 10)
-#define FPCR_UFE (1 << 11)
-#define FPCR_IXE (1 << 12)
-#define FPCR_IDE (1 << 15)
-#define FPCR_LEN (7 << 16)
-#define FPCR_STRIDE (3 << 20)
-#define FPCR_RMODE (3 << 22)
-#define FPCR_FZ (1 << 24)
-#define FPCR_DN (1 << 25)
-#define FPCR_AHP (1 << 26)
-#define FPCR_MASK (FPCR_IOE | \
- FPCR_DZE | \
- FPCR_OFE | \
- FPCR_UFE | \
- FPCR_IXE | \
- FPCR_IDE | \
- FPCR_LEN | \
- FPCR_STRIDE | \
- FPCR_RMODE | \
- FPCR_FZ | \
- FPCR_DN | \
- FPCR_AHP )
-
-#define FPSR_IOC (1 << 0)
-#define FPSR_DZC (1 << 1)
-#define FPSR_OFC (1 << 2)
-#define FPSR_UFC (1 << 3)
-#define FPSR_IXC (1 << 4)
-#define FPSR_IDC (1 << 7)
-#define FPSR_QC (1 << 27)
-#define FPSR_V (1 << 28)
-#define FPSR_C (1 << 29)
-#define FPSR_Z (1 << 30)
-#define FPSR_N (1 << 31)
-#define FPSR_MASK (FPSR_IOC | \
- FPSR_DZC | \
- FPSR_OFC | \
- FPSR_UFC | \
- FPSR_IXC | \
- FPSR_IDC | \
- FPSR_QC | \
- FPSR_V | \
- FPSR_C | \
- FPSR_Z | \
- FPSR_N )
-
__END_DECLS
#endif /* !_ARM64_FENV_H_ */
diff --git a/9/platforms/android-19/arch-arm64/usr/include/malloc.h b/9/platforms/android-19/arch-arm64/usr/include/malloc.h
index 9a4e324..e6ea276 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/malloc.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/malloc.h
@@ -35,9 +35,6 @@ extern void free(void* p);
extern void* memalign(size_t alignment, size_t byte_count) __mallocfunc __wur __attribute__((alloc_size(2)));
extern size_t malloc_usable_size(const void* p);
-extern void* valloc(size_t byte_count) __mallocfunc __wur __attribute__((alloc_size(1)));
-extern void* pvalloc(size_t byte_count) __mallocfunc __wur __attribute__((alloc_size(1)));
-
#ifndef STRUCT_MALLINFO_DECLARED
#define STRUCT_MALLINFO_DECLARED 1
struct mallinfo {
diff --git a/9/platforms/android-19/arch-arm64/usr/include/netdb.h b/9/platforms/android-19/arch-arm64/usr/include/netdb.h
index ead5954..527d5c1 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/netdb.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/netdb.h
@@ -196,6 +196,8 @@ struct addrinfo {
#define SCOPE_DELIMITER '%'
__BEGIN_DECLS
+#pragma GCC visibility push(default)
+
/* BIONIC-BEGIN */
#define h_errno (*__get_h_errno())
int* __get_h_errno(void);
@@ -245,6 +247,7 @@ const char *gai_strerror(int);
void setnetgrent(const char *);
void setservent(int);
+#pragma GCC visibility pop
__END_DECLS
#endif /* !_NETDB_H_ */
diff --git a/9/platforms/android-19/arch-arm64/usr/include/pthread.h b/9/platforms/android-19/arch-arm64/usr/include/pthread.h
index 5c9b626..29caafc 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/pthread.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/pthread.h
@@ -226,7 +226,7 @@ int pthread_rwlock_trywrlock(pthread_rwlock_t*) __nonnull((1));
int pthread_rwlock_unlock(pthread_rwlock_t *rwlock) __nonnull((1));
int pthread_rwlock_wrlock(pthread_rwlock_t*) __nonnull((1));
-pthread_t pthread_self(void);
+pthread_t pthread_self(void) __pure2;
int pthread_setname_np(pthread_t, const char*) __nonnull((2));
diff --git a/9/platforms/android-19/arch-arm64/usr/include/resolv.h b/9/platforms/android-19/arch-arm64/usr/include/resolv.h
index 36b93ee..c8899ed 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/resolv.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/resolv.h
@@ -37,6 +37,7 @@
#include <netinet/in.h>
__BEGIN_DECLS
+#pragma GCC visibility push(default)
struct res_state;
@@ -52,6 +53,7 @@ extern int b64_pton(char const*, u_char*, size_t);
extern int dn_comp(const char*, u_char*, int, u_char**, u_char**);
extern int dn_expand(const u_char*, const u_char*, const u_char*, char*, int);
+#pragma GCC visibility pop
__END_DECLS
#endif /* _RESOLV_H_ */
diff --git a/9/platforms/android-19/arch-arm64/usr/include/setjmp.h b/9/platforms/android-19/arch-arm64/usr/include/setjmp.h
index 68fdcef..02b06f5 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/setjmp.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/setjmp.h
@@ -50,7 +50,6 @@ __BEGIN_DECLS
int _setjmp(jmp_buf);
void _longjmp(jmp_buf, int);
-void longjmperror(void);
int setjmp(jmp_buf);
void longjmp(jmp_buf, int);
diff --git a/9/platforms/android-19/arch-arm64/usr/include/signal.h b/9/platforms/android-19/arch-arm64/usr/include/signal.h
index 45c1cda..0063b24 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/signal.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/signal.h
@@ -102,8 +102,6 @@ struct sigaction {
extern int sigaction(int, const struct sigaction*, struct sigaction*);
extern sighandler_t signal(int, sighandler_t);
-extern sighandler_t bsd_signal(int, sighandler_t);
-extern sighandler_t sysv_signal(int, sighandler_t);
extern int siginterrupt(int, int);
diff --git a/9/platforms/android-19/arch-arm64/usr/include/stdio.h b/9/platforms/android-19/arch-arm64/usr/include/stdio.h
index b026843..b9de121 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/stdio.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/stdio.h
@@ -254,7 +254,9 @@ int dprintf(int, const char * __restrict, ...) __printflike(2, 3);
int vdprintf(int, const char * __restrict, __va_list) __printflike(2, 0);
#ifndef __AUDIT__
+#if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 201112L
char* gets(char*) __warnattr("gets is very unsafe; consider using fgets");
+#endif
int sprintf(char* __restrict, const char* __restrict, ...)
__printflike(2, 3); //__warnattr("sprintf is often misused; please use snprintf");
char* tmpnam(char*) __warnattr("tmpnam possibly used unsafely; consider using mkstemp");
@@ -296,12 +298,10 @@ __END_DECLS
*/
#if __BSD_VISIBLE || __POSIX_VISIBLE || __XPG_VISIBLE
#define L_ctermid 1024 /* size for ctermid(); PATH_MAX */
-#define L_cuserid 9 /* size for cuserid(); UT_NAMESIZE + 1 */
__BEGIN_DECLS
#if 0 /* MISSING FROM BIONIC */
char *ctermid(char *);
-char *cuserid(char *);
#endif /* MISSING */
FILE *fdopen(int, const char *);
int fileno(FILE *);
@@ -339,8 +339,6 @@ int asprintf(char ** __restrict, const char * __restrict, ...)
__printflike(2, 3);
char *fgetln(FILE * __restrict, size_t * __restrict);
int fpurge(FILE *);
-int getw(FILE *);
-int putw(int, FILE *);
void setbuffer(FILE *, char *, int);
int setlinebuf(FILE *);
int vasprintf(char ** __restrict, const char * __restrict,
diff --git a/9/platforms/android-19/arch-arm64/usr/include/stdlib.h b/9/platforms/android-19/arch-arm64/usr/include/stdlib.h
index 834dcda..266aa5e 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/stdlib.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/stdlib.h
@@ -105,20 +105,21 @@ extern void arc4random_stir(void);
extern void arc4random_addrandom(unsigned char *, int);
#define RAND_MAX 0x7fffffff
-static __inline__ int rand(void) {
- return (int)lrand48();
-}
-static __inline__ void srand(unsigned int __s) {
- srand48(__s);
-}
-static __inline__ long random(void)
-{
- return lrand48();
-}
-static __inline__ void srandom(unsigned int __s)
-{
- srand48(__s);
-}
+
+/* Work around x86/x86-64 libvpx build breakage caused by postproc_x86.c. */
+#if (defined(__i386__) || defined(__x86_64__)) && defined(rand)
+#undef rand
+#define __rand lrand48
+#endif
+
+int rand(void);
+int rand_r(unsigned int*);
+void srand(unsigned int);
+
+char* initstate(unsigned int, char*, size_t);
+long random(void);
+char* setstate(char*);
+void srandom(unsigned int);
/* Basic PTY functions. These only work if devpts is mounted! */
@@ -138,21 +139,21 @@ typedef struct {
int rem;
} div_t;
-extern div_t div(int, int);
+extern div_t div(int, int) __pure2;
typedef struct {
long int quot;
long int rem;
} ldiv_t;
-extern ldiv_t ldiv(long, long);
+extern ldiv_t ldiv(long, long) __pure2;
typedef struct {
long long int quot;
long long int rem;
} lldiv_t;
-extern lldiv_t lldiv(long long, long long);
+extern lldiv_t lldiv(long long, long long) __pure2;
/* BSD compatibility. */
extern const char* getprogname(void);
@@ -167,7 +168,7 @@ extern int mbtowc(wchar_t *, const char *, size_t);
extern int wctomb(char *, wchar_t);
extern size_t wcstombs(char *, const wchar_t *, size_t);
-#define MB_CUR_MAX 1
+#define MB_CUR_MAX 4U
#if 0 /* MISSING FROM BIONIC */
extern int on_exit(void (*)(int, void *), void *);
diff --git a/9/platforms/android-19/arch-arm64/usr/include/string.h b/9/platforms/android-19/arch-arm64/usr/include/string.h
index c9ae03b..7727c0e 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/string.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/string.h
@@ -43,7 +43,6 @@ extern void* memmove(void *, const void *, size_t);
extern void* memset(void *, int, size_t);
extern void* memmem(const void *, size_t, const void *, size_t) __purefunc;
-extern char* index(const char *, int) __purefunc;
extern char* strchr(const char *, int) __purefunc;
extern char* __strchr_chk(const char *, int, size_t);
diff --git a/9/platforms/android-19/arch-arm64/usr/include/strings.h b/9/platforms/android-19/arch-arm64/usr/include/strings.h
index e72798b..c4d5f6c 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/strings.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/strings.h
@@ -43,20 +43,13 @@
#include <sys/cdefs.h>
__BEGIN_DECLS
-void bcopy(const void *, void *, size_t);
-void bzero(void *, size_t);
+#define bcopy(b1, b2, len) (void)(memmove((b2), (b1), (len)))
+#define bzero(b, len) (void)(memset((b), '\0', (len)))
+
int ffs(int);
-char *index(const char *, int);
int strcasecmp(const char *, const char *);
int strncasecmp(const char *, const char *, size_t);
-#if defined(__BIONIC_FORTIFY)
-__BIONIC_FORTIFY_INLINE
-void bzero (void *s, size_t n) {
- __builtin___memset_chk(s, '\0', n, __builtin_object_size (s, 0));
-}
-#endif /* defined(__BIONIC_FORTIFY) */
-
__END_DECLS
#endif /* !defined(_STRINGS_H_) */
diff --git a/9/platforms/android-19/arch-arm64/usr/include/sys/_errdefs.h b/9/platforms/android-19/arch-arm64/usr/include/sys/_errdefs.h
deleted file mode 100644
index 3eeadf4..0000000
--- a/9/platforms/android-19/arch-arm64/usr/include/sys/_errdefs.h
+++ /dev/null
@@ -1,170 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-/* the following corresponds to the error codes of the Linux kernel used by the Android platform
- * these are distinct from the OpenBSD ones, which is why we need to redeclare them here
- *
- * this file may be included several times to define either error constants or their
- * string representation
- */
-
-#ifndef __BIONIC_ERRDEF
-#error "__BIONIC_ERRDEF must be defined before including this file"
-#endif
-__BIONIC_ERRDEF( 0 , 0, "Success" )
-__BIONIC_ERRDEF( EPERM , 1, "Operation not permitted" )
-__BIONIC_ERRDEF( ENOENT , 2, "No such file or directory" )
-__BIONIC_ERRDEF( ESRCH , 3, "No such process" )
-__BIONIC_ERRDEF( EINTR , 4, "Interrupted system call" )
-__BIONIC_ERRDEF( EIO , 5, "I/O error" )
-__BIONIC_ERRDEF( ENXIO , 6, "No such device or address" )
-__BIONIC_ERRDEF( E2BIG , 7, "Argument list too long" )
-__BIONIC_ERRDEF( ENOEXEC , 8, "Exec format error" )
-__BIONIC_ERRDEF( EBADF , 9, "Bad file number" )
-__BIONIC_ERRDEF( ECHILD , 10, "No child processes" )
-__BIONIC_ERRDEF( EAGAIN , 11, "Try again" )
-__BIONIC_ERRDEF( ENOMEM , 12, "Out of memory" )
-__BIONIC_ERRDEF( EACCES , 13, "Permission denied" )
-__BIONIC_ERRDEF( EFAULT , 14, "Bad address" )
-__BIONIC_ERRDEF( ENOTBLK , 15, "Block device required" )
-__BIONIC_ERRDEF( EBUSY , 16, "Device or resource busy" )
-__BIONIC_ERRDEF( EEXIST , 17, "File exists" )
-__BIONIC_ERRDEF( EXDEV , 18, "Cross-device link" )
-__BIONIC_ERRDEF( ENODEV , 19, "No such device" )
-__BIONIC_ERRDEF( ENOTDIR , 20, "Not a directory" )
-__BIONIC_ERRDEF( EISDIR , 21, "Is a directory" )
-__BIONIC_ERRDEF( EINVAL , 22, "Invalid argument" )
-__BIONIC_ERRDEF( ENFILE , 23, "File table overflow" )
-__BIONIC_ERRDEF( EMFILE , 24, "Too many open files" )
-__BIONIC_ERRDEF( ENOTTY , 25, "Not a typewriter" )
-__BIONIC_ERRDEF( ETXTBSY , 26, "Text file busy" )
-__BIONIC_ERRDEF( EFBIG , 27, "File too large" )
-__BIONIC_ERRDEF( ENOSPC , 28, "No space left on device" )
-__BIONIC_ERRDEF( ESPIPE , 29, "Illegal seek" )
-__BIONIC_ERRDEF( EROFS , 30, "Read-only file system" )
-__BIONIC_ERRDEF( EMLINK , 31, "Too many links" )
-__BIONIC_ERRDEF( EPIPE , 32, "Broken pipe" )
-__BIONIC_ERRDEF( EDOM , 33, "Math argument out of domain of func" )
-__BIONIC_ERRDEF( ERANGE , 34, "Math result not representable" )
-__BIONIC_ERRDEF( EDEADLK , 35, "Resource deadlock would occur" )
-__BIONIC_ERRDEF( ENAMETOOLONG , 36, "File name too long" )
-__BIONIC_ERRDEF( ENOLCK , 37, "No record locks available" )
-__BIONIC_ERRDEF( ENOSYS , 38, "Function not implemented" )
-__BIONIC_ERRDEF( ENOTEMPTY , 39, "Directory not empty" )
-__BIONIC_ERRDEF( ELOOP , 40, "Too many symbolic links encountered" )
-__BIONIC_ERRDEF( ENOMSG , 42, "No message of desired type" )
-__BIONIC_ERRDEF( EIDRM , 43, "Identifier removed" )
-__BIONIC_ERRDEF( ECHRNG , 44, "Channel number out of range" )
-__BIONIC_ERRDEF( EL2NSYNC , 45, "Level 2 not synchronized" )
-__BIONIC_ERRDEF( EL3HLT , 46, "Level 3 halted" )
-__BIONIC_ERRDEF( EL3RST , 47, "Level 3 reset" )
-__BIONIC_ERRDEF( ELNRNG , 48, "Link number out of range" )
-__BIONIC_ERRDEF( EUNATCH , 49, "Protocol driver not attached" )
-__BIONIC_ERRDEF( ENOCSI , 50, "No CSI structure available" )
-__BIONIC_ERRDEF( EL2HLT , 51, "Level 2 halted" )
-__BIONIC_ERRDEF( EBADE , 52, "Invalid exchange" )
-__BIONIC_ERRDEF( EBADR , 53, "Invalid request descriptor" )
-__BIONIC_ERRDEF( EXFULL , 54, "Exchange full" )
-__BIONIC_ERRDEF( ENOANO , 55, "No anode" )
-__BIONIC_ERRDEF( EBADRQC , 56, "Invalid request code" )
-__BIONIC_ERRDEF( EBADSLT , 57, "Invalid slot" )
-__BIONIC_ERRDEF( EBFONT , 59, "Bad font file format" )
-__BIONIC_ERRDEF( ENOSTR , 60, "Device not a stream" )
-__BIONIC_ERRDEF( ENODATA , 61, "No data available" )
-__BIONIC_ERRDEF( ETIME , 62, "Timer expired" )
-__BIONIC_ERRDEF( ENOSR , 63, "Out of streams resources" )
-__BIONIC_ERRDEF( ENONET , 64, "Machine is not on the network" )
-__BIONIC_ERRDEF( ENOPKG , 65, "Package not installed" )
-__BIONIC_ERRDEF( EREMOTE , 66, "Object is remote" )
-__BIONIC_ERRDEF( ENOLINK , 67, "Link has been severed" )
-__BIONIC_ERRDEF( EADV , 68, "Advertise error" )
-__BIONIC_ERRDEF( ESRMNT , 69, "Srmount error" )
-__BIONIC_ERRDEF( ECOMM , 70, "Communication error on send" )
-__BIONIC_ERRDEF( EPROTO , 71, "Protocol error" )
-__BIONIC_ERRDEF( EMULTIHOP , 72, "Multihop attempted" )
-__BIONIC_ERRDEF( EDOTDOT , 73, "RFS specific error" )
-__BIONIC_ERRDEF( EBADMSG , 74, "Not a data message" )
-__BIONIC_ERRDEF( EOVERFLOW , 75, "Value too large for defined data type" )
-__BIONIC_ERRDEF( ENOTUNIQ , 76, "Name not unique on network" )
-__BIONIC_ERRDEF( EBADFD , 77, "File descriptor in bad state" )
-__BIONIC_ERRDEF( EREMCHG , 78, "Remote address changed" )
-__BIONIC_ERRDEF( ELIBACC , 79, "Can not access a needed shared library" )
-__BIONIC_ERRDEF( ELIBBAD , 80, "Accessing a corrupted shared library" )
-__BIONIC_ERRDEF( ELIBSCN , 81, ".lib section in a.out corrupted" )
-__BIONIC_ERRDEF( ELIBMAX , 82, "Attempting to link in too many shared libraries" )
-__BIONIC_ERRDEF( ELIBEXEC , 83, "Cannot exec a shared library directly" )
-__BIONIC_ERRDEF( EILSEQ , 84, "Illegal byte sequence" )
-__BIONIC_ERRDEF( ERESTART , 85, "Interrupted system call should be restarted" )
-__BIONIC_ERRDEF( ESTRPIPE , 86, "Streams pipe error" )
-__BIONIC_ERRDEF( EUSERS , 87, "Too many users" )
-__BIONIC_ERRDEF( ENOTSOCK , 88, "Socket operation on non-socket" )
-__BIONIC_ERRDEF( EDESTADDRREQ , 89, "Destination address required" )
-__BIONIC_ERRDEF( EMSGSIZE , 90, "Message too long" )
-__BIONIC_ERRDEF( EPROTOTYPE , 91, "Protocol wrong type for socket" )
-__BIONIC_ERRDEF( ENOPROTOOPT , 92, "Protocol not available" )
-__BIONIC_ERRDEF( EPROTONOSUPPORT, 93, "Protocol not supported" )
-__BIONIC_ERRDEF( ESOCKTNOSUPPORT, 94, "Socket type not supported" )
-__BIONIC_ERRDEF( EOPNOTSUPP , 95, "Operation not supported on transport endpoint" )
-__BIONIC_ERRDEF( EPFNOSUPPORT , 96, "Protocol family not supported" )
-__BIONIC_ERRDEF( EAFNOSUPPORT , 97, "Address family not supported by protocol" )
-__BIONIC_ERRDEF( EADDRINUSE , 98, "Address already in use" )
-__BIONIC_ERRDEF( EADDRNOTAVAIL , 99, "Cannot assign requested address" )
-__BIONIC_ERRDEF( ENETDOWN , 100, "Network is down" )
-__BIONIC_ERRDEF( ENETUNREACH , 101, "Network is unreachable" )
-__BIONIC_ERRDEF( ENETRESET , 102, "Network dropped connection because of reset" )
-__BIONIC_ERRDEF( ECONNABORTED , 103, "Software caused connection abort" )
-__BIONIC_ERRDEF( ECONNRESET , 104, "Connection reset by peer" )
-__BIONIC_ERRDEF( ENOBUFS , 105, "No buffer space available" )
-__BIONIC_ERRDEF( EISCONN , 106, "Transport endpoint is already connected" )
-__BIONIC_ERRDEF( ENOTCONN , 107, "Transport endpoint is not connected" )
-__BIONIC_ERRDEF( ESHUTDOWN , 108, "Cannot send after transport endpoint shutdown" )
-__BIONIC_ERRDEF( ETOOMANYREFS , 109, "Too many references: cannot splice" )
-__BIONIC_ERRDEF( ETIMEDOUT , 110, "Connection timed out" )
-__BIONIC_ERRDEF( ECONNREFUSED , 111, "Connection refused" )
-__BIONIC_ERRDEF( EHOSTDOWN , 112, "Host is down" )
-__BIONIC_ERRDEF( EHOSTUNREACH , 113, "No route to host" )
-__BIONIC_ERRDEF( EALREADY , 114, "Operation already in progress" )
-__BIONIC_ERRDEF( EINPROGRESS , 115, "Operation now in progress" )
-__BIONIC_ERRDEF( ESTALE , 116, "Stale NFS file handle" )
-__BIONIC_ERRDEF( EUCLEAN , 117, "Structure needs cleaning" )
-__BIONIC_ERRDEF( ENOTNAM , 118, "Not a XENIX named type file" )
-__BIONIC_ERRDEF( ENAVAIL , 119, "No XENIX semaphores available" )
-__BIONIC_ERRDEF( EISNAM , 120, "Is a named type file" )
-__BIONIC_ERRDEF( EREMOTEIO , 121, "Remote I/O error" )
-__BIONIC_ERRDEF( EDQUOT , 122, "Quota exceeded" )
-__BIONIC_ERRDEF( ENOMEDIUM , 123, "No medium found" )
-__BIONIC_ERRDEF( EMEDIUMTYPE , 124, "Wrong medium type" )
-__BIONIC_ERRDEF( ECANCELED , 125, "Operation Canceled" )
-__BIONIC_ERRDEF( ENOKEY , 126, "Required key not available" )
-__BIONIC_ERRDEF( EKEYEXPIRED , 127, "Key has expired" )
-__BIONIC_ERRDEF( EKEYREVOKED , 128, "Key has been revoked" )
-__BIONIC_ERRDEF( EKEYREJECTED , 129, "Key was rejected by service" )
-__BIONIC_ERRDEF( EOWNERDEAD , 130, "Owner died" )
-__BIONIC_ERRDEF( ENOTRECOVERABLE, 131, "State not recoverable" )
-
-#undef __BIONIC_ERRDEF
diff --git a/9/platforms/android-19/arch-arm64/usr/include/sys/_sigdefs.h b/9/platforms/android-19/arch-arm64/usr/include/sys/_sigdefs.h
deleted file mode 100644
index 44d60d9..0000000
--- a/9/platforms/android-19/arch-arm64/usr/include/sys/_sigdefs.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-/*
- * this header is used to define signal constants and names;
- * it might be included several times
- */
-
-#ifndef __BIONIC_SIGDEF
-#error __BIONIC_SIGDEF not defined
-#endif
-
-__BIONIC_SIGDEF(SIGHUP, "Hangup")
-__BIONIC_SIGDEF(SIGINT, "Interrupt")
-__BIONIC_SIGDEF(SIGQUIT, "Quit")
-__BIONIC_SIGDEF(SIGILL, "Illegal instruction")
-__BIONIC_SIGDEF(SIGTRAP, "Trap")
-__BIONIC_SIGDEF(SIGABRT, "Aborted")
-#ifdef SIGEMT
-__BIONIC_SIGDEF(SIGEMT, "EMT")
-#endif
-__BIONIC_SIGDEF(SIGFPE, "Floating point exception")
-__BIONIC_SIGDEF(SIGKILL, "Killed")
-__BIONIC_SIGDEF(SIGBUS, "Bus error")
-__BIONIC_SIGDEF(SIGSEGV, "Segmentation fault")
-__BIONIC_SIGDEF(SIGPIPE, "Broken pipe")
-__BIONIC_SIGDEF(SIGALRM, "Alarm clock")
-__BIONIC_SIGDEF(SIGTERM, "Terminated")
-__BIONIC_SIGDEF(SIGUSR1, "User signal 1")
-__BIONIC_SIGDEF(SIGUSR2, "User signal 2")
-__BIONIC_SIGDEF(SIGCHLD, "Child exited")
-__BIONIC_SIGDEF(SIGPWR, "Power failure")
-__BIONIC_SIGDEF(SIGWINCH, "Window size changed")
-__BIONIC_SIGDEF(SIGURG, "Urgent I/O condition")
-__BIONIC_SIGDEF(SIGIO, "I/O possible")
-__BIONIC_SIGDEF(SIGSTOP, "Stopped (signal)")
-__BIONIC_SIGDEF(SIGTSTP, "Stopped")
-__BIONIC_SIGDEF(SIGCONT, "Continue")
-__BIONIC_SIGDEF(SIGTTIN, "Stopped (tty input)")
-__BIONIC_SIGDEF(SIGTTOU, "Stopped (tty output)")
-__BIONIC_SIGDEF(SIGVTALRM, "Virtual timer expired")
-__BIONIC_SIGDEF(SIGPROF, "Profiling timer expired")
-__BIONIC_SIGDEF(SIGXCPU, "CPU time limit exceeded")
-__BIONIC_SIGDEF(SIGXFSZ, "File size limit exceeded")
-#if defined(SIGSTKFLT)
-__BIONIC_SIGDEF(SIGSTKFLT, "Stack fault")
-#endif
-__BIONIC_SIGDEF(SIGSYS, "Bad system call")
-
-#undef __BIONIC_SIGDEF
diff --git a/9/platforms/android-19/arch-arm64/usr/include/sys/_system_properties.h b/9/platforms/android-19/arch-arm64/usr/include/sys/_system_properties.h
deleted file mode 100644
index 5a681df..0000000
--- a/9/platforms/android-19/arch-arm64/usr/include/sys/_system_properties.h
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef _INCLUDE_SYS__SYSTEM_PROPERTIES_H
-#define _INCLUDE_SYS__SYSTEM_PROPERTIES_H
-
-#ifndef _REALLY_INCLUDE_SYS__SYSTEM_PROPERTIES_H_
-#error you should #include <sys/system_properties.h> instead
-#else
-#include <sys/system_properties.h>
-
-typedef struct prop_msg prop_msg;
-
-#define PROP_AREA_MAGIC 0x504f5250
-#define PROP_AREA_VERSION 0xfc6ed0ab
-#define PROP_AREA_VERSION_COMPAT 0x45434f76
-
-#define PROP_SERVICE_NAME "property_service"
-#define PROP_FILENAME "/dev/__properties__"
-
-#define PA_SIZE (128 * 1024)
-
-#define SERIAL_VALUE_LEN(serial) ((serial) >> 24)
-#define SERIAL_DIRTY(serial) ((serial) & 1)
-
-__BEGIN_DECLS
-
-struct prop_msg
-{
- unsigned cmd;
- char name[PROP_NAME_MAX];
- char value[PROP_VALUE_MAX];
-};
-
-#define PROP_MSG_SETPROP 1
-
-/*
-** Rules:
-**
-** - there is only one writer, but many readers
-** - prop_area.count will never decrease in value
-** - once allocated, a prop_info's name will not change
-** - once allocated, a prop_info's offset will not change
-** - reading a value requires the following steps
-** 1. serial = pi->serial
-** 2. if SERIAL_DIRTY(serial), wait*, then goto 1
-** 3. memcpy(local, pi->value, SERIAL_VALUE_LEN(serial) + 1)
-** 4. if pi->serial != serial, goto 2
-**
-** - writing a value requires the following steps
-** 1. pi->serial = pi->serial | 1
-** 2. memcpy(pi->value, local_value, value_len)
-** 3. pi->serial = (value_len << 24) | ((pi->serial + 1) & 0xffffff)
-*/
-
-#define PROP_PATH_RAMDISK_DEFAULT "/default.prop"
-#define PROP_PATH_SYSTEM_BUILD "/system/build.prop"
-#define PROP_PATH_SYSTEM_DEFAULT "/system/default.prop"
-#define PROP_PATH_LOCAL_OVERRIDE "/data/local.prop"
-#define PROP_PATH_FACTORY "/factory/factory.prop"
-
-/*
-** Map the property area from the specified filename. This
-** method is for testing only.
-*/
-int __system_property_set_filename(const char *filename);
-
-/*
-** Initialize the area to be used to store properties. Can
-** only be done by a single process that has write access to
-** the property area.
-*/
-int __system_property_area_init();
-
-/* Add a new system property. Can only be done by a single
-** process that has write access to the property area, and
-** that process must handle sequencing to ensure the property
-** does not already exist and that only one property is added
-** or updated at a time.
-**
-** Returns 0 on success, -1 if the property area is full.
-*/
-int __system_property_add(const char *name, unsigned int namelen,
- const char *value, unsigned int valuelen);
-
-/* Update the value of a system property returned by
-** __system_property_find. Can only be done by a single process
-** that has write access to the property area, and that process
-** must handle sequencing to ensure that only one property is
-** updated at a time.
-**
-** Returns 0 on success, -1 if the parameters are incorrect.
-*/
-int __system_property_update(prop_info *pi, const char *value, unsigned int len);
-
-/* Read the serial number of a system property returned by
-** __system_property_find.
-**
-** Returns the serial number on success, -1 on error.
-*/
-unsigned int __system_property_serial(const prop_info *pi);
-
-/* Wait for any system property to be updated. Caller must pass
-** in 0 the first time, and the previous return value on each
-** successive call. */
-unsigned int __system_property_wait_any(unsigned int serial);
-
-/* Compatibility functions to support using an old init with a new libc,
- ** mostly for the OTA updater binary. These can be deleted once OTAs from
- ** a pre-K release no longer needed to be supported. */
-const prop_info *__system_property_find_compat(const char *name);
-int __system_property_read_compat(const prop_info *pi, char *name, char *value);
-int __system_property_foreach_compat(
- void (*propfn)(const prop_info *pi, void *cookie),
- void *cookie);
-
-/* Initialize the system properties area in read only mode.
- * Should be done by all processes that need to read system
- * properties.
- *
- * Returns 0 on success, -1 otherwise.
- */
-int __system_properties_init();
-
-__END_DECLS
-
-#endif
-#endif
diff --git a/9/platforms/android-19/arch-arm64/usr/include/sys/atomics.h b/9/platforms/android-19/arch-arm64/usr/include/sys/atomics.h
deleted file mode 100644
index 143bc4b..0000000
--- a/9/platforms/android-19/arch-arm64/usr/include/sys/atomics.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _SYS_ATOMICS_H
-#define _SYS_ATOMICS_H
-
-#include <sys/cdefs.h>
-#include <sys/time.h>
-
-__BEGIN_DECLS
-
-/* Note: atomic operations that were exported by the C library didn't
- * provide any memory barriers, which created potential issues on
- * multi-core devices. We now define them as inlined calls to
- * GCC sync builtins, which always provide a full barrier.
- *
- * NOTE: The C library still exports atomic functions by the same
- * name to ensure ABI stability for existing NDK machine code.
- *
- * If you are an NDK developer, we encourage you to rebuild your
- * unmodified sources against this header as soon as possible.
- */
-#define __ATOMIC_INLINE__ static __inline__ __attribute__((always_inline))
-
-__ATOMIC_INLINE__ int
-__atomic_cmpxchg(int old_value, int new_value, volatile int* ptr)
-{
- /* We must return 0 on success */
- return __sync_val_compare_and_swap(ptr, old_value, new_value) != old_value;
-}
-
-__ATOMIC_INLINE__ int
-__atomic_swap(int new_value, volatile int *ptr)
-{
- int old_value;
- do {
- old_value = *ptr;
- } while (__sync_val_compare_and_swap(ptr, old_value, new_value) != old_value);
- return old_value;
-}
-
-__ATOMIC_INLINE__ int
-__atomic_dec(volatile int *ptr)
-{
- return __sync_fetch_and_sub (ptr, 1);
-}
-
-__ATOMIC_INLINE__ int
-__atomic_inc(volatile int *ptr)
-{
- return __sync_fetch_and_add (ptr, 1);
-}
-
-
-int __futex_wait(volatile void *ftx, int val, const struct timespec *timeout);
-int __futex_wake(volatile void *ftx, int count);
-
-__END_DECLS
-
-#endif /* _SYS_ATOMICS_H */
diff --git a/9/platforms/android-19/arch-arm64/usr/include/sys/cdefs.h b/9/platforms/android-19/arch-arm64/usr/include/sys/cdefs.h
index 37c43cf..9c92a1c 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/sys/cdefs.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/sys/cdefs.h
@@ -578,7 +578,7 @@
#define __BIONIC_FORTIFY_UNKNOWN_SIZE ((size_t) -1)
-#if defined(__ANDROID__) && !__LP64__ && defined( __arm__)
+#if defined(__ANDROID__) && !defined(__LP64__) && defined( __arm__)
#define __NDK_FPABI__ __attribute__((pcs("aapcs")))
#else
#define __NDK_FPABI__
diff --git a/9/platforms/android-19/arch-arm64/usr/include/sys/ioctl.h b/9/platforms/android-19/arch-arm64/usr/include/sys/ioctl.h
index 49d452c..a1014dc 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/sys/ioctl.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/sys/ioctl.h
@@ -38,6 +38,7 @@
#include <asm/ioctls.h>
#include <asm/termbits.h>
#include <sys/ioctl_compat.h>
+#include <linux/tty.h>
__BEGIN_DECLS
diff --git a/9/platforms/android-19/arch-arm64/usr/include/sys/user.h b/9/platforms/android-19/arch-arm64/usr/include/sys/user.h
index 705e0e9..6e88d16 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/sys/user.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/sys/user.h
@@ -167,7 +167,7 @@ struct user {
#elif defined(__mips__)
struct user_regs_struct
{
- unsigned long a[180];
+ unsigned long regs[180 / sizeof(unsigned long) + 64];
};
struct user {
diff --git a/9/platforms/android-19/arch-arm64/usr/include/sys/wait.h b/9/platforms/android-19/arch-arm64/usr/include/sys/wait.h
index b30b7ec..8d9a5f6 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/sys/wait.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/sys/wait.h
@@ -47,7 +47,6 @@ __BEGIN_DECLS
extern pid_t wait(int *);
extern pid_t waitpid(pid_t, int *, int);
-extern pid_t wait3(int *, int, struct rusage *);
extern pid_t wait4(pid_t, int *, int, struct rusage *);
/* Posix states that idtype_t should be an enumeration type, but
diff --git a/9/platforms/android-19/arch-arm64/usr/include/syslog.h b/9/platforms/android-19/arch-arm64/usr/include/syslog.h
index 4677c14..a52e811 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/syslog.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/syslog.h
@@ -25,6 +25,7 @@
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
+
#ifndef _SYSLOG_H
#define _SYSLOG_H
@@ -34,7 +35,6 @@
__BEGIN_DECLS
-/* Alert levels */
#define LOG_EMERG 0
#define LOG_ALERT 1
#define LOG_CRIT 2
@@ -47,8 +47,6 @@ __BEGIN_DECLS
#define LOG_PRIMASK 7
#define LOG_PRI(x) ((x) & LOG_PRIMASK)
-
-/* Facilities; not actually used */
#define LOG_KERN 0000
#define LOG_USER 0010
#define LOG_MAIL 0020
@@ -73,30 +71,15 @@ __BEGIN_DECLS
#define LOG_FACMASK 01770
#define LOG_FAC(x) (((x) >> 3) & (LOG_FACMASK >> 3))
-#define LOG_MASK(pri) (1 << (pri)) /* mask for one priority */
-#define LOG_UPTO(pri) ((1 << ((pri)+1)) - 1) /* all priorities through pri */
-
-/* openlog() flags; only LOG_PID and LOG_PERROR supported */
-#define LOG_PID 0x01 /* include pid with message */
-#define LOG_CONS 0x02 /* write to console on logger error */
-#define LOG_ODELAY 0x04 /* delay connection until syslog() */
-#define LOG_NDELAY 0x08 /* open connection immediately */
-#define LOG_NOWAIT 0x10 /* wait for child processes (unused on linux) */
-#define LOG_PERROR 0x20 /* additional logging to stderr */
-
-/* BIONIC: the following definitions are from OpenBSD's sys/syslog.h
- */
-struct syslog_data {
- int log_file;
- int connected;
- int opened;
- int log_stat;
- const char *log_tag;
- int log_fac;
- int log_mask;
-};
+#define LOG_MASK(pri) (1 << (pri))
+#define LOG_UPTO(pri) ((1 << ((pri)+1)) - 1)
-#define SYSLOG_DATA_INIT {-1, 0, 0, 0, (const char *)0, LOG_USER, 0xff}
+#define LOG_PID 0x01 /* include pid with message */
+#define LOG_CONS 0x02 /* write to console on logger error */
+#define LOG_ODELAY 0x04 /* delay connection until syslog() */
+#define LOG_NDELAY 0x08 /* open connection immediately */
+#define LOG_NOWAIT 0x10 /* wait for child processes (unused on linux) */
+#define LOG_PERROR 0x20 /* additional logging to stderr */
#define _PATH_LOG "/dev/syslog"
@@ -105,11 +88,6 @@ extern void openlog(const char *, int, int);
extern int setlogmask(int);
extern void syslog(int, const char *, ...) __printflike(2, 3);
extern void vsyslog(int, const char *, va_list) __printflike(2, 0);
-extern void closelog_r(struct syslog_data *);
-extern void openlog_r(const char *, int, int, struct syslog_data *);
-extern int setlogmask_r(int, struct syslog_data *);
-extern void syslog_r(int, struct syslog_data *, const char *, ...) __printflike(3, 4);
-extern void vsyslog_r(int, struct syslog_data *, const char *, va_list) __printflike(3, 0);
__END_DECLS
diff --git a/9/platforms/android-19/arch-arm64/usr/include/time.h b/9/platforms/android-19/arch-arm64/usr/include/time.h
index 0f86fd3..0587a2d 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/time.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/time.h
@@ -36,9 +36,9 @@ __BEGIN_DECLS
#define CLOCKS_PER_SEC 1000000
-extern char* tzname[];
-extern int daylight;
-extern long int timezone;
+extern char* tzname[] __LIBC_ABI_PUBLIC__;
+extern int daylight __LIBC_ABI_PUBLIC__;
+extern long int timezone __LIBC_ABI_PUBLIC__;
struct sigevent;
@@ -58,44 +58,43 @@ struct tm {
#define TM_ZONE tm_zone
-extern time_t time(time_t*);
-extern int nanosleep(const struct timespec*, struct timespec*);
+extern time_t time(time_t*) __LIBC_ABI_PUBLIC__;
+extern int nanosleep(const struct timespec*, struct timespec*) __LIBC_ABI_PUBLIC__;
-extern char* asctime(const struct tm*);
-extern char* asctime_r(const struct tm*, char*);
+extern char* asctime(const struct tm*) __LIBC_ABI_PUBLIC__;
+extern char* asctime_r(const struct tm*, char*) __LIBC_ABI_PUBLIC__;
-extern double difftime(time_t, time_t);
-extern time_t mktime(struct tm*);
+extern double difftime(time_t, time_t) __LIBC_ABI_PUBLIC__;
+extern time_t mktime(struct tm*) __LIBC_ABI_PUBLIC__;
-extern struct tm* localtime(const time_t*);
-extern struct tm* localtime_r(const time_t*, struct tm*);
+extern struct tm* localtime(const time_t*) __LIBC_ABI_PUBLIC__;
+extern struct tm* localtime_r(const time_t*, struct tm*) __LIBC_ABI_PUBLIC__;
-extern struct tm* gmtime(const time_t*);
-extern struct tm* gmtime_r(const time_t*, struct tm*);
+extern struct tm* gmtime(const time_t*) __LIBC_ABI_PUBLIC__;
+extern struct tm* gmtime_r(const time_t*, struct tm*) __LIBC_ABI_PUBLIC__;
-extern char* strptime(const char*, const char*, struct tm*);
-extern size_t strftime(char*, size_t, const char*, const struct tm*);
+extern char* strptime(const char*, const char*, struct tm*) __LIBC_ABI_PUBLIC__;
+extern size_t strftime(char*, size_t, const char*, const struct tm*) __LIBC_ABI_PUBLIC__;
-extern char* ctime(const time_t*);
-extern char* ctime_r(const time_t*, char*);
+extern char* ctime(const time_t*) __LIBC_ABI_PUBLIC__;
+extern char* ctime_r(const time_t*, char*) __LIBC_ABI_PUBLIC__;
-extern void tzset(void);
+extern void tzset(void) __LIBC_ABI_PUBLIC__;
-extern clock_t clock(void);
+extern clock_t clock(void) __LIBC_ABI_PUBLIC__;
-extern int clock_getres(int, struct timespec*);
-extern int clock_gettime(int, struct timespec*);
+extern int clock_getres(int, struct timespec*) __LIBC_ABI_PUBLIC__;
+extern int clock_gettime(int, struct timespec*) __LIBC_ABI_PUBLIC__;
-extern int timer_create(int, struct sigevent*, timer_t*);
-extern int timer_delete(timer_t);
-extern int timer_settime(timer_t, int, const struct itimerspec*, struct itimerspec*);
-extern int timer_gettime(timer_t, struct itimerspec*);
-extern int timer_getoverrun(timer_t);
+extern int timer_create(int, struct sigevent*, timer_t*) __LIBC_ABI_PUBLIC__;
+extern int timer_delete(timer_t) __LIBC_ABI_PUBLIC__;
+extern int timer_settime(timer_t, int, const struct itimerspec*, struct itimerspec*) __LIBC_ABI_PUBLIC__;
+extern int timer_gettime(timer_t, struct itimerspec*) __LIBC_ABI_PUBLIC__;
+extern int timer_getoverrun(timer_t) __LIBC_ABI_PUBLIC__;
-extern time_t timelocal(struct tm*);
-extern time_t timegm(struct tm*);
-extern time_t time2posix(time_t);
-extern time_t posix2time(time_t);
+/* Non-standard extensions that are in the BSDs and glibc. */
+extern time_t timelocal(struct tm*) __LIBC_ABI_PUBLIC__;
+extern time_t timegm(struct tm*) __LIBC_ABI_PUBLIC__;
__END_DECLS
diff --git a/9/platforms/android-19/arch-arm64/usr/include/sys/timeb.h b/9/platforms/android-19/arch-arm64/usr/include/uchar.h
index cf6f255..e1fcb5c 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/sys/timeb.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/uchar.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2008 The Android Open Source Project
+ * Copyright (C) 2014 The Android Open Source Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -25,23 +25,29 @@
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
-#ifndef _SYS_TIMEB_H
-#define _SYS_TIMEB_H
+
+#ifndef _UCHAR_H_
+#define _UCHAR_H_
#include <sys/cdefs.h>
-#include <sys/time.h>
+#include <wchar.h>
__BEGIN_DECLS
-struct timeb {
- time_t time;
- unsigned short millitm;
- short timezone;
- short dstflag;
-};
+#define __STD_UTF_16__ 1
+#define __STD_UTF_32__ 1
-extern int ftime(struct timeb* timebuf);
+size_t c16rtomb(char* __restrict, char16_t, mbstate_t* __restrict);
+size_t c32rtomb(char* __restrict, char32_t, mbstate_t* __restrict);
+size_t mbrtoc16(char16_t* __restrict,
+ const char* __restrict,
+ size_t,
+ mbstate_t* __restrict);
+size_t mbrtoc32(char32_t* __restrict,
+ const char* __restrict,
+ size_t,
+ mbstate_t* __restrict);
__END_DECLS
-#endif /* _SYS_TIMEB_H */
+#endif /* _UCHAR_H_ */
diff --git a/9/platforms/android-19/arch-arm64/usr/include/unistd.h b/9/platforms/android-19/arch-arm64/usr/include/unistd.h
index b4982cb..afe5f1a 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/unistd.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/unistd.h
@@ -54,7 +54,7 @@ extern __noreturn void _exit(int);
extern pid_t fork(void);
extern pid_t vfork(void);
extern pid_t getpid(void);
-extern pid_t gettid(void);
+extern pid_t gettid(void) __pure2;
extern pid_t getpgid(pid_t);
extern int setpgid(pid_t, pid_t);
extern pid_t getppid(void);
@@ -164,8 +164,6 @@ extern int usleep(useconds_t);
extern int gethostname(char *, size_t);
-extern int getdtablesize(void);
-
extern void *__brk(void *);
extern int brk(void *);
extern void *sbrk(ptrdiff_t);
diff --git a/9/platforms/android-19/arch-arm64/usr/include/wchar.h b/9/platforms/android-19/arch-arm64/usr/include/wchar.h
index af7593f..014fed3 100644
--- a/9/platforms/android-19/arch-arm64/usr/include/wchar.h
+++ b/9/platforms/android-19/arch-arm64/usr/include/wchar.h
@@ -118,7 +118,7 @@ extern int wcscmp(const wchar_t *, const wchar_t *);
extern int wcscoll(const wchar_t *, const wchar_t *);
extern wchar_t *wcscpy(wchar_t *, const wchar_t *);
extern size_t wcscspn(const wchar_t *, const wchar_t *);
-extern size_t wcsftime(wchar_t *, size_t, const wchar_t *, const struct tm *);
+extern size_t wcsftime(wchar_t *, size_t, const wchar_t *, const struct tm *) __LIBC_ABI_PUBLIC__;
extern size_t wcslen(const wchar_t *);
extern int wcsncasecmp(const wchar_t *, const wchar_t *, size_t);
extern wchar_t *wcsncat(wchar_t *, const wchar_t *, size_t);
@@ -138,7 +138,6 @@ extern long long wcstoll(const wchar_t*, wchar_t**, int);
extern long double wcstold(const wchar_t*, wchar_t**);
extern unsigned long wcstoul(const wchar_t*, wchar_t**, int);
extern unsigned long long wcstoull(const wchar_t*, wchar_t**, int);
-extern wchar_t *wcswcs(const wchar_t *, const wchar_t *);
extern int wcswidth(const wchar_t *, size_t);
extern size_t wcsxfrm(wchar_t *, const wchar_t *, size_t);
extern int wctob(wint_t);