From 58d64831e792c0a53285981fbc644bb96915fca5 Mon Sep 17 00:00:00 2001
From: Anonymous Maarten <[EMAIL REDACTED]>
Date: Sun, 26 Oct 2025 19:55:15 +0100
Subject: [PATCH] cmake: export SDL2COMPAT_DISABLE_X11 macro for external
projects
---
CMakeLists.txt | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 983736c..62fb438 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -331,7 +331,7 @@ if(UNIX AND NOT APPLE)
target_compile_definitions(SDL2 PRIVATE SDL2COMPAT_HAVE_X11)
include_directories(${X11_INCLUDE_DIR})
else()
- target_compile_definitions(SDL2 PRIVATE SDL2COMPAT_DISABLE_X11)
+ target_compile_definitions(SDL2 PUBLIC SDL2COMPAT_DISABLE_X11)
message(STATUS "X11 support disabled")
endif()
endif()
@@ -567,23 +567,27 @@ if(SDL2COMPAT_INSTALL)
endforeach()
install(FILES "${PROJECT_BINARY_DIR}/include/SDL2/SDL_revision.h" DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/SDL2")
+ get_property(sdl2_public_macros TARGET SDL2 PROPERTY INTERFACE_COMPILE_DEFINITIONS)
+ if(sdl2_public_macros)
+ string(REPLACE ";" " -D" sdl2_public_macros ";${sdl2_public_macros}")
+ endif()
if(MSVC)
- set(SDL_CFLAGS "")
+ set(SDL_CFLAGS "${sdl2_public_macros}")
set(SDL_RLD_FLAGS "")
set(SDL_LIBS "-lSDL2main -lSDL2")
set(SDL_STATIC_LIBS "-lshell32")
elseif(MINGW)
- set(SDL_CFLAGS "")
+ set(SDL_CFLAGS "${sdl2_public_macros}")
set(SDL_RLD_FLAGS "")
set(SDL_LIBS "-lmingw32 -lSDL2main -lSDL2 -mwindows")
set(SDL_STATIC_LIBS "-lshell32")
elseif(APPLE)
- set(SDL_CFLAGS "-D_THREAD_SAFE")
+ set(SDL_CFLAGS "-D_THREAD_SAFE${sdl2_public_macros}")
set(SDL_RLD_FLAGS "") # !!! FIXME: this forces rpath, which we might want?
set(SDL_LIBS "-lSDL2main -lSDL2 -Wl,-framework,Cocoa")
set(SDL_STATIC_LIBS "")
else() # unix
- set(SDL_CFLAGS "-D_GNU_SOURCE=1 -D_REENTRANT")
+ set(SDL_CFLAGS "-D_GNU_SOURCE=1 -D_REENTRANT${sdl2_public_macros}")
set(SDL_RLD_FLAGS "") # !!! FIXME: this forces rpath, which we might want?
set(SDL_LIBS "-lSDL2")
set(SDL_STATIC_LIBS "")