[libcxx-commits] [PATCH] D110736: [libc++][libc++abi] Add tests for vendor-specific properties

Louis Dionne via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed Sep 29 10:35:32 PDT 2021


ldionne created this revision.
Herald added subscribers: arichardson, mgorny.
ldionne requested review of this revision.
Herald added projects: libc++, libc++abi.
Herald added a subscriber: libcxx-commits.
Herald added a reviewer: libc++.
Herald added a reviewer: libc++abi.

Vendors take libc++ and ship it in various ways. Some vendors might
ship it differently from what upstream LLVM does, i.e. the install
location might be different, some ABI properties might differ, etc.

In the past few years, I've come across several instances where
having a place to test some of these properties would have been
incredibly useful. I also just got bitten by the lack of tests
of that kind, so I'm adding some now.

The tests added by this commit for Apple platforms have numerous
TODOs that capture discrepancies between the upstream LLVM CMake
and the slightly-modified build we perform internally to produce
Apple's system libc++. In the future, the goal would be to upstream
all those differences so that it's possible to build a faithful
Apple system libc++ with the upstream LLVM sources only.

But this isn't only useful for Apple - this lays out the path for
any vendor being able to add their own checks (either upstream or
downstream) to libc++.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D110736

Files:
  libcxx/cmake/caches/Apple.cmake
  libcxx/test/configs/legacy.cfg.in
  libcxx/test/configs/libcxx-trunk-shared.cfg.in
  libcxx/test/configs/libcxx-trunk-static.cfg.in
  libcxx/test/libcxx/vendor/apple/system-install-properties.sh.cpp
  libcxx/test/std/strings/c.strings/cuchar.pass.cpp
  libcxx/test/std/utilities/charconv/charconv.from.chars/integral.bool.fail.cpp
  libcxx/test/std/utilities/charconv/charconv.from.chars/integral.pass.cpp
  libcxx/test/std/utilities/charconv/charconv.from.chars/integral.roundtrip.pass.cpp
  libcxx/test/std/utilities/charconv/charconv.to.chars/integral.bool.fail.cpp
  libcxx/test/std/utilities/charconv/charconv.to.chars/integral.pass.cpp
  libcxx/test/std/utilities/function.objects/func.search/func.search.bm/default.pass.cpp
  libcxx/test/std/utilities/function.objects/func.search/func.search.bm/hash.pass.cpp
  libcxx/test/std/utilities/function.objects/func.search/func.search.bm/hash.pred.pass.cpp
  libcxx/test/std/utilities/function.objects/func.search/func.search.bm/pred.pass.cpp
  libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/default.pass.cpp
  libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/hash.pass.cpp
  libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/hash.pred.pass.cpp
  libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/pred.pass.cpp
  libcxx/utils/libcxx/test/config.py
  libcxx/utils/libcxx/test/params.py
  libcxxabi/test/lit.site.cfg.in
  libcxxabi/test/vendor/apple/system-install-properties.sh.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D110736.375954.patch
Type: text/x-patch
Size: 17805 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20210929/f3f8b52d/attachment-0001.bin>


More information about the libcxx-commits mailing list