Commit Graph

1658 Commits

Author SHA1 Message Date
Dan Albert
1894928715 Fix for libcxx.mk
Change-Id: I1b7b4fd2a9109d9025c4602f88e676e3785c8e36
2014-05-16 14:27:16 -07:00
Dan Albert
e33eaba08e libcxxrt moved cxxabi.h from src/ into include/
Change-Id: I3d781b4f58bb6e2d14ad498aaac4092a48f35107
2014-05-16 14:26:41 -07:00
Dan Albert
550f40fc55 am 2a269419: Reverts a compatibility change made to two tests
* commit '2a269419dceb1c071c5c5ef5c13fbee6040a20dc':
  Reverts a compatibility change made to two tests
2014-05-16 20:57:44 +00:00
Dan Albert
2a269419dc Reverts a compatibility change made to two tests
wctype_t was previously declared as an enum in bionic, preventing direct integer
assignment. This has since been made more like other libc's, so we can revert
this change.

Bug: 14646243
Change-Id: Ie63711b8f6d4f947b8fe3b278f5503495521555d
2014-05-16 13:52:06 -07:00
Dan Albert
8f40a19e1d am 9fdc63a6: Disables tests that fail to compile
* commit '9fdc63a61cd5c96c733c8e7da3044d00d1eea742':
  Disables tests that fail to compile
2014-05-13 00:21:57 +00:00
Dan Albert
7b23cafd2f am 6f56ab78: Adds a basic test wrapper for Android
* commit '6f56ab789cb470620554d624c37f488285b3b04e':
  Adds a basic test wrapper for Android
2014-05-13 00:18:38 +00:00
Dan Albert
9fdc63a61c Disables tests that fail to compile
math_h, cmath:
    Fails a static assert because isnan(double) and isinf(double) should be
    returning bool, but aren't. This is a known problem upstream.
    http://libcxx.llvm.org/results.Linux.html

uchar_h, cuchar, version_cuchar:
    Bionic does not include this header. According to upstream, this was also a
    problem with glibc last time they ran their tests. Docs say this is fixed in
    glibc 2.16. http://libcxx.llvm.org/results.Linux.html

wctype_h, cwctype:
    This one isn't disabled, but did require a fix. The test was casting 0
    directly to a wctype_t, which fails because bionic's wctype_t is an enum.
    From the POSIX spec, it looks like bionic is allowed to do so, and this test
    should be fixed upstream.

cstdio:
    snprintf is a macro in bionic, which make it impossible for <cstdio> to
    ::using snprintf. There may be a work around for this.

quick_exit:
    Bionic supports this, but glibc does not. Also becomes available in glibc
    2.16. http://libcxx.llvm.org/results.Linux.html

max_align_t:
    Needs investigation.

aligned_storage:
    Needs investigation.

Change-Id: I62a5210f6755388dc06cce20d81530a300300bf1
2014-05-13 00:16:46 +00:00
Dan Albert
6f56ab789c Adds a basic test wrapper for Android
To run libc++ tests:
$ mm
$ adb sync
$ python runtests.py # runs all host and device tests
                     # see main() for command line options

To regenerate all makefiles:
$ python makemake.py

Change-Id: Ibad78ad8e1bd45f32730d281afa53c2cec55478f
2014-05-12 16:02:43 -07:00
Dan Albert
89b4c770a9 am 7d57f1bb: Exports all symbols from libcompiler_rt
* commit '7d57f1bbe2a5e91a6ec904da37f36791856cb93c':
  Exports all symbols from libcompiler_rt
2014-05-12 22:10:27 +00:00
Dan Albert
7d57f1bbe2 Exports all symbols from libcompiler_rt
Change-Id: I18d627fecef8e5ff96fa009e7a409a199435a317
2014-05-12 14:54:53 -07:00
Brian Carlstrom
5d32bb6109 am 12c2891e: Add LOCAL_ADDITIONAL_DEPENDENCIES on Android.mk
* commit '12c2891e07fe1282ebfffe9714a8b2cfad450642':
  Add LOCAL_ADDITIONAL_DEPENDENCIES on Android.mk
