Commit Graph

500 Commits

Author SHA1 Message Date
Dan Albert
53bc2e2f1e Update uchar.h from bionic.
char16_t and char32_t should not be defined when building as C. For
GCC they are, but not for clang. Pull in the updated bionic header
which has the fix for this.

Change-Id: I41b292ece36af79bbe835706bee4441b298215ff
2015-12-04 11:29:12 -08:00
Dan Albert
4efb18d5f5 Fix complex.h for clang.
From the comment about __NDK_FPABI__ vs __NDK_FPABI_MATH__:

    NOTE: Disable for clang for now unless _NDK_MATH_NO_SOFTFP=1, because clang before 3.4 doesn't
          allow change of calling convension for builtin and produces error message reads:

            a.i:564:6: error: function declared 'aapcs' here was previously declared without calling convention
            int  sin(double d) __attribute__((pcs("aapcs")));
                ^
            a.i:564:6: note: previous declaration is here

This applies to current clang as well, not just pre-3.4. Mark these
math functions as math functions.

Change-Id: I001b31df540aa3f61eec049f89346cbf2f11f128
2015-12-04 11:22:26 -08:00
Dan Albert
cea6641901 Rename android-M to android-23.
Change-Id: I37241592cc2354e785f518e5830e8bf9f788b0c9
2015-11-02 13:50:06 -08:00
Elliott Hughes
436f03a080 am b851cbc2: am 1a8697f9: Merge "Patch android-21 with aarch64 <sys/user.h> fixes."
* commit 'b851cbc2cd9b6f36a6e5c7f150c82eb0744d573f':
  Patch android-21 with aarch64 <sys/user.h> fixes.
2015-08-26 15:44:12 +00:00
Elliott Hughes
2e60272c03 Patch android-21 with aarch64 <sys/user.h> fixes.
This makes the files match (AOSP ToT post-M) bionic.

Bug: http://b/23377194
Change-Id: Ie72614612fbe49c4250ca1383d1d224e8bff62dc
2015-08-25 18:43:20 -07:00
Marco Nelissen
c4050f2ed3 am 9146cbdb: Merge "Fix CRCs in file so it passes the new CRC check" into mnc-dev
* commit '9146cbdb556a814628176f599f7cd9bde28b75d9':
  Fix CRCs in file so it passes the new CRC check
2015-07-28 19:40:58 +00:00
Marco Nelissen
3ff89b2fce Fix CRCs in file so it passes the new CRC check
Bug: 22661698
Change-Id: I7f13aca309f6e1163f6515f3d949154749102776
2015-07-28 09:01:31 -07:00
Elliott Hughes
5e6e5c9de0 am ffa5c544: am 6201465c: Merge "Remove more libportable cruft."
* commit 'ffa5c5449d35a68503d34442a4cc575cc389282b':
  Remove more libportable cruft.
2015-06-25 22:21:40 +00:00
Elliott Hughes
9e164c6a56 Remove more libportable cruft.
Change-Id: I971f6d501abf5145bd03a05eeed246f34406e6ea
2015-06-25 15:03:54 -07:00
Elliott Hughes
2824beac4d am 138e4eb4: am 71142c8d: Merge "Patch android-21 with x86 gdbserver <sys/procfs.h> and <sys/user.h> fixes."
* commit '138e4eb4bc3982991232da7870e7553c068d117d':
  Patch android-21 with x86 gdbserver <sys/procfs.h> and <sys/user.h> fixes.
2015-06-25 14:44:53 +00:00
Elliott Hughes
dd0632273f Patch android-21 with x86 gdbserver <sys/procfs.h> and <sys/user.h> fixes.
This makes the files match (AOSP ToT post-M) bionic.

Bug: http://b/22068064
Change-Id: I100ac14afc06c2fe09ef5ecf9c2e3afa13b68c3b
2015-06-24 17:41:12 -07:00
Elliott Hughes
df6c88f742 am e60317ff: am 2807d953: Merge "Remove bogus "arch-p" directory."
* commit 'e60317ff510c1dcc8eadb12e32d3f5a83b43f178':
  Remove bogus "arch-p" directory.
