Repository navigation
Fedora x86 #31
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Fedora x86 | |
| on: | |
| # push: | |
| # pull_request: | |
| # branches: [main] | |
| schedule: | |
| - cron: "0 0 * * 1" | |
| workflow_dispatch: | |
| jobs: | |
| build: | |
| runs-on: ubuntu-24.04 | |
| container: fedora:42 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| compiler: | |
| - { compiler: GNU, CC: gcc, CXX: g++ } | |
| - { compiler: LLVM, CC: clang, CXX: clang++ } | |
| type: [Debug, Release] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Dependencies | |
| run: | | |
| dnf install -y --setopt=install_weak_deps=False \ | |
| ca-certificates cmake ninja-build gcc gcc-c++ \ | |
| dnf-plugins-core libxml2-devel \ | |
| python3 python3-pip python3-setuptools \ | |
| xz diffutils zlib-devel ncurses-libs libffi-devel | |
| cat > /etc/yum.repos.d/fedora-rawhide.repo <<'EOF' | |
| [fedora-rawhide] | |
| name=Fedora Rawhide | |
| baseurl=https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/ | |
| enabled=1 | |
| gpgcheck=0 | |
| EOF | |
| dnf --setopt=clean_requirements_on_remove=1 --enablerepo=fedora-rawhide install -y \ | |
| llvm llvm-devel clang mlir mlir-devel | |
| pip3 install lit --break-system-packages | |
| - name: Build eter | |
| env: | |
| CC: ${{ matrix.compiler.CC }} | |
| CXX: ${{ matrix.compiler.CXX }} | |
| run: | | |
| LLVM_CMAKE_DIR="$(llvm-config --cmakedir)" | |
| MLIR_CMAKE_DIR="${LLVM_CMAKE_DIR%/llvm}/mlir" | |
| FILECHECK_PATH="$(command -v FileCheck || command -v FileCheck-22 || command -v llvm-FileCheck || command -v llvm-FileCheck-22 || command -v filecheck || command -v filecheck-22 || true)" | |
| LIT_PATH="$(command -v llvm-lit || command -v llvm-lit-22 || command -v lit || true)" | |
| echo "Found FILECHECK_PATH=${FILECHECK_PATH}" | |
| echo "Found LIT_PATH=${LIT_PATH}" | |
| if [ -n "${FILECHECK_PATH}" ]; then | |
| LLVM_TOOLS_BIN_DIR="$(dirname "${FILECHECK_PATH}")" | |
| else | |
| LLVM_TOOLS_BIN_DIR="/usr/bin" | |
| fi | |
| mkdir build && cd build | |
| EXTRA_CMAKE_ARGS="" | |
| if [ -n "${FILECHECK_PATH}" ]; then | |
| EXTRA_CMAKE_ARGS="${EXTRA_CMAKE_ARGS} -DFILECHECK_EXECUTABLE=${FILECHECK_PATH}" | |
| fi | |
| if [ -n "${LIT_PATH}" ]; then | |
| EXTRA_CMAKE_ARGS="${EXTRA_CMAKE_ARGS} -DETER_LIT_EXECUTABLE=${LIT_PATH}" | |
| fi | |
| cmake -DLLVM_DIR="${LLVM_CMAKE_DIR}" \ | |
| -DMLIR_DIR="${MLIR_CMAKE_DIR}" \ | |
| -DLLVM_TOOLS_BINARY_DIR="${LLVM_TOOLS_BIN_DIR}" \ | |
| ${EXTRA_CMAKE_ARGS} \ | |
| -DCMAKE_BUILD_TYPE=${{ matrix.type }} \ | |
| -G Ninja ../ | |
| ninja -j2 | |
| - name: Run tests | |
| run: | | |
| cd build | |
| lit -va ./test/ |