Skip to content

Commit c0e2ffa

Browse files
Update llvm-c-api-linux.yml
1 parent c785be9 commit c0e2ffa

1 file changed

Lines changed: 25 additions & 3 deletions

File tree

.github/workflows/llvm-c-api-linux.yml

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,21 +42,37 @@ jobs:
4242
sudo apt-get remove -y llvm-16* clang-16*
4343
sudo rm -rf /usr/lib/llvm-16
4444
45+
- name: Configuring CMake (Clang)
46+
run: |
47+
mkdir build
48+
mkdir dist
49+
cd build
50+
working-directory: llvm-project/clang
51+
52+
- name: Configuring CMake (Clang)
53+
run: |
54+
cmake ../CMakeLists.txt -G Ninja -DCMAKE_C_COMPILER="gcc" -DCMAKE_CXX_COMPILER="g++" -DLLVM_ENABLE_PROJECTS="clang" -DLLVM_ENABLE_TERMINFO=OFF -DLLVM_ENABLE_ZLIB=OFF -DCMAKE_DISABLE_FIND_PACKAGE_LibXml2=TRUE -DLLVM_ENABLE_LIBXML2=0 -DLLVM_ENABLE_LIBPFM=OFF -DLLVM_ENABLE_LIBEDIT=OFF -DLLVM_ENABLE_Z3_SOLVER=OFF -DLLVM_ENABLE_RTTI=OFF -DLLVM_INCLUDE_UTILS=OFF -DCMAKE_INSTALL_PREFIX="../dist" -DCMAKE_BUILD_TYPE=MinSizeReel -DLLVM_BUILD_TESTS=OFF -DLLVM_BUILD_EXAMPLES=OFF -DLLVM_INCLUDE_TESTS=OFF -DLLVM_INCLUDE_EXAMPLES=OFF -DLLVM_INCLUDE_DOCS=OFF
55+
working-directory: llvm-project/clang/build
56+
57+
- name: Building Clang
58+
run: |
59+
ninja -j$(nproc) clang
60+
working-directory: llvm-project/clang/build
61+
4562
- name: Preparing for build (LLVM-C API)
4663
run: |
4764
mkdir build
4865
mkdir dist
4966
cd build
5067
working-directory: llvm-project/llvm
51-
68+
5269
- name: Configuring CMake (LLVM C API)
5370
run: |
5471
cmake ../CMakeLists.txt -G Ninja -DCMAKE_C_COMPILER="gcc" -DCMAKE_CXX_COMPILER="g++" -DLLVM_ENABLE_PROJECTS="llvm;lld" -DLLVM_ENABLE_TERMINFO=OFF -DLLVM_ENABLE_ZLIB=OFF -DCMAKE_DISABLE_FIND_PACKAGE_LibXml2=TRUE -DLLVM_ENABLE_LIBXML2=0 -DLLVM_INCLUDE_UTILS=OFF -DCMAKE_INSTALL_PREFIX="../dist" -DCMAKE_BUILD_TYPE=MinSizeReel -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_BUILD_TESTS=OFF -DLLVM_BUILD_EXAMPLES=OFF -DLLVM_INCLUDE_TESTS=OFF -DLLVM_INCLUDE_EXAMPLES=OFF -DLLVM_INCLUDE_DOCS=OFF
5572
working-directory: llvm-project/llvm/build
5673

