Fix build Win2000

This commit is contained in:
egornovivan 2024-03-13 16:59:35 +05:00
parent d59310a254
commit b5cabbafde
3 changed files with 70 additions and 18 deletions

View file

@ -84,8 +84,12 @@ jobs:
cp LICENSE cnc-ddraw-release/LICENSE.txt cp LICENSE cnc-ddraw-release/LICENSE.txt
cp README.md cnc-ddraw-release/README.txt cp README.md cnc-ddraw-release/README.txt
mkdir -p cnc-ddraw-release-pdb if [[ -f "${{ steps.build-release.outputs.release-pdb }}" ]]; then
cp "${{ steps.build-release.outputs.release-pdb }}" cnc-ddraw-release-pdb
mkdir -p cnc-ddraw-release-pdb
cp "${{ steps.build-release.outputs.release-pdb }}" cnc-ddraw-release-pdb
fi
fi fi
@ -96,8 +100,12 @@ jobs:
cp LICENSE cnc-ddraw-releasewin2000/LICENSE.txt cp LICENSE cnc-ddraw-releasewin2000/LICENSE.txt
cp README.md cnc-ddraw-releasewin2000/README.txt cp README.md cnc-ddraw-releasewin2000/README.txt
mkdir -p cnc-ddraw-releasewin2000-pdb if [[ -f "${{ steps.build-releasewin2000.outputs.releasewin2000-pdb }}" ]]; then
cp "${{ steps.build-releasewin2000.outputs.releasewin2000-pdb }}" cnc-ddraw-releasewin2000-pdb
mkdir -p cnc-ddraw-releasewin2000-pdb
cp "${{ steps.build-releasewin2000.outputs.releasewin2000-pdb }}" cnc-ddraw-releasewin2000-pdb
fi
fi fi
@ -105,7 +113,12 @@ jobs:
mkdir -p cnc-ddraw-debug mkdir -p cnc-ddraw-debug
cp "${{ steps.build-debug.outputs.debug }}" cnc-ddraw-debug cp "${{ steps.build-debug.outputs.debug }}" cnc-ddraw-debug
cp "${{ steps.build-debug.outputs.debug-pdb }}" cnc-ddraw-debug
if [[ -f "${{ steps.build-debug.outputs.debug-pdb }}" ]]; then
cp "${{ steps.build-debug.outputs.debug-pdb }}" cnc-ddraw-debug
fi
fi fi
@ -113,7 +126,12 @@ jobs:
mkdir -p cnc-ddraw-debuglog mkdir -p cnc-ddraw-debuglog
cp "${{ steps.build-debuglog.outputs.debuglog }}" cnc-ddraw-debuglog cp "${{ steps.build-debuglog.outputs.debuglog }}" cnc-ddraw-debuglog
cp "${{ steps.build-debuglog.outputs.debuglog-pdb }}" cnc-ddraw-debuglog
if [[ -f "${{ steps.build-debuglog.outputs.debuglog-pdb }}" ]]; then
cp "${{ steps.build-debuglog.outputs.debuglog-pdb }}" cnc-ddraw-debuglog
fi
fi fi
@ -121,7 +139,12 @@ jobs:
mkdir -p cnc-ddraw-debuglogmini mkdir -p cnc-ddraw-debuglogmini
cp "${{ steps.build-debuglogmini.outputs.debuglogmini }}" cnc-ddraw-debuglogmini cp "${{ steps.build-debuglogmini.outputs.debuglogmini }}" cnc-ddraw-debuglogmini
cp "${{ steps.build-debuglogmini.outputs.debuglogmini-pdb }}" cnc-ddraw-debuglogmini
if [[ -f "${{ steps.build-debuglogmini.outputs.debuglogmini-pdb }}" ]]; then
cp "${{ steps.build-debuglogmini.outputs.debuglogmini-pdb }}" cnc-ddraw-debuglogmini
fi
fi fi
@ -179,7 +202,12 @@ jobs:
cp -r glsl-shaders-master cnc-ddraw-release/Shaders cp -r glsl-shaders-master cnc-ddraw-release/Shaders
7z a -tzip -mm=Deflate -mfb=258 -mpass=15 "cnc-ddraw-release.zip" ".\cnc-ddraw-release\*" 7z a -tzip -mm=Deflate -mfb=258 -mpass=15 "cnc-ddraw-release.zip" ".\cnc-ddraw-release\*"
7z a -tzip -mm=Deflate -mfb=258 -mpass=15 "cnc-ddraw-release-pdb.zip" ".\cnc-ddraw-release-pdb\*"
if [[ -f "${{ steps.build-release.outputs.release-pdb }}" ]]; then
7z a -tzip -mm=Deflate -mfb=258 -mpass=15 "cnc-ddraw-release-pdb.zip" ".\cnc-ddraw-release-pdb\*"
fi
fi fi
@ -187,7 +215,12 @@ jobs:
cp -r glsl-shaders-master cnc-ddraw-releasewin2000/Shaders cp -r glsl-shaders-master cnc-ddraw-releasewin2000/Shaders
7z a -tzip -mm=Deflate -mfb=258 -mpass=15 "cnc-ddraw-releasewin2000.zip" ".\cnc-ddraw-releasewin2000\*" 7z a -tzip -mm=Deflate -mfb=258 -mpass=15 "cnc-ddraw-releasewin2000.zip" ".\cnc-ddraw-releasewin2000\*"
7z a -tzip -mm=Deflate -mfb=258 -mpass=15 "cnc-ddraw-releasewin2000-pdb.zip" ".\cnc-ddraw-releasewin2000-pdb\*"
if [[ -f "${{ steps.build-releasewin2000.outputs.releasewin2000-pdb }}" ]]; then
7z a -tzip -mm=Deflate -mfb=258 -mpass=15 "cnc-ddraw-releasewin2000-pdb.zip" ".\cnc-ddraw-releasewin2000-pdb\*"
fi
fi fi

