diff --git a/.github/workflows/msbuild.yml b/.github/workflows/msbuild.yml new file mode 100644 index 000000000..bb4e36dca --- /dev/null +++ b/.github/workflows/msbuild.yml @@ -0,0 +1,72 @@ +name: MSBuild + +on: [push] + +env: + VALVE_NO_AUTO_P4: 1 + PreferredToolArchitecture: x64 + +jobs: + windows-build: + runs-on: windows-latest + strategy: + matrix: + Configuration: [Debug, Release] + + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Add MSBuild to PATH + uses: microsoft/setup-msbuild@v1.0.2 + - name: msvc cmd + uses: ilammy/msvc-dev-cmd@v1 + with: + arch: amd64_x86 + toolset: 14.0 + + # Required for creategameprojects + - name: Set Registry Value + run: reg add "HKLM\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\10.0\Projects\{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}" /t REG_SZ /v DefaultProjectExtension /d vcproj /f + + - name: Download Libraries + run: .\download_libs.bat + + - name: Build protobuf + run: | + msbuild /m /p:Configuration=Debug thirdparty\protobuf-2.5.0\vsprojects\libprotobuf.vcxproj + msbuild /m /p:Configuration=Release thirdparty\protobuf-2.5.0\vsprojects\libprotobuf.vcxproj + + - name: Create game projects + run: .\creategameprojects_dev.bat + + - name: Build bitmap + run: msbuild "/p:Configuration=${{ matrix.Configuration }};Platform=x86" .\bitmap\bitmap.vcxproj + - name: Build choreoobjects + run: msbuild "/p:Configuration=${{ matrix.Configuration }};Platform=x86" .\choreoobjects\choreoobjects.vcxproj + + - name: Build Server (TF) + run: msbuild "/p:Configuration=${{ matrix.Configuration }};Platform=x86" .\game\server\server_tf.vcxproj /t:Build + - name: Build Client (TF) + run: msbuild "/p:Configuration=${{ matrix.Configuration }};Platform=x86" .\game\client\client_tf.vcxproj /t:Build + + # see https://github.com/mastercomfig/team-comtress-2/pull/486 + #linux-build: + # runs-on: ubuntu-latest + # strategy: + # matrix: + # Configuration: [Debug, Release] + # + # steps: + # - name: Checkout + # uses: actions/checkout@v2 + # + # - run: sudo dpkg --add-architecture i386 && apt-get update + # - name: Install dependencies + # run: sudo apt install autoconf automake build-essential fontconfig:i386 g++-multilib libcurl4-gnutls-dev:i386 libfontconfig1:i386 libfontconfig1-dev:i386 libfreetype-dev:i386 libncurses-dev:i386 libopenal-dev:i386 libopenal1:i386 libunwind-dev libunwind-dev:i386 libx11-dev:i386 mesa-common-dev:i386 + + # - name: Build + # run: make -f games.mak NO_CHROOT=1 + # - name: Link + # run: ./link.sh + +