"Decouple CMS and OPL emulations" - dosbox-staging #169
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Windows installers | |
on: | |
push: | |
pull_request: | |
workflow_dispatch: | |
permissions: | |
contents: read | |
jobs: | |
Visual_Studio_CI_build: | |
permissions: | |
actions: write # for styfle/cancel-workflow-action to cancel/stop running workflows | |
contents: write # for actions/checkout to fetch code and softprops/action-gh-release | |
runs-on: windows-latest | |
defaults: | |
run: | |
shell: pwsh | |
steps: | |
- name: Cancel previous runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- uses: actions/checkout@v4 | |
- uses: microsoft/setup-msbuild@v2 | |
- name: Prepare Visual Studio builds | |
shell: bash | |
run: | | |
#ls -1 vs/dosbox-x.vcxproj vs/freetype/builds/windows/vc2010/freetype.vcxproj vs/libpdcurses/libpdcurses.vcxproj vs/libpng/projects/vstudio/libpng/libpng.vcxproj vs/libpng/projects/vstudio/libpng/libpng.vcxproj vs/sdl/VisualC/SDL/SDL.vcxproj vs/sdl/VisualC/SDLmain/SDLmain.vcxproj vs/sdl2/VisualC/SDL/SDL.vcxproj vs/sdl2/VisualC/SDLmain/SDLmain.vcxproj vs/sdlnet/VisualC/SDL_net_VS2008.vcxproj vs/sdlnet/VisualC/SDL_net_VS2008.vcxproj vs/zlib/zlib/zlib.vcxproj | xargs sed -b -i 's/v142/v141/g;s/>10.0</>10.0.22000.0</g' | |
echo "timestamp=`git show -s --format=%at | xargs -I# date -d @# +%Y%m%d%H%M%S`" >> $GITHUB_ENV | |
export shortsha=`git show --format='%h' --no-patch` | |
export copyrightyear=`git show -s --format=%at | xargs -I# date -d @# +'%Y'` | |
export updatestr=`git show -s --format=%at | xargs -I# date -d @# +'%b %d, %Y %I:%M:%S%P'` | |
echo '/* auto generated */' > include/build_timestamp.h | |
echo "#define UPDATED_STR \"${updatestr}\"" >> include/build_timestamp.h | |
echo "#define GIT_COMMIT_HASH \"${shortsha}\"" >> include/build_timestamp.h | |
echo "#define COPYRIGHT_END_YEAR \"${copyrightyear}\"" >> include/build_timestamp.h | |
cat include/build_timestamp.h | |
- name: Build Visual Studio x86 SDL1 | |
shell: pwsh | |
run: | | |
msbuild -m vs/dosbox-x.sln -t:dosbox-x:Rebuild -p:Configuration=Release -p:Platform=Win32 | |
if (-not(Test-Path -Path bin\Win32\Release\dosbox-x.exe -PathType Leaf)) {exit 1} | |
#contrib\windows\installer\PatchPE.exe bin\Win32\Release\dosbox-x.exe | |
- name: Build Visual Studio x86 SDL2 | |
shell: pwsh | |
run: | | |
msbuild -m vs/dosbox-x.sln -t:dosbox-x:Rebuild -p:Configuration="Release SDL2" -p:Platform=Win32 | |
if (-not(Test-Path -Path bin\Win32\"Release SDL2"\dosbox-x.exe -PathType Leaf)) {exit 1} | |
#contrib\windows\installer\PatchPE.exe bin\Win32\"Release SDL2"\dosbox-x.exe | |
- name: Build Visual Studio x64 SDL1 | |
shell: pwsh | |
run: | | |
msbuild -m vs/dosbox-x.sln -t:dosbox-x:Rebuild -p:Configuration=Release -p:Platform=x64 | |
if (-not(Test-Path -Path bin\x64\Release\dosbox-x.exe -PathType Leaf)) {exit 1} | |
#contrib\windows\installer\PatchPE.exe bin\x64\Release\dosbox-x.exe | |
- name: Build Visual Studio x64 SDL2 | |
shell: pwsh | |
run: | | |
msbuild -m vs/dosbox-x.sln -t:dosbox-x:Rebuild -p:Configuration="Release SDL2" -p:Platform=x64 | |
if (-not(Test-Path -Path bin\x64\"Release SDL2"\dosbox-x.exe -PathType Leaf)) {exit 1} | |
#contrib\windows\installer\PatchPE.exe bin\x64\"Release SDL2"\dosbox-x.exe | |
- name: Build Visual Studio ARM64 SDL1 | |
shell: pwsh | |
run: | | |
msbuild -m vs/dosbox-x.sln -t:dosbox-x:Rebuild -p:Configuration=Release -p:Platform=ARM64 -p:PostBuildEventUseInBuild=false | |
if (-not(Test-Path -Path bin\ARM64\Release\dosbox-x.exe -PathType Leaf)) {exit 1} | |
- name: Build Visual Studio ARM64 SDL2 | |
shell: pwsh | |
run: | | |
msbuild -m vs/dosbox-x.sln -t:dosbox-x:Rebuild -p:Configuration="Release SDL2" -p:Platform=ARM64 -p:PostBuildEventUseInBuild=false | |
if (-not(Test-Path -Path bin\ARM64\"Release SDL2"\dosbox-x.exe -PathType Leaf)) {exit 1} | |
- name: Build Visual Studio ARM32 SDL1 | |
shell: pwsh | |
run: | | |
msbuild -m vs/dosbox-x.sln -t:dosbox-x:Rebuild -p:Configuration=Release -p:Platform=ARM -p:PostBuildEventUseInBuild=false | |
if (-not(Test-Path -Path bin\ARM\Release\dosbox-x.exe -PathType Leaf)) {exit 1} | |
- name: Build Visual Studio ARM32 SDL2 | |
shell: pwsh | |
run: | | |
msbuild -m vs/dosbox-x.sln -t:dosbox-x:Rebuild -p:Configuration="Release SDL2" -p:Platform=ARM -p:PostBuildEventUseInBuild=false | |
if (-not(Test-Path -Path bin\ARM\"Release SDL2"\dosbox-x.exe -PathType Leaf)) {exit 1} | |
- name: Package Visual Studio x86/x64 builds | |
shell: bash | |
run: | | |
top=`pwd` | |
$top/bin/x64/Release/dosbox-x.exe -tests -set waitonerror=false -set logfile=tests.log || (echo Unit test completed: failure && exit 1) | |
$top/bin/x64/"Release SDL2"/dosbox-x.exe -tests -set waitonerror=false -set logfile=tests.log || (echo Unit test completed: failure && exit 1) | |
$top/bin/Win32/Release/dosbox-x.exe -tests -set waitonerror=false -set logfile=tests.log || (echo Unit test completed: failure && exit 1) | |
$top/bin/Win32/"Release SDL2"/dosbox-x.exe -tests -set waitonerror=false -set logfile=tests.log || (echo Unit test completed: failure && exit 1) | |
mkdir -p $top/package/drivez | |
mkdir -p $top/package/scripts | |
mkdir -p $top/package/shaders | |
mkdir -p $top/package/glshaders | |
mkdir -p $top/package/languages | |
mkdir -p $top/vs-bin | |
sed -e 's/^\(output[ ]*=[ ]*\)default$/\1ttf/;s/^\(windowposition[ ]*=\)[ ]*-/\1 /;s/^\(file access tries[ ]*=[ ]*\)0$/\13/;s/^\(printoutput[ ]*=[ ]*\)png$/\1printer/;s/\(drive data rate limit[ ]*=[ ]*\)-1$/\10/' $top/dosbox-x.reference.conf>$top/package/dosbox-x.conf | |
cp $top/bin/Win32/Release/dosbox-x.exe $top/package/dosbox-x_x86_SDL1.exe | |
cp $top/bin/Win32/Release/dosbox-x.exe $top/vs-bin/dosbox-x_x86_SDL1.exe | |
cp $top/bin/Win32/"Release SDL2"/dosbox-x.exe $top/package/dosbox-x_x86_SDL2.exe | |
cp $top/bin/Win32/"Release SDL2"/dosbox-x.exe $top/vs-bin/dosbox-x_x86_SDL2.exe | |
cp $top/bin/x64/Release/dosbox-x.exe $top/package/dosbox-x_x64_SDL1.exe | |
cp $top/bin/x64/Release/dosbox-x.exe $top/vs-bin/dosbox-x_x64_SDL1.exe | |
cp $top/bin/x64/"Release SDL2"/dosbox-x.exe $top/package/dosbox-x_x64_SDL2.exe | |
cp $top/bin/x64/"Release SDL2"/dosbox-x.exe $top/vs-bin/dosbox-x_x64_SDL2.exe | |
cp $top/CHANGELOG $top/package/CHANGELOG.txt | |
cp $top/dosbox-x.reference.conf $top/package/dosbox-x.reference.conf | |
cp $top/dosbox-x.reference.full.conf $top/package/dosbox-x.reference.full.conf | |
cp $top/contrib/windows/installer/readme.txt $top/package/README.txt | |
cp $top/contrib/windows/installer/inpoutx64.dll $top/package/inpoutx64.dll | |
cp $top/contrib/windows/installer/inpout32.dll $top/package/inpout32.dll | |
cp $top/contrib/fonts/FREECG98.BMP $top/package/FREECG98.BMP | |
cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/ | |
cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/Nouveau_IBM.ttf | |
cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/SarasaGothicFixed.ttf | |
cp $top/contrib/windows/installer/drivez_readme.txt $top/package/drivez/readme.txt | |
cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/scripts/ | |
cp $top/contrib/windows/shaders/* $top/package/shaders/ | |
cp $top/contrib/glshaders/* $top/package/glshaders/ | |
cp $top/contrib/translations/*/*.lng $top/package/languages/ | |
cp $top/COPYING $top/package/COPYING | |
cd $top/package/ | |
$top/vs/tool/zip.exe -r -9 "$top/dosbox-x-vsbuild-win-x86_x64-${{ env.timestamp }}.zip" "*" | |
cd $top | |
ls -lg | |
- name: Upload preview package(VS x86/x64) | |
uses: actions/[email protected] | |
with: | |
name: dosbox-x-vsbuild-win-x86_x64-${{ env.timestamp }} | |
path: ${{ github.workspace }}/package/ | |
- name: Package Visual Studio ARM 32/64-bit builds | |
shell: bash | |
run: | | |
top=`pwd` | |
rm $top/package/dosbox-x_*.exe | |
cp $top/bin/ARM/Release/dosbox-x.exe $top/package/dosbox-x_ARM_SDL1.exe | |
cp $top/bin/ARM/Release/dosbox-x.exe $top/vs-bin/dosbox-x_ARM_SDL1.exe | |
cp $top/bin/ARM/"Release SDL2"/dosbox-x.exe $top/package/dosbox-x_ARM_SDL2.exe | |
cp $top/bin/ARM/"Release SDL2"/dosbox-x.exe $top/vs-bin/dosbox-x_ARM_SDL2.exe | |
cp $top/bin/ARM64/Release/dosbox-x.exe $top/package/dosbox-x_ARM64_SDL1.exe | |
cp $top/bin/ARM64/Release/dosbox-x.exe $top/vs-bin/dosbox-x_ARM64_SDL1.exe | |
cp $top/bin/ARM64/"Release SDL2"/dosbox-x.exe $top/package/dosbox-x_ARM64_SDL2.exe | |
cp $top/bin/ARM64/"Release SDL2"/dosbox-x.exe $top/vs-bin/dosbox-x_ARM64_SDL2.exe | |
cd $top/package/ | |
$top/vs/tool/zip.exe -r -9 "$top/dosbox-x-vsbuild-ARM32_64-${{ env.timestamp }}.zip" "*" | |
cd $top | |
- name: Upload preview package(ARM 32/64-bit) | |
uses: actions/[email protected] | |
with: | |
name: dosbox-x-vsbuild-ARM32_64-${{ env.timestamp }} | |
path: ${{ github.workspace }}/package/ | |
- name: Cache Visual Studio builds (nightly) | |
if: ${{ !startsWith(github.ref, 'refs/tags/') }} | |
uses: actions/cache/save@v4 | |
with: | |
path: ${{ github.workspace }}/vs-bin | |
key: vs-${{ github.sha }} | |
- name: Cache Visual Studio builds (release) | |
if: ${{ startsWith(github.ref, 'refs/tags/') }} | |
uses: actions/cache/save@v4 | |
with: | |
path: ${{ github.workspace }}/vs-bin | |
key: vs-r-${{ github.sha }} | |
MinGW32_CI_build: | |
permissions: | |
actions: write # for styfle/cancel-workflow-action to cancel/stop running workflows | |
contents: write # for actions/checkout to fetch code and softprops/action-gh-release | |
runs-on: windows-latest | |
defaults: | |
run: | |
shell: msys2 {0} | |
steps: | |
- name: Cancel previous runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- uses: actions/checkout@v4 | |
- uses: msys2/setup-msys2@v2 | |
with: | |
msystem: MINGW32 | |
update: true | |
install: git mingw-w64-i686-toolchain mingw-w64-i686-libtool mingw-w64-i686-nasm autoconf automake mingw-w64-i686-libslirp | |
- name: Update build info | |
shell: bash | |
run: | | |
echo "timestamp=`git show -s --format=%at | xargs -I# date -d @# +%Y%m%d%H%M%S`" >> $GITHUB_ENV | |
export shortsha=`git show --format='%h' --no-patch` | |
export copyrightyear=`git show -s --format=%at | xargs -I# date -d @# +'%Y'` | |
export updatestr=`git show -s --format=%at | xargs -I# date -d @# +'%b %d, %Y %I:%M:%S%P'` | |
echo '/* auto generated */' > include/build_timestamp.h | |
echo "#define UPDATED_STR \"${updatestr}\"" >> include/build_timestamp.h | |
echo "#define GIT_COMMIT_HASH \"${shortsha}\"" >> include/build_timestamp.h | |
echo "#define COPYRIGHT_END_YEAR \"${copyrightyear}\"" >> include/build_timestamp.h | |
cat include/build_timestamp.h | |
- name: Build MinGW32 SDL1 | |
run: | | |
top=`pwd` | |
ln -s $top/build-scripts/mingw/lowend-bin/make.exe /usr/bin/make.exe | |
./build-mingw | |
strip -s $top/src/dosbox-x.exe | |
mkdir -p $top/package/ | |
mkdir -p $top/mingw-x86-bin/ | |
cp $top/src/dosbox-x.exe $top/package/dosbox-x_MinGWx86_SDL1.exe | |
cp $top/src/dosbox-x.exe $top/mingw-x86-bin/dosbox-x_MinGWx86_SDL1.exe | |
- name: Build MinGW32 SDL2 | |
run: | | |
top=`pwd` | |
./build-mingw-sdl2 | |
strip -s $top/src/dosbox-x.exe | |
cp $top/src/dosbox-x.exe $top/package/dosbox-x_MinGWx86_SDL2.exe | |
cp $top/src/dosbox-x.exe $top/mingw-x86-bin/dosbox-x_MinGWx86_SDL2.exe | |
- name: Cache MinGW x86 builds (nightly) | |
if: ${{ !startsWith(github.ref, 'refs/tags/') }} | |
uses: actions/cache/save@v4 | |
with: | |
path: ${{ github.workspace }}/mingw-x86-bin | |
key: mingw-x86-bin-${{ github.sha }} | |
- name: Cache MinGW x86 builds (release) | |
if: ${{ startsWith(github.ref, 'refs/tags/') }} | |
uses: actions/cache/save@v4 | |
with: | |
path: ${{ github.workspace }}/mingw-x86-bin | |
key: mingw-x86-bin-r-${{ github.sha }} | |
MinGW64_CI_build: | |
permissions: | |
actions: write # for styfle/cancel-workflow-action to cancel/stop running workflows | |
contents: write # for actions/checkout to fetch code and softprops/action-gh-release | |
runs-on: windows-latest | |
defaults: | |
run: | |
shell: msys2 {0} | |
steps: | |
- name: Cancel previous runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- uses: actions/checkout@v4 | |
- uses: msys2/setup-msys2@v2 | |
with: | |
msystem: MINGW64 | |
update: true | |
install: git make mingw-w64-x86_64-toolchain mingw-w64-x86_64-libtool mingw-w64-x86_64-nasm autoconf automake mingw-w64-x86_64-libslirp | |
- name: Update build info | |
shell: bash | |
run: | | |
echo "timestamp=`git show -s --format=%at | xargs -I# date -d @# +%Y%m%d%H%M%S`" >> $GITHUB_ENV | |
export shortsha=`git show --format='%h' --no-patch` | |
export copyrightyear=`git show -s --format=%at | xargs -I# date -d @# +'%Y'` | |
export updatestr=`git show -s --format=%at | xargs -I# date -d @# +'%b %d, %Y %I:%M:%S%P'` | |
echo '/* auto generated */' > include/build_timestamp.h | |
echo "#define UPDATED_STR \"${updatestr}\"" >> include/build_timestamp.h | |
echo "#define GIT_COMMIT_HASH \"${shortsha}\"" >> include/build_timestamp.h | |
echo "#define COPYRIGHT_END_YEAR \"${copyrightyear}\"" >> include/build_timestamp.h | |
cat include/build_timestamp.h | |
- name: Build MinGW64 SDL1 | |
run: | | |
top=`pwd` | |
./build-mingw | |
strip -s $top/src/dosbox-x.exe | |
mkdir -p $top/package/ | |
mkdir -p $top/mingw-x64-bin/ | |
cp $top/src/dosbox-x.exe $top/package/dosbox-x_MinGWx64_SDL1.exe | |
cp $top/src/dosbox-x.exe $top/mingw-x64-bin/dosbox-x_MinGWx64_SDL1.exe | |
- name: Build MinGW64 SDL2 | |
run: | | |
top=`pwd` | |
./build-mingw-sdl2 | |
strip -s $top/src/dosbox-x.exe | |
cp $top/src/dosbox-x.exe $top/package/dosbox-x_MinGWx64_SDL2.exe | |
cp $top/src/dosbox-x.exe $top/mingw-x64-bin/dosbox-x_MinGWx64_SDL2.exe | |
- name: Cache MinGW x64 builds (nightly) | |
if: ${{ !startsWith(github.ref, 'refs/tags/') }} | |
uses: actions/cache/save@v4 | |
with: | |
path: ${{ github.workspace }}/mingw-x64-bin | |
key: mingw-x64-bin-${{ github.sha }} | |
- name: Cache MinGW x64 builds (release) | |
if: ${{ startsWith(github.ref, 'refs/tags/') }} | |
uses: actions/cache/save@v4 | |
with: | |
path: ${{ github.workspace }}/mingw-x64-bin | |
key: mingw-x64-bin-r-${{ github.sha }} | |
Build_Windows_Installer: | |
permissions: | |
actions: write # for styfle/cancel-workflow-action to cancel/stop running workflows | |
contents: write # for actions/checkout to fetch code and softprops/action-gh-release | |
runs-on: windows-latest | |
needs: [MinGW32_CI_build, MinGW64_CI_build, Visual_Studio_CI_build] | |
env: | |
GH_TOKEN: ${{ github.token }} | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Restore MinGW x86 builds (nightly) | |
if: ${{ !startsWith(github.ref, 'refs/tags/') }} | |
uses: actions/cache/restore@v4 | |
with: | |
path: ${{ github.workspace }}/mingw-x86-bin | |
key: mingw-x86-bin-${{ github.sha }} | |
- name: Restore MinGW x64 builds (nightly) | |
if: ${{ !startsWith(github.ref, 'refs/tags/') }} | |
uses: actions/cache/restore@v4 | |
with: | |
path: ${{ github.workspace }}/mingw-x64-bin | |
key: mingw-x64-bin-${{ github.sha }} | |
- name: Restore Visual Studio builds (nightly) | |
if: ${{ !startsWith(github.ref, 'refs/tags/') }} | |
uses: actions/cache/restore@v4 | |
with: | |
path: ${{ github.workspace }}/vs-bin | |
key: vs-${{ github.sha }} | |
- name: Restore MinGW x86 builds (release) | |
if: ${{ startsWith(github.ref, 'refs/tags/') }} | |
uses: actions/cache/restore@v4 | |
with: | |
path: ${{ github.workspace }}/mingw-x86-bin | |
key: mingw-x86-bin-r-${{ github.sha }} | |
- name: Restore MinGW x64 builds (release) | |
if: ${{ startsWith(github.ref, 'refs/tags/') }} | |
uses: actions/cache/restore@v4 | |
with: | |
path: ${{ github.workspace }}/mingw-x64-bin | |
key: mingw-x64-bin-r-${{ github.sha }} | |
- name: Restore Visual Studio builds (release) | |
if: ${{ startsWith(github.ref, 'refs/tags/') }} | |
uses: actions/cache/restore@v4 | |
with: | |
path: ${{ github.workspace }}/vs-bin | |
key: vs-r-${{ github.sha }} | |
- name: Package MinGW builds | |
run: | | |
set +e | |
top=`pwd` | |
echo "timestamp=`git show -s --format=%at | xargs -I# date -d @# +%Y%m%d%H%M%S`" >> $GITHUB_ENV | |
mkdir -p $top/package/drivez | |
mkdir -p $top/package/scripts | |
mkdir -p $top/package/shaders | |
mkdir -p $top/package/glshaders | |
mkdir -p $top/package/languages | |
sed -e 's/^\(output[ ]*=[ ]*\)default$/\1ttf/;s/^\(windowposition[ ]*=\)[ ]*-/\1 /;s/^\(file access tries[ ]*=[ ]*\)0$/\13/;s/^\(printoutput[ ]*=[ ]*\)png$/\1printer/;s/\(drive data rate limit[ ]*=[ ]*\)-1$/\10/' $top/dosbox-x.reference.conf>$top/package/dosbox-x.conf | |
cp mingw-x86-bin/*.exe $top/package/ | |
cp mingw-x64-bin/*.exe $top/package/ | |
cp $top/CHANGELOG $top/package/CHANGELOG.txt | |
cp $top/dosbox-x.reference.conf $top/package/dosbox-x.reference.conf | |
cp $top/dosbox-x.reference.full.conf $top/package/dosbox-x.reference.full.conf | |
cp $top/contrib/windows/installer/readme.txt $top/package/README.txt | |
cp $top/contrib/windows/installer/inpoutx64.dll $top/package/inpoutx64.dll | |
cp $top/contrib/windows/installer/inpout32.dll $top/package/inpout32.dll | |
cp $top/contrib/fonts/FREECG98.BMP $top/package/FREECG98.BMP | |
cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/ | |
cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/Nouveau_IBM.ttf | |
cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/SarasaGothicFixed.ttf | |
cp $top/contrib/windows/installer/drivez_readme.txt $top/package/drivez/readme.txt | |
cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/scripts/ | |
cp $top/contrib/windows/shaders/* $top/package/shaders/ | |
cp $top/contrib/glshaders/* $top/package/glshaders/ | |
cp $top/contrib/translations/*/*.lng $top/package/languages/ | |
cp $top/COPYING $top/package/COPYING | |
cd $top/package/ | |
cd $top | |
- name: Upload preview package (MinGW) | |
uses: actions/[email protected] | |
with: | |
name: dosbox-x-mingw-x86_x64-${{ env.timestamp }} | |
path: ${{ github.workspace }}/package/ | |
- name: Update release version | |
if: startsWith(github.ref, 'refs/tags/') | |
shell: bash | |
run: | | |
DOSBOX_X_RELEASE=`gh release list -L1 | grep -o "....-..-.." | head -n 1 | sed -e "s/-/./g"` | |
sed -i "s/^#define MyAppVersion.*/#define MyAppVersion \"$DOSBOX_X_RELEASE\"/" contrib/windows/installer/DOSBox-X-installer.iss | |
- name: Prepare files | |
shell: bash | |
run: | | |
set +e | |
cp dosbox-*.conf contrib/windows/installer/ | |
#ls -lg vs-bin | |
#ls -lg mingw-x64-bin | |
#ls -lg mingw-x86-bin | |
mkdir -p contrib/windows/installer/windows | |
cp vs-bin/*.exe contrib/windows/installer/windows/ | |
cp mingw-x86-bin/*.exe contrib/windows/installer/windows/ | |
cp mingw-x64-bin/*.exe contrib/windows/installer/windows/ | |
ls -lg contrib/windows/installer/windows | |
cd contrib/windows/installer/ | |
ISCC.exe ./DOSBox-X-installer.iss | |
- name: Upload preview installer | |
uses: actions/[email protected] | |
with: | |
name: dosbox-x-windows-${{ env.timestamp }}-setup.exe | |
path: contrib/windows/installer/dosbox-x-windows*.exe | |
- name: Upload Windows build installer release version | |
uses: softprops/action-gh-release@v2 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
files: | | |
contrib/windows/installer/dosbox-x-windows*.exe | |
- name: Clean cache (nightly) | |
if: ${{ !startsWith(github.ref, 'refs/tags/') }} | |
run: | | |
gh extension install actions/gh-actions-cache | |
## need permission? disable the following lines if error occurs when deleting cache | |
set +e | |
gh actions-cache delete mingw-x86-bin-${{ github.sha }} --confirm | |
gh actions-cache delete mingw-x64-bin-${{ github.sha }} --confirm | |
gh actions-cache delete vs-${{ github.sha }} --confirm | |
gh actions-cache list | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Clean cache (release) | |
if: ${{ startsWith(github.ref, 'refs/tags/') }} | |
run: | | |
gh extension install actions/gh-actions-cache | |
## need permission? disable the following lines if error occurs when deleting cache | |
set +e | |
gh actions-cache delete mingw-x86-bin-r-${{ github.sha }} --confirm | |
gh actions-cache delete mingw-x64-bin-r-${{ github.sha }} --confirm | |
gh actions-cache delete vs-r-${{ github.sha }} --confirm | |
gh actions-cache list | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |