diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml deleted file mode 100644 index 64c8c5577..000000000 --- a/.github/workflows/linux.yml +++ /dev/null @@ -1,68 +0,0 @@ -name: Testbuild for Linux -run-name: testbuild_linux -on: - push: - branches: - - 'master' - pull_request: - types: - - edited - - opened - - synchronize -concurrency: - # Cancel concurrent workflows for the same PR or commit hash. - group: ${{github.workflow}}-${{github.event_name == 'pull_request' && github.head_ref || github.sha}} - cancel-in-progress: true -jobs: - build_ubuntu_x86_64: - runs-on: ubuntu-22.04 - strategy: - fail-fast: false - matrix: - include: - - env: ubuntu - steps: - - name: Install build dependencies - run: | - sudo apt update - sudo apt install libgl1-mesa-dev libsdl2-dev libopenal-dev libcurl4-openssl-dev cmake ninja-build - - name: Check out repository code - uses: actions/checkout@v4 - - name: Build - run: | - mkdir build - cd build - # -DFORCE_COLORED_OUTPUT=ON ? didn't seem to work, or at least not visible on website - cmake -G Ninja -DDEDICATED=ON ../neo/ - ninja - - name: Create testbuild package - run: | - # Create release directory tree - export PKGDIR="dhewm3-linux-$(git rev-parse --short HEAD)" - echo "pkgname=$PKGDIR" >> $GITHUB_ENV - mkdir -p publish/$PKGDIR/base - mkdir publish/$PKGDIR/d3xp - # Copy release assets - cd build - cp dhewm3 dhewm3ded base.so d3xp.so ../publish/$PKGDIR/ - cd .. - # Copy misc assets - cp base/gamepad.cfg publish/$PKGDIR/base/ - cp base/gamepad-d3xp.cfg publish/$PKGDIR/d3xp/ - cp COPYING.txt publish/$PKGDIR/ - # TODO: prepend to README that executables must be set executable? (and maybe commit, build, arch etc) - echo "dhewm3 for 64bit (amd64 aka x86_64 aka x64) Linux, built $(date)" > publish/$PKGDIR/README.txt - echo -e "from ${{ github.ref_name }} commit ${{ github.sha }}\n" >> publish/$PKGDIR/README.txt - echo "!!! Note that you must set dhewm3(ded) executable !!!" >> publish/$PKGDIR/README.txt - echo "! In a Terminal, in this directory, run:" >> publish/$PKGDIR/README.txt - echo " chmod 755 dhewm3 dhewm3ded" >> publish/$PKGDIR/README.txt - echo -e "(this is because of limitations in Githubs Workflow Actions)\n" >> publish/$PKGDIR/README.txt - cat README.md >> publish/$PKGDIR/README.txt - cp Changelog.md publish/$PKGDIR/Changelog.txt - cp Configuration.md publish/$PKGDIR/Configuration.txt - - name: Upload testbuild package - uses: actions/upload-artifact@v4 - with: - name: ${{ env.pkgname }} - path: publish/ - if-no-files-found: error diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml deleted file mode 100644 index 50f90337c..000000000 --- a/.github/workflows/macos.yml +++ /dev/null @@ -1,63 +0,0 @@ -name: Testbuild for MacOS -run-name: testbuild_macos -on: - push: - branches: - - 'master' - pull_request: - types: - - edited - - opened - - synchronize -concurrency: - # Cancel concurrent workflows for the same PR or commit hash. - group: ${{github.workflow}}-${{github.event_name == 'pull_request' && github.head_ref || github.sha}} - cancel-in-progress: true -jobs: - build_macos_aarch64: - runs-on: macos-latest - strategy: - fail-fast: false - matrix: - include: - - env: macos - steps: - - name: Install build dependencies - run: | - brew update - brew install sdl2 openal-soft - # not installing make and cmake, cmake is installed by default, make doesn't seem to be needed - # when using cmake --build - - name: Check out repository code - uses: actions/checkout@v4 - - name: Build - run: | - mkdir build - # Note: not building dedicated server because it's not supported on Macs - cmake -DOPENAL_LIBRARY="/opt/homebrew/opt/openal-soft/lib/libopenal.dylib" -DOPENAL_INCLUDE_DIR="/opt/homebrew/opt/openal-soft/include" -S neo/ -B build - cmake --build build - - name: Create testbuild package - run: | - # Create release directory tree - export PKGDIR="dhewm3-macos-$(git rev-parse --short HEAD)" - echo "pkgname=$PKGDIR" >> $GITHUB_ENV - mkdir -p publish/$PKGDIR/base - mkdir publish/$PKGDIR/d3xp - # Copy release assets - cd build - cp -r dhewm3.app ../publish/$PKGDIR/ - cp base.dylib d3xp.dylib ../publish/$PKGDIR/ - cd .. - # Copy misc assets - cp base/gamepad.cfg publish/$PKGDIR/base/ - cp base/gamepad-d3xp.cfg publish/$PKGDIR/d3xp/ - cp COPYING.txt publish/$PKGDIR/ - cp README.md publish/$PKGDIR/README.txt - cp Changelog.md publish/$PKGDIR/Changelog.txt - cp Configuration.md publish/$PKGDIR/Configuration.txt - - name: Upload testbuild package - uses: actions/upload-artifact@v4 - with: - name: ${{ env.pkgname }} - path: publish/ - if-no-files-found: error diff --git a/.github/workflows/win_msvc.yml b/.github/workflows/win_msvc.yml deleted file mode 100644 index b394a5a43..000000000 --- a/.github/workflows/win_msvc.yml +++ /dev/null @@ -1,159 +0,0 @@ -name: Testbuild for x86 and x86_64 Windows -run-name: testbuild_windows -on: - push: - branches: - - 'master' - pull_request: - types: - - edited - - opened - - synchronize -concurrency: - # Cancel concurrent workflows for the same PR or commit hash. - group: ${{github.workflow}}-${{github.event_name == 'pull_request' && github.head_ref || github.sha}} - cancel-in-progress: true -jobs: - build_win_x86_msvc: - runs-on: windows-latest - defaults: - run: - # use git bash for for all steps (unless specified otherwise per step) - shell: bash - strategy: - fail-fast: false - steps: - - name: Install build dependencies - run: | - # Download and extract dhewm3-libs - #echo $PWD # /d/a/dhewm3/dhewm3 - # as the repo will be cloned into the directory we're currently in (O_o) - # go one directory up to D:\a\dhewm3\ and put the dhewm3libs there - cd .. - # https://github.com/dhewm/dhewm3-libs/archive/refs/heads/master.zip - # for some reason the following downloads an empty file, so use the other URL I got from - # "Copy Download Link" in Firefox (after downloading the file there) instead - #curl -o dhewm3libs.zip https://github.com/dhewm/dhewm3-libs/archive/refs/heads/master.zip - curl -o dhewm3libs.zip https://codeload.github.com/dhewm/dhewm3-libs/zip/refs/heads/master - # only unpack the stuff needed (no x86_64 stuff, no docs from share/) - unzip dhewm3libs.zip "dhewm3-libs-master/i686-w64-mingw32/**" -x "dhewm3-libs-master/i686-w64-mingw32/share/**" - - name: Check out repository code - uses: actions/checkout@v4 - - name: Build - run: | - # build with cmake and visual studio - #echo $PWD # /d/a/dhewm3/dhewm3 - # NOTE: not setting -G "Visual Studio 17 2022" so it just uses the default VS version it can find - cmake -A Win32 -DDHEWM3LIBS="../dhewm3-libs-master/i686-w64-mingw32/" -DDEDICATED=ON -DTOOLS=ON -S neo/ -B build - time cmake --build build/ --config RelWithDebInfo - - name: Create testbuild package - run: | - # Create release directory tree - export PKGDIR="dhewm3-win32-$(git rev-parse --short HEAD)" - echo "pkgname=$PKGDIR" >> $GITHUB_ENV - mkdir -p publish/$PKGDIR/base - mkdir publish/$PKGDIR/d3xp - # debug symbols (*.pdb) are put in a separate zip - mkdir -p debug-syms/$PKGDIR - # Copy release assets - cd build/RelWithDebInfo - cp dhewm3.exe dhewm3ded.exe base.dll d3xp.dll ../../publish/$PKGDIR/ - cp -r *.pdb ../../debug-syms/$PKGDIR/ - cd ../.. - # Copy misc assets - cp base/gamepad.cfg publish/$PKGDIR/base/ - cp base/gamepad-d3xp.cfg publish/$PKGDIR/d3xp/ - cp COPYING.txt publish/$PKGDIR/ - echo "dhewm3 for 32bit (x86) Windows, built $(date)" > publish/$PKGDIR/README.txt - echo -e "from ${{ github.ref_name }} commit ${{ github.sha }}\n" >> publish/$PKGDIR/README.txt - cat README.md >> publish/$PKGDIR/README.txt - cp Changelog.md publish/$PKGDIR/Changelog.txt - cp Configuration.md publish/$PKGDIR/Configuration.txt - # copy runtime libraries (SDL, OpenAL, cURL) - cd ../dhewm3-libs-master/i686-w64-mingw32/bin/ - cp OpenAL32.dll SDL2.dll libcurl-4.dll ../../../dhewm3/publish/$PKGDIR/ - cd - - - name: Upload testbuild package - uses: actions/upload-artifact@v4 - with: - name: ${{ env.pkgname }} - path: publish/ - if-no-files-found: error - - name: Upload testbuild debug symbols - uses: actions/upload-artifact@v4 - with: - name: ${{ env.pkgname }}-debugsyms - path: debug-syms/ - if-no-files-found: error - build_win_x86_64_msvc: - runs-on: windows-latest - defaults: - run: - # use git bash for for all steps (unless specified otherwise per step) - shell: bash - strategy: - fail-fast: false - steps: - - name: Install build dependencies - run: | - # Download and extract dhewm3-libs - #echo $PWD # /d/a/dhewm3/dhewm3 - # as the repo will be cloned into the directory we're currently in (O_o) - # go one directory up to D:\a\dhewm3\ and put the dhewm3libs there - cd .. - # https://github.com/dhewm/dhewm3-libs/archive/refs/heads/master.zip - # for some reason the following downloads an empty file, so use the other URL I got from - # "Copy Download Link" in Firefox (after downloading the file there) instead - #curl -o dhewm3libs.zip https://github.com/dhewm/dhewm3-libs/archive/refs/heads/master.zip - curl -o dhewm3libs.zip https://codeload.github.com/dhewm/dhewm3-libs/zip/refs/heads/master - # only unpack the stuff needed (no i686 stuff, no docs from share/) - unzip dhewm3libs.zip "dhewm3-libs-master/x86_64-w64-mingw32/**" -x "dhewm3-libs-master/x86_64-w64-mingw32/share/**" - - name: Check out repository code - uses: actions/checkout@v4 - - name: Build - run: | - # build with cmake and visual studio - #echo $PWD # /d/a/dhewm3/dhewm3 - # NOTE: not setting -G "Visual Studio 17 2022" so it just uses the default VS version it can find - cmake -A x64 -DDHEWM3LIBS="../dhewm3-libs-master/x86_64-w64-mingw32/" -DDEDICATED=ON -DTOOLS=ON -S neo/ -B build - time cmake --build build/ --config RelWithDebInfo - - name: Create testbuild package - run: | - # Create release directory tree - export PKGDIR="dhewm3-win64-$(git rev-parse --short HEAD)" - echo "pkgname=$PKGDIR" >> $GITHUB_ENV - #echo "PKGDIR is $PKGDIR" - mkdir -p publish/$PKGDIR/base - mkdir publish/$PKGDIR/d3xp - # debug symbols (*.pdb) are put in a separate zip - mkdir -p debug-syms/$PKGDIR - # Copy release assets - cd build/RelWithDebInfo - cp dhewm3.exe dhewm3ded.exe base.dll d3xp.dll ../../publish/$PKGDIR/ - cp -r *.pdb ../../debug-syms/$PKGDIR/ - cd ../.. - # Copy misc assets - cp base/gamepad.cfg publish/$PKGDIR/base/ - cp base/gamepad-d3xp.cfg publish/$PKGDIR/d3xp/ - cp COPYING.txt publish/$PKGDIR/ - echo "dhewm3 for 64bit (amd64 aka x86_64 aka x64) Windows, built $(date)" > publish/$PKGDIR/README.txt - echo -e "from ${{ github.ref_name }} commit ${{ github.sha }}\n" >> publish/$PKGDIR/README.txt - cat README.md >> publish/$PKGDIR/README.txt - cp Changelog.md publish/$PKGDIR/Changelog.txt - cp Configuration.md publish/$PKGDIR/Configuration.txt - # copy runtime libraries (SDL, OpenAL, cURL) - cd ../dhewm3-libs-master/x86_64-w64-mingw32/bin/ - cp OpenAL32.dll SDL2.dll libcurl-4.dll ../../../dhewm3/publish/$PKGDIR/ - cd - - - name: Upload testbuild package - uses: actions/upload-artifact@v4 - with: - name: ${{ env.pkgname }} - path: publish/ - if-no-files-found: error - - name: Upload testbuild debug symbols - uses: actions/upload-artifact@v4 - with: - name: ${{ env.pkgname }}-debugsyms - path: debug-syms/ - if-no-files-found: error