From b09b8f24c0e9755cf6a756e992f990489b51cd33 Mon Sep 17 00:00:00 2001 From: Ploo <239304139+xinitrcn1@users.noreply.github.com> Date: Fri, 24 Apr 2026 22:19:03 +0000 Subject: [PATCH 1/5] cmake: fix OmniOS pkgsrc pkgsrc installs X11 by default on /opt/local/include/X11 --- cmake/sdlchecks.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/cmake/sdlchecks.cmake b/cmake/sdlchecks.cmake index 79b866fffa..3e3dab61fd 100644 --- a/cmake/sdlchecks.cmake +++ b/cmake/sdlchecks.cmake @@ -442,6 +442,7 @@ macro(CheckX11) /usr/openwin/share/include /opt/graphics/OpenGL/include /opt/X11/include + /opt/local/include/X11 ) if(X_INCLUDEDIR) From 91b655506875de8d552bcaedc332f2106dda2532 Mon Sep 17 00:00:00 2001 From: Ploo <239304139+xinitrcn1@users.noreply.github.com> Date: Fri, 24 Apr 2026 22:40:41 +0000 Subject: [PATCH 2/5] Update sdlchecks.cmake --- cmake/sdlchecks.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/sdlchecks.cmake b/cmake/sdlchecks.cmake index 3e3dab61fd..6ccc994911 100644 --- a/cmake/sdlchecks.cmake +++ b/cmake/sdlchecks.cmake @@ -442,7 +442,7 @@ macro(CheckX11) /usr/openwin/share/include /opt/graphics/OpenGL/include /opt/X11/include - /opt/local/include/X11 + /opt/local/include ) if(X_INCLUDEDIR) From 103d7b66dd356792d466a0e621275cd7410e03e8 Mon Sep 17 00:00:00 2001 From: Ploo <239304139+xinitrcn1@users.noreply.github.com> Date: Fri, 24 Apr 2026 23:03:23 +0000 Subject: [PATCH 3/5] Update sdlchecks.cmake --- cmake/sdlchecks.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cmake/sdlchecks.cmake b/cmake/sdlchecks.cmake index 6ccc994911..3f682d9854 100644 --- a/cmake/sdlchecks.cmake +++ b/cmake/sdlchecks.cmake @@ -527,7 +527,11 @@ macro(CheckX11) XGetEventData(display, cookie); XFreeEventData(display, cookie); return 0; }" HAVE_XGENERICEVENT) - if(HAVE_XGENERICEVENT) + + # In OmniOS pkgsrc, XGenericEventCookie is defined as "typedef struct { ... } XGenericEventCookie;" + # which differs from every other implementation where it's + # "typedef struct XGenericEventCookie { ... } XGenericEventCookie;" + if(HAVE_XGENERICEVENT AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL "SunOS") set(SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS 1) endif() From b3bcee1e77edbf4368e0b668401bfa5c18853706 Mon Sep 17 00:00:00 2001 From: Ploo <239304139+xinitrcn1@users.noreply.github.com> Date: Fri, 24 Apr 2026 23:05:33 +0000 Subject: [PATCH 4/5] Update sdlchecks.cmake --- cmake/sdlchecks.cmake | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/cmake/sdlchecks.cmake b/cmake/sdlchecks.cmake index 3f682d9854..ea80e91dfe 100644 --- a/cmake/sdlchecks.cmake +++ b/cmake/sdlchecks.cmake @@ -528,10 +528,8 @@ macro(CheckX11) XFreeEventData(display, cookie); return 0; }" HAVE_XGENERICEVENT) - # In OmniOS pkgsrc, XGenericEventCookie is defined as "typedef struct { ... } XGenericEventCookie;" - # which differs from every other implementation where it's - # "typedef struct XGenericEventCookie { ... } XGenericEventCookie;" - if(HAVE_XGENERICEVENT AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL "SunOS") + # In OmniOS pkgsrc, XGenericEventCookie is defined, but fails to compile due to unrelated circumstances + if(HAVE_XGENERICEVENT OR ${CMAKE_SYSTEM_NAME} STREQUAL "SunOS") set(SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS 1) endif() From de20fc723275fbad67ed904509cb332e639b7709 Mon Sep 17 00:00:00 2001 From: Ploo <239304139+xinitrcn1@users.noreply.github.com> Date: Sat, 25 Apr 2026 10:22:37 +0000 Subject: [PATCH 5/5] Update sdlchecks.cmake --- cmake/sdlchecks.cmake | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/cmake/sdlchecks.cmake b/cmake/sdlchecks.cmake index ea80e91dfe..6ece834f9b 100644 --- a/cmake/sdlchecks.cmake +++ b/cmake/sdlchecks.cmake @@ -529,7 +529,14 @@ macro(CheckX11) return 0; }" HAVE_XGENERICEVENT) # In OmniOS pkgsrc, XGenericEventCookie is defined, but fails to compile due to unrelated circumstances - if(HAVE_XGENERICEVENT OR ${CMAKE_SYSTEM_NAME} STREQUAL "SunOS") + # thus, if this check fails, it means that OmniOS's outdated X11 is being used + check_c_source_compiles(" + #include + typedef struct XGenericCookie XGenericCookie; + int main(int argc, char **argv) { + return 0; }" HAVE_XGENERICEVENT_TYPEDEF_QUIRK) + + if(HAVE_XGENERICEVENT OR NOT HAVE_XGENERICEVENT_TYPEDEF_QUIRK) set(SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS 1) endif()