From 59ea961f58f2b1523be7fd5d60418763f534a034 Mon Sep 17 00:00:00 2001 From: GoldenTails Date: Mon, 10 Oct 2022 00:30:23 -0500 Subject: [PATCH 1/3] Make dummy compile again, if SDL is explicitly set to 0 (cherry picked from commit ba55947ee6ab36efc04598953a78a11173103bcf) # Conflicts: # src/doomtype.h # src/dummy/i_system.c --- src/Makefile | 4 ++-- src/Makefile.d/detect.mk | 1 - src/Makefile.d/nix.mk | 2 +- src/Makefile.d/platform.mk | 4 +++- src/Makefile.d/win32.mk | 4 +++- src/dummy/Sourcefile | 5 +++++ src/dummy/i_sound.c | 11 ++++------- src/dummy/i_system.c | 13 ++++++++++--- 8 files changed, 28 insertions(+), 16 deletions(-) create mode 100644 src/dummy/Sourcefile diff --git a/src/Makefile b/src/Makefile index 3c621001d..6b2c25e6d 100644 --- a/src/Makefile +++ b/src/Makefile @@ -31,8 +31,8 @@ # MINGW=1, MINGW64=1 - Windows (MinGW toolchain) # UNIX=1 - Generic Unix like system # FREEBSD=1 -# SDL=1 - Use SDL backend. SDL is the only backend though -# and thus, always enabled. +# SDL=1 - Use SDL backend. SDL is the only implemented backend though. +# If disabled, a dummy backend will be used. # # A list of supported GCC versions can be found in # Makefile.d/detect.mk -- search 'gcc_versions'. diff --git a/src/Makefile.d/detect.mk b/src/Makefile.d/detect.mk index f84cd2942..71fc0d42c 100644 --- a/src/Makefile.d/detect.mk +++ b/src/Makefile.d/detect.mk @@ -16,7 +16,6 @@ all_systems:=\ UNIX\ LINUX\ FREEBSD\ - SDL\ # check for user specified system ifeq (,$(filter $(all_systems),$(.VARIABLES))) diff --git a/src/Makefile.d/nix.mk b/src/Makefile.d/nix.mk index 97bcf018e..d04db2146 100644 --- a/src/Makefile.d/nix.mk +++ b/src/Makefile.d/nix.mk @@ -14,7 +14,7 @@ opts+=-I/usr/X11R6/include libs+=-L/usr/X11R6/lib endif -SDL=1 +SDL?=1 # In common usage. ifdef LINUX diff --git a/src/Makefile.d/platform.mk b/src/Makefile.d/platform.mk index fad4be191..c5ac71a20 100644 --- a/src/Makefile.d/platform.mk +++ b/src/Makefile.d/platform.mk @@ -64,6 +64,8 @@ ifdef UNIX include Makefile.d/nix.mk endif -ifdef SDL +ifeq ($(SDL), 1) include Makefile.d/sdl.mk +else +include Makefile.d/dummy.mk endif diff --git a/src/Makefile.d/win32.mk b/src/Makefile.d/win32.mk index 41e60f8ad..f9f7b444b 100644 --- a/src/Makefile.d/win32.mk +++ b/src/Makefile.d/win32.mk @@ -15,7 +15,7 @@ libs+=-ladvapi32 -lkernel32 -lmsvcrt -luser32 nasm_format:=win32 -SDL=1 +SDL?=1 ifndef NOHW opts+=-DUSE_WGL_SWAP @@ -83,6 +83,7 @@ else lib:=../libs/SDL2_mixer/$(mingw) endif +ifdef SDL2 mixer_opts:=-I$(lib)/include/SDL2 mixer_libs:=-L$(lib)/lib @@ -92,6 +93,7 @@ SDL_opts:=-I$(lib)/include/SDL2\ SDL_libs:=-L$(lib)/lib $(mixer_libs)\ -lmingw32 -lSDL2main -lSDL2 -mwindows $(eval $(call _set,SDL)) +endif lib:=../libs/zlib ZLIB_opts:=-I$(lib) diff --git a/src/dummy/Sourcefile b/src/dummy/Sourcefile new file mode 100644 index 000000000..2f5dd1a59 --- /dev/null +++ b/src/dummy/Sourcefile @@ -0,0 +1,5 @@ +i_net.c +i_system.c +i_main.c +i_video.c +i_sound.c diff --git a/src/dummy/i_sound.c b/src/dummy/i_sound.c index f09158e01..ba0fc6423 100644 --- a/src/dummy/i_sound.c +++ b/src/dummy/i_sound.c @@ -139,29 +139,24 @@ boolean I_LoadSong(char *data, size_t len) void I_UnloadSong(void) { - (void)handle; } boolean I_PlaySong(boolean looping) { - (void)handle; (void)looping; return false; } void I_StopSong(void) { - (void)handle; } void I_PauseSong(void) { - (void)handle; } void I_ResumeSong(void) { - (void)handle; } void I_SetMusicVolume(UINT8 volume) @@ -188,18 +183,20 @@ void I_StopFadingSong(void) { } -boolean I_FadeSongFromVolume(UINT8 target_volume, UINT8 source_volume, UINT32 ms, void (*callback)(void)); +boolean I_FadeSongFromVolume(UINT8 target_volume, UINT8 source_volume, UINT32 ms, void (*callback)(void)) { (void)target_volume; (void)source_volume; (void)ms; + (void)callback; return false; } -boolean I_FadeSong(UINT8 target_volume, UINT32 ms, void (*callback)(void)); +boolean I_FadeSong(UINT8 target_volume, UINT32 ms, void (*callback)(void)) { (void)target_volume; (void)ms; + (void)callback; return false; } diff --git a/src/dummy/i_system.c b/src/dummy/i_system.c index 34fb587ab..997115ad0 100644 --- a/src/dummy/i_system.c +++ b/src/dummy/i_system.c @@ -1,6 +1,9 @@ #include "../doomdef.h" +#include "../doomtype.h" #include "../i_system.h" +FILE *logstream = NULL; + UINT8 graphics_started = 0; UINT8 keyboard_started = 0; @@ -94,8 +97,6 @@ void I_StartupMouse(void){} void I_StartupMouse2(void){} -void I_StartupKeyboard(void){} - INT32 I_GetKey(void) { return 0; @@ -174,12 +175,18 @@ INT32 I_ClipboardCopy(const char *data, size_t size) return -1; } -char *I_ClipboardPaste(void) +const char *I_ClipboardPaste(void) { return NULL; } void I_RegisterSysCommands(void) {} +void I_GetCursorPosition(INT32 *x, INT32 *y) +{ + (void)x; + (void)y; +} + #include "../sdl/dosstr.c" From 4bf008b59fd05ed093ce8de96374a61e6793cb31 Mon Sep 17 00:00:00 2001 From: Eidolon Date: Thu, 13 Oct 2022 18:18:18 -0500 Subject: [PATCH 2/3] Add missing .mk for dummy target (cherry picked from commit d46c2013329c219e62ae19c819eee293671b3293) --- src/Makefile.d/dummy.mk | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 src/Makefile.d/dummy.mk diff --git a/src/Makefile.d/dummy.mk b/src/Makefile.d/dummy.mk new file mode 100644 index 000000000..6908de84a --- /dev/null +++ b/src/Makefile.d/dummy.mk @@ -0,0 +1,5 @@ +makedir:=$(makedir)/Dummy + +sources+=$(call List,dummy/Sourcefile) + +NOHW=1 From c1f0be719e66574ee5f059ed53a65261425bd276 Mon Sep 17 00:00:00 2001 From: Eidolon Date: Thu, 20 Oct 2022 21:10:21 -0500 Subject: [PATCH 3/3] make: Fix ifdef check from dummy target changes --- src/Makefile.d/win32.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Makefile.d/win32.mk b/src/Makefile.d/win32.mk index f9f7b444b..ddc607617 100644 --- a/src/Makefile.d/win32.mk +++ b/src/Makefile.d/win32.mk @@ -83,7 +83,7 @@ else lib:=../libs/SDL2_mixer/$(mingw) endif -ifdef SDL2 +ifdef SDL mixer_opts:=-I$(lib)/include/SDL2 mixer_libs:=-L$(lib)/lib