diff --git a/.github/workflows/gcc.yml b/.github/workflows/gcc.yml new file mode 100644 index 0000000..91a7dc0 --- /dev/null +++ b/.github/workflows/gcc.yml @@ -0,0 +1,39 @@ +name: Linux, gcc + +on: + push: + branches: + - master + pull_request: + branches: + - master + +jobs: + build: + runs-on: ubuntu-latest + + strategy: + matrix: + include: + - { arch: ia32, gcc: multilib, cross_compile: } + - { arch: x86_64, gcc: multilib, cross_compile: } + - { arch: aa64, gcc: aarch64-linux-gnu, cross_compile: aarch64-linux-gnu- } + - { arch: arm, gcc: arm-linux-gnueabihf, cross_compile: arm-linux-gnueabihf- } + - { arch: riscv64, gcc: riscv64-linux-gnu, cross_compile: riscv64-linux-gnu- } +# - { arch: mips64el, gcc: mips64el-linux-gnuabi64, cross_compile: mips64el-linux-gnuabi64- } +# - { arch: loongarch64, gcc: loongarch64-linux-gnu, cross_compile: loongarch64-linux-gnu- } + + steps: + - name: Install toolchain + run: | + sudo apt-get update + sudo apt-get install gcc-${{ matrix.gcc }} + + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + submodules: recursive + + - name: Build + run: make ARCH=${{ matrix.arch }} CROSS_COMPILE=${{ matrix.cross_compile }} diff --git a/.github/workflows/vs2022.yml b/.github/workflows/vs2022.yml new file mode 100644 index 0000000..c1e8f34 --- /dev/null +++ b/.github/workflows/vs2022.yml @@ -0,0 +1,37 @@ +name: Windows, VS2022 + +on: + push: + branches: + - master + pull_request: + branches: + - master + +env: + SOLUTION_FILE_PATH: ./gnu-efi.sln + +jobs: + VS2022-Build: + runs-on: windows-latest + + strategy: + matrix: + TARGET_PLATFORM: [x64, ia32, aa64, arm] + CONFIGURATION: [Debug, Release] + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + submodules: recursive + + - name: Add MSBuild to PATH + uses: microsoft/setup-msbuild@v2 + with: + msbuild-architecture: x64 + + - name: Build + shell: cmd + run: msbuild ${{ env.SOLUTION_FILE_PATH }} /m /p:Configuration=${{ matrix.CONFIGURATION }},Platform=${{ matrix.TARGET_PLATFORM }},ForceImportBeforeCppTargets=%GITHUB_WORKSPACE%\.vs\Generate.PDB.props