2015-06-19 22:34:53 +00:00
Elliott Hughes
608e77f701 Remove bogus "arch-p" directory.
Change-Id: I89d9710357dc9ee490e2d54894b5fea48236a5b2
2015-06-19 14:19:11 -07:00
Elliott Hughes
acaf6e3eb3 am 55eb5dba: am 7bc5bfc6: Merge "Retcon recent header fixes needed to build gdbserver."
* commit '55eb5dbad222299b315bd818c5e09cf0f55fd555':
  Retcon recent header fixes needed to build gdbserver.
2015-06-18 16:53:16 +00:00
Elliott Hughes
e3ca8e7434 Retcon recent header fixes needed to build gdbserver.
Bug: http://b/21695943
Change-Id: I2b2f0e21a66093bdbbdbc0320ffa574eefaaf5fa
2015-06-17 21:51:13 -07:00
Chris Craik
b9fc90ed7e am 5e96921b: am d32f6aef: Merge "Add tracing header" into mnc-dev
* commit '5e96921b4fbdc453a76de446cf296b725a775d36':
  Add tracing header
2015-06-11 17:14:20 +00:00
Chris Craik
eafa9c3f69 Add tracing header
bug:21195272

Change-Id: I520de9fee7fc40d0570d6bef450d756ce42a1462
2015-06-10 13:25:34 -07:00
Andrew Hsieh
9964d96602 am 16bb796f: am e6d6227a: Merge "Fix fegetenv and fesetenv for arm"
* commit '16bb796ffb46a16fea4fd477bd6c6c9a1b850e9c':
  Fix fegetenv and fesetenv for arm
2015-05-26 05:22:02 +00:00
Andrew Hsieh
5944712898 am 41e35187: am 2c41a709: Merge "Fix sys/ucontext.h for mips64"
* commit '41e35187ff9be6567318973530a0da64cd83e279':
  Fix sys/ucontext.h for mips64
2015-05-26 05:21:59 +00:00
Andrew Hsieh
42a1d9ad45 am cf73ae6f: am 04aaa129: Merge "Fix end pointer size/alignment of crtend_* for mips64 and x86_64"
* commit 'cf73ae6fdfacb6fa80632b57a94b0e113ab9fc82':
  Fix end pointer size/alignment of crtend_* for mips64 and x86_64
2015-05-26 05:21:57 +00:00
Andrew Hsieh
90b97fd7a4 am cefe8d21: am f89ee85b: Merge "Fix mips/mips64 headers"
* commit 'cefe8d21f311611e20263caf72349ebb10f81df1':
  Fix mips/mips64 headers
2015-05-26 05:21:55 +00:00
Andrew Hsieh
bcc248ebb6 am e1bf1a97: am b440125a: Merge "Remove libthreads_db"
* commit 'e1bf1a97a3879434542077d001b8616e33f50e63':
  Remove libthreads_db
2015-05-26 05:21:52 +00:00
Andrew Hsieh
c7931cf4a9 Fix fegetenv and fesetenv for arm
Change-Id: Ied522151e7fd654c9d5bcf5647611538cfc15380
2015-05-26 12:51:50 +08:00
Andrew Hsieh
ae557964dc Fix sys/ucontext.h for mips64
Change-Id: Ie3c51b53d76377a618757268fe724d3ce9ab9f3c
2015-05-26 12:49:11 +08:00
Andrew Hsieh
ece719c7f6 Fix end pointer size/alignment of crtend_* for mips64 and x86_64
Change-Id: I16fec92826cb42a2f68e2b910b8a67301d3eae28
2015-05-26 12:47:21 +08:00
Andrew Hsieh
29fe2de27d Fix mips/mips64 headers
Change-Id: Id65b3bd0c040df62710eee4f5d6571cb5667d57a
2015-05-26 12:33:29 +08:00
Andrew Hsieh
ba9952c429 Remove libthreads_db
Change-Id: I21f3ac64ac7ba15dbdc566fbb042ff9c42e16dd2
2015-05-26 11:23:38 +08:00
Erik Kline
5df4bc6b23 am 92d624ca: am 61250167: Merge "multinetwork API: NDK header" into mnc-dev
* commit '92d624ca5f5c9dfd02b054fa033d98e08013d49c':
  multinetwork API: NDK header
