diff --git a/.github/workflows/hxdos.yml b/.github/workflows/hxdos.yml deleted file mode 100644 index e2f8ca6ef1..0000000000 --- a/.github/workflows/hxdos.yml +++ /dev/null @@ -1,115 +0,0 @@ -name: HX-DOS build -on: - push: - pull_request: - workflow_dispatch: -permissions: - contents: read - -jobs: - HX_DOS_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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: windows-latest - defaults: - run: - shell: pwsh - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - name: Prepare HX-DOS - shell: bash - run: | - echo "timestamp=`git show -s --format=%at | xargs -I# date -d @# +%Y%m%d%H%M%S`" >> $GITHUB_ENV - pwd>pwd.txt - mkdir package - mkdir mingw-get - vs/tool/unzip.exe build-scripts/mingw/lowend-bin/mingw-get-0.6.2-mingw32-beta-20131004-1-bin.zip -d mingw-get - mingw-get/bin/mingw-get.exe install msys-base gcc g++ autoconf automake libiconv libpdcurses libz - mv pwd.txt mingw-get/msys/1.0 - cp build-scripts/mingw/lowend-bin/msys.bat mingw-get/msys/1.0 - cp build-scripts/mingw/lowend-bin/runbuild.sh mingw-get/msys/1.0 - cp build-scripts/mingw/lowend-bin/gawk.exe mingw-get/msys/1.0/bin - - name: Update build info - shell: bash - run: | - export updatestr=`git show -s --format=%at | xargs -I# date -d @# +'%b %d, %Y %I:%M:%S%P'` - export shortsha=`echo ${GITHUB_SHA} | cut -c1-7` - export copyrightyear=`git show -s --format=%at | xargs -I# date -d @# +'%Y'` - 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 HX-DOS - shell: pwsh - run: | - mingw-get\msys\1.0\msys.bat /mingw/msys/1.0/runbuild.sh build-mingw-hx-dos - if (-not(Test-Path -Path src\dosbox-x.exe -PathType Leaf)) {exit 1} - - name: Package HX-DOS - shell: bash - run: | - top=`pwd` - strip -s $top/src/dosbox-x.exe - $top/build-scripts/mingw/hxdos-bin/PESTUB.EXE -n $top/src/dosbox-x.exe - $top/vs/tool/upx.exe --strip-relocs=0 --lzma -9 $top/src/dosbox-x.exe - cp $top/src/dosbox-x.exe $top/package/dosbox-x.exe - cp $top/CHANGELOG $top/package/CHANGELOG.txt - cp $top/COPYING $top/package/COPYING.txt - cp $top/dosbox-x.reference.conf $top/package/dosbox-x.ref - cp $top/dosbox-x.reference.full.conf $top/package/dosbox-x.ref.full - cp $top/contrib/windows/installer/inpout32.dll $top/package/INPOUT32.DLL - cp $top/contrib/fonts/FREECG98.BMP $top/package/ - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/ - cp $top/build-scripts/mingw/hxdos-bin/DPMILD32.EXE $top/package/ - cp $top/build-scripts/mingw/hxdos-bin/HDPMI32.EXE $top/package/ - cp $top/build-scripts/mingw/hxdos-bin/HXGUIHLP.INI $top/package/ - cp $top/build-scripts/mingw/hxdos-bin/README.TXT $top/package/ - cp $top/build-scripts/mingw/hxdos-bin/WATTCP.CFG $top/package/ - cp $top/build-scripts/mingw/hxdos-bin/WINSPOOL.DRV $top/package/ - cp $top/build-scripts/mingw/hxdos-bin/*.DLL $top/package/ - mkdir -p $top/package/drivez - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/drivez/readme.txt - mkdir -p $top/package/language - cp $top/contrib/translations/*/*.lng $top/package/language/ - cd $top/package/ - $top/vs/tool/zip.exe -r -9 $top/dosbox-x-mingw-hx-dos-${{ env.timestamp }}.zip * - cd $top - - name: Wait for VS 32bit build to finish (Release only) - if: startsWith(github.ref, 'refs/tags/') - shell: bash - run: | - sleep 40m - - name: Download Windows build - uses: robinraju/release-downloader@v1.11 - with: - repository: "joncampbell123/dosbox-x" - latest: true - filename: "dosbox-x-vsbuild-win32-*.zip" - - name: Run in Windows build - shell: bash - run: | - top=`pwd` - $top/vs/tool/unzip.exe -n "dosbox-x-vsbuild-win32-*.zip" "bin/Win32/Release/dosbox-x.*" - cp $top/package/dosbox-x.ref $top/hxdos.cfg - echo mount b ..>>$top/hxdos.cfg - echo "echo success>b:\SUCCESS.TXT">>$top/hxdos.cfg - $top/bin/Win32/Release/dosbox-x.exe -silent -exit -set memsize=128 -c "mount c ." -c "c:" -c "cd package" -c "dosbox-x -silent -exit -conf ..\hxdos.cfg>..\OUTPUT.TXT" - cat $top/OUTPUT.TXT - test -f $top/SUCCESS.TXT || (echo The HX-DOS build did not run successfully && exit 1) - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-mingw-hx-dos-${{ env.timestamp }} - path: ${{ github.workspace }}/package/ - - name: Upload release package - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: dosbox-x-mingw-hx-dos-${{ env.timestamp }}.zip diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml deleted file mode 100644 index 12331746ac..0000000000 --- a/.github/workflows/linux.yml +++ /dev/null @@ -1,122 +0,0 @@ -name: Linux builds -on: - push: - pull_request: - workflow_dispatch: -permissions: - contents: read - -jobs: - Linux_CI_build: - permissions: - actions: write # for styfle/cancel-workflow-action to cancel/stop running workflows - contents: read # for actions/checkout to fetch code - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: ubuntu-latest - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: '14' - - name: Build minimal - run: | - echo "timestamp=`git show -s --format=%at | xargs -I# date -d @# +%Y%m%d%H%M%S`" >> $GITHUB_ENV - ./build --disable-freetype --disable-libfluidsynth --disable-mt32 --disable-screenshots - - name: Install libraries - run: | - sudo apt-get update -y - sudo apt-get install -y nasm fluidsynth libfluidsynth-dev libpcap-dev libslirp-dev libsdl-net1.2-dev libsdl2-net-dev libglu1-mesa-dev freeglut3-dev mesa-common-dev - mkdir src/bin - - name: Update build info - shell: bash - run: | - export shortsha=`echo ${GITHUB_SHA} | cut -c1-7` - 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 Linux SDL1 - run: | - top=`pwd` - ./build-debug - strip -s $top/src/dosbox-x - cp $top/src/dosbox-x $top/src/bin/dosbox-x-sdl1 - - name: Build Linux SDL2 - run: | - top=`pwd` - ./build-debug-sdl2 - strip -s $top/src/dosbox-x - cp $top/src/dosbox-x $top/src/bin/dosbox-x-sdl2 - - name: Unit testing - run: | - top=`pwd` - chmod +x $top/src/bin/dosbox-x-sdl1 $top/src/bin/dosbox-x-sdl2 - $top/src/bin/dosbox-x-sdl1 -tests - $top/src/bin/dosbox-x-sdl2 -tests - - name: Package build - run: | - top=`pwd` - mkdir -p $top/src/bin/drivez - mkdir -p $top/src/bin/glshaders - mkdir -p $top/src/bin/languages - cp $top/CHANGELOG $top/src/bin/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/src/bin/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/src/bin/dosbox-x.reference.full.conf - cp $top/contrib/fonts/FREECG98.BMP $top/src/bin/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/src/bin/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/src/bin/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/src/bin/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/src/bin/drivez/readme.txt - cp $top/contrib/glshaders/* $top/src/bin/glshaders/ - cp $top/contrib/translations/*/*.lng $top/src/bin/languages/ - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-linux-x86_64-${{ env.timestamp }} - path: ${{ github.workspace }}/src/bin/ - Test_cxx11: - permissions: - actions: write # for styfle/cancel-workflow-action to cancel/stop running workflows - contents: read # for actions/checkout to fetch code - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: ubuntu-latest - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: '14' - - name: Install libraries - run: | - sudo apt-get update -y - sudo apt-get install -y nasm fluidsynth libfluidsynth-dev libpcap-dev libslirp-dev libsdl-net1.2-dev libsdl2-net-dev libglu1-mesa-dev freeglut3-dev mesa-common-dev - mkdir src/bin - - name: Build Linux SDL1 - run: | - top=`pwd` - ./build-debug --enable-force-cxx11 - strip -s $top/src/dosbox-x - cp $top/src/dosbox-x $top/src/bin/dosbox-x-sdl1 - - name: Build Linux SDL2 - run: | - top=`pwd` - ./build-debug-sdl2 --enable-force-cxx11 - strip -s $top/src/dosbox-x - cp $top/src/dosbox-x $top/src/bin/dosbox-x-sdl2 - - name: Unit testing - run: | - top=`pwd` - chmod +x $top/src/bin/dosbox-x-sdl1 $top/src/bin/dosbox-x-sdl2 - $top/src/bin/dosbox-x-sdl1 -tests - $top/src/bin/dosbox-x-sdl2 -tests - diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml deleted file mode 100644 index 152621196a..0000000000 --- a/.github/workflows/macos.yml +++ /dev/null @@ -1,151 +0,0 @@ -name: macOS builds -on: - push: - pull_request: - workflow_dispatch: -permissions: - contents: read - -jobs: - macOS_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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: macos-12 - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - name: Install libraries - run: | - brew install autoconf automake nasm glfw glew coreutils sevenzip - mkdir -p package/dosbox-x - mkdir -p package/dosbox-x-sdl2 - # cd vs/sdlnet && ./build-dosbox.sh - - name: Update build info - run: | - echo "timestamp=`git show -s --format=%at | xargs -I# gdate -d @# +%Y%m%d%H%M%S`" >> $GITHUB_ENV - export shortsha=`echo ${GITHUB_SHA} | cut -c1-7` - export copyrightyear=`git show -s --format=%at | xargs -I# gdate -d @# +'%Y'` - export updatestr=`git show -s --format=%at | xargs -I# gdate -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 macOS SDL1 - run: | - top=`pwd` - ./build-macos - strip $top/src/dosbox-x - make dosbox-x.app - mv dosbox-x.app $top/package/dosbox-x - - name: Build macOS SDL2 - run: | - top=`pwd` - ./build-macos-sdl2 - strip $top/src/dosbox-x - make dosbox-x.app - mv dosbox-x.app $top/package/dosbox-x-sdl2 - - name: Unit testing - run: | - top=`pwd` - chmod +x $top/package/dosbox-x/dosbox-x.app/Contents/MacOS/dosbox-x $top/package/dosbox-x-sdl2/dosbox-x.app/Contents/MacOS/dosbox-x - $top/package/dosbox-x/dosbox-x.app/Contents/MacOS/dosbox-x -tests - $top/package/dosbox-x-sdl2/dosbox-x.app/Contents/MacOS/dosbox-x -tests - - name: Package build - run: | - top=`pwd` - cp $top/CHANGELOG $top/package/dosbox-x/CHANGELOG.txt - cp $top/COPYING $top/package/dosbox-x/COPYING.txt - cp $top/contrib/macos/readme.txt $top/package/dosbox-x/README.txt - cp $top/CHANGELOG $top/package/dosbox-x-sdl2/CHANGELOG.txt - cp $top/COPYING $top/package/dosbox-x-sdl2/COPYING.txt - cp $top/contrib/macos/readme.txt $top/package/dosbox-x-sdl2/README.txt - cd $top/package/ - 7zz a $top/dosbox-x-macosx-x86_64-${{ env.timestamp }}.zip * - cd $top - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-macosx-x86_64-${{ env.timestamp }} - path: ${{ github.workspace }}/dosbox-x-macosx-x86_64-${{ env.timestamp }}.zip - - name: Upload release package - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: dosbox-x-macosx-x86_64-${{ env.timestamp }}.zip - macOS_ARM_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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: macos-14 - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - name: Install libraries - run: | - brew install autoconf automake nasm glfw glew coreutils sevenzip - mkdir -p package/dosbox-x - mkdir -p package/dosbox-x-sdl2 - # cd vs/sdlnet && ./build-dosbox.sh - - name: Update build info - run: | - echo "timestamp=`git show -s --format=%at | xargs -I# gdate -d @# +%Y%m%d%H%M%S`" >> $GITHUB_ENV - export shortsha=`echo ${GITHUB_SHA} | cut -c1-7` - export copyrightyear=`git show -s --format=%at | xargs -I# gdate -d @# +'%Y'` - export updatestr=`git show -s --format=%at | xargs -I# gdate -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 macOS SDL1 - run: | - top=`pwd` - ./build-macos - strip $top/src/dosbox-x - make dosbox-x.app - mv dosbox-x.app $top/package/dosbox-x - - name: Build macOS SDL2 - run: | - top=`pwd` - ./build-macos-sdl2 - strip $top/src/dosbox-x - make dosbox-x.app - mv dosbox-x.app $top/package/dosbox-x-sdl2 - - name: Unit testing - run: | - top=`pwd` - chmod +x $top/package/dosbox-x/dosbox-x.app/Contents/MacOS/dosbox-x $top/package/dosbox-x-sdl2/dosbox-x.app/Contents/MacOS/dosbox-x - $top/package/dosbox-x/dosbox-x.app/Contents/MacOS/dosbox-x -tests - $top/package/dosbox-x-sdl2/dosbox-x.app/Contents/MacOS/dosbox-x -tests - - name: Package build - run: | - top=`pwd` - cp $top/CHANGELOG $top/package/dosbox-x/CHANGELOG.txt - cp $top/COPYING $top/package/dosbox-x/COPYING.txt - cp $top/contrib/macos/readme.txt $top/package/dosbox-x/README.txt - cp $top/CHANGELOG $top/package/dosbox-x-sdl2/CHANGELOG.txt - cp $top/COPYING $top/package/dosbox-x-sdl2/COPYING.txt - cp $top/contrib/macos/readme.txt $top/package/dosbox-x-sdl2/README.txt - cd $top/package/ - 7zz a $top/dosbox-x-macosx-arm64-${{ env.timestamp }}.zip * - cd $top - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-macosx-arm64-${{ env.timestamp }} - path: ${{ github.workspace }}/dosbox-x-macosx-arm64-${{ env.timestamp }}.zip - - name: Upload release package - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: dosbox-x-macosx-arm64-${{ env.timestamp }}.zip diff --git a/.github/workflows/mingw32.yml b/.github/workflows/mingw32.yml deleted file mode 100644 index b568d04941..0000000000 --- a/.github/workflows/mingw32.yml +++ /dev/null @@ -1,347 +0,0 @@ -name: 32-bit MinGW builds -on: - push: - pull_request: - workflow_dispatch: -permissions: - contents: read - -jobs: - 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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: windows-latest - defaults: - run: - shell: msys2 {0} - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - uses: msys2/setup-msys2@v2 - with: - msystem: MINGW32 - update: true - install: git make base-devel mingw-w64-i686-toolchain mingw-w64-i686-libtool mingw-w64-i686-nasm autoconf automake mingw-w64-i686-ncurses mingw-w64-i686-binutils mingw-w64-i686-libslirp - - name: Install libslirp - if: false - run: | - # Run this job when MinGW drops 32-bit library support (Other libraries can be built as well) - top=`pwd` - mkdir pkg - cd pkg - git clone https://github.com/msys2/MINGW-packages.git - pwd - cd MINGW-packages - #ls -lg - cd mingw-w64-libslirp - #ls -lg - sed -i -e "s/^mingw_arch=\(.*\)/mingw_arch=(\'mingw32\')/" PKGBUILD - MINGW_ARCH=MINGW32 makepkg-mingw -sCLf --noconfirm - #ls -lg - pacman --noconfirm -U mingw-w64-*-any.pkg.tar.zst - - 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=`echo ${GITHUB_SHA} | cut -c1-7` - 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` - export "MSYSTEM_PREFIX=/d/a/_temp/msys64/mingw32" - # cp $top/build-scripts/mingw/lowend-bin/make.exe ${MSYSTEM_PREFIX}/bin/make.exe - ./build-mingw - strip -s $top/src/dosbox-x.exe - - name: Package MinGW32 SDL1 - run: | - top=`pwd` - mkdir -p $top/package/mingw-build/mingw/drivez - mkdir -p $top/package/mingw-build/mingw/scripts - mkdir -p $top/package/mingw-build/mingw/shaders - mkdir -p $top/package/mingw-build/mingw/glshaders - mkdir -p $top/package/mingw-build/mingw/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/mingw-build/mingw/dosbox-x.conf - cp $top/src/dosbox-x.exe $top/package/mingw-build/mingw/dosbox-x.exe - cp $top/CHANGELOG $top/package/mingw-build/mingw/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/mingw-build/mingw/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/mingw-build/mingw/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/mingw-build/mingw/README.txt - cp $top/contrib/windows/installer/inpout32.dll $top/package/mingw-build/mingw/inpout32.dll - cp $top/contrib/fonts/FREECG98.BMP $top/package/mingw-build/mingw/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/mingw-build/mingw/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/mingw-build/mingw/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/mingw-build/mingw/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/mingw-build/mingw/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/mingw-build/mingw/scripts/ - cp $top/contrib/windows/shaders/* $top/package/mingw-build/mingw/shaders/ - cp $top/contrib/glshaders/* $top/package/mingw-build/mingw/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/mingw-build/mingw/languages/ - - name: Build MinGW32 SDL2 - run: | - top=`pwd` - export "MSYSTEM_PREFIX=/d/a/_temp/msys64/mingw32" - ./build-mingw-sdl2 - strip -s $top/src/dosbox-x.exe - - name: Package MinGW32 SDL2 - run: | - top=`pwd` - mkdir -p $top/package/mingw-build/mingw-sdl2/drivez - mkdir -p $top/package/mingw-build/mingw-sdl2/scripts - mkdir -p $top/package/mingw-build/mingw-sdl2/shaders - mkdir -p $top/package/mingw-build/mingw-sdl2/glshaders - mkdir -p $top/package/mingw-build/mingw-sdl2/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/mingw-build/mingw-sdl2/dosbox-x.conf - cp $top/src/dosbox-x.exe $top/package/mingw-build/mingw-sdl2/dosbox-x.exe - cp $top/CHANGELOG $top/package/mingw-build/mingw-sdl2/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/mingw-build/mingw-sdl2/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/mingw-build/mingw-sdl2/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/mingw-build/mingw-sdl2/README.txt - cp $top/contrib/windows/installer/inpout32.dll $top/package/mingw-build/mingw-sdl2/inpout32.dll - cp $top/contrib/fonts/FREECG98.BMP $top/package/mingw-build/mingw-sdl2/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/mingw-build/mingw-sdl2/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/mingw-build/mingw-sdl2/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/mingw-build/mingw-sdl2/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/mingw-build/mingw-sdl2/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/mingw-build/mingw-sdl2/scripts/ - cp $top/contrib/windows/shaders/* $top/package/mingw-build/mingw-sdl2/shaders/ - cp $top/contrib/glshaders/* $top/package/mingw-build/mingw-sdl2/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/mingw-build/mingw-sdl2/languages/ - cp $top/COPYING $top/package/COPYING - cd $top/package/ - $top/vs/tool/zip.exe -r -9 $top/dosbox-x-mingw-win32-${{ env.timestamp }}.zip * - cd $top - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-mingw-win32-${{ env.timestamp }} - path: ${{ github.workspace }}/package/ - - name: Upload release package - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: dosbox-x-mingw-win32-${{ env.timestamp }}.zip - MinGW32_CI_lowend_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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: windows-latest - defaults: - run: - shell: msys2 {0} - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - uses: msys2/setup-msys2@v2 - with: - msystem: MINGW32 - update: true - install: git make mingw-w64-i686-libtool autoconf automake p7zip - - 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=`echo ${GITHUB_SHA} | cut -c1-7` - 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 - sed -i -e "s/#define OS_PLATFORM \"MinGW\"/#define OS_PLATFORM \"MinGWLE\"/" include/version_string.h - sed -i -e "s/#define OS_PLATFORM_LONG \"MinGW\"/#define OS_PLATFORM_LONG \"MinGW Low-end\"/" include/version_string.h - - name: setup lowend build environment - run: | - top=`pwd` - echo "${top}" - export "MSYSTEM_PREFIX=/d/a/_temp/msys64/mingw32" - echo "path=$PATH" - cd ${MSYSTEM_PREFIX}/.. - rm -rf /d/a/_temp/msys64/mingw32 - mkdir mingw32 - 7z x $top/build-scripts/mingw/lowend-bin/i686-7.3.0-release-posix-dwarf-rt_v5-rev0+nasm.7z -o${MSYSTEM_PREFIX} - # cp $top/build-scripts/mingw/lowend-bin/make.exe ${MSYSTEM_PREFIX}/bin/make.exe - echo "MSYSTEM_PREFIX=${MSYSTEM_PREFIX}" - chmod +x ${MSYSTEM_PREFIX}/bin/*.* - chmod +x ${MSYSTEM_PREFIX}/i686-w64-mingw32/bin/*.* - chmod +x ${MSYSTEM_PREFIX}/opt/bin/*.* - - name: Build MinGW32 SDL1 - run: | - top=`pwd` - export "MSYSTEM_PREFIX=/d/a/_temp/msys64/mingw32" - ./build-mingw - strip -s $top/src/dosbox-x.exe - - name: Package MinGW32 lowend SDL1 - run: | - top=`pwd` - mkdir -p $top/package/mingw-build/mingw/drivez - mkdir -p $top/package/mingw-build/mingw/scripts - mkdir -p $top/package/mingw-build/mingw/shaders - mkdir -p $top/package/mingw-build/mingw/glshaders - mkdir -p $top/package/mingw-build/mingw/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/mingw-build/mingw/dosbox-x.conf - cp $top/src/dosbox-x.exe $top/package/mingw-build/mingw/dosbox-x.exe - cp $top/CHANGELOG $top/package/mingw-build/mingw/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/mingw-build/mingw/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/mingw-build/mingw/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/mingw-build/mingw/README.txt - cp $top/contrib/windows/installer/inpout32.dll $top/package/mingw-build/mingw/inpout32.dll - cp $top/contrib/fonts/FREECG98.BMP $top/package/mingw-build/mingw/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/mingw-build/mingw/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/mingw-build/mingw/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/mingw-build/mingw/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/mingw-build/mingw/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/mingw-build/mingw/scripts/ - cp $top/contrib/windows/shaders/* $top/package/mingw-build/mingw/shaders/ - cp $top/contrib/glshaders/* $top/package/mingw-build/mingw/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/mingw-build/mingw/languages/ - - name: Build MinGW32 lowend SDL2 - run: | - top=`pwd` - export "MSYSTEM_PREFIX=/d/a/_temp/msys64/mingw32" - ./build-mingw-sdl2 - strip -s $top/src/dosbox-x.exe - - name: Package MinGW32 lowend SDL2 - run: | - top=`pwd` - mkdir -p $top/package/mingw-build/mingw-sdl2/drivez - mkdir -p $top/package/mingw-build/mingw-sdl2/scripts - mkdir -p $top/package/mingw-build/mingw-sdl2/shaders - mkdir -p $top/package/mingw-build/mingw-sdl2/glshaders - mkdir -p $top/package/mingw-build/mingw-sdl2/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/mingw-build/mingw-sdl2/dosbox-x.conf - cp $top/src/dosbox-x.exe $top/package/mingw-build/mingw-sdl2/dosbox-x.exe - cp $top/CHANGELOG $top/package/mingw-build/mingw-sdl2/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/mingw-build/mingw-sdl2/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/mingw-build/mingw-sdl2/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/mingw-build/mingw-sdl2/README.txt - cp $top/contrib/windows/installer/inpout32.dll $top/package/mingw-build/mingw-sdl2/inpout32.dll - cp $top/contrib/fonts/FREECG98.BMP $top/package/mingw-build/mingw-sdl2/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/mingw-build/mingw-sdl2/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/mingw-build/mingw-sdl2/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/mingw-build/mingw-sdl2/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/mingw-build/mingw-sdl2/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/mingw-build/mingw-sdl2/scripts/ - cp $top/contrib/windows/shaders/* $top/package/mingw-build/mingw-sdl2/shaders/ - cp $top/contrib/glshaders/* $top/package/mingw-build/mingw-sdl2/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/mingw-build/mingw-sdl2/languages/ - cp $top/COPYING $top/package/COPYING - cd $top/package/ - $top/vs/tool/zip.exe -r -9 $top/dosbox-x-mingw-win32-lowend-${{ env.timestamp }}.zip * - cd $top - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-mingw-win32-lowend-${{ env.timestamp }} - path: ${{ github.workspace }}/package/ - - name: Upload release package - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: dosbox-x-mingw-win32-lowend-${{ env.timestamp }}.zip - MinGW32_CI_lowend9x_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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: windows-latest - defaults: - run: - shell: msys2 {0} - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - uses: msys2/setup-msys2@v2 - with: - msystem: MINGW32 - update: true - install: git make mingw-w64-i686-libtool autoconf automake p7zip - - 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=`echo ${GITHUB_SHA} | cut -c1-7` - 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 - sed -i -e "s/#define OS_PLATFORM \"MinGW\"/#define OS_PLATFORM \"MinGW9x\"/" include/version_string.h - sed -i -e "s/#define OS_PLATFORM_LONG \"MinGW\"/#define OS_PLATFORM_LONG \"MinGW Low-end 9x\"/" include/version_string.h - - name: setup lowend9x build environment - run: | - top=`pwd` - echo "${top}" - export "MSYSTEM_PREFIX=/d/a/_temp/msys64/mingw32" - echo "path=$PATH" - cd ${MSYSTEM_PREFIX}/.. - rm -rf /d/a/_temp/msys64/mingw32 - wget https://github.com/crazii/MINGW-toolchains-w9x/releases/download/v1.0.1-w95nt/mingw32.7z - 7z x mingw32.7z -o./ - echo "MSYSTEM_PREFIX=${MSYSTEM_PREFIX}" - chmod +x ${MSYSTEM_PREFIX}/bin/*.* - chmod +x ${MSYSTEM_PREFIX}/i686-w64-mingw32/bin/*.* - - name: Build MinGW32 lowend9x - run: | - top=`pwd` - export "MSYSTEM_PREFIX=/d/a/_temp/msys64/mingw32" - ./build-mingw-lowend9x - strip -s $top/src/dosbox-x.exe - - name: Package MinGW32 lowend9x - run: | - top=`pwd` - mkdir -p $top/package/mingw-build/mingw/drivez - mkdir -p $top/package/mingw-build/mingw/scripts - mkdir -p $top/package/mingw-build/mingw/shaders - mkdir -p $top/package/mingw-build/mingw/glshaders - mkdir -p $top/package/mingw-build/mingw/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/mingw-build/mingw/dosbox-x.conf - cp $top/src/dosbox-x.exe $top/package/mingw-build/mingw/dosbox-x.exe - cp $top/CHANGELOG $top/package/mingw-build/mingw/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/mingw-build/mingw/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/mingw-build/mingw/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/mingw-build/mingw/README.txt - cp $top/contrib/windows/installer/inpout32.dll $top/package/mingw-build/mingw/inpout32.dll - cp $top/contrib/fonts/FREECG98.BMP $top/package/mingw-build/mingw/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/mingw-build/mingw/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/mingw-build/mingw/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/mingw-build/mingw/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/mingw-build/mingw/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/mingw-build/mingw/scripts/ - cp $top/contrib/windows/shaders/* $top/package/mingw-build/mingw/shaders/ - cp $top/contrib/glshaders/* $top/package/mingw-build/mingw/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/mingw-build/mingw/languages/ - cp $top/COPYING $top/package/COPYING - cd $top/package/ - $top/vs/tool/zip.exe -r -9 $top/dosbox-x-mingw-win32-lowend9x-${{ env.timestamp }}.zip * - cd $top - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-mingw-win32-lowend9x-${{ env.timestamp }} - path: ${{ github.workspace }}/package/ - - name: Upload release package - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: dosbox-x-mingw-win32-lowend9x-${{ env.timestamp }}.zip diff --git a/.github/workflows/mingw64.yml b/.github/workflows/mingw64.yml deleted file mode 100644 index fd33aeb219..0000000000 --- a/.github/workflows/mingw64.yml +++ /dev/null @@ -1,113 +0,0 @@ -name: 64-bit MinGW builds -on: - push: - pull_request: - workflow_dispatch: -permissions: - contents: read - -jobs: - 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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: windows-latest - defaults: - run: - shell: msys2 {0} - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - 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=`echo ${GITHUB_SHA} | cut -c1-7` - 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 - - name: Package MinGW64 SDL1 - run: | - top=`pwd` - mkdir -p $top/package/mingw-build/mingw/drivez - mkdir -p $top/package/mingw-build/mingw/scripts - mkdir -p $top/package/mingw-build/mingw/shaders - mkdir -p $top/package/mingw-build/mingw/glshaders - mkdir -p $top/package/mingw-build/mingw/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/mingw-build/mingw/dosbox-x.conf - cp $top/src/dosbox-x.exe $top/package/mingw-build/mingw/dosbox-x.exe - cp $top/CHANGELOG $top/package/mingw-build/mingw/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/mingw-build/mingw/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/mingw-build/mingw/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/mingw-build/mingw/README.txt - cp $top/contrib/windows/installer/inpoutx64.dll $top/package/mingw-build/mingw/inpoutx64.dll - cp $top/contrib/fonts/FREECG98.BMP $top/package/mingw-build/mingw/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/mingw-build/mingw/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/mingw-build/mingw/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/mingw-build/mingw/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/mingw-build/mingw/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/mingw-build/mingw/scripts/ - cp $top/contrib/windows/shaders/* $top/package/mingw-build/mingw/shaders/ - cp $top/contrib/glshaders/* $top/package/mingw-build/mingw/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/mingw-build/mingw/languages/ - - name: Build MinGW64 SDL2 - run: | - top=`pwd` - ./build-mingw-sdl2 - strip -s $top/src/dosbox-x.exe - - name: Package MinGW64 SDL2 - run: | - top=`pwd` - mkdir -p $top/package/mingw-build/mingw-sdl2/drivez - mkdir -p $top/package/mingw-build/mingw-sdl2/scripts - mkdir -p $top/package/mingw-build/mingw-sdl2/shaders - mkdir -p $top/package/mingw-build/mingw-sdl2/glshaders - mkdir -p $top/package/mingw-build/mingw-sdl2/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/mingw-build/mingw-sdl2/dosbox-x.conf - cp $top/src/dosbox-x.exe $top/package/mingw-build/mingw-sdl2/dosbox-x.exe - cp $top/CHANGELOG $top/package/mingw-build/mingw-sdl2/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/mingw-build/mingw-sdl2/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/mingw-build/mingw-sdl2/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/mingw-build/mingw-sdl2/README.txt - cp $top/contrib/windows/installer/inpoutx64.dll $top/package/mingw-build/mingw-sdl2/inpoutx64.dll - cp $top/contrib/fonts/FREECG98.BMP $top/package/mingw-build/mingw-sdl2/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/mingw-build/mingw-sdl2/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/mingw-build/mingw-sdl2/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/mingw-build/mingw-sdl2/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/mingw-build/mingw-sdl2/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/mingw-build/mingw-sdl2/scripts/ - cp $top/contrib/windows/shaders/* $top/package/mingw-build/mingw-sdl2/shaders/ - cp $top/contrib/glshaders/* $top/package/mingw-build/mingw-sdl2/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/mingw-build/mingw-sdl2/languages/ - cp $top/COPYING $top/package/COPYING - cd $top/package/ - $top/vs/tool/zip.exe -r -9 $top/dosbox-x-mingw-win64-${{ env.timestamp }}.zip * - cd $top - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-mingw-win64-${{ env.timestamp }} - path: ${{ github.workspace }}/package/ - - name: Upload release package - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: dosbox-x-mingw-win64-${{ env.timestamp }}.zip diff --git a/.github/workflows/vsbuild32.yml b/.github/workflows/vsbuild32.yml deleted file mode 100644 index 1c8c3b66f8..0000000000 --- a/.github/workflows/vsbuild32.yml +++ /dev/null @@ -1,219 +0,0 @@ -name: 32-bit Visual Studio builds -on: - push: - pull_request: - workflow_dispatch: -permissions: - contents: read - -jobs: - MSBuild32_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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: windows-latest - defaults: - run: - shell: pwsh - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - uses: microsoft/setup-msbuild@v2 - - name: Prepare Visual Studio Win32 - 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.010.0.22000.0> $GITHUB_ENV - export shortsha=`echo ${GITHUB_SHA} | cut -c1-7` - 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 Win32 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: Package Visual Studio Win32 SDL1 - shell: bash - run: | - top=`pwd` - $top/bin/Win32/Release/dosbox-x.exe -tests -set waitonerror=false -set logfile=tests.log || (echo Unit test completed: failure && exit 1) - cat tests.log - mkdir -p $top/package/bin/Win32/Release/drivez - mkdir -p $top/package/bin/Win32/Release/scripts - mkdir -p $top/package/bin/Win32/Release/shaders - mkdir -p $top/package/bin/Win32/Release/glshaders - mkdir -p $top/package/bin/Win32/Release/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/bin/Win32/Release/dosbox-x.conf - cp $top/bin/Win32/Release/dosbox-x.exe $top/package/bin/Win32/Release/dosbox-x.exe - cp $top/CHANGELOG $top/package/bin/Win32/Release/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/bin/Win32/Release/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/bin/Win32/Release/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/bin/Win32/Release/README.txt - cp $top/contrib/windows/installer/inpout32.dll $top/package/bin/Win32/Release/inpout32.dll - cp $top/contrib/fonts/FREECG98.BMP $top/package/bin/Win32/Release/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/bin/Win32/Release/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/bin/Win32/Release/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/bin/Win32/Release/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/bin/Win32/Release/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/bin/Win32/Release/scripts/ - cp $top/contrib/windows/shaders/* $top/package/bin/Win32/Release/shaders/ - cp $top/contrib/glshaders/* $top/package/bin/Win32/Release/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/bin/Win32/Release/languages/ - - name: Build Visual Studio Win32 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: Package Visual Studio Win32 SDL2 - shell: bash - run: | - top=`pwd` - $top/bin/Win32/"Release SDL2"/dosbox-x.exe -tests -set waitonerror=false -set logfile=tests.log || (echo Unit test completed: failure && exit 1) - cat tests.log - mkdir -p $top/package/bin/Win32/"Release SDL2"/drivez - mkdir -p $top/package/bin/Win32/"Release SDL2"/scripts - mkdir -p $top/package/bin/Win32/"Release SDL2"/shaders - mkdir -p $top/package/bin/Win32/"Release SDL2"/glshaders - mkdir -p $top/package/bin/Win32/"Release SDL2"/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/bin/Win32/"Release SDL2"/dosbox-x.conf - cp $top/bin/Win32/"Release SDL2"/dosbox-x.exe $top/package/bin/Win32/"Release SDL2"/dosbox-x.exe - cp $top/CHANGELOG $top/package/bin/Win32/"Release SDL2"/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/bin/Win32/"Release SDL2"/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/bin/Win32/"Release SDL2"/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/bin/Win32/"Release SDL2"/README.txt - cp $top/contrib/windows/installer/inpout32.dll $top/package/bin/Win32/"Release SDL2"/inpout32.dll - cp $top/contrib/fonts/FREECG98.BMP $top/package/bin/Win32/"Release SDL2"/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/bin/Win32/"Release SDL2"/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/bin/Win32/"Release SDL2"/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/bin/Win32/"Release SDL2"/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/bin/Win32/"Release SDL2"/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/bin/Win32/"Release SDL2"/scripts/ - cp $top/contrib/windows/shaders/* $top/package/bin/Win32/"Release SDL2"/shaders/ - cp $top/contrib/glshaders/* $top/package/bin/Win32/"Release SDL2"/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/bin/Win32/"Release SDL2"/languages/ - cp $top/COPYING $top/package/COPYING - cd $top/package/ - $top/vs/tool/zip.exe -r -9 $top/dosbox-x-vsbuild-win32-${{ env.timestamp }}.zip * - cd $top - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-vsbuild-win32-${{ env.timestamp }} - path: ${{ github.workspace }}/package/ - - name: Upload release package - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: dosbox-x-vsbuild-win32-${{ env.timestamp }}.zip - - MSBuild_ARM32_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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: windows-latest - defaults: - run: - shell: pwsh - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - uses: microsoft/setup-msbuild@v2 - - name: Prepare Visual Studio ARM32 - shell: bash - run: | - echo "timestamp=`git show -s --format=%at | xargs -I# date -d @# +%Y%m%d%H%M%S`" >> $GITHUB_ENV - export shortsha=`echo ${GITHUB_SHA} | cut -c1-7` - 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 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: Package Visual Studio ARM32 SDL1 - shell: bash - run: | - top=`pwd` - mkdir -p $top/package/bin/ARM/Release/drivez - mkdir -p $top/package/bin/ARM/Release/scripts - mkdir -p $top/package/bin/ARM/Release/shaders - mkdir -p $top/package/bin/ARM/Release/glshaders - mkdir -p $top/package/bin/ARM/Release/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/bin/ARM/Release/dosbox-x.conf - cp $top/bin/ARM/Release/dosbox-x.exe $top/package/bin/ARM/Release/dosbox-x.exe - cp $top/CHANGELOG $top/package/bin/ARM/Release/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/bin/ARM/Release/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/bin/ARM/Release/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/bin/ARM/Release/README.txt - cp $top/contrib/fonts/FREECG98.BMP $top/package/bin/ARM/Release/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/bin/ARM/Release/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/bin/ARM/Release/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/bin/ARM/Release/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/bin/ARM/Release/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/bin/ARM/Release/scripts/ - cp $top/contrib/windows/shaders/* $top/package/bin/ARM/Release/shaders/ - cp $top/contrib/glshaders/* $top/package/bin/ARM/Release/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/bin/ARM/Release/languages/ - - 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 ARM32 SDL2 - shell: bash - run: | - top=`pwd` - mkdir -p $top/package/bin/ARM/"Release SDL2"/drivez - mkdir -p $top/package/bin/ARM/"Release SDL2"/scripts - mkdir -p $top/package/bin/ARM/"Release SDL2"/shaders - mkdir -p $top/package/bin/ARM/"Release SDL2"/glshaders - mkdir -p $top/package/bin/ARM/"Release SDL2"/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/bin/ARM/"Release SDL2"/dosbox-x.conf - cp $top/bin/ARM/"Release SDL2"/dosbox-x.exe $top/package/bin/ARM/"Release SDL2"/dosbox-x.exe - cp $top/CHANGELOG $top/package/bin/ARM/"Release SDL2"/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/bin/ARM/"Release SDL2"/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/bin/ARM/"Release SDL2"/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/bin/ARM/"Release SDL2"/README.txt - cp $top/contrib/fonts/FREECG98.BMP $top/package/bin/ARM/"Release SDL2"/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/bin/ARM/"Release SDL2"/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/bin/ARM/"Release SDL2"/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/bin/ARM/"Release SDL2"/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/bin/ARM/"Release SDL2"/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/bin/ARM/"Release SDL2"/scripts/ - cp $top/contrib/windows/shaders/* $top/package/bin/ARM/"Release SDL2"/shaders/ - cp $top/contrib/glshaders/* $top/package/bin/ARM/"Release SDL2"/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/bin/ARM/"Release SDL2"/languages/ - cp $top/COPYING $top/package/COPYING - cd $top/package/ - $top/vs/tool/zip.exe -r -9 $top/dosbox-x-vsbuild-arm32-${{ env.timestamp }}.zip * - cd $top - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-vsbuild-arm32-${{ env.timestamp }} - path: ${{ github.workspace }}/package/ - - name: Upload release package - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: dosbox-x-vsbuild-arm32-${{ env.timestamp }}.zip diff --git a/.github/workflows/vsbuild64.yml b/.github/workflows/vsbuild64.yml deleted file mode 100644 index acdbbcee02..0000000000 --- a/.github/workflows/vsbuild64.yml +++ /dev/null @@ -1,219 +0,0 @@ -name: 64-bit Visual Studio builds -on: - push: - pull_request: - workflow_dispatch: -permissions: - contents: read - -jobs: - MSBuild64_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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: windows-latest - defaults: - run: - shell: pwsh - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - uses: microsoft/setup-msbuild@v2 - - name: Prepare Visual Studio Win64 - 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.010.0.22000.0> $GITHUB_ENV - export shortsha=`echo ${GITHUB_SHA} | cut -c1-7` - 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 Win64 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: Package Visual Studio Win64 SDL1 - 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) - cat tests.log - mkdir -p $top/package/bin/x64/Release/drivez - mkdir -p $top/package/bin/x64/Release/scripts - mkdir -p $top/package/bin/x64/Release/shaders - mkdir -p $top/package/bin/x64/Release/glshaders - mkdir -p $top/package/bin/x64/Release/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/bin/x64/Release/dosbox-x.conf - cp $top/bin/x64/Release/dosbox-x.exe $top/package/bin/x64/Release/dosbox-x.exe - cp $top/CHANGELOG $top/package/bin/x64/Release/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/bin/x64/Release/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/bin/x64/Release/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/bin/x64/Release/README.txt - cp $top/contrib/windows/installer/inpoutx64.dll $top/package/bin/x64/Release/inpoutx64.dll - cp $top/contrib/fonts/FREECG98.BMP $top/package/bin/x64/Release/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/bin/x64/Release/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/bin/x64/Release/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/bin/x64/Release/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/bin/x64/Release/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/bin/x64/Release/scripts/ - cp $top/contrib/windows/shaders/* $top/package/bin/x64/Release/shaders/ - cp $top/contrib/glshaders/* $top/package/bin/x64/Release/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/bin/x64/Release/languages/ - - name: Build Visual Studio Win64 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: Package Visual Studio Win64 SDL2 - shell: bash - run: | - top=`pwd` - $top/bin/x64/"Release SDL2"/dosbox-x.exe -tests -set waitonerror=false -set logfile=tests.log || (echo Unit test completed: failure && exit 1) - cat tests.log - mkdir -p $top/package/bin/x64/"Release SDL2"/drivez - mkdir -p $top/package/bin/x64/"Release SDL2"/scripts - mkdir -p $top/package/bin/x64/"Release SDL2"/shaders - mkdir -p $top/package/bin/x64/"Release SDL2"/glshaders - mkdir -p $top/package/bin/x64/"Release SDL2"/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/bin/x64/"Release SDL2"/dosbox-x.conf - cp $top/bin/x64/"Release SDL2"/dosbox-x.exe $top/package/bin/x64/"Release SDL2"/dosbox-x.exe - cp $top/CHANGELOG $top/package/bin/x64/"Release SDL2"/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/bin/x64/"Release SDL2"/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/bin/x64/"Release SDL2"/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/bin/x64/"Release SDL2"/README.txt - cp $top/contrib/windows/installer/inpoutx64.dll $top/package/bin/x64/"Release SDL2"/inpoutx64.dll - cp $top/contrib/fonts/FREECG98.BMP $top/package/bin/x64/"Release SDL2"/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/bin/x64/"Release SDL2"/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/bin/x64/"Release SDL2"/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/bin/x64/"Release SDL2"/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/bin/x64/"Release SDL2"/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/bin/x64/"Release SDL2"/scripts/ - cp $top/contrib/windows/shaders/* $top/package/bin/x64/"Release SDL2"/shaders/ - cp $top/contrib/glshaders/* $top/package/bin/x64/"Release SDL2"/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/bin/x64/"Release SDL2"/languages/ - cp $top/COPYING $top/package/COPYING - cd $top/package/ - $top/vs/tool/zip.exe -r -9 $top/dosbox-x-vsbuild-win64-${{ env.timestamp }}.zip * - cd $top - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-vsbuild-win64-${{ env.timestamp }} - path: ${{ github.workspace }}/package/ - - name: Upload release package - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: dosbox-x-vsbuild-win64-${{ env.timestamp }}.zip - - MSBuild_ARM64_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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: windows-latest - defaults: - run: - shell: pwsh - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - uses: microsoft/setup-msbuild@v2 - - name: Prepare Visual Studio ARM64 - shell: bash - run: | - echo "timestamp=`git show -s --format=%at | xargs -I# date -d @# +%Y%m%d%H%M%S`" >> $GITHUB_ENV - export shortsha=`echo ${GITHUB_SHA} | cut -c1-7` - 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 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: Package Visual Studio ARM64 SDL1 - shell: bash - run: | - top=`pwd` - mkdir -p $top/package/bin/ARM64/Release/drivez - mkdir -p $top/package/bin/ARM64/Release/scripts - mkdir -p $top/package/bin/ARM64/Release/shaders - mkdir -p $top/package/bin/ARM64/Release/glshaders - mkdir -p $top/package/bin/ARM64/Release/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/bin/ARM64/Release/dosbox-x.conf - cp $top/bin/ARM64/Release/dosbox-x.exe $top/package/bin/ARM64/Release/dosbox-x.exe - cp $top/CHANGELOG $top/package/bin/ARM64/Release/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/bin/ARM64/Release/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/bin/ARM64/Release/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/bin/ARM64/Release/README.txt - cp $top/contrib/fonts/FREECG98.BMP $top/package/bin/ARM64/Release/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/bin/ARM64/Release/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/bin/ARM64/Release/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/bin/ARM64/Release/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/bin/ARM64/Release/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/bin/ARM64/Release/scripts/ - cp $top/contrib/windows/shaders/* $top/package/bin/ARM64/Release/shaders/ - cp $top/contrib/glshaders/* $top/package/bin/ARM64/Release/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/bin/ARM64/Release/languages/ - - 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: Package Visual Studio ARM64 SDL2 - shell: bash - run: | - top=`pwd` - mkdir -p $top/package/bin/ARM64/"Release SDL2"/drivez - mkdir -p $top/package/bin/ARM64/"Release SDL2"/scripts - mkdir -p $top/package/bin/ARM64/"Release SDL2"/shaders - mkdir -p $top/package/bin/ARM64/"Release SDL2"/glshaders - mkdir -p $top/package/bin/ARM64/"Release SDL2"/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/bin/ARM64/"Release SDL2"/dosbox-x.conf - cp $top/bin/ARM64/"Release SDL2"/dosbox-x.exe $top/package/bin/ARM64/"Release SDL2"/dosbox-x.exe - cp $top/CHANGELOG $top/package/bin/ARM64/"Release SDL2"/CHANGELOG.txt - cp $top/dosbox-x.reference.conf $top/package/bin/ARM64/"Release SDL2"/dosbox-x.reference.conf - cp $top/dosbox-x.reference.full.conf $top/package/bin/ARM64/"Release SDL2"/dosbox-x.reference.full.conf - cp $top/contrib/windows/installer/readme.txt $top/package/bin/ARM64/"Release SDL2"/README.txt - cp $top/contrib/fonts/FREECG98.BMP $top/package/bin/ARM64/"Release SDL2"/FREECG98.BMP - cp $top/contrib/fonts/wqy_1?pt.bdf $top/package/bin/ARM64/"Release SDL2"/ - cp $top/contrib/fonts/Nouveau_IBM.ttf $top/package/bin/ARM64/"Release SDL2"/Nouveau_IBM.ttf - cp $top/contrib/fonts/SarasaGothicFixed.ttf $top/package/bin/ARM64/"Release SDL2"/SarasaGothicFixed.ttf - cp $top/contrib/windows/installer/drivez_readme.txt $top/package/bin/ARM64/"Release SDL2"/drivez/readme.txt - cp $top/contrib/windows/installer/windows_explorer_context_menu*.bat $top/package/bin/ARM64/"Release SDL2"/scripts/ - cp $top/contrib/windows/shaders/* $top/package/bin/ARM64/"Release SDL2"/shaders/ - cp $top/contrib/glshaders/* $top/package/bin/ARM64/"Release SDL2"/glshaders/ - cp $top/contrib/translations/*/*.lng $top/package/bin/ARM64/"Release SDL2"/languages/ - cp $top/COPYING $top/package/COPYING - cd $top/package/ - $top/vs/tool/zip.exe -r -9 $top/dosbox-x-vsbuild-arm64-${{ env.timestamp }}.zip * - cd $top - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-vsbuild-arm64-${{ env.timestamp }} - path: ${{ github.workspace }}/package/ - - name: Upload release package - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: dosbox-x-vsbuild-arm64-${{ env.timestamp }}.zip diff --git a/.github/workflows/vsbuild_xp.yml b/.github/workflows/vsbuild_xp.yml deleted file mode 100644 index e38c7ab4c5..0000000000 --- a/.github/workflows/vsbuild_xp.yml +++ /dev/null @@ -1,299 +0,0 @@ -name: Visual Studio builds for WinXP -on: - push: - pull_request: - workflow_dispatch: -permissions: - contents: read - -jobs: - MSBuild_XP_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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: windows-latest - defaults: - run: - shell: pwsh - steps: - - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.12.1 - with: - access_token: ${{ github.token }} - - uses: actions/checkout@v4 - - uses: microsoft/setup-msbuild@v2 - - name: Install v141 build tools - run: | - Set-Location "C:\Program Files (x86)\Microsoft Visual Studio\Installer\" - $InstallPath = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise" - $componentsToAdd= @( - "Microsoft.VisualStudio.Component.VC.v141.x86.x64" - "Microsoft.VisualStudio.Component.VC.v141.MFC" - "Microsoft.VisualStudio.Component.WinXP" - ) - [string]$workloadArgs = $componentsToAdd | ForEach-Object {" --add " + $_} - $Arguments = ('/c', "vs_installer.exe", 'modify', '--installPath', "`"$InstallPath`"",$workloadArgs, '--quiet', '--norestart', '--nocache') - # should be run twice - $process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden - $process = Start-Process -FilePath cmd.exe -ArgumentList $Arguments -Wait -PassThru -WindowStyle Hidden - - name: Prepare Visual Studio build for WinXP - shell: bash - run: | - echo "timestamp=`git show -s --format=%at | xargs -I# date -d @# +%Y%m%d%H%M%S`" >> $GITHUB_ENV - 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/v14[2-9]/v141/g;s/>10.010.0.22000.0> $GITHUB_ENV - export shortsha=`echo ${GITHUB_SHA} | cut -c1-7` - 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 Win32 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 Win32 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 Win64 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 Win64 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: Package Visual Studio build for WinXP - shell: bash - run: | - top=`pwd` - #$top/bin/Win32/Release/dosbox-x.exe -tests -set waitonerror=false -set logfile=tests.log || (echo Unit test completed: failure && exit 1) - #cat tests.log - 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 - cp $top/bin/Win32/Release/dosbox-x.exe $top/package/dosbox-x_XPx86_SDL1.exe - cp $top/bin/Win32/"Release SDL2"/dosbox-x.exe $top/package/dosbox-x_XPx86_SDL2.exe - cp $top/bin/x64/Release/dosbox-x.exe $top/package/dosbox-x_XPx64_SDL1.exe - cp $top/bin/x64/"Release SDL2"/dosbox-x.exe $top/package/dosbox-x_XPx64_SDL2.exe - cp $top/bin/Win32/Release/dosbox-x.exe $top/vs-bin/dosbox-x_XPx86_SDL1.exe - cp $top/bin/Win32/"Release SDL2"/dosbox-x.exe $top/vs-bin/dosbox-x_XPx86_SDL2.exe - cp $top/bin/x64/Release/dosbox-x.exe $top/vs-bin/dosbox-x_XPx64_SDL1.exe - cp $top/bin/x64/"Release SDL2"/dosbox-x.exe $top/vs-bin/dosbox-x_XPx64_SDL2.exe - 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/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/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-XP-${{ env.timestamp }}.zip * - cd $top - - name: Upload preview package - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-vsbuild-XP-${{ env.timestamp }} - path: ${{ github.workspace }}/package/ - - name: Upload release package - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: dosbox-x-vsbuild-XP-${{ env.timestamp }}.zip - - 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-xp-bin-${{ 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-xp-bin-r-${{ github.sha }} - MinGW32_lowend_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 - if: github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - runs-on: windows-latest - defaults: - run: - shell: msys2 {0} - steps: - - uses: actions/checkout@v4 - - uses: msys2/setup-msys2@v2 - with: - msystem: MINGW32 - update: true - install: git make mingw-w64-i686-libtool autoconf automake p7zip - - 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=`echo ${GITHUB_SHA} | cut -c1-7` - 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 - sed -i -e "s/#define OS_PLATFORM \"MinGW\"/#define OS_PLATFORM \"MinGWLE\"/" include/version_string.h - sed -i -e "s/#define OS_PLATFORM_LONG \"MinGW\"/#define OS_PLATFORM_LONG \"MinGW Low-end\"/" include/version_string.h - - name: setup lowend build environment - run: | - top=`pwd` - echo "${top}" - export "MSYSTEM_PREFIX=/d/a/_temp/msys64/mingw32" - echo "path=$PATH" - cd ${MSYSTEM_PREFIX}/.. - rm -rf /d/a/_temp/msys64/mingw32 - mkdir mingw32 - 7z x $top/build-scripts/mingw/lowend-bin/i686-7.3.0-release-posix-dwarf-rt_v5-rev0+nasm.7z -o${MSYSTEM_PREFIX} - # cp $top/build-scripts/mingw/lowend-bin/make.exe ${MSYSTEM_PREFIX}/bin/make.exe - echo "MSYSTEM_PREFIX=${MSYSTEM_PREFIX}" - chmod +x ${MSYSTEM_PREFIX}/bin/*.* - chmod +x ${MSYSTEM_PREFIX}/i686-w64-mingw32/bin/*.* - chmod +x ${MSYSTEM_PREFIX}/opt/bin/*.* - - name: Build MinGW32 lowend SDL2 - run: | - top=`pwd` - export "MSYSTEM_PREFIX=/d/a/_temp/msys64/mingw32" - ./build-mingw-sdl2 - strip -s src/dosbox-x.exe - mkdir -p mingw-bin - cp src/dosbox-x.exe mingw-bin/dosbox-x_mingw_lowend_SDL2.exe - - name: Build MinGW32 lowend SDL1 - run: | - export "MSYSTEM_PREFIX=/d/a/_temp/msys64/mingw32" - ./build-mingw - strip -s src/dosbox-x.exe - cp src/dosbox-x.exe mingw-bin/dosbox-x_mingw_lowend_SDL1.exe - - name: Cache MinGW32 lowend builds (nightly) - if: ${{ !startsWith(github.ref, 'refs/tags/') }} - uses: actions/cache/save@v4 - with: - path: ${{ github.workspace }}/mingw-bin - key: mingw-xp-bin-${{ github.sha }} - - name: Cache MinGW32 lowend builds (release) - if: ${{ startsWith(github.ref, 'refs/tags/') }} - uses: actions/cache/save@v4 - with: - path: ${{ github.workspace }}/mingw-bin - key: mingw-xp-bin-r-${{ github.sha }} - build-XP-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: [MSBuild_XP_CI_build, MinGW32_lowend_CI_build] - env: - GH_TOKEN: ${{ github.token }} - defaults: - run: - shell: bash - steps: - - uses: actions/checkout@v4 - - 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-xp-bin-${{ 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-xp-bin-r-${{ github.sha }} - - name: Restore MinGW builds (nightly) - if: ${{ !startsWith(github.ref, 'refs/tags/') }} - uses: actions/cache/restore@v4 - with: - path: ${{ github.workspace }}/mingw-bin - key: mingw-xp-bin-${{ github.sha }} - - name: Restore MinGW builds (release) - if: ${{ startsWith(github.ref, 'refs/tags/') }} - uses: actions/cache/restore@v4 - with: - path: ${{ github.workspace }}/mingw-bin - key: mingw-xp-bin-r-${{ github.sha }} - - 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-setupXP.iss - - name: Prepare files - shell: bash - run: | - echo "timestamp=`git show -s --format=%at | xargs -I# date -d @# +%Y%m%d%H%M%S`" >> $GITHUB_ENV - cp dosbox-*.conf contrib/windows/installer/ - #ls -lg vs-bin - #ls -lg mingw-bin - mkdir -p contrib/windows/installer/WinXP - cp vs-bin/*.exe contrib/windows/installer/WinXP - cp mingw-bin/*.exe contrib/windows/installer/WinXP - #ls -lg contrib/windows/installer/WinXP - cd contrib/windows/installer/ - ./ISCC.exe ./DOSBox-X-setupXP.iss - - name: Upload preview installer - uses: actions/upload-artifact@v4.3.4 - with: - name: dosbox-x-winXP-${{ env.timestamp }}-setup.exe - path: contrib/windows/installer/dosbox-x-winXP-*.exe - - name: Upload XP build installer release version - uses: softprops/action-gh-release@v2 - if: startsWith(github.ref, 'refs/tags/') - with: - files: | - contrib/windows/installer/dosbox-x-winXP-*.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-xp-bin-${{ github.sha }} --confirm - gh actions-cache delete vs-xp-bin-${{ 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-xp-bin-r-${{ github.sha }} --confirm - gh actions-cache delete vs-xp-bin-r-${{ github.sha }} --confirm - gh actions-cache list - env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - diff --git a/.github/workflows/windows-installers.yml b/.github/workflows/windows-installers.yml deleted file mode 100644 index 7abb418c0d..0000000000 --- a/.github/workflows/windows-installers.yml +++ /dev/null @@ -1,423 +0,0 @@ -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/cancel-workflow-action@0.12.1 - 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.010.0.22000.0> $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/upload-artifact@v4.3.4 - 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/upload-artifact@v4.3.4 - 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/cancel-workflow-action@0.12.1 - 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/cancel-workflow-action@0.12.1 - 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/upload-artifact@v4.3.4 - 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/upload-artifact@v4.3.4 - 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 }} diff --git a/.gitignore b/.gitignore index 5f76289604..cd47750bcd 100644 --- a/.gitignore +++ b/.gitignore @@ -140,3 +140,6 @@ contrib/macos/dosbox-x.plist /dosbox-x.conf /src/dosbox-x.conf +# lsp cache +.cache/ +