mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
CMake: Remove the workaround for source groups below CMake 2.8.12
* Set the default option to hierarchical
* Add a new "hierarchical-folders" option which enables folders inside IDE's.
(cherry picked from commit bf773ccc41)
This commit is contained in:
@@ -10,7 +10,7 @@
|
||||
|
||||
macro(GroupSources dir)
|
||||
# Skip this if WITH_SOURCE_TREE is not set (empty string).
|
||||
if (NOT ${_WITH_SOURCE_TREE} STREQUAL "")
|
||||
if (NOT ${WITH_SOURCE_TREE} STREQUAL "")
|
||||
# Include all header and c files
|
||||
file(GLOB_RECURSE elements RELATIVE ${dir} *.h *.hpp *.c *.cpp *.cc)
|
||||
|
||||
@@ -21,7 +21,7 @@ macro(GroupSources dir)
|
||||
|
||||
if (NOT ${element_dir} STREQUAL "")
|
||||
# If the file is in a subdirectory use it as source group.
|
||||
if (${_WITH_SOURCE_TREE} STREQUAL "flat")
|
||||
if (${WITH_SOURCE_TREE} STREQUAL "flat")
|
||||
# Build flat structure by using only the first subdirectory.
|
||||
string(FIND ${element_dir} "/" delemiter_pos)
|
||||
if (NOT ${delemiter_pos} EQUAL -1)
|
||||
@@ -44,3 +44,8 @@ macro(GroupSources dir)
|
||||
endforeach()
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
if (WITH_SOURCE_TREE STREQUAL "hierarchical-folders")
|
||||
# Use folders
|
||||
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||
endif()
|
||||
|
||||
@@ -15,6 +15,6 @@ option(USE_SCRIPTPCH "Use precompiled headers when compiling scripts"
|
||||
option(USE_COREPCH "Use precompiled headers when compiling servers" 1)
|
||||
option(WITH_WARNINGS "Show all warnings during compile" 0)
|
||||
option(WITH_COREDEBUG "Include additional debug-code in core" 0)
|
||||
set(WITH_SOURCE_TREE "no" CACHE STRING "Build the source tree for IDE's.")
|
||||
set_property(CACHE WITH_SOURCE_TREE PROPERTY STRINGS no flat hierarchical)
|
||||
set(WITH_SOURCE_TREE "hierarchical" CACHE STRING "Build the source tree for IDE's.")
|
||||
set_property(CACHE WITH_SOURCE_TREE PROPERTY STRINGS no flat hierarchical hierarchical-folders)
|
||||
option(WITHOUT_GIT "Disable the GIT testing routines" 0)
|
||||
|
||||
@@ -69,27 +69,10 @@ else()
|
||||
message("* Use coreside debug : No (default)")
|
||||
endif()
|
||||
|
||||
if( WITH_SOURCE_TREE STREQUAL "flat" OR WITH_SOURCE_TREE STREQUAL "hierarchical" )
|
||||
# TODO: Remove this after Debian 8 is released and set general required version to 2.8.12
|
||||
# Debian 7 is shipped with CMake 2.8.9 . But DIRECTORY flag of get_filename_component requires 2.8.12 .
|
||||
if (NOT CMAKE_VERSION VERSION_LESS 2.8.12)
|
||||
message("* Show source tree : Yes - ${WITH_SOURCE_TREE}")
|
||||
set(_WITH_SOURCE_TREE ${WITH_SOURCE_TREE} CACHE INTERNAL "WITH_SOURCE_TREE support enabled.")
|
||||
else()
|
||||
message("* Show source tree : No (default)")
|
||||
|
||||
message("")
|
||||
message(" *** WITH_SOURCE_TREE - WARNING!")
|
||||
message(" *** This functionality is ONLY supported on CMake 2.8.12 or higher.")
|
||||
message(" *** You are running ${CMAKE_VERSION}, which does not have the functions needed")
|
||||
message(" *** to create a sourcetree - this option is thus forced to disabled!")
|
||||
message("")
|
||||
|
||||
set(_WITH_SOURCE_TREE "" CACHE INTERNAL "WITH_SOURCE_TREE support disabled.")
|
||||
endif()
|
||||
if( NOT WITH_SOURCE_TREE STREQUAL "no" )
|
||||
message("* Show source tree : Yes - \"${WITH_SOURCE_TREE}\"")
|
||||
else()
|
||||
message("* Show source tree : No (default)")
|
||||
set(_WITH_SOURCE_TREE "" CACHE INTERNAL "WITH_SOURCE_TREE support disabled.")
|
||||
message("* Show source tree : No")
|
||||
endif()
|
||||
|
||||
if ( WITHOUT_GIT )
|
||||
|
||||
Reference in New Issue
Block a user