2015-05-20 02:05:55 +00:00
Erik Kline
c278ecaba6 multinetwork API: NDK header
Bug: 19537384
Change-Id: Iead7a2da0a6f0ba99744ef1e434899fe5d42e824
2015-05-20 05:28:06 +09:00
Peter Collingbourne
c90758f420 Modify ctype.h headers to test for non-GNU inline semantics correctly
GCC and Clang will not define __GNUC_STDC_INLINE__ when compiling C++, so this
macro currently implies regular C++ inline semantics in C++. This may cause
the compiler to emit an external definition of the function, which will cause
link errors when compiling with -fvisibility=hidden; see e.g. crbug.com/481902.

To fix this, also test the __cplusplus macro when deciding whether to assume
non-GNU inline semantics.

Change-Id: Icbd1f42279c2f65610e62f21d4a0a09d3b0e091c
2015-05-13 17:41:18 -07:00
Andrew Hsieh
c08fb7eb45 Fix mips64 struct stat64
Cherry pick bionic 86d2feef9f4df517dd5755b39b993bec0c3e1ea5 which
fixes struct stat64.  This may look like breaking mips64 ABI, but mips64
support is stil work in progress post-L

Also see prebuilts/ndk e6639a4c0ba9296a19fd477154aace3585221d9d

Change-Id: Ia8859762191220b9d3127b37970f05594375ca40
2015-01-29 11:39:03 -08:00
Andrew Hsieh
3598d53b42 Drop clang version check for __builtin_isinf and __builtin_isnan
This CL unconditionally removes the existance of __builtin_isinf and
__builtin_isnan from math.h for clang, because (unlike other math functions)
clang doesn't like those to be declared.

See LLVM bugzilla entry: http://llvm.org/bugs/show_bug.cgi?id=20958

The reason for decorating all math functions with __attribute__((pcs("aapcs")))
is to offer developers the ability to compile their code with hardfp and still
link Android's libm.so which follows softfp calling convention.

Before issue 20958 is fixed, those who want clang to compile their code with
hardfp in NDK has to go all the way hard, ie.
1) LOCAL_CFLAGS += -mhard-float -D_NDK_MATH_NO_SOFTFP=1
   Note that _NDK_MATH_NO_SOFTFP=1 remove __attribute__((pcs("aapcs"))) for all math functions
2) LOCAL_LDLIBS += -lm_hard  # link libm_hard.a recompiled with -mhard-float instead of bionic libm.so

Change-Id: Ie2f95e73e58e1574e8cadbcab92a5209d94448e1
2015-01-16 14:24:04 -08:00
Martin Storsjo
2202e9414a Use define for drm property keys instead of defining as char pointers
When defined as char pointers, every compilation unit that includes
the NdkMediaDrm.h header defines a new copy of the same global
variables - leading to linker errors due to multiple definitions
if more than one file includes it.

By using a define, they don't generate any symbols. The NdkMediaFormat.h
header uses extern const char* for a similar set of keys, but that
can't be added after the actual platform has shipped. The other
alternative would be to declare them as static const char*, which
wouldn't generate global symbols, but which could trigger warnings
about unused static symbols instead.

The same change has already been applied in frameworks/av in
https://android-review.googlesource.com/120303.

Change-Id: I14ca81d94309b7f437b3bc144920c48a8b3f0261
2015-01-05 18:52:13 +02:00
WenHan Gu
d7120d4451 Header/symbol for unknown arch.
Change-Id: Ibdbc4cf5408958444ed7a83da6c8bbe478072c6d
2014-12-09 10:50:05 +08:00
Andrew Hsieh
6aff78a6ce misc header changes for r10d
1. move sgidefs.h to libc/arch-mips.
   See bionic 6e50cb454451916ced315680f6c13dc08cf3959a
2. change type of u_ar0 from "unsigned long" to "struct user_regs_struct*".
   See bionic e03950fa0c5567edf70d011b856a027e03b1c0f7
3. sync fts.h, dlext.h, sys/user.h
4. remove ' from string.h

Change-Id: I2ba58b0df4c655f107ea086efbd0220de2b40e9a
2014-12-05 14:11:54 +08:00
Andrew Hsieh
b6f18dba42 Fix headers to be included alone
Change-Id: I7eb9a6ed51b938506d440b91e6b3d42daf817fd7
2014-11-17 09:54:27 +08:00
Andrew Hsieh
d3ab539366 Change sysconf(3) to return long
See bionic 60d84af1726225320b26683b726e5e735d9d76e8

