mirror of
https://github.com/gwdevhub/gMod.git
synced 2026-07-15 15:09:30 +00:00
ab2d8cdb0a
* toggle use_folders on
* Rename pipelines
* its a strcpy :(
* add miniz, add xorstream, add non-working ziploader
* start integrating libzip (WIP)
* use ExternalProject test (doesnt work maybe?!)
* further work in integrating libzippp [WIP]
can't build libzip yet (neither manually nor in the vs build), as it doesn't find zlib
* LibZip build script
* make libzip build too
todo: specify cmake find_library to check the paths we install to
* prepare everything in cmake
* fix rebuilding of libzip/zlib
* fix stupid double quotes
* libzippp works
* Setup libzippp archive loading
* Remove allocation of new data when adding file to TextureServer
* Enable CI on dev
* Create LICENSE (#5)
* add mbedtls
* fix cmake (forgot to substitute, woops)
* fix %lu warnings for printing addresses
* enable debug messages, some formatting
* remove mbedtls, fix libzip for /MD(d)
* some code changes
* fix cmake logic, str replace min cmake version in libzip-src/CMakeLists.txt to 3.15
* linker errors in release
* c++ify a little
* remove unnecessary duplicate c++23 definition
* Fixes to gMod_XorStream when calculating stream length
* Fix loading tpf contents with password
* Implemented complete parsing
* Cleanup file loading
* Change to NI
* Revert "Change to NI"
This reverts commit 19b511d907.
* update XorStreamReader to read whole file, then xor
* delete a lot of unused code
* loading logic
* rename console window
* 1.5.4
* remove pointless mutex
* wtf is this code
---------
Co-authored-by: Alex Macocian <amacocian@yahoo.com>
115 lines
2.9 KiB
YAML
115 lines
2.9 KiB
YAML
name: gMod CD Pipeline
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
strategy:
|
|
matrix:
|
|
targetplatform: [x86]
|
|
|
|
runs-on: windows-latest
|
|
|
|
env:
|
|
Configuration: Release
|
|
Actions_Allow_Unsecure_Commands: true
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Config
|
|
run: echo "DXSDK_DIR=DXSDK" >> $GITHUB_ENV
|
|
shell: bash
|
|
|
|
- name: Cache
|
|
id: cache
|
|
uses: actions/cache@v1
|
|
with:
|
|
path: DXSDK
|
|
key: DXSDK
|
|
|
|
- name: Cache create
|
|
if: steps.cache.outputs.cache-hit != 'true'
|
|
run: |
|
|
curl -L https://download.microsoft.com/download/a/e/7/ae743f1f-632b-4809-87a9-aa1bb3458e31/DXSDK_Jun10.exe -o _DX2010_.exe
|
|
7z x _DX2010_.exe DXSDK/Include
|
|
7z x _DX2010_.exe DXSDK/Lib/x86
|
|
shell: bash
|
|
|
|
- name: Echo cache
|
|
run: echo ${{ env.DXSDK_DIR }}
|
|
|
|
- name: List dxsdk files
|
|
run: |
|
|
cd DXSDK
|
|
ls
|
|
cd Include
|
|
ls
|
|
cd ../Lib/x86
|
|
ls
|
|
|
|
- name: Copy DirectX headers to project include directory
|
|
run: Copy-Item -Path "${{ env.DXSDK_DIR }}/Include/*" -Destination header/ -Recurse -Force
|
|
env:
|
|
DXSDK_DIR: ${{ env.DXSDK_DIR }}
|
|
shell: pwsh
|
|
|
|
- name: Ensure Lib directory exists and copy DirectX libraries
|
|
run: |
|
|
$libDir = "Lib/"
|
|
if (-Not (Test-Path -Path $libDir)) {
|
|
New-Item -ItemType Directory -Path $libDir
|
|
}
|
|
Copy-Item -Path "${{ env.DXSDK_DIR }}/Lib/x86/*" -Destination $libDir -Recurse -Force
|
|
env:
|
|
DXSDK_DIR: ${{ env.DXSDK_DIR }}
|
|
shell: pwsh
|
|
|
|
- name: Setup MSBuild.exe
|
|
uses: microsoft/setup-msbuild@v1.3.1
|
|
|
|
- name: Build CMake Files
|
|
run: cmake -S . -B build -A Win32
|
|
env:
|
|
DXSDK_DIR: ${{ env.DXSDK_DIR }}
|
|
|
|
- name: Build binaries
|
|
run: cmake --build build --config Release
|
|
env:
|
|
DXSDK_DIR: ${{ env.DXSDK_DIR }}
|
|
|
|
- name: Retrieve version
|
|
id: set_version
|
|
run: |
|
|
$fileVersionInfo = (Get-Item -Path .\bin\Release\gMod.dll).VersionInfo.FileVersion
|
|
if ([string]::IsNullOrEmpty($fileVersionInfo)) {
|
|
Write-Host "The DLL file version information could not be retrieved."
|
|
exit 1
|
|
} else {
|
|
Write-Host "FileVersionInfo: $fileVersionInfo"
|
|
echo "::set-output name=version::$fileVersionInfo"
|
|
}
|
|
shell: pwsh
|
|
|
|
- name: Publish release
|
|
uses: Xotl/cool-github-releases@v1.1.8
|
|
with:
|
|
mode: update
|
|
tag_name: v${{ steps.set_version.outputs.version }}
|
|
release_name: gMod v${{ steps.set_version.outputs.version }}
|
|
assets: .\bin\Release\gMod.dll
|
|
github_token: ${{ env.GITHUB_TOKEN }}
|
|
replace_assets: true
|
|
body_mrkdwn: ${{ env.Changelog }}
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|