name: Build on: push: pull_request: workflow_dispatch: release: types: [published] env: PROJECT_TYPE: UEFI FORCE_INSTALL: 1 HAS_OPENSSL_BUILD: 1 HAS_OPENSSL_W32BUILD: 0 WERROR: 1 jobs: build-macos: name: macOS XCODE5 runs-on: macos-latest env: JOB_TYPE: BUILD steps: - uses: actions/checkout@v3 - name: Add Linux Toolchain run: brew tap FiloSottile/homebrew-musl-cross - name: Install Linux Toolchain run: brew install musl-cross env: HOMEBREW_NO_INSTALL_CLEANUP: 1 HOMEBREW_NO_AUTO_UPDATE: 1 - name: Install Dependencies run: brew install openssl mingw-w64 env: HOMEBREW_NO_INSTALL_CLEANUP: 1 HOMEBREW_NO_AUTO_UPDATE: 1 - name: CI Bootstrap run: | src=$(/usr/bin/curl -Lfs https://raw.githubusercontent.com/acidanthera/ocbuild/master/ci-bootstrap.sh) && eval "$src" || exit 1 - run: ./build_duet.tool - run: ./build_oc.tool - name: Upload to Artifacts uses: actions/upload-artifact@v3 with: name: macOS XCODE5 Artifacts path: Binaries/*.zip - name: Upload to Release if: github.event_name == 'release' uses: svenstaro/upload-release-action@e74ff71f7d8a4c4745b560a485cc5fdb9b5b999d with: repo_token: ${{ secrets.GITHUB_TOKEN }} file: Binaries/*.zip tag: ${{ github.ref }} file_glob: true build-linux-clangpdb-gcc5: name: Linux CLANGPDB/GCC5 runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Install Dependencies run: | sudo apt-get update sudo apt-get install nasm uuid-dev libssl-dev iasl wget https://apt.llvm.org/llvm.sh chmod +x llvm.sh sudo ./llvm.sh 13 echo "/usr/lib/llvm-13/bin" >> $GITHUB_PATH - name: CI Bootstrap run: | src=$(/usr/bin/curl -Lfs https://raw.githubusercontent.com/acidanthera/ocbuild/master/ci-bootstrap.sh) && eval "$src" || exit 1 - run: ./build_duet.tool - run: ./build_oc.tool - name: Upload to Artifacts uses: actions/upload-artifact@v3 with: name: Linux CLANGPDB-GCC5 Artifacts path: Binaries/*.zip build-linux-clangdwarf: name: Linux CLANGDWARF runs-on: ubuntu-latest env: TOOLCHAINS: CLANGDWARF steps: - uses: actions/checkout@v3 - name: Install Dependencies run: | sudo apt-get update sudo apt-get install nasm uuid-dev iasl doxygen texlive texlive-latex-extra wget https://apt.llvm.org/llvm.sh chmod +x llvm.sh sudo ./llvm.sh 13 echo "/usr/lib/llvm-13/bin" >> $GITHUB_PATH - name: CI Bootstrap run: | src=$(/usr/bin/curl -Lfs https://raw.githubusercontent.com/acidanthera/ocbuild/master/ci-bootstrap.sh) && eval "$src" || exit 1 - run: ./build_duet.tool - run: ./build_oc.tool - name: Docs run: | abort() { tail -200 log.txt ; exit 1 ; } doxygen Doxyfile &> log.txt || abort cd Doxy/latex || abort make pdf &> log.txt || abort - name: Upload to Artifacts uses: actions/upload-artifact@v3 with: name: Linux CLANGDWARF Artifacts path: Binaries/*.zip build-windows: name: Windows VS2019 runs-on: windows-2019 env: HAS_OPENSSL_BUILD: 0 CC: gcc defaults: run: shell: bash steps: - uses: actions/checkout@v3 - name: Install Dependencies run: | choco install make nasm zip --no-progress choco install iasl --no-progress --version=2017.11.10 - name: CI Bootstrap run: | src=$(curl -Lfs https://raw.githubusercontent.com/acidanthera/ocbuild/master/ci-bootstrap.sh) && eval "$src" || exit 1 - run: ./build_duet.tool - run: ./build_oc.tool - name: Upload to Artifacts uses: actions/upload-artifact@v3 with: name: Windows Artifacts path: Binaries/*.zip