BUG=18390956

Change-Id: I20c6aa48115610b35e1d59f9f37ce5abbe6ac2f7
2014-11-17 09:48:36 +08:00
Andrew Hsieh
f72859a145 Merge "Add posix_memalign to API16's libc.so, and to stdlib.h for API 16, 17, 18, 19" 2014-11-13 08:32:20 +00:00
Andrew Hsieh
add39dfea3 Cherry-pick: Only use <atomic> for C++11 and newer
See bionic 3ce0769aa5f9a991af1d167f730d987dd002253c
BUG=17736764

Change-Id: If63b6c8394f8574fd198fd24dfc42a3aaba865d5
2014-10-30 10:42:04 -07:00
Andrew Hsieh
21922de299 Add posix_memalign to API16's libc.so, and to stdlib.h for API 16, 17, 18, 19
posix_memalign is added to libc.so for API 17, 18, 19 but prototype
is missing from stdlib.h

Turns out API 16 supports posix_memalign too.  Add it as well

See b.android.com/77861

Change-Id: I940cdc60af9f98490001d67bef32fee556a3ac51
2014-10-23 10:28:17 -07:00
Andrew Hsieh
d8338a7e26 Add asm/a.out.h to arm64/mips/mips64
The common header include/linux/a.out.h include asm/a.out.h, but
arm64/mips/mips64 don't have it.  Add a placeholder before bionic
has it

Change-Id: I7084e0beabe86fec32987a89e66d6c094f1e8c22
2014-10-15 11:13:01 +08:00
Andrew Hsieh
c810b3ce7a Remove macros putc*/getc* from API<21 stdio.h to use
Macros putc, getc and their unlock cousins use internal functions and
variables not necessarily available in future libc.so (*1).  Remove macros
and use functions aleady exists in libc.so instead.

(*1) https://android-review.googlesource.com/#/c/110662/

Change-Id: I3faa2d74de40ef8376119b38f2a39d46ece47d07
2014-10-15 11:09:47 +08:00
Andrew Hsieh
2437e141fe Change sample native-codec's minSDK to android-21
android-L is renamed as android-21 in both coming SDK and NDK

Change-Id: I57b0dbe4d6e8add178dadfa6306bfc40aad27206
2014-10-15 11:03:55 +08:00
Hans Boehm
1b2269becc Make memory_order_acquire visible in global namespace
We were missing that using directive when including <atomic>.

Bug:17736764

Change-Id: I93673dc60cca47195ff7bd651840c77255fb2d4a
2014-10-15 11:00:28 +08:00
Andrew Hsieh
da84168fb2 Rename android-L to android-21
Change-Id: I1e781b15a867cf6283756f35f2b5955c96637c39
2014-10-15 10:48:04 +08:00
Haruki Hasegawa
13af1d8c37 Add missing function prototypes in time.h
Add clock_settime() and clock_nanosleep() function
prototypes in time.h.

Change-Id: I0eb45e465b3b48b9d4f3a4a8109a6f2d9c4f8ce2
Signed-off-by: Haruki Hasegawa <h6a.h4i.0@gmail.com>
2014-10-15 10:42:24 +08:00
Andrew Hsieh
a045a37c35 Refresh android-L headers (WW40)
linux/input.h: e2d86feb7b6b0b02b5e826c5f8836a6e104e9b71
stdlib.h and wchar.h: 3c5037f1b3b747e79d17a5f717d9f9c365132d33
sys/ucontext.h: 8e4d371091e5738346f5c6ad395b8487c2a5ec67

Change-Id: I80ced5cf212ff7c19628be10ba871ce1e6222d51
2014-09-30 09:24:03 +08:00
Andrew Hsieh
ec2d5674a8 Merge "Bump up clang vesion accepting __builtin_isnan __attribute__((pcs("aapcs")))" 2014-09-29 01:20:12 +00:00
Andrew Hsieh
154cb25408 Merge "Add posix_memalign to libc.so for API 17,18,19" 2014-09-29 01:20:03 +00:00
Andrew Hsieh
c316a240c5 Merge "Added sys/ucontext.h and sys/user.h to all API levels." 2014-09-29 01:18:07 +00:00