Commit graph

18850 commits

Author SHA1 Message Date
Dan Albert
9259265fc2 Add license to ndk_headers modules.
Test: make ndk
Bug: None
Change-Id: I0e9a39def2be9cd81369843906f6d7c180d17045
2016-10-20 11:52:05 -07:00
Dan Albert
c30862fdbc One NOTICE file to rule them all.
Generate a single NOTICE file rather than one per library. All the
headers come from libc these days anyway.

Test: tools/update_notice.sh
Bug: None
Change-Id: I127da185fdabc2815042e19aea74c507ec108f46
2016-10-20 11:48:55 -07:00
Dan Albert
32d5592a69 Update our notice files as a pre-upload step.
Also updates the license files, since apparently they're out of date.

Test: repo upload --cbr .
Bug: None
Change-Id: Ic8d855a7ee5185c4933da699292868e02ef79531
2016-10-20 11:27:50 -07:00
Treehugger Robot
d824421475 Merge "Fix ifaddrs error handling." 2016-10-14 23:35:52 +00:00
Elliott Hughes
22950687ee Fix ifaddrs error handling.
An NLMSG_ERROR packet includes an errno value that we should use. Also report
failures to create a socket immediately, rather than falling through to the
send and reporting EBADF.

Bug: http://b/32145516
Bug: http://b/31038971
Test: bionic ifaddr tests on ryu (with broken kernel) and flounder
Change-Id: I84c480c5b75077eb90d40426a9d66d7bffbd3d51
2016-10-14 14:35:26 -07:00
Treehugger Robot
49ef8c822f Merge "Remove unused build targets" 2016-10-12 23:46:40 +00:00
Dimitry Ivanov
426960ac87 Remove unused build targets
Test: mm
Change-Id: I4eadc40411a31a0e5fa910b0054c19f0dea6c1e2
2016-10-12 14:22:58 -07:00
Treehugger Robot
2eaba9343f Merge "Allocate all arc4random data on the same page." 2016-10-11 22:05:41 +00:00
Elliott Hughes
da01fa620c Allocate all arc4random data on the same page.
Saves one dirty page per process.

