Skip to content

Commit

Permalink
Updates the patch and remove debug informatiom.
Browse files Browse the repository at this point in the history
  • Loading branch information
mordante committed May 1, 2024
1 parent 87f300f commit 4a0bb32
Show file tree
Hide file tree
Showing 3 changed files with 159 additions and 5 deletions.
156 changes: 156 additions & 0 deletions .github/workflows/libcxx-build-and-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -55,10 +55,16 @@ jobs:
fail-fast: false
matrix:
config: [
'generic-cxx03',
'generic-cxx26',
'generic-modules'
]
cc: [ 'clang-19' ]
cxx: [ 'clang++-19' ]
include:
- config: 'generic-gcc'
cc: 'gcc-13'
cxx: 'g++-13'
steps:
- uses: actions/checkout@v4
- name: ${{ matrix.config }}.${{ matrix.cxx }}
Expand All @@ -76,3 +82,153 @@ jobs:
**/CMakeError.log
**/CMakeOutput.log
**/crash_diagnostics/*
stage2:
if: github.repository_owner == 'llvm'
runs-on: libcxx-runners-8-set
needs: [ stage1 ]
continue-on-error: false
strategy:
fail-fast: false
matrix:
config: [
'generic-cxx11',
'generic-cxx14',
'generic-cxx17',
'generic-cxx20',
'generic-cxx23'
]
cc: [ 'clang-19' ]
cxx: [ 'clang++-19' ]
include:
- config: 'generic-gcc-cxx11'
cc: 'gcc-13'
cxx: 'g++-13'
- config: 'generic-cxx23'
cc: 'clang-17'
cxx: 'clang++-17'
- config: 'generic-cxx26'
cc: 'clang-18'
cxx: 'clang++-18'
steps:
- uses: actions/checkout@v4
- name: ${{ matrix.config }}
run: libcxx/utils/ci/run-buildbot ${{ matrix.config }}
env:
CC: ${{ matrix.cc }}
CXX: ${{ matrix.cxx }}
- uses: actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8 # v4.3.0
if: always() # Upload artifacts even if the build or test suite fails
with:
name: ${{ matrix.config }}-${{ matrix.cxx }}-results
path: |
**/test-results.xml
**/*.abilist
**/CMakeError.log
**/CMakeOutput.log
**/crash_diagnostics/*
stage3:
if: github.repository_owner == 'llvm'
needs: [ stage1, stage2 ]
continue-on-error: false
strategy:
fail-fast: false
max-parallel: 8
matrix:
config: [
'generic-abi-unstable',
'generic-hardening-mode-debug',
'generic-hardening-mode-extensive',
'generic-hardening-mode-fast',
'generic-hardening-mode-fast-with-abi-breaks',
'generic-merged',
'generic-modules-lsv',
'generic-no-exceptions',
'generic-no-experimental',
'generic-no-filesystem',
'generic-no-localization',
'generic-no-random_device',
'generic-no-threads',
'generic-no-tzdb',
'generic-no-unicode',
'generic-no-wide-characters',
'generic-no-rtti',
'generic-optimized-speed',
'generic-static',
# TODO Find a better place for the benchmark and bootstrapping builds to live. They're either very expensive
# or don't provide much value since the benchmark run results are too noise on the bots.
'benchmarks',
'bootstrapping-build'
]
machine: [ 'libcxx-runners-8-set' ]
include:
- config: 'generic-cxx26'
machine: libcxx-runners-8-set
- config: 'generic-asan'
machine: libcxx-runners-8-set
- config: 'generic-tsan'
machine: libcxx-runners-8-set
- config: 'generic-ubsan'
machine: libcxx-runners-8-set
# Use a larger machine for MSAN to avoid timeout and memory allocation issues.
- config: 'generic-msan'
machine: libcxx-runners-8-set
runs-on: ${{ matrix.machine }}
steps:
- uses: actions/checkout@v4
- name: ${{ matrix.config }}
run: libcxx/utils/ci/run-buildbot ${{ matrix.config }}
env:
CC: clang-19
CXX: clang++-19
- uses: actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8 # v4.3.0
if: always()
with:
name: ${{ matrix.config }}-results
path: |
**/test-results.xml
**/*.abilist
**/CMakeError.log
**/CMakeOutput.log
**/crash_diagnostics/*
windows:
runs-on: windows-2022
needs: [ stage1 ]
strategy:
fail-fast: false
matrix:
include:
- { config: clang-cl-dll, mingw: false }
- { config: clang-cl-static, mingw: false }
- { config: clang-cl-no-vcruntime, mingw: false }
- { config: clang-cl-debug, mingw: false }
- { config: clang-cl-static-crt, mingw: false }
- { config: mingw-dll, mingw: true }
- { config: mingw-static, mingw: true }
- { config: mingw-dll-i686, mingw: true }
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
choco install -y ninja wget
pip install psutil
- name: Install a current LLVM
if: ${{ matrix.mingw != true }}
run: |
choco install -y llvm --version=17.0.6
- name: Install llvm-mingw
if: ${{ matrix.mingw == true }}
run: |
curl -LO https://github.com/mstorsjo/llvm-mingw/releases/download/20231128/llvm-mingw-20231128-ucrt-x86_64.zip
powershell Expand-Archive llvm-mingw*.zip -DestinationPath .
del llvm-mingw*.zip
mv llvm-mingw* c:\llvm-mingw
echo "c:\llvm-mingw\bin" | Out-File -FilePath $Env:GITHUB_PATH -Encoding utf8 -Append
- name: Add Git Bash to the path
run: |
echo "c:\Program Files\Git\usr\bin" | Out-File -FilePath $Env:GITHUB_PATH -Encoding utf8 -Append
- name: Set up the MSVC dev environment
if: ${{ matrix.mingw != true }}
uses: ilammy/msvc-dev-cmd@v1
- name: Build and test
run: |
bash libcxx/utils/ci/run-buildbot ${{ matrix.config }}
4 changes: 3 additions & 1 deletion libcxx/test/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
include(HandleLitArguments)
add_subdirectory(tools)
# When the tools add clang-tidy support, the dependencies need to be updated.
# This cannot be done in the tools CMakeLists.txt since that does not update
# the status in this (a parent) directory.
if(TARGET cxx-tidy)
list(APPEND LIBCXX_TEST_DEPS cxx-tidy)
endif()
Expand Down Expand Up @@ -76,7 +79,6 @@ if (LIBCXX_INCLUDE_TESTS)
${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
MAIN_CONFIG "${CMAKE_CURRENT_SOURCE_DIR}/lit.cfg.py")

MESSAGE("XXX ${LIBCXX_TEST_DEPS}")
add_custom_target(cxx-test-depends
DEPENDS cxx ${LIBCXX_TEST_DEPS}
COMMENT "Builds dependencies required to run the test suite.")
Expand Down
4 changes: 0 additions & 4 deletions libcxx/utils/libcxx/test/params.py
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,6 @@ def getSuitableClangTidy(cfg):
)
!= 0
):
print("CLANG-TIDY: no plugin")
return None

version = "{__clang_major__}.{__clang_minor__}.{__clang_patchlevel__}".format(
Expand All @@ -136,11 +135,8 @@ def getSuitableClangTidy(cfg):
cfg, version, "clang-tidy-{__clang_major__}".format(**compilerMacros(cfg))
)

print(f"CLANG-TIDY: version={version} exe={exe}")

if not exe:
exe = testClangTidy(cfg, version, "clang-tidy")
print(f"CLANG-TIDY: new exe={exe}")

return exe

Expand Down

0 comments on commit 4a0bb32

Please sign in to comment.