2014-05-10 04:07:36 +00:00
Brian Carlstrom
12c2891e07 Add LOCAL_ADDITIONAL_DEPENDENCIES on Android.mk
Change-Id: I46fed92c053ef7a0b8ea0ea023522ffa1875e6ed
2014-05-09 20:47:13 -07:00
Dan Albert
31789bbba4 am 9569f043: Switches ABI from libc++abi to libcxxrt
* commit '9569f04315c59c4347295946dc01eb046bfb1c47':
  Switches ABI from libc++abi to libcxxrt
2014-05-09 23:46:54 +00:00
Dan Albert
9569f04315 Switches ABI from libc++abi to libcxxrt
libc++abi wasn't catching exceptions out of the box, libcxxrt does. libc++abi is
still used for Darwin.

Change-Id: I93b2a45a515c17e5f219ce8648660313db3971ef
2014-05-09 14:16:17 -07:00
Dan Albert
38281bd1c5 am f1550543: Enables RTTI (required by many tests)
* commit 'f155054361cf84c0f3e5752d93c2f68675d47dcb':
  Enables RTTI (required by many tests)
2014-05-07 00:06:06 +00:00
Dan Albert
f155054361 Enables RTTI (required by many tests)
Change-Id: I1fbc94941978c52230930ed15921900bcba1660f
2014-05-06 16:41:02 -07:00
Dan Albert
a1ea51ef74 am c18469d9: LDBL math define is no longer necessary for bionic
* commit 'c18469d9883838fbbda63b37f4ec84c44ab718d7':
  LDBL math define is no longer necessary for bionic
2014-05-06 23:04:59 +00:00
Dan Albert
c18469d988 LDBL math define is no longer necessary for bionic
Change-Id: I2d98091400a83e2a1219a334daf0063b2fb0efd6
2014-05-06 15:42:04 -07:00
Dan Albert
c70289d13b am 0514f5a5: Merge "Enables quick_exit(3)/at_quick_exit(3) for bionic"
* commit '0514f5a5c1cad6ed61962675c4c14b53665e1a73':
  Enables quick_exit(3)/at_quick_exit(3) for bionic
2014-05-06 22:41:44 +00:00
Dan Albert
0514f5a5c1 Merge "Enables quick_exit(3)/at_quick_exit(3) for bionic" 2014-05-06 22:39:44 +00:00
Stephen Hines
7fc24c8cb5 am 0867076e: Switch from libcxxabi -> libc++abi.
* commit '0867076ef8c97957fffa236ea0f121f2632a7a46':
  Switch from libcxxabi -> libc++abi.
2014-05-06 22:03:44 +00:00
Dan Albert
1f68310595 Enables quick_exit(3)/at_quick_exit(3) for bionic
Change-Id: I8eeff24bec9a8d3f0539e66239f351bea5e15e71
2014-05-06 14:28:04 -07:00
Stephen Hines
0867076ef8 Switch from libcxxabi -> libc++abi.
Change-Id: I3a77184197ef6297abcc5d437507d979050dd905
2014-05-05 17:37:29 -07:00
Dan Albert
bcee5bba1a am 8a6f7b1d: Removes unintended dependencies on libgcc/libstdc++
* commit '8a6f7b1d423195c8b0f1e734c7f27d24786cc87f':
  Removes unintended dependencies on libgcc/libstdc++
2014-05-05 23:00:41 +00:00
Dan Albert
8a6f7b1d42 Removes unintended dependencies on libgcc/libstdc++
Change-Id: Ia50f21a2b9820a829e923c83732b297f7f7b248b
2014-05-05 11:26:27 -07:00
Stephen Hines
ef29af3cd2 am 1f76ece7: Merge "Disable linker warnings on MIPS builds to work around relocation issue."
* commit '1f76ece73960815e6ca442031cc7bfa7bb206b51':
  Disable linker warnings on MIPS builds to work around relocation issue.