Test: bionic unit tests, reboot, manual check of /proc/*/maps
Change-Id: Ibbcafa955d60e43f4cb735fa484c6868aa357cd5
2016-10-11 13:07:44 -07:00
Elliott Hughes
0e6aa81999 Merge "Remove obsolete -std request." 2016-10-11 18:13:08 +00:00
Treehugger Robot
2c8a26d8bf Merge "Migrate libstdc++ to ndk_library." 2016-10-11 06:01:17 +00:00
Elliott Hughes
e89385743e Merge "Fix Mac build." 2016-10-11 03:50:28 +00:00
Elliott Hughes
ffbb0f8aa4 Fix Mac build.
Test: builds on Linux (I don't have a Mac)
Change-Id: I049e1d6420b0d169e727680da9c3d97e0b8aa3d2
2016-10-10 18:38:25 -07:00
Treehugger Robot
c3e09e1ff0 Merge changes I5667e991,I9d2a873e
* changes:
  bionic-unit-tests: remove dependency on ANDROID_DATA
  bionic-unit-tests: Create symlinks in runtime
2016-10-11 00:30:53 +00:00
Treehugger Robot
e0505ab0fb Merge "Use STDERR_FILENO instead of opening /dev/stderr." 2016-10-10 21:19:05 +00:00
Dimitry Ivanov
927877c7d3 bionic-unit-tests: remove dependency on ANDROID_DATA
Replace references to ANDROID_DATA enviroment variable with references
to g_testlib_root.

Bug: http://b/22182538
Test: build and run bionic-unit-tests --gtest_filter=dl*:Dl*
Test: make cts && cts-tradefed run singleCommand cts --skip-preconditions -m CtsBionicTestCases
Change-Id: I5667e991551cec55b9b664f2f0063039671ff34b
2016-10-10 13:56:20 -07:00
Dimitry Ivanov
708589f5e8 bionic-unit-tests: Create symlinks in runtime
Instead of creating symlinks in build time and then relying
on usage of adb sync (adb push follows symlinks) - create
them in test run time.

Test: mm && run bionic-unit-tests --gtest_filter=dl*:Dl*
Bug: http://b/22182538
Change-Id: I9d2a873e3ba303533c14ba5e3b779e4a67925462
2016-10-10 04:41:56 -07:00
Treehugger Robot
1c45e6fa47 Merge "Document a post-N dynamic linker change." 2016-10-08 20:41:28 +00:00
Elliott Hughes
77e875713f Document a post-N dynamic linker change.
Test: N/A
Change-Id: I37f3ccccd81c29a4ffe400fc2177bbe082195ade
2016-10-07 15:59:58 -07:00
Elliott Hughes
a3745834f2 Merge "Turn the recent blog post into markdown docs." 2016-10-07 22:56:32 +00:00
Josh Gao
59bde2e8f4 Use STDERR_FILENO instead of opening /dev/stderr.
/dev/stderr is a symlink to /proc/self/fd/2, so this only has different
behavior when we're out of file descriptors, or when STDERR_FILENO is in
a different state (it's not at the end, it's not writable, etc.).

Test: mma
Change-Id: Ie99688d810218eca8482ff060373e88c4e001824
2016-10-07 13:21:03 -07:00
Elliott Hughes
0568ee2641 Remove obsolete -std request.
Bug: http://b/32019064
Test: builds
Change-Id: Id662a63f08054634721750d26e0dcd3c366ed2e6
2016-10-07 10:43:30 -07:00
Elliott Hughes
c45380d20c Turn the recent blog post into markdown docs.
Originally http://android-developers.blogspot.com/2016/06/android-changes-for-ndk-developers.html

Test: N/A
Change-Id: I7ab75bcf9d518310fdf4e752929ba71c286fa242
2016-10-06 22:47:19 -07:00
Dan Albert
df31aff4e9 Migrate libstdc++ to ndk_library.
Test: make checkbuild
Bug: http://b/30465923
Change-Id: I3b75b4e7fa652c83846c5978f9908e8b32d43aa7
2016-10-06 15:50:41 -07:00
Dimitry Ivanov
e35872605b Merge changes Ie6777e2b,Iaed834be
* changes:
  Fix for default library path "/vendor/lib"
  Fix bionic-unit-tests
2016-10-05 16:20:45 +00:00
neo.chae
2589f9de64 Fix for default library path "/vendor/lib"
Android N restrict which libraries C/C++ code
can link against at runtime.

If device has a vendor partition
then /system/vendor symlink to /vendor.
Otherwise /vendor symlink to /system/vendor.

But is_system_library() is only checking /vendor/lib.
It will return false for /system/vendor/lib path.
It is need to add a real path to default library path.

Similarily, default ld library path is already checking.
parse_LD_LIBRARY_PATH()->parse_path()->resolve_paths()

Test: build bionic and run bionic-unit-tests
Bug: http://b/31919547
Change-Id: Ie6777e2b02729948ce77a94de32343d40358bf2c
Signed-off-by: Hyangseok Chae <neo.chae@lge.com>
2016-10-05 03:15:49 -07:00
Dimitry Ivanov
d11d1e4a97 Fix bionic-unit-tests
Fix rpath value for libraries after build system update

Bug: http://b/31221587
Test: run bionic-unit-tests --gtest_filter=dl*:Dl*:*atexit*
Change-Id: Iaed834bef830fd0b252b5de82e27634bafc92d8b
2016-10-05 02:58:25 -07:00
Elliott Hughes
1ba0e27462 Merge "Add missing O_CLOEXEC and TEMP_FAILURE_RETRY to localtime.c." 2016-10-04 02:25:03 +00:00
Elliott Hughes
4edd651ed3 Add missing O_CLOEXEC and TEMP_FAILURE_RETRY to localtime.c.
Follow-on change from http://b/31848040.

Test: *time* tests.
Change-Id: I3f1c9ce19b90f6f8c1ac6e0753e3fed0ff63c0b4
2016-10-03 16:46:33 -07:00
Elliott Hughes
0bee605aab Merge "Fix tzdata loading." 2016-10-03 23:35:34 +00:00
Elliott Hughes
81c46fc10f Fix tzdata loading.
Android uses one large file of tzdata, so the "read up to the maximum
possible length of a valid tzfile" code in upstream localtime.c is
broken: there is always data after the current tzfile (even the
last tzfile is followed by the zone.tab data). This patch passes the
exact length through to the read(2) call so we don't over-read, rather
than have to rewrite upstream code that measures back from the "end" of
the tzfile.

The old code failed the existing time.strftime_null_tm_zone test after
updating to tzdata2016g.

Bug: http://b/31848040
Test: time.strftime_null_tm_zone
Change-Id: Iee059b5a8c051bd4952cfd80f02b00d83e489d5e
2016-10-03 12:45:13 -07:00
Joachim Sauer
d609630799 Merge "Update timezone data to 2016g." 2016-10-03 10:34:44 +00:00
Joachim Sauer
e131f6cf33 Update timezone data to 2016g.
The 2016g release of the tz code and data is available. It reflects the
following changes, which were either circulated on the tz mailing list
or are relatively minor technical or administrative changes:

  Changes to future time stamps

    Turkey switched from EET/EEST (+02/+03) to permanent +03,
    effective 2016-09-07.  (Thanks to Burak AYDIN.)  Use "+03" rather
    than an invented abbreviation for the new time.

    New leap second 2016-12-31 23:59:60 UTC as per IERS Bulletin C 52.
    (Thanks to Tim Parenti.)

  Changes to past time stamps

    For America/Los_Angeles, spring-forward transition times have been
    corrected from 02:00 to 02:01 in 1948, and from 02:00 to 01:00 in
    1950-1966.

    For zones using Soviet time on 1919-07-01, transitions to UT-based
    time were at 00:00 UT, not at 02:00 local time.  The affected
    zones are Europe/Kirov, Europe/Moscow, Europe/Samara, and
    Europe/Ulyanovsk.  (Thanks to Alexander Belopolsky.)

  Changes to past and future time zone abbreviations

    The Factory zone now uses the time zone abbreviation -00 instead
    of a long English-language string, as -00 is now the normal way to
    represent an undefined time zone.

    Several zones in Antarctica and the former Soviet Union, along
    with zones intended for ships at sea that cannot use POSIX TZ
    strings, now use numeric time zone abbreviations instead of
    invented or obsolete alphanumeric abbreviations.  The affected
    zones are Antarctica/Casey, Antarctica/Davis,
    Antarctica/DumontDUrville, Antarctica/Mawson, Antarctica/Rothera,
    Antarctica/Syowa, Antarctica/Troll, Antarctica/Vostok,
    Asia/Anadyr, Asia/Ashgabat, Asia/Baku, Asia/Bishkek, Asia/Chita,
    Asia/Dushanbe, Asia/Irkutsk, Asia/Kamchatka, Asia/Khandyga,
    Asia/Krasnoyarsk, Asia/Magadan, Asia/Omsk, Asia/Sakhalin,
    Asia/Samarkand, Asia/Srednekolymsk, Asia/Tashkent, Asia/Tbilisi,
    Asia/Ust-Nera, Asia/Vladivostok, Asia/Yakutsk, Asia/Yekaterinburg,
    Asia/Yerevan, Etc/GMT-14, Etc/GMT-13, Etc/GMT-12, Etc/GMT-11,
    Etc/GMT-10, Etc/GMT-9, Etc/GMT-8, Etc/GMT-7, Etc/GMT-6, Etc/GMT-5,
    Etc/GMT-4, Etc/GMT-3, Etc/GMT-2, Etc/GMT-1, Etc/GMT+1, Etc/GMT+2,
    Etc/GMT+3, Etc/GMT+4, Etc/GMT+5, Etc/GMT+6, Etc/GMT+7, Etc/GMT+8,
    Etc/GMT+9, Etc/GMT+10, Etc/GMT+11, Etc/GMT+12, Europe/Kaliningrad,
    Europe/Minsk, Europe/Samara, Europe/Volgograd, and
    Indian/Kerguelen.  For Europe/Moscow the invented abbreviation MSM
    was replaced by +05, whereas MSK and MSD were kept as they are not
    our invention and are widely used.

  Changes to zone names

    Rename Asia/Rangoon to Asia/Yangon, with a backward compatibility link.
    (Thanks to David Massoud.)

Test: Ran CTS modules CtsLibcoreTestCases and CtsBionicTestCases.
Bug: 31848040
Change-Id: I1e652ce2e428d44ba143e4ca9630fd2dc46087e4
2016-09-30 16:49:38 +01:00
Elliott Hughes
b81ade6203 Merge "Fix mbsnrtowcs where dst is null." 2016-09-30 15:41:40 +00:00
Elliott Hughes
d43c8891ae Merge "Fix tests/run-on-host.sh for glibc." 2016-09-30 15:37:48 +00:00
Treehugger Robot
83e9f36a11 Merge "Update escaping in Android.bp files" 2016-09-30 04:17:58 +00:00
Elliott Hughes
89e29ee485 Fix mbsnrtowcs where dst is null.
POSIX is its usual unintelligible self
(http://pubs.opengroup.org/onlinepubs/9699919799/functions/mbsrtowcs.html),
but the ISO C11 standard (7.29.6.4.1 paragraph 2) is pretty clear: *src
should change if and only if dst is non-null.

Bug: https://code.google.com/p/android/issues/detail?id=166381
Test: bionic tests
Change-Id: Ibc631cfa5b1bf4a6f56963feba9f0eea27b07984
2016-09-29 17:26:13 -07:00
Elliott Hughes
f48f499329 Fix tests/run-on-host.sh for glibc.
Test: tests/run-on-host.sh glibc
Change-Id: Idd5b2a72335ff0ca47f37c578f71cec8c9fb6ea0
2016-09-29 17:17:15 -07:00
Colin Cross
7b29495d0a Update escaping in Android.bp files
Strings like cflags in Android.bp files are parsed by blueprint,
written to build.ninja files, parsed by ninja, and then passed to
/bin/sh -c.  This had resulted in a combination of blueprint
(\"), ninja ($$), and shell (\$) escaping being necessary.

Soong has been updated to automatically handle ninja and shell
escaping, remove extra escaping from Android.bp files.

Bug: 31221587
Test: m -j
Change-Id: Ib58a51dee8d22296b69ec21768ba6a49dd60e980
2016-09-29 14:37:30 -07:00
Christopher Ferris
cc9e9933e1 Merge "Update documentation." 2016-09-29 17:28:39 +00:00
Elliott Hughes
6a5f7f5873 Merge "Rename __pure, __pure2, and __purefunc." 2016-09-29 15:49:08 +00:00
Christopher Ferris
ac66d16a52 Update documentation.
Fix the incorrect mention of when the zygote flag is set on a size.

Add information about how to use am dumpheap -n to dump the native
heap to a file.

Test: Documentation only change.

Change-Id: I82e810ee7ffffcf7506fb6fd9bcfdfb0465a48be
2016-09-28 14:54:06 -07:00
Elliott Hughes
95fa061678 Rename __pure, __pure2, and __purefunc.
These names were pretty misleading (aka "backwards"), so switch to the
same obvious names glibc uses.

Test: build.
Change-Id: Ia98c9dbbccd0820386116562347654e84669034a
2016-09-28 12:36:38 -07:00
Josh Gao
1d20532f5c Merge changes Idcbc544e,Ic7cfad1c
* changes:
  Fix warnings (and errors) in static inline headers.
  Add versioner to preupload hook.
2016-09-26 21:53:01 +00:00
Treehugger Robot
424a5f629c Merge "Fix complex.csqrtf test and add a trivial sincosl test." 2016-09-26 18:34:55 +00:00
Elliott Hughes
e9719f3fb5 Fix complex.csqrtf test and add a trivial sincosl test.
sincos and sincosf are being tested more thoroughly with a table of data,
but there's nothing equivalent for sincosl.

Test: ran the tests, obviously.
Change-Id: I5b4b22b73cad9b0030549de2e2ed2a0e38648806
2016-09-26 09:35:04 -07:00
Josh Gao
6cd9fb080c Fix warnings (and errors) in static inline headers.
Bug: http://b/31676510
Change-Id: Idcbc544e498f7e6bbe99c2bf7dc557a5681e96c4
Test: preupload hook
2016-09-23 14:34:03 -07:00
Josh Gao
0173379610 Add versioner to preupload hook.
Bug: http://b/31676510
Change-Id: Ic7cfad1cb214c9f711a985bace484a20db1a89b6
Test: submitted this patch, and it failed
2016-09-23 14:34:03 -07:00
Treehugger Robot
0855431067 Merge changes Ic43d690d,Ifec6c320
* changes:
  Add legacy inlines for locale aware APIs.
  Add strtof_l and strtod_l.
2016-09-22 16:28:15 +00:00
Dan Albert
6576a3749b Add legacy inlines for locale aware APIs.
Test: make checkbuild tests
Bug: http://b/31639993
Change-Id: Ic43d690dff3c6960d7826bd0b064640a3ea0e883
2016-09-22 00:44:37 -07:00