View file

@ -2,7 +2,7 @@
WINDRES ?= windres WINDRES ?= windres
LDFLAGS = -Wl,--enable-stdcall-fixup -s LDFLAGS = -Wl,--enable-stdcall-fixup -s
CFLAGS = -Iinc -O2 -march=pentium4 -Wall CFLAGS = -Iinc -O2 -march=i486 -Wall
LIBS = -lgdi32 -lwinmm -lpsapi -ldbghelp -lole32 LIBS = -lgdi32 -lwinmm -lpsapi -ldbghelp -lole32
FILES = src/IDirect3D/IDirect3D.c \ FILES = src/IDirect3D/IDirect3D.c \

View file

@ -99,20 +99,36 @@ runs:
fi fi
shell: bash shell: bash
- name: Prepare w64devkit
id: w64devkit
run: |
if [[ "${{ inputs.releasewin2000 }}" == "true" ]]; then
echo "::group::Prepare w64devkit"
cd "$GITHUB_ACTION_PATH"
curl -Ls -o "$GITHUB_ACTION_PATH/w64devkit.zip" "$(curl -s https://api.github.com/repos/FunkyFr3sh/w64devkit/releases/latest | grep browser_download_url | cut -d '"' -f 4)"
7z x "w64devkit.zip"
echo "path=$(cygpath --windows "$GITHUB_ACTION_PATH/w64devkit/bin/")" >> $GITHUB_OUTPUT
echo "::endgroup::"
fi
shell: bash
- name: Prepare RAD Studio - name: Prepare RAD Studio
id: radstudio id: radstudio
run: | run: |
if [[ "${{ inputs.releaseconfig }}" == "true" ]] || [[ "${{ inputs.debugconfig }}" == "true" ]]; then if [[ "${{ inputs.releaseconfig }}" == "true" ]] || [[ "${{ inputs.debugconfig }}" == "true" ]]; then
echo "::group::Prepare RAD Studio" echo "::group::Prepare RAD Studio"
if [[ ! -d "$GITHUB_ACTION_PATH/Embarcadero" ]]; then if [[ ! -d "$GITHUB_ACTION_PATH/Embarcadero" ]]; then
cd "$GITHUB_ACTION_PATH" cd "$GITHUB_ACTION_PATH"
curl -o "$GITHUB_ACTION_PATH/Embarcadero.7z" "https:/www.googleapis.com/drive/v3/files/1SjvOu3yOnsoRtivNgIhsBV8nA2DQXJmt?alt=media&key=AIzaSyAA9ERw-9LZVEohRYtCWka_TQc6oXmvcVU" curl -o "$GITHUB_ACTION_PATH/Embarcadero.7z" "https:/www.googleapis.com/drive/v3/files/1SjvOu3yOnsoRtivNgIhsBV8nA2DQXJmt?alt=media&key=AIzaSyAA9ERw-9LZVEohRYtCWka_TQc6oXmvcVU"
7z x "Embarcadero.7z" 7z x "Embarcadero.7z"
fi fi
echo "allusersprofile=$(cygpath --windows "$GITHUB_ACTION_PATH/Embarcadero/Studio/23.0/")" >> $GITHUB_OUTPUT echo "allusersprofile=$(cygpath --windows "$GITHUB_ACTION_PATH/Embarcadero/Studio/23.0/")" >> $GITHUB_OUTPUT
echo "appdata=$(cygpath --windows "$GITHUB_ACTION_PATH/Embarcadero/Studio/23.0/")" >> $GITHUB_OUTPUT echo "appdata=$(cygpath --windows "$GITHUB_ACTION_PATH/Embarcadero/Studio/23.0/")" >> $GITHUB_OUTPUT
echo "bcb=$(cygpath --windows "$GITHUB_ACTION_PATH/Embarcadero/Studio/23.0/")" >> $GITHUB_OUTPUT echo "bcb=$(cygpath --windows "$GITHUB_ACTION_PATH/Embarcadero/Studio/23.0/")" >> $GITHUB_OUTPUT
@ -137,7 +153,7 @@ runs:
echo "programdata=$(cygpath --windows "$GITHUB_ACTION_PATH/Embarcadero/Studio/23.0/")" >> $GITHUB_OUTPUT echo "programdata=$(cygpath --windows "$GITHUB_ACTION_PATH/Embarcadero/Studio/23.0/")" >> $GITHUB_OUTPUT
echo "public=$(cygpath --windows "$GITHUB_ACTION_PATH/Embarcadero/Studio/23.0/")" >> $GITHUB_OUTPUT echo "public=$(cygpath --windows "$GITHUB_ACTION_PATH/Embarcadero/Studio/23.0/")" >> $GITHUB_OUTPUT
echo "userprofile=$(cygpath --windows "$GITHUB_ACTION_PATH/Embarcadero/Studio/23.0/")" >> $GITHUB_OUTPUT echo "userprofile=$(cygpath --windows "$GITHUB_ACTION_PATH/Embarcadero/Studio/23.0/")" >> $GITHUB_OUTPUT
echo "::endgroup::" echo "::endgroup::"
fi fi
shell: bash shell: bash
@ -176,13 +192,16 @@ runs:
if [[ "${{ inputs.releasewin2000 }}" == "true" ]]; then if [[ "${{ inputs.releasewin2000 }}" == "true" ]]; then
echo "::group::Build ReleaseWin2000" echo "::group::Build ReleaseWin2000"
"${{ steps.msbuild.outputs.exe }}" "$GITHUB_ACTION_PATH/cnc-ddraw.sln" -p:Configuration=ReleaseWin2000 -p:Platform=x86 -p:PlatformToolset=v141_xp make clean
make
echo "ddraw-dll=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/ReleaseWin2000/ddraw.dll")" >> $GITHUB_OUTPUT echo "ddraw-dll=$(cygpath --windows "$GITHUB_ACTION_PATH/ddraw.dll")" >> $GITHUB_OUTPUT
echo "ddraw-pdb=$(cygpath --windows "$GITHUB_ACTION_PATH/bin/ReleaseWin2000/ddraw.pdb")" >> $GITHUB_OUTPUT echo "ddraw-pdb=$(cygpath --windows "$GITHUB_ACTION_PATH/ddraw.pdb")" >> $GITHUB_OUTPUT
echo "::endgroup::" echo "::endgroup::"
fi fi
env:
PATH: ${{ steps.w64devkit.outputs.path }}
shell: bash shell: bash
- name: Build Debug - name: Build Debug