2014-04-30 21:05:10 +00:00
Stephen Hines
1f76ece739 Merge "Disable linker warnings on MIPS builds to work around relocation issue." 2014-04-30 21:02:37 +00:00
Stephen Hines
3486f698a3 Disable linker warnings on MIPS builds to work around relocation issue.
Bug: 14296739

Clang is emitting a text relocation for __gxx_personality_v0 on MIPS, and
the linker is treating this as an error (converted from a warning initially).
The warning appears harmless in this case, so the temporary solution is to
disable it until the LLVM bug is fixed.

Change-Id: I87dd41e7e2247d5b64ba8e2c5ad03db6716871de
2014-04-30 01:16:20 -07:00
Elliott Hughes
dc834480dc am abc15f52: Remove the bionic *wscanf workarounds.
* commit 'abc15f529e75c784b2f8b47281c66b6a1b6783e7':
  Remove the bionic *wscanf workarounds.
2014-04-30 02:02:23 +00:00
Elliott Hughes
abc15f529e Remove the bionic *wscanf workarounds.
This is now fixed in bionic.

Change-Id: I0d280dffa8b962cf0f24d8422452c18872e6ec2b
2014-04-29 16:32:14 -07:00
Elliott Hughes
85a66938a4 am b83642f7: Remove most of the remaining wide-char stubs from libcxx.
* commit 'b83642f7bb3b3877bf803a5b01152754473f5257':
  Remove most of the remaining wide-char stubs from libcxx.
2014-04-29 22:39:46 +00:00
Elliott Hughes
b83642f7bb Remove most of the remaining wide-char stubs from libcxx.
We still need declarations for the C99 wide scanf stuff. I'll be back...

Change-Id: I6e222a05bf61101e7374b9ef54581459d7a0e1c4
2014-04-29 15:15:24 -07:00
Elliott Hughes
97400a9b5b am 91e05730: Remove mbtowc stub.
* commit '91e057305df0e98fe153b51cc767c03a38ba555f':
  Remove mbtowc stub.
2014-04-29 15:47:49 +00:00
Elliott Hughes
91e057305d Remove mbtowc stub.
Change-Id: I63684e162883733f239ed83d202520e0f4be7dc5
2014-04-29 08:44:13 -07:00
Stephen Hines
0623009b58 am 27ae7cb7: Don\'t build libc++ for unbundled projects.
* commit '27ae7cb782821a4f2d3813522ee411cd978bcd85':
  Don't build libc++ for unbundled projects.
2014-04-29 02:02:32 +00:00
Tim Murray
fe9e4c0295 am d513b7a1: Add Darwin-specific fixes for host libc++.
* commit 'd513b7a16f5bb182fbe3cab05bfe68dddff948ff':
  Add Darwin-specific fixes for host libc++.
2014-04-29 02:02:31 +00:00
Dan Albert
4b4c32b08b am 2517f4fe: Fix classic_table implementation for bionic
* commit '2517f4fe31291c98c8120e78de0c7a299408bbf1':
  Fix classic_table implementation for bionic
2014-04-29 02:02:31 +00:00
Ian Rogers
101876b0d6 am c13109d4: Merge "Add a makefile for inclusion by projects using libc++."
* commit 'c13109d44520ab0fe46901fb79702a1a915169c0':
  Add a makefile for inclusion by projects using libc++.
2014-04-29 02:02:30 +00:00
Dan Albert
3469007a42 am c10e7197: Fixes build on arm64
* commit 'c10e7197c30a26cb5974353f39816aced1853e06':
  Fixes build on arm64
2014-04-29 02:02:30 +00:00
Dan Albert
5eac541663 am 1a42fce2: Disables building of libcxx on mips targets
* commit '1a42fce230f3fdf47424db6f53da933355a9416e':
  Disables building of libcxx on mips targets
2014-04-29 02:02:29 +00:00
Dan Albert
b228de6499 am 226cd953: Fixes libdl link errors on x86 and mips32
* commit '226cd95300d2a7efbfa3f62c837d638e92c1f433':
  Fixes libdl link errors on x86 and mips32
2014-04-29 02:02:29 +00:00
Dan Albert
c7284cd406 am 2ef012e4: Get libc++ building for Android
* commit '2ef012e47441428f752c6a29d2927513669dda30':
  Get libc++ building for Android
2014-04-29 02:02:28 +00:00
Tim Murray
bf1b7d0efc am 3b74eb32: Merge remote-tracking branch \'upstream/master\' into libcxx4
* commit '3b74eb32545456120f507d5dc2b74d11a3b89bb0': (1404 commits)
  Initial empty repository
  Use defined(__APPLE__) rather than __APPLE__
  ARM64: compare RTTI names as strings
  ARM64: use the alternate string layout on Apple platforms.
  [libc++] Teach is_integral, is_[un]signed and make_[un]signed about __[u]int128_t
  Implement LWG issue #2135. If something goes wrong in condition_variable::wait, call terminate() rather than throwing an error. Do this indirectly, by marking the call as 'noexcept'. This is better than just calling terminate() directly, because it gives a better error message on the console.
  Add tests that should fail when lock() throws. THis is part of LWG issue #2135. No library changes here.
  Mark LWG issues #2075 and #2142 as complete. 2142 was a change to the standard to remove redundant wording, which required no changes to libc++. 2075 was a rewrite of the requirements for forward progress, and again, requires no changes to the library.
  Add a test to make sure we're doing the right thing for throwing exceptions from deferred functions. This is LWG issue #2186. No change to the library needed.
  Mark LWG Issue #2288 as complete. This was wording cleanup, no code changes required. Also mark #2104 as complete. Leave the implementation in libc++ as noexcept, since implementations are allowed to add noexcept to non-virtual calls. If we throw from unique_lock& operator=(unique_lock&& u), then that means the preconditions were violated, and calling terminate() (as a result of throwing from a noexcept function) is as good example of undefined behavior as any other.
  Minor cleanup from r204078; remove two empty test directories that were left behind.
  Implement N3891: A proposal to rename shared_mutex to shared_timed_mutex
  Replace a tab with a space
  Remove Issue #2235 from the Chicago section. The resolution was approved in Bristol (and it is listed there), and then is was approved *again* in Chicago. Thanks to STL @ microsoft for the catch
  Exclude .svn (and other "dot" directories) when installing headers.
  build: remove unnecessary modification of CMAKE_REQUIRED_DEFINITIONS
  build: fix erroneous overwriting of flags
  build: fix add_definition abuse in CMake
  build: remove an errant comma
  THIRD TIME. Richard pointed out (again) that I'd switched the order of the instance variables; and thus failed to repair the ABI break. After this, I'm going to sit down and watch TV for the evening.
  ...
2014-04-29 02:02:26 +00:00
Stephen Hines
27ae7cb782 Don't build libc++ for unbundled projects.
It is preinstalled from prebuilts/sdk instead.

Change-Id: Ie7a85f580538e6a6730949e31b36f021ec492ba4
2014-04-25 19:13:02 -07:00
Tim Murray
d513b7a16f Add Darwin-specific fixes for host libc++.
Change-Id: I31ed8779575df16dfe52dc4f1d75a353e560dba5
2014-04-21 17:45:52 -07:00
Dan Albert
2517f4fe31 Fix classic_table implementation for bionic
Change-Id: I26716b16bddcfb7109f436822067950fd99a5c08
2014-04-18 15:55:14 +00:00
Ian Rogers
c13109d445 Merge "Add a makefile for inclusion by projects using libc++." 2014-04-17 00:12:54 +00:00
Ian Rogers
1a1e45d9a2 Add a makefile for inclusion by projects using libc++.
Based on external/stlport/libstlport.mk

Change-Id: I2516eb376260cfcc2c6b814be12a26c8f873bf7b
2014-04-16 16:56:54 -07:00
Dan Albert
c10e7197c3 Fixes build on arm64
Change-Id: Ie2fcfccdab3081f71db3c017acad65b4b4b4a666
2014-04-16 16:38:42 -07:00
Dan Albert
1a42fce230 Disables building of libcxx on mips targets
Change-Id: I9494a11cd86312fa64e3fd84ff598815638a7c74
2014-04-16 16:29:36 -07:00