]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/CMakeLists.txt
upright_sprite: Fix walk animation in first person (#12194)
[dragonfireclient.git] / src / CMakeLists.txt
index ed0929564a0502dbdc2b6f0f74d6ed9d31ffa2ba..0323603fc2b45eadaf22eb28602f13454871de3e 100644 (file)
@@ -98,8 +98,8 @@ if(BUILD_CLIENT AND ENABLE_SOUND)
        endif()
 endif()
 
-
-option(ENABLE_GLES "Use OpenGL ES instead of OpenGL" FALSE)
+# TODO: this should be removed one day, we can enable it unconditionally
+option(ENABLE_GLES "Enable extra support code for OpenGL ES" FALSE)
 mark_as_advanced(ENABLE_GLES)
 
 option(ENABLE_TOUCH "Enable Touchscreen support" FALSE)
@@ -107,21 +107,6 @@ if(ENABLE_TOUCH)
        add_definitions(-DHAVE_TOUCHSCREENGUI)
 endif()
 
-if(BUILD_CLIENT)
-       # transitive dependency from Irrlicht (see longer explanation below)
-       if(NOT WIN32)
-               if(ENABLE_GLES)
-                       find_package(OpenGLES2 REQUIRED)
-               else()
-                       set(OPENGL_GL_PREFERENCE "LEGACY" CACHE STRING
-                               "See CMake Policy CMP0072 for reference. GLVND is broken on some nvidia setups")
-                       set(OpenGL_GL_PREFERENCE ${OPENGL_GL_PREFERENCE})
-
-                       find_package(OpenGL REQUIRED)
-               endif()
-       endif()
-endif()
-
 if(BUILD_CLIENT)
        find_package(Freetype REQUIRED)
 endif()
@@ -268,7 +253,7 @@ if(WIN32)
        else() # Probably MinGW = GCC
                set(PLATFORM_LIBS "")
        endif()
-       set(PLATFORM_LIBS ws2_32.lib version.lib shlwapi.lib ${PLATFORM_LIBS})
+       set(PLATFORM_LIBS ws2_32.lib version.lib shlwapi.lib winmm.lib ${PLATFORM_LIBS})
 
        set(EXTRA_DLL "" CACHE FILEPATH "Optional paths to additional DLLs that should be packaged")
 
@@ -485,6 +470,9 @@ endif()
 include_directories(
        ${PROJECT_BINARY_DIR}
        ${PROJECT_SOURCE_DIR}
+       ${PROJECT_SOURCE_DIR}/script
+)
+include_directories(SYSTEM
        ${ZLIB_INCLUDE_DIR}
        ${ZSTD_INCLUDE_DIR}
        ${SQLITE3_INCLUDE_DIR}
@@ -492,7 +480,6 @@ include_directories(
        ${GMP_INCLUDE_DIR}
        ${JSON_INCLUDE_DIR}
        ${LUA_BIT_INCLUDE_DIR}
-       ${PROJECT_SOURCE_DIR}/script
 )
 
 if(USE_GETTEXT)
@@ -500,7 +487,7 @@ if(USE_GETTEXT)
 endif()
 
 if(BUILD_CLIENT)
-       include_directories(
+       include_directories(SYSTEM
                ${FREETYPE_INCLUDE_DIRS}
                ${SOUND_INCLUDE_DIRS}
                ${X11_INCLUDE_DIR}
@@ -544,18 +531,6 @@ if(BUILD_CLIENT)
                )
        endif()
 
-       if(ENABLE_GLES)
-               target_link_libraries(
-                       ${PROJECT_NAME}
-                       ${OPENGLES2_LIBRARIES}
-                       ${EGL_LIBRARIES}
-               )
-       else()
-               target_link_libraries(
-                       ${PROJECT_NAME}
-                       ${OPENGL_LIBRARIES}
-               )
-       endif()
        if(USE_GETTEXT)
                target_link_libraries(
                        ${PROJECT_NAME}
@@ -718,7 +693,6 @@ if(MSVC)
        endif()
 else()
        # GCC or compatible compilers such as Clang
-       set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
        if(WARN_ALL)
                set(RELEASE_WARNING_FLAGS "-Wall")
        else()
@@ -737,7 +711,7 @@ else()
                        # Move text segment below LuaJIT's 47-bit limit (see issue #9367)
                        if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
                                # FreeBSD uses lld, and lld does not support -Ttext-segment, suggesting
-                               # --image-base instead. Not sure if it's equivalent change for the purpose 
+                               # --image-base instead. Not sure if it's equivalent change for the purpose
                                # but at least if fixes build on FreeBSD/aarch64
                                # XXX: the condition should also be changed to check for lld regardless of
                                # os, bit CMake doesn't have anything like CMAKE_LINKER_IS_LLD yet