From 0b857f127fe75c96f595a230c75096040e2a9597 Mon Sep 17 00:00:00 2001 From: james Date: Wed, 26 Dec 2018 15:49:57 -0800 Subject: [PATCH 01/17] Update capslock state on window re-focus --- src/sdl/i_video.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/sdl/i_video.c b/src/sdl/i_video.c index 6a5ec3daa..dbaa7037a 100644 --- a/src/sdl/i_video.c +++ b/src/sdl/i_video.c @@ -580,6 +580,8 @@ static void Impl_HandleWindowEvent(SDL_WindowEvent evt) if (cv_usemouse.value) I_StartupMouse(); } //else firsttimeonmouse = SDL_FALSE; + + capslock = !!( SDL_GetModState() & KMOD_CAPS );// in case CL changes } else if (!mousefocus && !kbfocus) { From 6dddf61265e5d3ab192f52c2457fbeaac37b1366 Mon Sep 17 00:00:00 2001 From: Steel Titanium Date: Thu, 27 Dec 2018 00:56:33 -0500 Subject: [PATCH 02/17] Target nocona for 64-bit builds --- src/Makefile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Makefile b/src/Makefile index fbf75f26c..74c86d915 100644 --- a/src/Makefile +++ b/src/Makefile @@ -294,6 +294,9 @@ else M5=-mpentium M4=-m486 endif +else + M5=-march=nocona + M4=-mnocona endif ifndef NOASM From 4a05fd5f269bfd6f50a833e030dcb3928f86acff Mon Sep 17 00:00:00 2001 From: Steel Titanium Date: Thu, 27 Dec 2018 18:54:10 -0500 Subject: [PATCH 03/17] More explict check --- src/Makefile | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Makefile b/src/Makefile index 74c86d915..37f883e6f 100644 --- a/src/Makefile +++ b/src/Makefile @@ -104,6 +104,7 @@ endif ifdef LINUX64 LINUX=1 NONX86=1 +64BIT=1 endif ifdef HAIKU @@ -178,6 +179,7 @@ endif #ifdef MINGW ifdef MINGW64 MINGW=1 +64BIT=1 include win32/Makefile.cfg endif #ifdef MINGW64 @@ -289,14 +291,13 @@ OPTS += -DCOMPVERSION ifndef NONX86 ifndef GCC29 M5=-march=pentium - M4=-march=i486 else M5=-mpentium - M4=-m486 endif -else +endif + +ifdef 64BIT M5=-march=nocona - M4=-mnocona endif ifndef NOASM From 5ba086387682b49c7250185a7e5999e1b5cee4b8 Mon Sep 17 00:00:00 2001 From: Steel Titanium Date: Thu, 27 Dec 2018 19:00:18 -0500 Subject: [PATCH 04/17] Stupid restrictions --- src/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Makefile b/src/Makefile index 37f883e6f..a6f38ed24 100644 --- a/src/Makefile +++ b/src/Makefile @@ -104,7 +104,7 @@ endif ifdef LINUX64 LINUX=1 NONX86=1 -64BIT=1 +X86_64=1 endif ifdef HAIKU @@ -179,7 +179,7 @@ endif #ifdef MINGW ifdef MINGW64 MINGW=1 -64BIT=1 +X86_64=1 include win32/Makefile.cfg endif #ifdef MINGW64 @@ -296,7 +296,7 @@ else endif endif -ifdef 64BIT +ifdef X86_64 M5=-march=nocona endif From d048e7cbec2628aa54414372990e0828a26454c1 Mon Sep 17 00:00:00 2001 From: Steel Titanium Date: Thu, 27 Dec 2018 21:17:02 -0500 Subject: [PATCH 05/17] Don't set if LINUX64 is defined --- src/Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Makefile b/src/Makefile index a6f38ed24..7ca07862e 100644 --- a/src/Makefile +++ b/src/Makefile @@ -104,7 +104,6 @@ endif ifdef LINUX64 LINUX=1 NONX86=1 -X86_64=1 endif ifdef HAIKU From 4cfacf5cdeb685f7005cd62b748dfda6b9f7fdb7 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Sat, 29 Dec 2018 21:14:50 -0500 Subject: [PATCH 06/17] Check for NONX86 in addition to X86_64; move MINGW64 subflags from win32/Makefile.cfg to Makefile --- src/Makefile | 26 +++++++++++++++----------- src/win32/Makefile.cfg | 2 -- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/src/Makefile b/src/Makefile index 7ca07862e..bfce9cda2 100644 --- a/src/Makefile +++ b/src/Makefile @@ -104,8 +104,18 @@ endif ifdef LINUX64 LINUX=1 NONX86=1 +# LINUX64 does not imply X86_64=1; could mean ARM64 or Itanium endif +ifdef MINGW64 +MINGW=1 +NONX86=1 +NOASM=1 +# MINGW64 should not necessarily imply X86_64=1, but we make that assumption elsewhere +# Once that changes, remove this +X86_64=1 +endif #ifdef MINGW64 + ifdef HAIKU SDL=1 endif @@ -176,12 +186,6 @@ ifdef MINGW include win32/Makefile.cfg endif #ifdef MINGW -ifdef MINGW64 -MINGW=1 -X86_64=1 -include win32/Makefile.cfg -endif #ifdef MINGW64 - ifdef UNIX UNIXCOMMON=1 endif @@ -289,14 +293,14 @@ OPTS += -DCOMPVERSION ifndef NONX86 ifndef GCC29 - M5=-march=pentium + M5?=-march=pentium else - M5=-mpentium + M5?=-mpentium endif -endif - +else ifdef X86_64 - M5=-march=nocona + M5?=-march=nocona +endif endif ifndef NOASM diff --git a/src/win32/Makefile.cfg b/src/win32/Makefile.cfg index a73858bd4..def2fe682 100644 --- a/src/win32/Makefile.cfg +++ b/src/win32/Makefile.cfg @@ -7,8 +7,6 @@ # ifdef MINGW64 - NOASM=1 - NONX86=1 HAVE_LIBGME=1 LIBGME_CFLAGS=-I../libs/gme/include LIBGME_LDFLAGS=-L../libs/gme/win64 -lgme From 3d2e58861d11b593256ea1c0c4fb7d4edfa48134 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Sat, 29 Dec 2018 21:55:13 -0500 Subject: [PATCH 07/17] Rename M5 to ARCHOPTS; allow override by command line --- src/Makefile | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/Makefile b/src/Makefile index bfce9cda2..c894203a4 100644 --- a/src/Makefile +++ b/src/Makefile @@ -293,13 +293,13 @@ OPTS += -DCOMPVERSION ifndef NONX86 ifndef GCC29 - M5?=-march=pentium + ARCHOPTS?=-march=pentium else - M5?=-mpentium + ARCHOPTS?=-mpentium endif else ifdef X86_64 - M5?=-march=nocona + ARCHOPTS?=-march=nocona endif endif @@ -428,7 +428,7 @@ else WINDRESFLAGS = -DNDEBUG CFLAGS+=-O3 endif - CFLAGS+=-g $(OPTS) $(M5) $(WINDRESFLAGS) + CFLAGS+=-g $(OPTS) $(ARCHOPTS) $(WINDRESFLAGS) ifdef YASM ifdef STABS @@ -916,15 +916,15 @@ endif ifndef NOHS $(OBJDIR)/s_ds3d.o: hardware/s_ds3d/s_ds3d.c hardware/hw3dsdrv.h \ hardware/hw_dll.h - $(CC) $(M5) -Os -o $(OBJDIR)/s_ds3d.o $(WFLAGS) -D_WINDOWS -mwindows -c hardware/s_ds3d/s_ds3d.c + $(CC) $(ARCHOPTS) -Os -o $(OBJDIR)/s_ds3d.o $(WFLAGS) -D_WINDOWS -mwindows -c hardware/s_ds3d/s_ds3d.c $(OBJDIR)/s_fmod.o: hardware/s_openal/s_openal.c hardware/hw3dsdrv.h \ hardware/hw_dll.h - $(CC) $(M5) -Os -o $(OBJDIR)/s_fmod.o $(WFLAGS) -D_WINDOWS -mwindows -c hardware/s_fmod/s_fmod.c + $(CC) $(ARCHOPTS) -Os -o $(OBJDIR)/s_fmod.o $(WFLAGS) -D_WINDOWS -mwindows -c hardware/s_fmod/s_fmod.c $(OBJDIR)/s_openal.o: hardware/s_openal/s_openal.c hardware/hw3dsdrv.h \ hardware/hw_dll.h - $(CC) $(M5) -Os -o $(OBJDIR)/s_openal.o $(WFLAGS) -D_WINDOWS -mwindows -c hardware/s_openal/s_openal.c + $(CC) $(ARCHOPTS) -Os -o $(OBJDIR)/s_openal.o $(WFLAGS) -D_WINDOWS -mwindows -c hardware/s_openal/s_openal.c endif endif endif @@ -954,11 +954,11 @@ else $(OBJDIR)/s_fmod.o: hardware/s_fmod/s_fmod.c hardware/hw3dsdrv.h \ hardware/hw_dll.h - $(CC) $(M5) -Os -o $(OBJDIR)/s_fmod.o -DHW3SOUND -DUNIXCOMMON -shared -nostartfiles -c hardware/s_fmod/s_fmod.c + $(CC) $(ARCHOPTS) -Os -o $(OBJDIR)/s_fmod.o -DHW3SOUND -DUNIXCOMMON -shared -nostartfiles -c hardware/s_fmod/s_fmod.c $(OBJDIR)/s_openal.o: hardware/s_openal/s_openal.c hardware/hw3dsdrv.h \ hardware/hw_dll.h - $(CC) $(M5) -Os -o $(OBJDIR)/s_openal.o -DHW3SOUND -DUNIXCOMMON -shared -nostartfiles -c hardware/s_openal/s_openal.c + $(CC) $(ARCHOPTS) -Os -o $(OBJDIR)/s_openal.o -DHW3SOUND -DUNIXCOMMON -shared -nostartfiles -c hardware/s_openal/s_openal.c endif ifdef FILTERS From 34534428fd1f63997726b06f18c698ef52d3146a Mon Sep 17 00:00:00 2001 From: mazmazz Date: Sat, 29 Dec 2018 22:17:41 -0500 Subject: [PATCH 08/17] Add 64-bit SDL builds to appveyor config --- appveyor.yml | 38 ++++++++++++++++++++++++++++---------- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index b72da8246..96e2b95b4 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -4,8 +4,12 @@ os: MinGW environment: CC: ccache CCACHE_CC: i686-w64-mingw32-gcc + CCACHE_CC_64: x86_64-w64-mingw32-gcc WINDRES: windres + # c:\mingw-w64 i686 has gcc 6.3.0, so use c:\msys64 7.3.0 instead MINGW_SDK: c:\msys64\mingw32 + # c:\msys64 x86_64 has gcc 8.2.0, so use c:\mingw-w64 7.3.0 instead + MINGW_SDK_64: C:\mingw-w64\x86_64-7.3.0-posix-seh-rt_v5-rev0\mingw64 CFLAGS: -Wall -W -Werror -Wno-error=implicit-fallthrough -Wimplicit-fallthrough=3 -Wno-tautological-compare -Wno-error=suggest-attribute=noreturn NASM_ZIP: nasm-2.12.01 NASM_URL: http://www.nasm.us/pub/nasm/releasebuilds/2.12.01/win64/nasm-2.12.01-win64.zip @@ -23,20 +27,24 @@ cache: - C:\Users\appveyor\.ccache install: +- if [%CONFIGURATION%] == [SDL64] ( set "MINGW_SDK=%MINGW_SDK_64%" ) +- if [%CONFIGURATION%] == [SDL64] ( set "CCACHE_CC=%CCACHE_CC_64%" ) + - if not exist "%NASM_ZIP%.zip" appveyor DownloadFile "%NASM_URL%" -FileName "%NASM_ZIP%.zip" - 7z x -y "%NASM_ZIP%.zip" -o%TMP% >null -- robocopy /S /xx /ns /nc /nfl /ndl /np /njh /njs %TMP%\%NASM_ZIP% %MINGW_SDK%\bin nasm.exe || exit 0 +- robocopy /S /xx /ns /nc /nfl /ndl /np /njh /njs "%TMP%\%NASM_ZIP%" "%MINGW_SDK%\bin" nasm.exe || exit 0 - if not exist "%UPX_ZIP%.zip" appveyor DownloadFile "%UPX_URL%" -FileName "%UPX_ZIP%.zip" - 7z x -y "%UPX_ZIP%.zip" -o%TMP% >null -- robocopy /S /xx /ns /nc /nfl /ndl /np /njh /njs %TMP%\%UPX_ZIP% %MINGW_SDK%\bin upx.exe || exit 0 +- robocopy /S /xx /ns /nc /nfl /ndl /np /njh /njs "%TMP%\%UPX_ZIP%" "%MINGW_SDK%\bin" upx.exe || exit 0 - if not exist "%CCACHE_EXE%" appveyor DownloadFile "%CCACHE_URL%" -FileName "%CCACHE_EXE%" - ccache -M 99M -- xcopy /Y /V /I ccache.exe %MINGW_SDK%\bin +- xcopy /Y /V /I ccache.exe "%MINGW_SDK%\bin" configuration: - SDL +- SDL64 - DD matrix: @@ -44,26 +52,36 @@ matrix: - configuration: DD before_build: -- set Path=%MINGW_SDK%\bin;%Path% -- i686-w64-mingw32-gcc --version +- set "Path=%MINGW_SDK%\bin;%Path%" +- if [%CONFIGURATION%] == [SDL64] ( x86_64-w64-mingw32-gcc --version ) else ( i686-w64-mingw32-gcc --version ) - mingw32-make --version - nasm -v - upx -V - ccache -V - ccache -s -- set SRB2_MFLAGS=-C src MINGW=1 WARNINGMODE=1 GCC72=1 CCACHE=1 NOOBJDUMP=1 +- set "SRB2_MFLAGS=-C src WARNINGMODE=1 CCACHE=1 GCC72=1 NOOBJDUMP=1" +- if [%CONFIGURATION%] == [SDL64] ( + set "SRB2_MFLAGS=%SRB2_MFLAGS% MINGW64=1 SDL=1" + ) else ( + set "SRB2_MFLAGS=%SRB2_MFLAGS% MINGW=1 %CONFIGURATION%=1" + ) build_script: -- cmd: mingw32-make.exe %SRB2_MFLAGS% %CONFIGURATION%=1 clean -- cmd: mingw32-make.exe %SRB2_MFLAGS% %CONFIGURATION%=1 ERRORMODE=1 -k +- cmd: mingw32-make.exe %SRB2_MFLAGS% clean +- cmd: mingw32-make.exe %SRB2_MFLAGS% ERRORMODE=1 -k after_build: +- if [%CONFIGURATION%] == [SDL64] ( + set "BUILD_PATH=bin\Mingw64\Release" + ) else ( + set "BUILD_PATH=bin\Mingw\Release" + ) - ccache -s - cmd: git rev-parse --short %APPVEYOR_REPO_COMMIT%>%TMP%/gitshort.txt - cmd: set /P GITSHORT=<%TMP%/gitshort.txt - set BUILD_ARCHIVE=%APPVEYOR_REPO_BRANCH%-%GITSHORT%-%CONFIGURATION%.7z - set BUILDSARCHIVE=%APPVEYOR_REPO_BRANCH%-%CONFIGURATION%.7z -- cmd: 7z a %BUILD_ARCHIVE% bin\Mingw\Release -xr!.gitignore +- cmd: 7z a %BUILD_ARCHIVE% %BUILD_PATH% -xr!.gitignore - appveyor PushArtifact %BUILD_ARCHIVE% - cmd: copy %BUILD_ARCHIVE% %BUILDSARCHIVE% - appveyor PushArtifact %BUILDSARCHIVE% @@ -73,7 +91,7 @@ test: off #deploy: # - provider: FTP # protocol: ftps -# host: +# host: # secure: NsLJEPIBvmwCOj8Tg8RoRQ== # username: # secure: ejxi5mvk7oLYu7QtbYojajEPigMy0mokaKhuEVuDZcA= From 2aa7ee70fee379b77fd9067e2cd67681b08de28b Mon Sep 17 00:00:00 2001 From: mazmazz Date: Sat, 29 Dec 2018 22:51:10 -0500 Subject: [PATCH 09/17] Disable UPX by default in appveyor --- appveyor.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 96e2b95b4..47133318a 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -19,6 +19,8 @@ environment: CCACHE_URL: http://alam.srb2.org/ccache.exe CCACHE_COMPRESS: true CCACHE_DIR: C:\Users\appveyor\.ccache + # Disable UPX by default. The user can override this in their Appveyor project settings + NOUPX: 1 cache: - nasm-2.12.01.zip @@ -56,10 +58,11 @@ before_build: - if [%CONFIGURATION%] == [SDL64] ( x86_64-w64-mingw32-gcc --version ) else ( i686-w64-mingw32-gcc --version ) - mingw32-make --version - nasm -v -- upx -V +- if not [%NOUPX%] == [1] ( upx -V ) - ccache -V - ccache -s -- set "SRB2_MFLAGS=-C src WARNINGMODE=1 CCACHE=1 GCC72=1 NOOBJDUMP=1" +- if [%NOUPX%] == [1] ( set "NOUPX=NOUPX=1" ) else ( set "NOUPX=" ) +- set "SRB2_MFLAGS=-C src WARNINGMODE=1 CCACHE=1 GCC72=1 NOOBJDUMP=1 %NOUPX%" - if [%CONFIGURATION%] == [SDL64] ( set "SRB2_MFLAGS=%SRB2_MFLAGS% MINGW64=1 SDL=1" ) else ( From 0fc07ebaae077f7b3c71add5910a5e8cad28c781 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Sat, 29 Dec 2018 23:15:09 -0500 Subject: [PATCH 10/17] Consolidate [%CONFIGURATION%] == [SDL64] into %X86_64% --- appveyor.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 47133318a..f7705f3b0 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -29,8 +29,10 @@ cache: - C:\Users\appveyor\.ccache install: -- if [%CONFIGURATION%] == [SDL64] ( set "MINGW_SDK=%MINGW_SDK_64%" ) -- if [%CONFIGURATION%] == [SDL64] ( set "CCACHE_CC=%CCACHE_CC_64%" ) +- if [%CONFIGURATION%] == [SDL64] ( set "X86_64=1" ) +- if [%CONFIGURATION%] == [SDL64] ( set "CONFIGURATION=SDL" ) +- if [%X86_64%] == [1] ( set "MINGW_SDK=%MINGW_SDK_64%" ) +- if [%X86_64%] == [1] ( set "CCACHE_CC=%CCACHE_CC_64%" ) - if not exist "%NASM_ZIP%.zip" appveyor DownloadFile "%NASM_URL%" -FileName "%NASM_ZIP%.zip" - 7z x -y "%NASM_ZIP%.zip" -o%TMP% >null @@ -55,30 +57,28 @@ matrix: before_build: - set "Path=%MINGW_SDK%\bin;%Path%" -- if [%CONFIGURATION%] == [SDL64] ( x86_64-w64-mingw32-gcc --version ) else ( i686-w64-mingw32-gcc --version ) +- if [%X86_64%] == [1] ( x86_64-w64-mingw32-gcc --version ) else ( i686-w64-mingw32-gcc --version ) - mingw32-make --version -- nasm -v +- if not [%X86_64%] == [1] ( nasm -v ) - if not [%NOUPX%] == [1] ( upx -V ) - ccache -V - ccache -s - if [%NOUPX%] == [1] ( set "NOUPX=NOUPX=1" ) else ( set "NOUPX=" ) - set "SRB2_MFLAGS=-C src WARNINGMODE=1 CCACHE=1 GCC72=1 NOOBJDUMP=1 %NOUPX%" -- if [%CONFIGURATION%] == [SDL64] ( - set "SRB2_MFLAGS=%SRB2_MFLAGS% MINGW64=1 SDL=1" - ) else ( - set "SRB2_MFLAGS=%SRB2_MFLAGS% MINGW=1 %CONFIGURATION%=1" - ) +- if [%X86_64%] == [1] ( set "MINGW_FLAGS=MINGW64=1 X86_64=1" ) else ( set "MINGW_FLAGS=MINGW=1" ) +- set "SRB2_MFLAGS=%SRB2_MFLAGS% %MINGW_FLAGS% %CONFIGURATION%=1" build_script: - cmd: mingw32-make.exe %SRB2_MFLAGS% clean - cmd: mingw32-make.exe %SRB2_MFLAGS% ERRORMODE=1 -k after_build: -- if [%CONFIGURATION%] == [SDL64] ( +- if [%X86_64%] == [1] ( set "BUILD_PATH=bin\Mingw64\Release" ) else ( set "BUILD_PATH=bin\Mingw\Release" ) +- if [%X86_64%] == [1] ( set "CONFIGURATION=%CONFIGURATION%64" ) - ccache -s - cmd: git rev-parse --short %APPVEYOR_REPO_COMMIT%>%TMP%/gitshort.txt - cmd: set /P GITSHORT=<%TMP%/gitshort.txt From e7165444b4618f6db097df63112a181ead3cca8b Mon Sep 17 00:00:00 2001 From: mazmazz Date: Sat, 29 Dec 2018 23:16:08 -0500 Subject: [PATCH 11/17] Add 64-bit DD buildbot --- appveyor.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/appveyor.yml b/appveyor.yml index f7705f3b0..d14df8f09 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -31,6 +31,8 @@ cache: install: - if [%CONFIGURATION%] == [SDL64] ( set "X86_64=1" ) - if [%CONFIGURATION%] == [SDL64] ( set "CONFIGURATION=SDL" ) +- if [%CONFIGURATION%] == [DD64] ( set "X86_64=1" ) +- if [%CONFIGURATION%] == [DD64] ( set "CONFIGURATION=DD" ) - if [%X86_64%] == [1] ( set "MINGW_SDK=%MINGW_SDK_64%" ) - if [%X86_64%] == [1] ( set "CCACHE_CC=%CCACHE_CC_64%" ) @@ -50,10 +52,12 @@ configuration: - SDL - SDL64 - DD +- DD64 matrix: allow_failures: - configuration: DD + - configuration: DD64 before_build: - set "Path=%MINGW_SDK%\bin;%Path%" From 941e29780c670122c56f8cdb58632c60e55dfd2a Mon Sep 17 00:00:00 2001 From: mazmazz Date: Sun, 30 Dec 2018 03:03:12 -0500 Subject: [PATCH 12/17] Implement install building for appveyor (deployer) --- appveyor.yml | 28 +++++ deployer/appveyor/deployer.bat | 193 +++++++++++++++++++++++++++++++++ 2 files changed, 221 insertions(+) create mode 100644 deployer/appveyor/deployer.bat diff --git a/appveyor.yml b/appveyor.yml index d14df8f09..7e14f365f 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -21,12 +21,36 @@ environment: CCACHE_DIR: C:\Users\appveyor\.ccache # Disable UPX by default. The user can override this in their Appveyor project settings NOUPX: 1 + ############################## + # DEPLOYER VARIABLES + # DPL_ENABLED=1 builds installers for branch names starting with `deployer`. + # DPL_TAG_ENABLED=1 will also build installers for release tags. DPL_ENABLED=1 must also be set. + # Set these in the Appveyor project settings + ############################## + DPL_ENABLED: 0 + DPL_TAG_ENABLED: 0 + DPL_INSTALLER_NAME: SRB2-v2123 + # Asset handling is barebones vs. Travis Deployer. We operate on 7z only. + # Include the README files and the OpenGL batch in the main and patch archives. + # The x86/x64 archives contain the DLL binaries. + ASSET_ARCHIVE_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-assets.7z + ASSET_ARCHIVE_PATCH_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-patch-assets.7z + ASSET_ARCHIVE_X86_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-x86-assets.7z + ASSET_ARCHIVE_X64_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-x64-assets.7z + ASSET_FILES_OPTIONAL_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/music.dta + # This is overridden to 1 for release tag builds + ASSET_FILES_OPTIONAL_GET: 0 + # For patches, also include the X86/X64 DLLs. + ASSET_PATCH_DLL_GET: 0 + # Delete all asset downloads so they can be redownloaded + ASSET_CLEAN: 0 cache: - nasm-2.12.01.zip - upx391w.zip - ccache.exe - C:\Users\appveyor\.ccache +- assets\deployer\archives install: - if [%CONFIGURATION%] == [SDL64] ( set "X86_64=1" ) @@ -92,6 +116,10 @@ after_build: - appveyor PushArtifact %BUILD_ARCHIVE% - cmd: copy %BUILD_ARCHIVE% %BUILDSARCHIVE% - appveyor PushArtifact %BUILDSARCHIVE% +############################## +# DEPLOYER SCRIPT +############################## +- if [%DPL_ENABLED%] == [1] ( call "deployer\appveyor\deployer.bat" ) test: off diff --git a/deployer/appveyor/deployer.bat b/deployer/appveyor/deployer.bat new file mode 100644 index 000000000..c3a29bf84 --- /dev/null +++ b/deployer/appveyor/deployer.bat @@ -0,0 +1,193 @@ +@setlocal enableextensions enabledelayedexpansion + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +: Appveyor Deployer +: See appveyor.yml for default variables +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +: Evaluate whether we should be deploying +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + +if not [%DPL_ENABLED%] == [1] ( + echo Deployer is not enabled... + exit /b +) + +: Don't do DD installs because fmodex DLL handling is not implemented. +if [%CONFIGURATION%] == [DD] ( + echo Deployer does not support DD builds... + exit /b +) + +if [%CONFIGURATION%] == [DD64] ( + echo Deployer does not support DD builds... + exit /b +) + +: Substring match from https://stackoverflow.com/questions/7005951/batch-file-find-if-substring-is-in-string-not-in-a-file +: The below line says "if deployer is NOT in string" +: Note that APPVEYOR_REPO_BRANCH for pull request builds is the BASE branch that PR is merging INTO +if x%APPVEYOR_REPO_BRANCH:deployer=%==x%APPVEYOR_REPO_BRANCH% ( + if not [%APPVEYOR_REPO_TAG%] == [true] ( + echo Deployer is enabled but we are not in a release tag or a 'deployer' branch... + exit /b + ) else ( + if not [%DPL_TAG_ENABLED%] == [1] ( + echo Deployer is not enabled for release tags... + exit /b + ) + ) +) + +: Release tags always get optional assets (music.dta) +if [%APPVEYOR_REPO_TAG%] == [true] ( + set "ASSET_FILES_OPTIONAL_GET=1" +) + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +: Get asset archives +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + +if [%ASSET_CLEAN%] == [1] ( + echo Cleaning asset archives... + rmdir /s /q "assets\deployer\archives" +) + +if not exist "assets\deployer\archives" mkdir "assets\deployer\archives" + +goto EXTRACT_ARCHIVES + +:::::::::::::::::::::::::::::::: +: ARCHIVE_NAME_PARTS +: Call this like a function. %archivepath% is the path to extract parts from. +:::::::::::::::::::::::::::::::: + +for %%a in (%archivepath%) do ( + set "file=%%~fa" + set "filepath=%%~dpa" + set "filename=%%~nxa" +) + +set "localarchivepath=assets\deployer\archives\%filename%" + +goto EOF + +:::::::::::::::::::::::::::::::: +: EXTRACT_ARCHIVES +:::::::::::::::::::::::::::::::: + +set "archivepath=%ASSET_ARCHIVE_PATH%" +call :ARCHIVE_NAME_PARTS +set "ASSET_ARCHIVE_PATH_LOCAL=%localarchivepath%" +if not exist "%localarchivepath%" appveyor DownloadFile "%ASSET_ARCHIVE_PATH%" -FileName "%localarchivepath%" + +set "archivepath=%ASSET_ARCHIVE_PATCH_PATH%" +call :ARCHIVE_NAME_PARTS +set "ASSET_ARCHIVE_PATCH_PATH_LOCAL=%localarchivepath%" +if not exist "%localarchivepath%" appveyor DownloadFile "%ASSET_ARCHIVE_PATCH_PATH%" -FileName "%localarchivepath%" + +if not [%X86_64%] == [1] ( + set "archivepath=%ASSET_ARCHIVE_X86_PATH%" + call :ARCHIVE_NAME_PARTS + set "ASSET_ARCHIVE_X86_PATH_LOCAL=!localarchivepath!" + if not exist "!localarchivepath!" appveyor DownloadFile "%ASSET_ARCHIVE_X86_PATH%" -FileName "!localarchivepath!" +) + +if [%X86_64%] == [1] ( + set "archivepath=%ASSET_ARCHIVE_X64_PATH%" + call :ARCHIVE_NAME_PARTS + set "ASSET_ARCHIVE_X64_PATH_LOCAL=!localarchivepath!" + if not exist "!localarchivepath!" appveyor DownloadFile "%ASSET_ARCHIVE_X64_PATH%" -FileName "!localarchivepath!" +) + +if [%ASSET_FILES_OPTIONAL_GET%] == [1] ( + set "archivepath=%ASSET_FILES_OPTIONAL_PATH%" + call :ARCHIVE_NAME_PARTS + set "ASSET_FILES_OPTIONAL_PATH_LOCAL=!localarchivepath!" + if not exist "!localarchivepath!" appveyor DownloadFile "%ASSET_FILES_OPTIONAL_PATH%" -FileName "!localarchivepath!" +) + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +: Build the installers +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + +mkdir "assets\deployer\installer" +mkdir "assets\deployer\patch" + +7z x -y "%ASSET_ARCHIVE_PATH_LOCAL%" -o"assets\deployer\installer" >null +7z x -y "%ASSET_ARCHIVE_PATCH_PATH_LOCAL%" -o"assets\deployer\patch" >null + +: Copy optional files to full installer (music.dta) +if [%ASSET_FILES_OPTIONAL_GET%] == [1] ( + xcopy /I /Y "%ASSET_FILES_OPTIONAL_PATH_LOCAL%" "assets\deployer\installer" +) + +: Copy EXE -- BUILD_PATH is from appveyor.yml +robocopy /S /ns /nc /nfl /ndl /np /njh /njs "%BUILD_PATH%" "assets\deployer\installer" /XF "*.debug" ".gitignore" +robocopy /S /ns /nc /nfl /ndl /np /njh /njs "%BUILD_PATH%" "assets\deployer\patch" /XF "*.debug" ".gitignore" + +: Are we building DD? (we were supposed to exit earlier!) +if [%CONFIGURATION%] == [DD] ( set "DPL_INSTALLER_NAME=%DPL_INSTALLER_NAME%-DD" ) +if [%CONFIGURATION%] == [DD64] ( set "DPL_INSTALLER_NAME=%DPL_INSTALLER_NAME%-DD" ) + +: If we are not a release tag, suffix the filename +if not [%APPVEYOR_REPO_TAG%] == [true] ( + set "INSTALLER_SUFFIX=-%APPVEYOR_REPO_BRANCH%-%GITSHORT%-%CONFIGURATION%" +) else ( + set "INSTALLER_SUFFIX=" +) + +if not [%X86_64%] == [1] ( goto X86_INSTALL ) + +:::::::::::::::::::::::::::::::: +: X64_INSTALL +:::::::::::::::::::::::::::::::: + +: Extract DLL binaries +7z x -y "%ASSET_ARCHIVE_X64_PATH_LOCAL%" -o"assets\deployer\installer" >null +if [%ASSET_PATCH_DLL_GET%] == [1] ( + 7z x -y "!ASSET_ARCHIVE_X64_PATH_LOCAL!" -o"assets\deployer\patch" >null +) + +: Build the installer +7z a -sfx7z.sfx "%DPL_INSTALLER_NAME%-x64-Installer%INSTALLER_SUFFIX%.exe" .\assets\deployer\installer\* + +: Build the patch +7z a "%DPL_INSTALLER_NAME%-x64-Patch%INSTALLER_SUFFIX%.zip" .\assets\deployer\patch\* + +: Upload artifacts +appveyor PushArtifact "%DPL_INSTALLER_NAME%-x64-Installer%INSTALLER_SUFFIX%.exe" +appveyor PushArtifact "%DPL_INSTALLER_NAME%-x64-Patch%INSTALLER_SUFFIX%.zip" + +: We only do x86 OR x64, one at a time, so exit now. +goto EOF + +:::::::::::::::::::::::::::::::: +: X86_INSTALL +:::::::::::::::::::::::::::::::: + +: Extract DLL binaries +7z x -y "%ASSET_ARCHIVE_X86_PATH_LOCAL%" -o"assets\deployer\installer" >null +if [%ASSET_PATCH_DLL_GET%] == [1] ( + 7z x -y "!ASSET_ARCHIVE_X86_PATH_LOCAL!" -o"assets\deployer\patch" >null +) + +: Build the installer +7z a -sfx7z.sfx "%DPL_INSTALLER_NAME%-Installer%INSTALLER_SUFFIX%.exe" .\assets\deployer\installer\* + +: Build the patch +7z a "%DPL_INSTALLER_NAME%-Patch%INSTALLER_SUFFIX%.zip" .\assets\deployer\patch\* + +: Upload artifacts +appveyor PushArtifact "%DPL_INSTALLER_NAME%-Installer%INSTALLER_SUFFIX%.exe" +appveyor PushArtifact "%DPL_INSTALLER_NAME%-Patch%INSTALLER_SUFFIX%.zip" + +: We only do x86 OR x64, one at a time, so exit now +goto EOF + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +: EOF +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + +endlocal From e1300d51735dd6c52c32bfde59f9aef61df1e5c9 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Sun, 30 Dec 2018 10:43:17 -0500 Subject: [PATCH 13/17] Rename ASSET_PATCH_DLL_GET to PACKAGE_PATCH_DLL_GET --- appveyor.yml | 2 +- deployer/appveyor/deployer.bat | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 7e14f365f..be8f47d23 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -41,7 +41,7 @@ environment: # This is overridden to 1 for release tag builds ASSET_FILES_OPTIONAL_GET: 0 # For patches, also include the X86/X64 DLLs. - ASSET_PATCH_DLL_GET: 0 + PACKAGE_PATCH_DLL_GET: 0 # Delete all asset downloads so they can be redownloaded ASSET_CLEAN: 0 diff --git a/deployer/appveyor/deployer.bat b/deployer/appveyor/deployer.bat index c3a29bf84..86aa8b3ec 100644 --- a/deployer/appveyor/deployer.bat +++ b/deployer/appveyor/deployer.bat @@ -146,7 +146,7 @@ if not [%X86_64%] == [1] ( goto X86_INSTALL ) : Extract DLL binaries 7z x -y "%ASSET_ARCHIVE_X64_PATH_LOCAL%" -o"assets\deployer\installer" >null -if [%ASSET_PATCH_DLL_GET%] == [1] ( +if [%PACKAGE_PATCH_DLL_GET%] == [1] ( 7z x -y "!ASSET_ARCHIVE_X64_PATH_LOCAL!" -o"assets\deployer\patch" >null ) @@ -169,7 +169,7 @@ goto EOF : Extract DLL binaries 7z x -y "%ASSET_ARCHIVE_X86_PATH_LOCAL%" -o"assets\deployer\installer" >null -if [%ASSET_PATCH_DLL_GET%] == [1] ( +if [%PACKAGE_PATCH_DLL_GET%] == [1] ( 7z x -y "!ASSET_ARCHIVE_X86_PATH_LOCAL!" -o"assets\deployer\patch" >null ) From d61eb7edeeded1c230148b3b6742a47fe508a80f Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 31 Dec 2018 01:26:25 -0500 Subject: [PATCH 14/17] Increase ChangeControl text buffer to resolve buffer overflow with System Menu/GIF control config --- src/m_menu.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/m_menu.c b/src/m_menu.c index 266bc2516..16015078c 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -7516,7 +7516,7 @@ static void M_DrawControl(void) } static INT32 controltochange; -static char controltochangetext[55]; +static char controltochangetext[33]; static void M_ChangecontrolResponse(event_t *ev) { @@ -7588,7 +7588,8 @@ static void M_ChangecontrolResponse(event_t *ev) } else if (ch == KEY_PAUSE) { - static char tmp[155]; + // This buffer assumes a 100-character message plus a 32-character control name (per controltochangetext buffer size) + static char tmp[133]; menu_t *prev = currentMenu->prevMenu; if (controltochange == gc_pause) @@ -7612,12 +7613,14 @@ static void M_ChangecontrolResponse(event_t *ev) static void M_ChangeControl(INT32 choice) { - static char tmp[55]; + // This buffer assumes a 35-character message (per below) plus a max control name limit of 32 chars (per controltochangetext) + // If you change the below message, then change the size of this buffer! + static char tmp[68]; controltochange = currentMenu->menuitems[choice].alphaKey; sprintf(tmp, M_GetText("Hit the new key for\n%s\nESC for Cancel"), currentMenu->menuitems[choice].text); - strncpy(controltochangetext, currentMenu->menuitems[choice].text, 55); + strlcpy(controltochangetext, currentMenu->menuitems[choice].text, 33); M_StartMessage(tmp, M_ChangecontrolResponse, MM_EVENTHANDLER); } From f00cfb7b3ff57ced6182784d59982f180e798d53 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 31 Dec 2018 17:31:25 -0500 Subject: [PATCH 15/17] Use optional asset archive instead of file --- appveyor.yml | 2 +- deployer/appveyor/deployer.bat | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index be8f47d23..0450b059b 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -37,7 +37,7 @@ environment: ASSET_ARCHIVE_PATCH_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-patch-assets.7z ASSET_ARCHIVE_X86_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-x86-assets.7z ASSET_ARCHIVE_X64_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-x64-assets.7z - ASSET_FILES_OPTIONAL_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/music.dta + ASSET_ARCHIVE_OPTIONAL_PATH: https://github.com/mazmazz/SRB2/releases/download/SRB2_assets/SRB2-v2122-optional-assets.7z # This is overridden to 1 for release tag builds ASSET_FILES_OPTIONAL_GET: 0 # For patches, also include the X86/X64 DLLs. diff --git a/deployer/appveyor/deployer.bat b/deployer/appveyor/deployer.bat index 86aa8b3ec..7b1bc68a8 100644 --- a/deployer/appveyor/deployer.bat +++ b/deployer/appveyor/deployer.bat @@ -102,10 +102,10 @@ if [%X86_64%] == [1] ( ) if [%ASSET_FILES_OPTIONAL_GET%] == [1] ( - set "archivepath=%ASSET_FILES_OPTIONAL_PATH%" + set "archivepath=%ASSET_ARCHIVE_OPTIONAL_PATH%" call :ARCHIVE_NAME_PARTS - set "ASSET_FILES_OPTIONAL_PATH_LOCAL=!localarchivepath!" - if not exist "!localarchivepath!" appveyor DownloadFile "%ASSET_FILES_OPTIONAL_PATH%" -FileName "!localarchivepath!" + set "ASSET_ARCHIVE_OPTIONAL_PATH_LOCAL=!localarchivepath!" + if not exist "!localarchivepath!" appveyor DownloadFile "%ASSET_ARCHIVE_OPTIONAL_PATH%" -FileName "!localarchivepath!" ) :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: @@ -120,7 +120,7 @@ mkdir "assets\deployer\patch" : Copy optional files to full installer (music.dta) if [%ASSET_FILES_OPTIONAL_GET%] == [1] ( - xcopy /I /Y "%ASSET_FILES_OPTIONAL_PATH_LOCAL%" "assets\deployer\installer" + 7z x -y "%ASSET_ARCHIVE_OPTIONAL_PATH_LOCAL%" -o"assets\deployer\installer" >null ) : Copy EXE -- BUILD_PATH is from appveyor.yml From 528c6f771a748609ac6666cc9494571f50d63fd8 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Tue, 1 Jan 2019 11:35:09 -0500 Subject: [PATCH 16/17] Make AppVeyor installer paths consistent with Travis installer paths(assets/deployer/installer -> assets/installer) --- appveyor.yml | 2 +- deployer/appveyor/deployer.bat | 42 ++++++++++++++++++---------------- 2 files changed, 23 insertions(+), 21 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 0450b059b..f0f843fbb 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -50,7 +50,7 @@ cache: - upx391w.zip - ccache.exe - C:\Users\appveyor\.ccache -- assets\deployer\archives +- C:\Users\appveyor\srb2_cache install: - if [%CONFIGURATION%] == [SDL64] ( set "X86_64=1" ) diff --git a/deployer/appveyor/deployer.bat b/deployer/appveyor/deployer.bat index 7b1bc68a8..fae388590 100644 --- a/deployer/appveyor/deployer.bat +++ b/deployer/appveyor/deployer.bat @@ -49,12 +49,14 @@ if [%APPVEYOR_REPO_TAG%] == [true] ( : Get asset archives :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -if [%ASSET_CLEAN%] == [1] ( - echo Cleaning asset archives... - rmdir /s /q "assets\deployer\archives" +if exist "C:\Users\appveyor\srb2_cache\archives\" ( + if [%ASSET_CLEAN%] == [1] ( + echo Cleaning asset archives... + rmdir /s /q "C:\Users\appveyor\srb2_cache\archives" + ) ) -if not exist "assets\deployer\archives" mkdir "assets\deployer\archives" +if not exist "C:\Users\appveyor\srb2_cache\archives\" mkdir "C:\Users\appveyor\srb2_cache\archives" goto EXTRACT_ARCHIVES @@ -69,7 +71,7 @@ for %%a in (%archivepath%) do ( set "filename=%%~nxa" ) -set "localarchivepath=assets\deployer\archives\%filename%" +set "localarchivepath=C:\Users\appveyor\srb2_cache\archives\%filename%" goto EOF @@ -112,20 +114,20 @@ if [%ASSET_FILES_OPTIONAL_GET%] == [1] ( : Build the installers :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -mkdir "assets\deployer\installer" -mkdir "assets\deployer\patch" +mkdir "assets\installer" +mkdir "assets\patch" -7z x -y "%ASSET_ARCHIVE_PATH_LOCAL%" -o"assets\deployer\installer" >null -7z x -y "%ASSET_ARCHIVE_PATCH_PATH_LOCAL%" -o"assets\deployer\patch" >null +7z x -y "%ASSET_ARCHIVE_PATH_LOCAL%" -o"assets\installer" >null +7z x -y "%ASSET_ARCHIVE_PATCH_PATH_LOCAL%" -o"assets\patch" >null : Copy optional files to full installer (music.dta) if [%ASSET_FILES_OPTIONAL_GET%] == [1] ( - 7z x -y "%ASSET_ARCHIVE_OPTIONAL_PATH_LOCAL%" -o"assets\deployer\installer" >null + 7z x -y "%ASSET_ARCHIVE_OPTIONAL_PATH_LOCAL%" -o"assets\installer" >null ) : Copy EXE -- BUILD_PATH is from appveyor.yml -robocopy /S /ns /nc /nfl /ndl /np /njh /njs "%BUILD_PATH%" "assets\deployer\installer" /XF "*.debug" ".gitignore" -robocopy /S /ns /nc /nfl /ndl /np /njh /njs "%BUILD_PATH%" "assets\deployer\patch" /XF "*.debug" ".gitignore" +robocopy /S /ns /nc /nfl /ndl /np /njh /njs "%BUILD_PATH%" "assets\installer" /XF "*.debug" ".gitignore" +robocopy /S /ns /nc /nfl /ndl /np /njh /njs "%BUILD_PATH%" "assets\patch" /XF "*.debug" ".gitignore" : Are we building DD? (we were supposed to exit earlier!) if [%CONFIGURATION%] == [DD] ( set "DPL_INSTALLER_NAME=%DPL_INSTALLER_NAME%-DD" ) @@ -145,16 +147,16 @@ if not [%X86_64%] == [1] ( goto X86_INSTALL ) :::::::::::::::::::::::::::::::: : Extract DLL binaries -7z x -y "%ASSET_ARCHIVE_X64_PATH_LOCAL%" -o"assets\deployer\installer" >null +7z x -y "%ASSET_ARCHIVE_X64_PATH_LOCAL%" -o"assets\installer" >null if [%PACKAGE_PATCH_DLL_GET%] == [1] ( - 7z x -y "!ASSET_ARCHIVE_X64_PATH_LOCAL!" -o"assets\deployer\patch" >null + 7z x -y "!ASSET_ARCHIVE_X64_PATH_LOCAL!" -o"assets\patch" >null ) : Build the installer -7z a -sfx7z.sfx "%DPL_INSTALLER_NAME%-x64-Installer%INSTALLER_SUFFIX%.exe" .\assets\deployer\installer\* +7z a -sfx7z.sfx "%DPL_INSTALLER_NAME%-x64-Installer%INSTALLER_SUFFIX%.exe" .\assets\installer\* : Build the patch -7z a "%DPL_INSTALLER_NAME%-x64-Patch%INSTALLER_SUFFIX%.zip" .\assets\deployer\patch\* +7z a "%DPL_INSTALLER_NAME%-x64-Patch%INSTALLER_SUFFIX%.zip" .\assets\patch\* : Upload artifacts appveyor PushArtifact "%DPL_INSTALLER_NAME%-x64-Installer%INSTALLER_SUFFIX%.exe" @@ -168,16 +170,16 @@ goto EOF :::::::::::::::::::::::::::::::: : Extract DLL binaries -7z x -y "%ASSET_ARCHIVE_X86_PATH_LOCAL%" -o"assets\deployer\installer" >null +7z x -y "%ASSET_ARCHIVE_X86_PATH_LOCAL%" -o"assets\installer" >null if [%PACKAGE_PATCH_DLL_GET%] == [1] ( - 7z x -y "!ASSET_ARCHIVE_X86_PATH_LOCAL!" -o"assets\deployer\patch" >null + 7z x -y "!ASSET_ARCHIVE_X86_PATH_LOCAL!" -o"assets\patch" >null ) : Build the installer -7z a -sfx7z.sfx "%DPL_INSTALLER_NAME%-Installer%INSTALLER_SUFFIX%.exe" .\assets\deployer\installer\* +7z a -sfx7z.sfx "%DPL_INSTALLER_NAME%-Installer%INSTALLER_SUFFIX%.exe" .\assets\installer\* : Build the patch -7z a "%DPL_INSTALLER_NAME%-Patch%INSTALLER_SUFFIX%.zip" .\assets\deployer\patch\* +7z a "%DPL_INSTALLER_NAME%-Patch%INSTALLER_SUFFIX%.zip" .\assets\patch\* : Upload artifacts appveyor PushArtifact "%DPL_INSTALLER_NAME%-Installer%INSTALLER_SUFFIX%.exe" From c97dc5d3c421299757811fcbf610071de327c4f3 Mon Sep 17 00:00:00 2001 From: Digiku Date: Fri, 4 Jan 2019 19:38:36 -0500 Subject: [PATCH 17/17] Increase M_ChangecontrolResponse message buffer by 25 chars --- src/m_menu.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/m_menu.c b/src/m_menu.c index 16015078c..c241a0880 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -7588,8 +7588,8 @@ static void M_ChangecontrolResponse(event_t *ev) } else if (ch == KEY_PAUSE) { - // This buffer assumes a 100-character message plus a 32-character control name (per controltochangetext buffer size) - static char tmp[133]; + // This buffer assumes a 125-character message plus a 32-character control name (per controltochangetext buffer size) + static char tmp[158]; menu_t *prev = currentMenu->prevMenu; if (controltochange == gc_pause)