[libc++] Run back-deployment CI against previously-released libc++abi dylibs

We used to do it against the current system's libc++abi, which is not as
good as doing it with the libc++abi that matches the libc++ we're running
against.

Note that I made sure we were indeed picking up the provided libc++abi
by replacing it by something that doesn't work and watching it burn.

llvm-svn: 358294
This commit is contained in:
Louis Dionne 2019-04-12 16:58:25 +00:00
parent 5757bfbd54
commit e4d6ac5d19
3 changed files with 3 additions and 7 deletions

View File

@ -13,10 +13,9 @@
// definitions, which does not yet provide aligned allocation
// XFAIL: LIBCXX-WINDOWS-FIXME
// The dylibs shipped before macosx10.14 do not contain the aligned allocation
// The dylibs shipped before macosx10.13 do not contain the aligned allocation
// functions, so trying to force using those with -faligned-allocation results
// in a link error.
// XFAIL: with_system_cxx_lib=macosx10.13
// XFAIL: with_system_cxx_lib=macosx10.12
// XFAIL: with_system_cxx_lib=macosx10.11
// XFAIL: with_system_cxx_lib=macosx10.10

View File

@ -15,10 +15,9 @@
// REQUIRES: -faligned-allocation
// The dylibs shipped before macosx10.14 do not contain the aligned allocation
// The dylibs shipped before macosx10.13 do not contain the aligned allocation
// functions, so trying to force using those with -faligned-allocation results
// in a link error.
// XFAIL: with_system_cxx_lib=macosx10.13
// XFAIL: with_system_cxx_lib=macosx10.12
// XFAIL: with_system_cxx_lib=macosx10.11
// XFAIL: with_system_cxx_lib=macosx10.10

View File

@ -149,19 +149,17 @@ echo "@@@@@@"
echo "@@@ Downloading dylibs for older deployment targets @@@"
# TODO: The tarball should contain libc++abi.dylib too, we shouldn't be relying on the system's
# TODO: We should also link against the libc++abi.dylib that was shipped in the SDK
PREVIOUS_DYLIBS_DIR="${TEMP_DIR}/libcxx-dylibs"
mkdir "${PREVIOUS_DYLIBS_DIR}"
curl "${PREVIOUS_DYLIBS_URL}" | tar -xz --strip-components=1 -C "${PREVIOUS_DYLIBS_DIR}"
LIBCXX_ON_DEPLOYMENT_TARGET="${PREVIOUS_DYLIBS_DIR}/macOS/${DEPLOYMENT_TARGET}/libc++.dylib"
LIBCXXABI_ON_DEPLOYMENT_TARGET="/usr/lib/libc++abi.dylib"
LIBCXXABI_ON_DEPLOYMENT_TARGET="${PREVIOUS_DYLIBS_DIR}/macOS/${DEPLOYMENT_TARGET}/libc++abi.dylib"
LIBCXX_IN_SDK="${PREVIOUS_DYLIBS_DIR}/macOS/${MACOS_SDK_VERSION}/libc++.dylib"
echo "@@@@@@"
# TODO: We need to also run the tests for libc++abi.
# TODO: Make sure lit will actually run against the libc++abi we specified
echo "@@@ Running tests for libc++ @@@"
"${LIBCXX_BUILD_DIR}/bin/llvm-lit" -sv "${LIBCXX_ROOT}/test" \
--param=enable_experimental=false \