@@ -14,12 +14,46 @@ 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+ with :
26+ go-version : ' 1.25'
27+ # Install compilers for cross-compiling between operating systems.
28+ - name : Install compilers
29+ run : |
30+ echo "$RUNNER_OS"
31+ if [ "$RUNNER_OS" == "Windows" ]; then
32+ echo "Windows does not yet support cross compiling"
33+ elif [ "$RUNNER_OS" == "macOS" ]; then
34+ brew tap SergioBenitez/osxct
35+ brew install x86_64-unknown-linux-gnu
36+ brew install mingw-w64
37+ else
38+ sudo apt-get update
39+ sudo apt install -y g++-mingw-w64-x86-64 gcc-mingw-w64-x86-64
40+ sudo apt-get install -y gcc-arm-linux-gnueabihf
41+ fi
42+ shell : bash
43+ - name : Build the .NET wrapper
44+ working-directory : spannerlib/wrappers/spannerlib-dotnet
45+ run : |
46+ echo "$RUNNER_OS"
47+ ./build.sh
48+ shell : bash
49+ - name : Restore .NET wrapper dependencies
50+ run : dotnet restore
51+ working-directory : spannerlib/wrappers/spannerlib-dotnet
52+ shell : bash
53+ - name : Build .NET wrapper
54+ run : dotnet build --no-restore -c Release
55+ working-directory : spannerlib/wrappers/spannerlib-dotnet
56+ shell : bash
2357 - name : spanner-ado-net-tests
2458 working-directory : drivers/spanner-ado-net/spanner-ado-net-tests
2559 run : dotnet test --verbosity normal
0 commit comments