diff --git a/.github/workflows/msvc_x86.yml b/.github/workflows/msvc_x86.yml new file mode 100644 index 00000000..4ed1efcf --- /dev/null +++ b/.github/workflows/msvc_x86.yml @@ -0,0 +1,118 @@ +name: GitHub Actions Build + +on: + push: + paths-ignore: + - "**/*.md" + - '**/*.txt' + branches: + - '**' + pull_request: + paths-ignore: + - "**/*.md" + - '**/*.txt' + workflow_dispatch: + inputs: + release: + description: "Create a release" + type: choice + required: false + default: 'false' + options: + - 'true' + - 'false' + version_increment: + description: "Default semantic version release type" + type: choice + required: false + default: 'minor' + options: + - 'major' + - 'minor' + - 'patch' + +env: + VERINC: ${{ github.event.inputs.version_increment || 'patch' }} + +concurrency: + group: ${{ github.ref }} + cancel-in-progress: true + +permissions: + contents: write + +jobs: + build: + runs-on: windows-latest + + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Add msbuild to PATH + uses: microsoft/setup-msbuild@main + + - name: Auto Increment Version + uses: MCKanpolat/auto-semver-action@v1 + id: versioning + with: + releaseType: ${{ env.VERINC }} + incrementPerCommit: false + github_token: ${{ secrets.GITHUB_TOKEN }} + + - name: Configure build + run: ./premake5 vs2022 --with-version=${{ steps.versioning.outputs.version }} + + - name: Build + run: | + msbuild -m build/GTAIV.EFLC.FusionFix.sln /property:Configuration=Release /property:Platform=Win32 + + - name: Download Ultimate ASI Loader x86 + uses: robinraju/release-downloader@v1.8 + with: + repository: "ThirteenAG/Ultimate-ASI-Loader" + tag: "Win32-latest" + fileName: "dinput8-Win32.zip" + + - name: Unpack dependencies + run: | + 7z x dinput8-Win32.zip -odata/ -y + del dinput8-Win32.zip + del data\dinput8-Win32.SHA512 + + - name: Pack binaries + run: | + ./release.bat + + - name: Upload artifact + uses: actions/upload-artifact@v4 + with: + name: GTAIV.EFLC.FusionFix.zip + path: | + data/* + !data/update/GTAIV.EFLC.FusionFix/GTAIV.EFLC.FusionFix + !data/update/GTAIV.EFLC.FusionFix/GTAIV.FusionFix + !data/update/GTAIV.EFLC.FusionFix/TLAD.FusionFix + !data/update/GTAIV.EFLC.FusionFix/TBOGT.FusionFix + !data/update/GTAIV.EFLC.FusionFix/FusionTrees + !data/update/GTAIV.EFLC.FusionFix/FusionLights + !data/update/GTAIV.EFLC.FusionFix/cdimagemake.ims + !data/update/common/shaders/.gitkeep + + - name: Upload Release + if: | + github.event.inputs.release == 'true' && + github.ref_name == 'master' && + (github.event_name == 'push' || github.event_name == 'workflow_dispatch') && + github.repository == 'ThirteenAG/GTAIV.EFLC.FusionFix' + uses: ncipollo/release-action@main + with: + token: ${{ secrets.GITHUB_TOKEN }} + allowUpdates: false + name: GTAIV.EFLC.FusionFix v${{ steps.versioning.outputs.version }} + body: "[README](https://github.com/ThirteenAG/GTAIV.EFLC.FusionFix#readme)" + tag: v${{ steps.versioning.outputs.version }} + artifacts: GTAIV.EFLC.FusionFix.zip + diff --git a/premake5.lua b/premake5.lua index b9b2a5ad..79582cb8 100644 --- a/premake5.lua +++ b/premake5.lua @@ -45,7 +45,6 @@ workspace "GTAIV.EFLC.FusionFix" defines { "rsc_ProductVersion=\"" .. major .. "." .. minor .. "." .. build .. "\"" } defines { "_CRT_SECURE_NO_WARNINGS" } - defines { "ZYDIS_STATIC_BUILD" } includedirs { "source" } includedirs { "source/includes" } diff --git a/readme.md b/readme.md index 3063c4ce..63ee02f6 100644 --- a/readme.md +++ b/readme.md @@ -1,4 +1,4 @@ -[![Build status](https://ci.appveyor.com/api/projects/status/wwokiviriq3m52t6?svg=true)](https://ci.appveyor.com/project/ThirteenAG/gtaiv-eflc-fusionfix) +[![Actions Status: Release](https://github.com/ThirteenAG/GTAIV.EFLC.FusionFix/actions/workflows/msvc_x86.yml/badge.svg)](https://github.com/ThirteenAG/GTAIV.EFLC.FusionFix/actions) [![Build status](https://ci.appveyor.com/api/projects/status/wwokiviriq3m52t6?svg=true)](https://ci.appveyor.com/project/ThirteenAG/gtaiv-eflc-fusionfix)
diff --git a/tools/IMGConsole/msvcp100.dll b/tools/IMGConsole/msvcp100.dll new file mode 100644 index 00000000..e9eae444 Binary files /dev/null and b/tools/IMGConsole/msvcp100.dll differ diff --git a/tools/IMGConsole/msvcr100.dll b/tools/IMGConsole/msvcr100.dll new file mode 100644 index 00000000..fd91c89d Binary files /dev/null and b/tools/IMGConsole/msvcr100.dll differ