3232
3333 - name : Installing dependencies
3434 run : |
35- sudo apt-get update
36- sudo apt-get install -y build-essential cmake ninja-build python3 wget libz-dev binutils xz-utils
37-
38- sudo apt-get remove -y llvm-16* clang-16* || true
39- sudo rm -rf /usr/lib/llvm-16
35+ apk update
36+ apk add build-base cmake ninja python3 wget xz
4037
4138 - name : Downloading LLVM project
4239 run : |
@@ -55,24 +52,37 @@ jobs:
5552 run : |
5653 cmake ../llvm-project/llvm -G Ninja \
5754 -DCMAKE_BUILD_TYPE=MinSizeRel \
58- -DCMAKE_C_COMPILER=x86_64-unknown-linux-musl-gcc \
59- -DCMAKE_CXX_COMPILER=x86_64-unknown-linux-musl-g++ \
60- -DLLD_INCLUDE_TOOLS=ON \
55+ -DCMAKE_C_COMPILER=gcc \
56+ -DCMAKE_CXX_COMPILER=g++ \
6157 -DLLVM_ENABLE_PROJECTS="llvm;lld" \
6258 -DLLVM_ENABLE_TERMINFO=OFF \
6359 -DLLVM_ENABLE_ZLIB=OFF \
64- -DCMAKE_DISABLE_FIND_PACKAGE_LibXml2=TRUE \
65- -DLLVM_ENABLE_LIBXML2=0 \
60+ -DLLVM_ENABLE_LIBXML2=OFF \
6661 -DCMAKE_INSTALL_PREFIX="dist" \
67- -DLLVM_TARGETS_TO_BUILD=X86 \
62+ -DLLVM_TARGETS_TO_BUILD=" X86" \
6863 -DLLVM_BUILD_TESTS=OFF \
6964 -DLLVM_BUILD_EXAMPLES=OFF \
7065 -DLLVM_INCLUDE_TESTS=OFF \
7166 -DLLVM_INCLUDE_EXAMPLES=OFF \
72- -DLLVM_INCLUDE_DOCS=OFF
67+ -DLLVM_INCLUDE_DOCS=OFF \
68+ -DLLVM_BUILD_LLVM_DYLIB=ON \
69+ -DLLVM_LINK_LLVM_DYLIB=ON
70+ working-directory : llvm-build
71+
72+ - name : Building LLVM tools first
73+ run : |
74+ # Primero construimos solo las herramientas esenciales
75+ ninja -j$(nproc) llvm-min-tblgen llvm-tblgen llvm-config
76+ working-directory : llvm-build
77+
78+ - name : Verify tools are built
79+ run : |
80+ ls -la bin/llvm-min-tblgen
81+ file bin/llvm-min-tblgen
82+ ./bin/llvm-min-tblgen --version
7383 working-directory : llvm-build
7484
75- - name : Building LLVM
85+ - name : Building complete LLVM
7686 run : |
7787 ninja -j$(nproc)
7888 working-directory : llvm-build
94104 cp -r llvm-build/dist/bin/* tempDir/bin/
95105 cp -r llvm-build/dist/include/* tempDir/include/
96106
97- - name : Packaging LLVM (LLVM Libraries, Binaries & Includes)
107+ - name : Packaging LLVM
98108 run : |
99- tar --format=pax -cJf llvm-x86_64-unknown-linux-musl.tar.xz --exclude='*/*.cmake' --exclude='*/*.o' --exclude='*/*.d' lib bin include
109+ tar --format=pax -cJf llvm-x86_64-unknown-linux-musl.tar.xz lib bin include
100110 working-directory : tempDir
101111
102112 - name : Releasing LLVM
@@ -106,9 +116,7 @@ jobs:
106116 name : " llvm-x86_64-unknown-linux-musl"
107117 body : |
108118 ## llvm-x86_64-unknown-linux-musl
109-
110119 LLVM libraries for llvm-x86_64-unknown-linux-musl for Thrush compiler compilation.
111-
112120 files : |
113121 tempDir/llvm-x86_64-unknown-linux-musl.tar.xz
114122 draft : false
0 commit comments