From 1bb0c90741b43caa73c91dfda6c29cc9038e80b3 Mon Sep 17 00:00:00 2001 From: MysterD Date: Fri, 4 Sep 2020 17:02:09 -0700 Subject: [PATCH] Add docker-build workarounds and container script --- Makefile | 8 ++++++++ src/game/save_file.c | 2 +- src/pc/fs/fs.c | 6 ++++++ src/pc/network/socket/socket_windows.h | 2 +- 4 files changed, 16 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index baa7b22d..9ed5968a 100644 --- a/Makefile +++ b/Makefile @@ -50,6 +50,8 @@ TEXTSAVES ?= 0 EXTERNAL_DATA ?= 0 # Enable Discord Rich Presence DISCORDRPC ?= 0 +# Enable docker build workarounds +DOCKERBUILD ?= 0 # Various workarounds for weird toolchains @@ -578,6 +580,12 @@ ifeq ($(IMMEDIATELOAD),1) CFLAGS += -DIMMEDIATELOAD endif +# Check for docker build workaround option +ifeq ($(DOCKERBUILD),1) + CC_CHECK += -DDOCKERBUILD + CFLAGS += -DDOCKERBUILD +endif + # Check for Puppycam option ifeq ($(BETTERCAMERA),1) CC_CHECK += -DBETTERCAMERA diff --git a/src/game/save_file.c b/src/game/save_file.c index 65fa8866..269d77a6 100644 --- a/src/game/save_file.c +++ b/src/game/save_file.c @@ -399,7 +399,7 @@ BAD_RETURN(s32) save_file_copy(s32 srcFileIndex, s32 destFileIndex) { #ifdef TEXTSAVES static void save_file_load_textsaves(void) { - for (file = 0; file < NUM_SAVE_FILES; file++) { + for (int file = 0; file < NUM_SAVE_FILES; file++) { read_text_save(file); } gSaveFileModified = TRUE; diff --git a/src/pc/fs/fs.c b/src/pc/fs/fs.c index b9e117f7..4008fdc1 100644 --- a/src/pc/fs/fs.c +++ b/src/pc/fs/fs.c @@ -5,7 +5,9 @@ #include #include #include +#ifndef DOCKERBUILD #include +#endif #include #ifdef _WIN32 #include @@ -389,6 +391,9 @@ bool fs_sys_dir_exists(const char *name) { } bool fs_sys_walk(const char *base, walk_fn_t walk, void *user, const bool recur) { +#ifdef DOCKERBUILD + return false; +#else char fullpath[SYS_MAX_PATH]; DIR *dir; struct dirent *ent; @@ -420,6 +425,7 @@ bool fs_sys_walk(const char *base, walk_fn_t walk, void *user, const bool recur) closedir(dir); return ret; +#endif } fs_pathlist_t fs_sys_enumerate(const char *base, const bool recur) { diff --git a/src/pc/network/socket/socket_windows.h b/src/pc/network/socket/socket_windows.h index 86bef6eb..50dad0cf 100644 --- a/src/pc/network/socket/socket_windows.h +++ b/src/pc/network/socket/socket_windows.h @@ -2,7 +2,7 @@ #define SOCKET_WINDOWS_H #include -#include +#include #define SOCKET_LAST_ERROR WSAGetLastError() #define SOCKET_EWOULDBLOCK WSAEWOULDBLOCK