Copied from bionic but adding back .ctors and .dtors to be
compatible with old Android system linkers. Otherwise
static executable may segfault.
Change-Id: If834123161744cd2387a2c031a2315e818c2f123
jni/gl3stub.c:21:5: error: implicit declaration of function 'eglGetProcAddress' is invalid in C99
FIND_PROC(glReadBuffer);
^
jni/gl3stub.c:20:37: note: expanded from macro 'FIND_PROC'
#define FIND_PROC(s) s = (void*)eglGetProcAddress(#s)
^
1 error generated.
Change-Id: I907f33e3d88f3e96bf7958102e90bf15529748b9
Files are copied as is from bionic head.
Also adding arch-x86_64 symlink to be able to generate arch-x86_64
crtfiles/libs.
Change-Id: I0b40c1c19bb4e3b24b25fa2bcb9236469fa32a3e
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
This fixes WCHAR_MIN / WCHAR_MAX to be signed / unsigned based on
the target ABI.
This only impacts ARM where wchar_t is really 'unsigned int'.
One can define _WCHAR_IS_ALWAYS_SIGNED to restore the old behaviour.
See http://b.android.com/55749
Change-Id: Idb63b7b11aecd3cfee37f5b6dd2eba78b308876f
Using dlopen/dlsym works, but eglGetProcAddress is a little easier and
more consistent with how GL extension functions (rather than these
non-extension functions) are loaded.
Change-Id: I082c193f08f7d5456389ab783a06cd38a9632d53
This patch ensures that wchar_t is a 32-bit number when targetting
API level < 9 (i.e. Froyo or older).
You can restore the previous (and broken) behaviour by defining
_WCHAR_IS_8BIT at compile time. See http://b.android.com/57267
for more context.
BUG=57267
Change-Id: Ib334e8fe95a3f592d5d4bb157b0f123984133597
clone is already declared in header and exists in both arm/mips libc.
Add the missing one in libc.so and libc.a (*1) for x86.
(*) only updated bionic_clone.o and clone.o from build after
22d366cc09383956dc264ed4641572e609392eee
Change-Id: Ibcb39948d48b84398543d84304ead21dab534c40
* Headers were copied from frameworks/native/opengl/include/GLES3/.
* Symbol lists were generated with ndk/build/tools/gen-system-symbols.sh.
* Symbols are identical between architectures
Change-Id: I011094ea3b479cf166ffb6bef3778cde683fc502
1. __set_errno is deprecated and subject to removal in future release
2. elf.h is seen to be included alone, causing compilation error due
to undefined uint32_t and uint64_t
Change-Id: I4ca348a8ba0689eb3880622dcf5c53be470c57e8
Both exist in header android-X/arch-<arch>/usr/include/setjmp.h
already. Add to X86 to be consistent with header and other archs
ARM/MIPS
See https://code.google.com/p/android/issues/detail?id=19851
Change-Id: I635c6c0491f5bf2aaa9013f23cb4b1bf7cb57a40
To be the same as bionic's. See
ec37237d69289e2bb9836bfa0d071ab958234d00
The new one also no longer undef offsetof and replaces it with
"((size_t) &((TYPE *)0)->MEMBER)" if __compiler_offsetof isn't
defined. The problem with the old behavior are that
1. __compiler_offsetof isn't defined in linux/compiler.h even though
all Android compilers support __builtin_offsetof
2. As as result, offsetof defined in stddef.h to use __builtin_offsetof
is undefined and replaced here. Problem is,
"((size_t) &((TYPE *)0)->MEMBER)" isn't considered a compile-time
constant, and fails some code expect offsetof to be.
Change-Id: I3ebb0de9e1d95305a0890a099360ff6936d24b2f
With --enable-libgomp, gcc/gcc-4.4.3/libiberty/configure line #2124 tries
to link a trivial program but fails w/o the presence of libc.so and libdl.so
and sets "gcc_no_link=yes" at line #2131. Confiugre later fails with
cryptic message reads "Link tests are not allowed after GCC_NO_EXECUTABLES."
See
https://android-review.googlesource.com/#/c/34491, 48617, and 48619
Change-Id: I6e761c5fb12f413dca04a26b39f27e9f026d75d3