@@ -14,12 +14,44 @@ jobs:
1414 os : [ubuntu-latest, macos-latest, windows-latest]
1515 runs-on : ${{ matrix.os }}
1616 steps :
17+ - name : Checkout code
18+ uses : actions/checkout@v4
1719 - name : Install dotnet
1820 uses : actions/setup-dotnet@v4
1921 with :
2022 dotnet-version : ${{ matrix.dotnet-version }}
21- - name : Checkout code
22- uses : actions/checkout@v4
23+ - name : Install Go
24+ uses : actions/setup-go@v5
25+ # Install compilers for cross-compiling between operating systems.
26+ - name : Install compilers
27+ run : |
28+ echo "$RUNNER_OS"
29+ if [ "$RUNNER_OS" == "Windows" ]; then
30+ echo "Windows does not yet support cross compiling"
31+ elif [ "$RUNNER_OS" == "macOS" ]; then
32+ brew tap SergioBenitez/osxct
33+ brew install x86_64-unknown-linux-gnu
34+ brew install mingw-w64
35+ else
36+ sudo apt-get update
37+ sudo apt install -y g++-mingw-w64-x86-64 gcc-mingw-w64-x86-64
38+ sudo apt-get install -y gcc-arm-linux-gnueabihf
39+ fi
40+ shell : bash
41+ - name : Build the .NET wrapper
42+ working-directory : spannerlib/wrappers/spannerlib-dotnet
43+ run : |
44+ echo "$RUNNER_OS"
45+ ./build.sh
46+ shell : bash
47+ - name : Restore .NET wrapper dependencies
48+ run : dotnet restore
49+ working-directory : spannerlib/wrappers/spannerlib-dotnet
50+ shell : bash
51+ - name : Build .NET wrapper
52+ run : dotnet build --no-restore -c Release
53+ working-directory : spannerlib/wrappers/spannerlib-dotnet
54+ shell : bash
2355 - name : spanner-ado-net-tests
2456 working-directory : drivers/spanner-ado-net/spanner-ado-net-tests
2557 run : dotnet test --verbosity normal
0 commit comments