5774
- name: Building LLVM C API
5875
run: |
59-
ninja -j$(nproc) libc
6076
ninja -j$(nproc) liblldCOFF.a liblldCommon.a liblldELF.a liblldMachO.a liblldMinGW.a liblldWasm.a
6177
ninja -j$(nproc) libLLVMAggressiveInstCombine.a libLLVMAnalysis.a libLLVMAsmParser.a libLLVMAsmPrinter.a libLLVMBinaryFormat.a libLLVMBitReader.a libLLVMBitWriter.a libLLVMBitstreamReader.a libLLVMCFGuard.a libLLVMCFIVerify.a libLLVMCodeGen.a libLLVMCodeGenTypes.a libLLVMCore.a libLLVMCoroutines.a libLLVMCoverage.a libLLVMDWARFLinker.a libLLVMDWARFLinkerParallel.a libLLVMDWP.a libLLVMDebugInfoBTF.a libLLVMDebugInfoCodeView.a libLLVMDebugInfoDWARF.a libLLVMDebugInfoGSYM.a libLLVMDebugInfoLogicalView.a libLLVMDebugInfoMSF.a libLLVMDebugInfoPDB.a libLLVMDebuginfod.a libLLVMDemangle.a libLLVMDiff.a libLLVMDlltoolDriver.a libLLVMExecutionEngine.a libLLVMExegesis.a libLLVMExegesisX86.a libLLVMExtensions.a libLLVMFileCheck.a libLLVMFrontendHLSL.a libLLVMFrontendOpenACC.a libLLVMFrontendOpenMP.a libLLVMFuzzMutate.a libLLVMFuzzerCLI.a libLLVMGlobalISel.a libLLVMIRPrinter.a libLLVMIRReader.a libLLVMInstCombine.a libLLVMInstrumentation.a libLLVMInterfaceStub.a libLLVMInterpreter.a libLLVMJITLink.a libLLVMLTO.a libLLVMLibDriver.a libLLVMLineEditor.a libLLVMLinker.a libLLVMMC.a libLLVMMCA.a libLLVMMCDisassembler.a libLLVMMCJIT.a libLLVMMCParser.a libLLVMMIRParser.a libLLVMObjCARCOpts.a libLLVMObjCopy.a libLLVMObject.a libLLVMObjectYAML.a libLLVMOption.a libLLVMOrcJIT.a libLLVMOrcShared.a libLLVMOrcTargetProcess.a libLLVMPasses.a libLLVMProfileData.a libLLVMRemarks.a libLLVMRuntimeDyld.a libLLVMScalarOpts.a libLLVMSelectionDAG.a libLLVMSupport.a libLLVMSymbolize.a libLLVMTableGen.a libLLVMTableGenCommon.a libLLVMTableGenGlobalISel.a libLLVMTarget.a libLLVMTargetParser.a libLLVMTextAPI.a libLLVMTransformUtils.a libLLVMVectorize.a libLLVMWindowsDriver.a libLLVMWindowsManifest.a libLLVMX86AsmParser.a libLLVMX86CodeGen.a libLLVMX86Desc.a libLLVMX86Disassembler.a libLLVMX86Info.a libLLVMX86TargetMCA.a libLLVMXRay.a libLLVMipo.a libLTO.so
6278
ninja -j$(nproc) llvm-config
@@ -67,12 +83,17 @@ jobs:
6783
ninja install
6884
working-directory: llvm-project/llvm/build
6985

70-
- name: Packaging LLVM C API (LLVM C API Libraries, LLVM Linker Libraries & C Runtime)
86+
- name: Packaging LLVM C API (LLVM C API Libraries, LLVM Linker Libraries)
7187
run: |
7288
tar --format=pax -cJf runtimes.tar.xz --exclude='*/*.cmake' --exclude='*/*.d' runtimes
7389
tar --format=pax -cJf libraries.tar.xz --exclude='*/*.o' --exclude='*/*.cmake' --exclude='*/*.d' lib
7490
working-directory: llvm-project/llvm/build
7591

92+
- name: Packaging Clang
93+
run: |
94+
tar --format=pax -cJf clang.tar.xz clang
95+
working-directory: llvm-project/clang/build/bin
96+
7697
- name: Packaging LLVM C API (Includes)
7798
run: |
7899
tar --format=pax -cJf includes.tar.xz --exclude='*/*.o' --exclude='*/*.cmake' --exclude='*/*.d' include
@@ -89,6 +110,7 @@ jobs:
89110
LLVM C API (v17.0.6) libraries for Linux x86_64 environments.
90111
91112
files: |
113+
llvm-project/clang/build/bin/clang.tar.xz
92114
llvm-project/llvm/build/bin/llvm-config
93115
llvm-project/llvm/build/runtimes.tar.xz
94116
llvm-project/llvm/build/libraries.tar.xz

0 commit comments

Comments
 (0)