Skip to content

install nightly build compilers #59

install nightly build compilers

install nightly build compilers #59

Workflow file for this run

name: Build & Run
on:
push:
pull_request:
workflow_dispatch:
jobs:
Linux:
runs-on: ubuntu-latest
container: opensuse/tumbleweed
strategy:
fail-fast: true
steps:
- name: Install prerequisites
run: |
zypper -n in wine-wow64 msitools awk cmake ninja make gcc-c++ clang lld libc++-devel
mkdir $HOME/.wine # wine: '/github/home' is not owned by you, refusing to create a configuration directory there
- name: Checkout compiler-explorer/infra
uses: actions/checkout@v4
with:
repository: compiler-explorer/infra
- name: Install compilers
run: >
make ce && bin/ce_install --enable nightly --filter-match-any install
'compilers/c++/nightly/gcc trunk'
'compilers/c++/nightly/clang trunk'
- name: Checkout msvc-wine
uses: actions/checkout@v4
with:
repository: mstorsjo/msvc-wine
- name: Install msvc-wine
run: |
./vsdownload.py --accept-license --preview --dest /opt/msvc
./install.sh /opt/msvc
- uses: actions/checkout@v4
- name: gcc
run: make gcc LAUNCHER=./
- name: cmake gcc
run: cmake -P workflow.cmake -- gcc
- name: clang
run: make clang LAUNCHER=./
- name: cmake clang
run: cmake -P workflow.cmake -- clang
- name: clang-cl
run: make clang-cl CXXFLAGS="-winsysroot /opt/msvc -fuse-ld=lld" LAUNCHER="WINEDEBUG=-all wine "
- name: gcc snapshot
run: |
export PATH=/opt/compiler-explorer/gcc-snapshot/bin:$PATH
export LD_LIBRARY_PATH=$(dirname $(gcc -print-file-name=libstdc++.so)):$LD_LIBRARY_PATH
make gcc LAUNCHER=./
- name: cmake gcc snapshot
run: |
export PATH=/opt/compiler-explorer/gcc-snapshot/bin:$PATH
export LD_LIBRARY_PATH=$(dirname $(gcc -print-file-name=libstdc++.so)):$LD_LIBRARY_PATH
cmake -P workflow.cmake -- gcc
- name: clang trunk
run: |
export PATH=/opt/compiler-explorer/clang-trunk/bin:$PATH
export LD_LIBRARY_PATH=$(dirname $(clang -print-file-name=libc++.so)):$LD_LIBRARY_PATH
make clang LAUNCHER=./
- name: cmake clang trunk
run: |
export PATH=/opt/compiler-explorer/clang-trunk/bin:$PATH
export LD_LIBRARY_PATH=$(dirname $(clang -print-file-name=libc++.so)):$LD_LIBRARY_PATH
cmake -P workflow.cmake -- clang
- name: clang-cl trunk
run: |
export PATH=/opt/compiler-explorer/clang-trunk/bin:$PATH
export LD_LIBRARY_PATH=$(dirname $(clang -print-file-name=libc++.so)):$LD_LIBRARY_PATH
make clang-cl CXXFLAGS="-winsysroot /opt/msvc -fuse-ld=lld" LAUNCHER="WINEDEBUG=-all wine "
- name: msvc-wine
run: PATH=/opt/msvc/bin/x64:$PATH make msvc LAUNCHER="WINEDEBUG=-all wine " VCTOOLSINSTALLDIR=/opt/msvc
- name: cmake msvc-wine
run: cmake -P workflow.cmake -- msvc-wine
Windows:
runs-on: windows-latest
strategy:
fail-fast: true
steps:
- name: Install prerequisites
run: |
choco upgrade --no-progress llvm
choco install --no-progress ninja
Add-Content $env:GITHUB_PATH C:\
Set-Content C:\vsdevcmd.cmd @"
@echo off
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
rename %1 %~nx1.bat
%1.bat
"@
- uses: msys2/setup-msys2@v2
with:
msystem: MSYS
release: false
update: true
install: >-
make
ucrt64/mingw-w64-ucrt-x86_64-gcc
clang64/mingw-w64-clang-x86_64-clang
- uses: actions/checkout@v4
- name: msvc
shell: vsdevcmd {0}
run: nmake -nologo msvc
- name: cmake msvc
shell: vsdevcmd {0}
run: cmake -P workflow.cmake -- default
- name: msbuild
run: cmake -P workflow.cmake -- msbuild
- name: clang
shell: vsdevcmd {0}
run: nmake -nologo clang-win32
- name: cmake clang
run: cmake -P workflow.cmake -- clang
- name: clang-cl
shell: vsdevcmd {0}
run: nmake -nologo clang-cl
- name: mingw-ucrt64
shell: msys2 {0}
env:
MSYSTEM: UCRT64
run: make gcc LAUNCHER=./
- name: cmake mingw-ucrt64
run: cmake -P workflow.cmake -- mingw-ucrt64
- name: mingw-clang64
shell: msys2 {0}
env:
MSYSTEM: CLANG64
run: make clang-mingw LAUNCHER=./
- name: cmake mingw-clang64
run: cmake -P workflow.cmake -- mingw-clang64