]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - CMakeLists.txt
no
[xonotic/netradiant.git] / CMakeLists.txt
index d3f8b284d15e190e1904864526a65a1397eb3801..760c5a8a932aa70b83c064f6be01909be81448ac 100644 (file)
@@ -20,7 +20,7 @@ if (APPLE)
 endif ()
 
 set(BUILTIN_GTKGLEXT_BUILT OFF CACHE INTERNAL "...")
-if (EXISTS "${BUILTINS_INSTALL_DIR}/lib/pkgconfig/gtkglext-1.0.pc")
+if (EXISTS "${BUILTINS_PKGCONFIG_DIR}gtkglext-1.0.pc")
     set(BUILTIN_GTKGLEXT_BUILT ON)
 endif ()
 
@@ -231,7 +231,7 @@ if (BUILD_BINARIES)
 
     if (APPLE)
         add_definitions(-DGL_SILENCE_DEPRECATION=1)
-    endif()
+    endif ()
 
     set(CMAKE_POSITION_INDEPENDENT_CODE 1)
 endif ()
@@ -249,12 +249,26 @@ if (BUILD_RADIANT)
     endif ()
 
     if (APPLE)
+        set(UNSUPPORTED_GL_SHARED_CONTEXT ON CACHE INTERNAL "...")
+
         if (GTK_TARGET EQUAL 2)
             add_definitions(-DWORKAROUND_MACOS_GTK2_DESTROY=1)
             add_definitions(-DWORKAROUND_MACOS_GTK2_GLWIDGET=1)
             add_definitions(-DWORKAROUND_MACOS_GTK2_LAGGYPOINTER=1)
         endif ()
     endif ()
+
+       if (UNSUPPORTED_GL_SHARED_CONTEXT)
+               set(DEFAULT_GL_SHARED_CONTEXT ON)
+       else ()
+               set(DEFAULT_GL_SHARED_CONTEXT OFF)
+       endif ()
+
+    option(USE_GL_UNSHARED_CONTEXT "Do not share GL Contexts" ${DEFAULT_GL_SHARED_CONTEXT})
+
+    if (USE_GL_UNSHARED_CONTEXT)
+        add_definitions(-DGL_UNSHARED_CONTEXT=1)
+    endif ()
 endif ()
 
 #-----------------------------------------------------------------------
@@ -387,28 +401,27 @@ if (BUILTIN_GTKGLEXT)
 
     if (APPLE)
         set(GTKGLEXT_CFLAGS "${GTKGLEXT_CFLAGS} -DGL_SILENCE_DEPRECATION=1")
-        set(OBJC "${OBJC} -DGL_SILENCE_DEPRECATION=1")
+        # FIXME: OpenGL deprecation warnings are not silenced
+        # in Objective C code.
     endif ()
 
     ExternalProject_Add(gtkglext
         GIT_REPOSITORY https://gitlab.gnome.org/illwieckz/gtkglext.git
         GIT_TAG ${GTKGLEXT_GIT_TAG}
         BUILD_IN_SOURCE ON
-        CONFIGURE_COMMAND export CC=${CMAKE_C_COMPILER}
-        CONFIGURE_COMMAND && export CFLAGS=${GTKGLEXT_LDFLAGS}
+        CONFIGURE_COMMAND export CFLAGS=${GTKGLEXT_LDFLAGS}
         CONFIGURE_COMMAND && export LDFLAGS=${GTKGLEXT_CFLAGS}
         CONFIGURE_COMMAND && export NOCONFIGURE=1
         CONFIGURE_COMMAND && ./autogen.sh
         CONFIGURE_COMMAND && ./configure --prefix "${BUILTINS_INSTALL_DIR}" ${CONFIGURE_OPTIONS}
         BUILD_COMMAND $(MAKE)
-        BUILD_COMMAND CC=${CMAKE_C_COMPILER}
         BUILD_COMMAND CFLAGS=${GTKGLEXT_CFLAGS}
         BUILD_COMMAND LDFLAGS=${GTKGLEXT_LDFLAGS}
         INSTALL_COMMAND $(MAKE) install
     )
 
-    include_directories("${BUILTINS_INSTALL_DIR}/lib/gtkglext-1.0/include")
-    include_directories("${BUILTINS_INSTALL_DIR}/include/gtkglext-1.0")
+    include_directories("${BUILTINS_INCLUDE_DIR}/gtkglext-1.0")
+    include_directories("${BUILTINS_LIB_DIR}/gtkglext-1.0/include")
 
     add_dependencies(builtins gtkglext)
     set_target_properties(gtkglext PROPERTIES EXCLUDE_FROM_ALL ON)