Skip to content

Commit de2e566

Browse files
committed
GHA: build some LLVM+Clang tools before building the Windows/Linux ARM version of a third-party library.
1 parent 1cd78a7 commit de2e566

3 files changed

Lines changed: 11 additions & 4 deletions

File tree

.github/workflows/buildThirdPartyLibrary.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,13 +79,14 @@ jobs:
7979
uses: ilammy/msvc-dev-cmd@v1
8080
with:
8181
arch: amd64
82-
- name: Build llvm-tblgen and clang-tblgen
82+
- name: Build some LLVM+Clang tools
8383
if: ${{ (((runner.os == 'Windows') && (matrix.arch == 'amd64_arm64')) || ((runner.os == 'Linux') && (matrix.arch == 'arm'))) }}
8484
shell: bash
8585
run: |
86-
source src/3rdparty/LLVMClang/scripts/buildllvmclangtblgen ${{ runner.os == 'Windows' }}
86+
source src/3rdparty/LLVMClang/scripts/buildsomellvmclangtools ${{ runner.os == 'Windows' }}
8787
echo "DLLVMCLANG_LLVM_TABLEGEN=$DLLVMCLANG_LLVM_TABLEGEN" >> $GITHUB_ENV
8888
echo "DLLVMCLANG_CLANG_TABLEGEN=$DLLVMCLANG_CLANG_TABLEGEN" >> $GITHUB_ENV
89+
echo "DLLVMCLANG_CLANG_AST_DUMP=$DLLVMCLANG_CLANG_AST_DUMP" >> $GITHUB_ENV
8990
- name: Configure MSVC
9091
if: ${{ runner.os == 'Windows' }}
9192
uses: ilammy/msvc-dev-cmd@v1
@@ -96,7 +97,7 @@ jobs:
9697
run: |
9798
mkdir build
9899
cd build
99-
${{ matrix.cmake_prereqs }} cmake -G Ninja -DBUILD_TYPE=${{ matrix.build_type }} -DONLY_BUILD_THIRD_PARTY_LIBRARIES=ON -DPREBUILT_${{ inputs.third_party_library_name }}=OFF ${{ env.DLLVMCLANG_LLVM_TABLEGEN }} ${{ env.DLLVMCLANG_CLANG_TABLEGEN }} ..
100+
${{ matrix.cmake_prereqs }} cmake -G Ninja -DBUILD_TYPE=${{ matrix.build_type }} -DONLY_BUILD_THIRD_PARTY_LIBRARIES=ON -DPREBUILT_${{ inputs.third_party_library_name }}=OFF ${{ env.DLLVMCLANG_LLVM_TABLEGEN }} ${{ env.DLLVMCLANG_CLANG_TABLEGEN }} ${{ env.DLLVMCLANG_CLANG_AST_DUMP }} ..
100101
- name: Upload library artifact
101102
if: ${{ !startsWith(github.ref, 'refs/tags/v') }}
102103
uses: actions/upload-artifact@v4

src/3rdparty/LLVMClang/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,13 +81,18 @@ else()
8181
set(CLANG_TABLEGEN -DCLANG_TABLEGEN=${LLVMCLANG_CLANG_TABLEGEN})
8282
endif()
8383

84+
if(LLVMCLANG_CLANG_AST_DUMP)
85+
set(CLANG_AST_DUMP -DCLANG_AST_DUMP=${LLVMCLANG_CLANG_AST_DUMP})
86+
endif()
87+
8488
build_package(${PACKAGE_NAME}
8589
URL
8690
https://github.com/opencor/${PACKAGE_REPOSITORY}/archive/refs/tags/${RELEASE_TAG}.tar.gz
8791
DOWNLOAD_NO_PROGRESS ON
8892
SOURCE_SUBDIR
8993
llvm
9094
CMAKE_ARGS
95+
${CLANG_AST_DUMP}
9196
-DCLANG_BUILD_TOOLS=OFF
9297
-DCLANG_ENABLE_ARCMT=OFF
9398
-DCLANG_ENABLE_STATIC_ANALYZER=OFF

src/3rdparty/LLVMClang/scripts/buildllvmclangtblgen renamed to src/3rdparty/LLVMClang/scripts/buildsomellvmclangtools

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,12 @@ unzip -qq llvm-project-llvmorg-$LLVMCLANG_VERSION.zip
99
cd llvm-project-llvmorg-$LLVMCLANG_VERSION
1010

1111
cmake -G Ninja -S ./llvm -B build -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS=clang
12-
cmake --build build -t llvm-tblgen clang-tblgen
12+
cmake --build build -t llvm-tblgen clang-tblgen clang-ast-dump
1313

1414
if [ "$1" = "true" ]; then
1515
EXTENSION=.exe
1616
fi
1717

1818
export DLLVMCLANG_LLVM_TABLEGEN=-DLLVMCLANG_LLVM_TABLEGEN=$PWD/build/bin/llvm-tblgen$EXTENSION
1919
export DLLVMCLANG_CLANG_TABLEGEN=-DLLVMCLANG_CLANG_TABLEGEN=$PWD/build/bin/clang-tblgen$EXTENSION
20+
export DLLVMCLANG_CLANG_AST_DUMP=-DLLVMCLANG_CLANG_AST_DUMP=$PWD/build/bin/clang-ast-dump$EXTENSION

0 commit comments

Comments
 (0)