From 88430bb92f2916cb0c1342057dd1d2154359902e Mon Sep 17 00:00:00 2001 From: Thomas Bernard Date: Fri, 20 Jul 2018 12:26:52 +0200 Subject: [PATCH] Add NO_X11 option at compiletime to disable X11 specific stuff with SDL driver just compile with $ NO_X11=1 make --- src/Makefile | 11 +++++++++-- src/input.c | 6 +++--- src/readline.c | 4 ++-- src/sdlscreen.c | 2 +- 4 files changed, 15 insertions(+), 8 deletions(-) diff --git a/src/Makefile b/src/Makefile index dd6e49d9..0acea7a9 100644 --- a/src/Makefile +++ b/src/Makefile @@ -511,11 +511,18 @@ endif LOPT = -lm ifeq ($(API),sdl) LOPT += $(shell sdl-config --libs) -lSDL_image - LOPT += -lX11 + ifneq ($(NO_X11),1) + LOPT += -lX11 + endif endif ifeq ($(API),sdl2) LOPT += $(shell sdl2-config --libs) -lSDL2_image - LOPT += -lX11 + ifneq ($(NO_X11),1) + LOPT += -lX11 + endif + endif + ifeq ($(NO_X11),1) + COPT += -DNO_X11 endif LOPT += $(TTFLOPT) LOPT += $(shell pkg-config --libs libpng) diff --git a/src/input.c b/src/input.c index 64d63f25..ce0751b0 100644 --- a/src/input.c +++ b/src/input.c @@ -83,7 +83,7 @@ int Snap_axis_origin_Y; char * Drop_file_name = NULL; -#if defined(USE_X11) || defined(SDL_VIDEO_DRIVER_X11) +#if defined(USE_X11) || (defined(SDL_VIDEO_DRIVER_X11) && !defined(NO_X11)) char * X11_clipboard = NULL; #endif @@ -319,7 +319,7 @@ int Move_cursor_with_constraints() // WM events management -#if defined(USE_X11) || defined(SDL_VIDEO_DRIVER_X11) +#if defined(USE_X11) || (defined(SDL_VIDEO_DRIVER_X11) && !defined(NO_X11)) static int xdnd_version = 5; static Window xdnd_source = None; @@ -1295,7 +1295,7 @@ int Get_input(int sleep_time) // Drop of zero files. Thanks for the information, Bill. } } -#elif defined(SDL_VIDEO_DRIVER_X11) +#elif defined(SDL_VIDEO_DRIVER_X11) && !defined(NO_X11) #if defined(USE_SDL) #define xevent event.syswm.msg->event.xevent #else diff --git a/src/readline.c b/src/readline.c index 5ba5a75c..2bfa463b 100644 --- a/src/readline.c +++ b/src/readline.c @@ -73,7 +73,7 @@ extern Window X11_window; #elif defined(__macosx__) const char * get_paste_board(void); #endif -#if defined(USE_X11) || defined(SDL_VIDEO_DRIVER_X11) +#if defined(USE_X11) || (defined(SDL_VIDEO_DRIVER_X11) && !defined(NO_X11)) extern char * X11_clipboard; #endif @@ -409,7 +409,7 @@ bye: if (unicode) *unicode = NULL; return haiku_get_clipboard(); - #elif defined(USE_X11) || defined(__macosx__) || defined(USE_SDL2) || (defined(USE_SDL) && defined(SDL_VIDEO_DRIVER_X11)) + #elif defined(USE_X11) || defined(__macosx__) || defined(USE_SDL2) || (defined(USE_SDL) && defined(SDL_VIDEO_DRIVER_X11) && !defined(NO_X11)) if (unicode) *unicode = NULL; #if defined(USE_SDL2) diff --git a/src/sdlscreen.c b/src/sdlscreen.c index 87ccd02d..43c48399 100644 --- a/src/sdlscreen.c +++ b/src/sdlscreen.c @@ -581,7 +581,7 @@ void Allow_drag_and_drop(int flag) #ifdef __WIN32__ DragAcceptFiles(GFX2_Get_Window_Handle(), flag?TRUE:FALSE); SDL_EventState (SDL_SYSWMEVENT, flag?SDL_ENABLE:SDL_DISABLE); -#elif defined(SDL_VIDEO_DRIVER_X11) +#elif defined(SDL_VIDEO_DRIVER_X11) && !defined(NO_X11) Atom version = flag ? 5 : 0; Display * display; Window window;