Browse Source

Merge branch 'master' into sdl-update

Lasse Öörni 12 years ago
parent
commit
3ce378d5e2
52 changed files with 110 additions and 183 deletions
  1. 2 0
      Docs/GettingStarted.dox
  2. 40 3
      Source/CMake/Modules/Urho3D-CMake-magic.cmake
  3. 0 3
      Source/CMakeLists.txt
  4. 1 3
      Source/Engine/Audio/CMakeLists.txt
  5. 16 33
      Source/Engine/CMakeLists.txt
  6. 1 3
      Source/Engine/Container/CMakeLists.txt
  7. 1 3
      Source/Engine/Core/CMakeLists.txt
  8. 1 3
      Source/Engine/Engine/CMakeLists.txt
  9. 1 0
      Source/Engine/Graphics/BillboardSet.h
  10. 5 10
      Source/Engine/Graphics/CMakeLists.txt
  11. 1 3
      Source/Engine/IO/CMakeLists.txt
  12. 1 3
      Source/Engine/Input/CMakeLists.txt
  13. 1 3
      Source/Engine/LuaScript/CMakeLists.txt
  14. 1 3
      Source/Engine/Math/CMakeLists.txt
  15. 1 3
      Source/Engine/Navigation/CMakeLists.txt
  16. 1 3
      Source/Engine/Network/CMakeLists.txt
  17. 1 3
      Source/Engine/Physics/CMakeLists.txt
  18. 1 3
      Source/Engine/Resource/CMakeLists.txt
  19. 1 3
      Source/Engine/Scene/CMakeLists.txt
  20. 1 3
      Source/Engine/Script/CMakeLists.txt
  21. 1 3
      Source/Engine/UI/CMakeLists.txt
  22. 1 3
      Source/Extras/OgreBatchConverter/CMakeLists.txt
  23. 1 3
      Source/Samples/01_HelloWorld/CMakeLists.txt
  24. 1 3
      Source/Samples/02_HelloGUI/CMakeLists.txt
  25. 1 3
      Source/Samples/03_Sprites/CMakeLists.txt
  26. 1 3
      Source/Samples/04_StaticScene/CMakeLists.txt
  27. 1 3
      Source/Samples/05_AnimatingScene/CMakeLists.txt
  28. 1 3
      Source/Samples/06_SkeletalAnimation/CMakeLists.txt
  29. 1 3
      Source/Samples/07_Billboards/CMakeLists.txt
  30. 1 3
      Source/Samples/08_Decals/CMakeLists.txt
  31. 1 3
      Source/Samples/09_MultipleViewports/CMakeLists.txt
  32. 1 3
      Source/Samples/10_RenderToTexture/CMakeLists.txt
  33. 1 3
      Source/Samples/11_Physics/CMakeLists.txt
  34. 1 3
      Source/Samples/12_PhysicsStressTest/CMakeLists.txt
  35. 1 3
      Source/Samples/13_Ragdolls/CMakeLists.txt
  36. 1 3
      Source/Samples/14_SoundEffects/CMakeLists.txt
  37. 1 3
      Source/Samples/15_Navigation/CMakeLists.txt
  38. 1 3
      Source/Samples/16_Chat/CMakeLists.txt
  39. 1 3
      Source/Samples/17_SceneReplication/CMakeLists.txt
  40. 1 3
      Source/Samples/18_CharacterDemo/CMakeLists.txt
  41. 1 3
      Source/Samples/19_VehicleDemo/CMakeLists.txt
  42. 1 3
      Source/Samples/20_HugeObjectCount/CMakeLists.txt
  43. 1 3
      Source/Samples/21_AngelScriptIntegration/CMakeLists.txt
  44. 1 3
      Source/Samples/22_LuaIntegration/CMakeLists.txt
  45. 1 3
      Source/Tools/AssetImporter/CMakeLists.txt
  46. 1 3
      Source/Tools/DocConverter/CMakeLists.txt
  47. 1 3
      Source/Tools/OgreImporter/CMakeLists.txt
  48. 1 1
      Source/Tools/PackageTool/CMakeLists.txt
  49. 1 1
      Source/Tools/RampGenerator/CMakeLists.txt
  50. 1 3
      Source/Tools/ScriptCompiler/CMakeLists.txt
  51. 1 3
      Source/Tools/ShaderCompiler/CMakeLists.txt
  52. 1 3
      Source/Tools/Urho3D/CMakeLists.txt

+ 2 - 0
Docs/GettingStarted.dox

@@ -297,6 +297,8 @@ set (TARGET_NAME Main)
 file (GLOB CPP_FILES *.cpp)
 file (GLOB H_FILES *.h)
 set (SOURCE_FILES ${CPP_FILES} ${H_FILES})
+# Alternatively remove three lines above and uncomment below macro
+# define_source_files ()
 
 # Setup target with resource copying
 setup_main_executable ()

+ 40 - 3
Source/CMake/Modules/Urho3D-CMake-magic.cmake

@@ -345,7 +345,7 @@ endmacro ()
 
 # Macro for setting up an executable target
 macro (setup_executable)
-    add_executable (${TARGET_NAME} ${EXE_TYPE} ${SOURCE_FILES})   
+    add_executable (${TARGET_NAME} ${ARGN} ${SOURCE_FILES})
     define_dependency_libs (Urho3D_lib)
     setup_target ()
     
@@ -441,7 +441,7 @@ macro (setup_main_executable)
         elseif (APPLE)
             setup_macosx_linker_flags (CMAKE_EXE_LINKER_FLAGS)
         endif ()
-        setup_executable ()
+        setup_executable (${EXE_TYPE})
     endif ()
     
     if (XCODE)
@@ -546,8 +546,45 @@ macro (define_dependency_libs TARGET)
     endif ()
 endmacro ()
 
-# Macro for sorting and removing duplicate value
+# Macro for sorting and removing duplicate values
 macro (remove_duplicate LIST_NAME)
     list (SORT ${LIST_NAME})
     list (REMOVE_DUPLICATES ${LIST_NAME})
 endmacro ()
+
+# Macro for setting a list from another with option to sort and remove duplicate values
+macro (set_list TO_LIST FROM_LIST)
+    set (${TO_LIST} ${${FROM_LIST}})
+    if (${ARGN} STREQUAL REMOVE_DUPLICATE)
+        remove_duplicate (${TO_LIST})
+    endif ()
+endmacro ()
+
+# Macro for defining source files
+macro (define_source_files)
+    # Parse extra arguments
+    cmake_parse_arguments (EXTRA "PCH;PARENT_SCOPE" "GROUP" "CPP_FILES;H_FILES" ${ARGN})
+
+    # Source files are defined by globbing source files in current source directory and also by including the extra source files if provided
+    file (GLOB CPP_FILES *.cpp)
+    file (GLOB H_FILES *.h)
+    list (APPEND CPP_FILES ${EXTRA_CPP_FILES})
+    list (APPEND H_FILES ${EXTRA_H_FILES})
+    set (SOURCE_FILES ${CPP_FILES} ${H_FILES})
+    
+    # Optionally enable PCH
+    if (EXTRA_PCH)
+        enable_pch ()
+    endif ()
+    
+    # Optionally accumulate source files at parent scope
+    if (EXTRA_PARENT_SCOPE)
+        get_filename_component (DIR_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME)
+        set (${DIR_NAME}_CPP_FILES ${CPP_FILES} PARENT_SCOPE)
+        set (${DIR_NAME}_H_FILES ${H_FILES} PARENT_SCOPE)
+    # Optionally put source files into further sub-group (only works for current scope due to CMake limitation)
+    elseif (EXTRA_GROUP)
+        source_group ("Source Files\\${EXTRA_GROUP}" FILES ${CPP_FILES})
+        source_group ("Header Files\\${EXTRA_GROUP}" FILES ${H_FILES})
+    endif ()
+endmacro ()

+ 0 - 3
Source/CMakeLists.txt

@@ -72,9 +72,6 @@ if (URHO3D_LIB_TYPE STREQUAL SHARED)
 endif ()
 
 # Add targets
-foreach (SOURCE Audio Container Core Engine Graphics Input IO Math Navigation Network Physics Resource Scene Script UI)
-    add_subdirectory (Engine/${SOURCE})
-endforeach ()
 foreach (TARGET AngelScript Bullet Civetweb Detour FreeType JO kNet LZ4 PugiXml Recast SDL StanHull STB)
     add_subdirectory (ThirdParty/${TARGET})
 endforeach ()

+ 1 - 3
Source/Engine/Audio/CMakeLists.txt

@@ -21,9 +21,7 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)
 
 # Define dependency libs
 set (ENGINE_LIBS ${ENGINE_LIBS} ../ThirdParty/STB PARENT_SCOPE)

+ 16 - 33
Source/Engine/CMakeLists.txt

@@ -90,50 +90,33 @@ foreach (TARGET ${STATIC_LIBRARY_TARGETS})
                     endif ()
                 endforeach ()
             endif ()
-            set (OBJ_FILES ${OBJ_FILES} ${INT_DIR}${SYS_DIR}/${NAME}${OBJ_EXT})
+            list (APPEND OBJ_FILES ${INT_DIR}${SYS_DIR}/${NAME}${OBJ_EXT})
         elseif (NAME MATCHES \\.o.*$)
-            set (OBJ_FILES ${OBJ_FILES} ${SOURCE})
+            list (APPEND OBJ_FILES ${SOURCE})
         endif ()
     endforeach ()
+    source_group ("Object Files\\${TARGET}" FILES ${OBJ_FILES})
+    list (APPEND ALL_OBJ_FILES ${OBJ_FILES})
+    unset (OBJ_FILES)
 endforeach ()
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} ${OBJ_FILES} gitversion.h)
-set_source_files_properties (${OBJ_FILES} PROPERTIES GENERATED TRUE)
-enable_pch ()
+foreach (SOURCE Audio Container Core Engine Graphics Input IO Math Navigation Network Physics Resource Scene Script UI)
+    add_subdirectory (${SOURCE})
+    source_group ("Source Files\\${SOURCE}" FILES ${${SOURCE}_CPP_FILES})
+    source_group ("Header Files\\${SOURCE}" FILES ${${SOURCE}_H_FILES})
+    list (APPEND ENGINE_SOURCE_FILES ${${SOURCE}_CPP_FILES} ${${SOURCE}_H_FILES})
+    list (APPEND ENGINE_INCLUDE_DIRS_ONLY ${SOURCE})
+endforeach ()
+define_source_files (CPP_FILES ${ENGINE_SOURCE_FILES} H_FILES gitversion.h PCH)
+list (APPEND SOURCE_FILES ${ALL_OBJ_FILES})
+set_source_files_properties (${ALL_OBJ_FILES} PROPERTIES GENERATED TRUE)
 
 # Define dependency libs
-macro (set_list LIST_NAME)
-    remove_duplicate (ENGINE_${LIST_NAME})
-    set (${LIST_NAME} ${ENGINE_${LIST_NAME}})
-endmacro ()
 foreach (LIST_NAME LIBS INCLUDE_DIRS_ONLY LINK_LIBS_ONLY)
-    set_list (${LIST_NAME})
-endforeach ()
-file (GLOB ENGINE_DIRS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} */CMakeLists.txt)
-foreach (ENGINE_DIR ${ENGINE_DIRS})
-    get_filename_component (ENGINE_DIR ${ENGINE_DIR} PATH)
-    list (APPEND INCLUDE_DIRS_ONLY ${ENGINE_DIR})
+    set_list (${LIST_NAME} ENGINE_${LIST_NAME} REMOVE_DUPLICATE)
 endforeach ()
 
-# Setup source groups, Visual Studio only
-if (MSVC)
-    foreach (ENGINE_DIR ${ENGINE_DIRS})
-        get_filename_component (ENGINE_DIR ${ENGINE_DIR} PATH)
-        if (${ENGINE_DIR} MATCHES Graphics)
-            file (GLOB GROUP_H_FILES ${ENGINE_DIR}/*.h ${ENGINE_DIR}/${GRAPHICS_SYS_DIR}/*.h)
-            file (GLOB GROUP_CPP_FILES ${ENGINE_DIR}/*.cpp ${ENGINE_DIR}/${GRAPHICS_SYS_DIR}/*.cpp)
-        else ()
-            file (GLOB GROUP_H_FILES ${ENGINE_DIR}/*.h)
-            file (GLOB GROUP_CPP_FILES ${ENGINE_DIR}/*.cpp)
-        endif ()
-        source_group("Header Files\\${ENGINE_DIR}" FILES ${GROUP_H_FILES})
-        source_group("Source Files\\${ENGINE_DIR}" FILES ${GROUP_CPP_FILES})
-    endforeach ()
-endif ()
-
 # Setup target
 setup_library (${URHO3D_LIB_TYPE})
 adjust_library_name ()

+ 1 - 3
Source/Engine/Container/CMakeLists.txt

@@ -21,6 +21,4 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)

+ 1 - 3
Source/Engine/Core/CMakeLists.txt

@@ -21,9 +21,7 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)
 
 # Define dependency libs
 if (NOT IOS AND NOT ANDROID AND NOT RASPI)

+ 1 - 3
Source/Engine/Engine/CMakeLists.txt

@@ -21,9 +21,7 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)
 
 # Define dependency libs
 set (ENGINE_INCLUDE_DIRS_ONLY ${ENGINE_INCLUDE_DIRS_ONLY} ../ThirdParty/Bullet/src ../ThirdParty/kNet/include PARENT_SCOPE)

+ 1 - 0
Source/Engine/Graphics/BillboardSet.h

@@ -24,6 +24,7 @@
 
 #include "Color.h"
 #include "Drawable.h"
+#include "Matrix3x4.h"
 #include "Rect.h"
 #include "VectorBuffer.h"
 

+ 5 - 10
Source/Engine/Graphics/CMakeLists.txt

@@ -21,19 +21,14 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
 if (USE_OPENGL)
-    set (GRAPHICS_SYS_DIR OpenGL PARENT_SCOPE)
-    file (GLOB SYS_CPP_FILES OpenGL/*.cpp)
-    file (GLOB SYS_H_FILES OpenGL/*.h)
+    set (GRAPHICS_SYS_DIR OpenGL)
 else ()
-    set (GRAPHICS_SYS_DIR Direct3D9 PARENT_SCOPE)
-    file (GLOB SYS_CPP_FILES Direct3D9/*.cpp)
-    file (GLOB SYS_H_FILES Direct3D9/*.h)
+    set (GRAPHICS_SYS_DIR Direct3D9)
 endif ()
-
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} ${SYS_CPP_FILES} ${SYS_H_FILES} PARENT_SCOPE)
+file (GLOB SYS_CPP_FILES ${GRAPHICS_SYS_DIR}/*.cpp)
+file (GLOB SYS_H_FILES ${GRAPHICS_SYS_DIR}/*.h)
+define_source_files (CPP_FILES ${SYS_CPP_FILES} H_FILES ${SYS_H_FILES} PARENT_SCOPE)
 
 # Define dependency libs
 set (ENGINE_LINK_LIBS_ONLY ${ENGINE_LINK_LIBS_ONLY} SDL PARENT_SCOPE)

+ 1 - 3
Source/Engine/IO/CMakeLists.txt

@@ -21,12 +21,10 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
 if (APPLE AND NOT IOS)
     file (GLOB C_FILES *.m)
 endif()
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${C_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (CPP_FILES ${C_FILES} PARENT_SCOPE)
 
 # Define dependency libs
 set (ENGINE_LIBS ${ENGINE_LIBS} ../ThirdParty/LZ4 PARENT_SCOPE)

+ 1 - 3
Source/Engine/Input/CMakeLists.txt

@@ -21,9 +21,7 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)
 
 # Define dependency libs
 set (ENGINE_LINK_LIBS_ONLY ${ENGINE_LINK_LIBS_ONLY} SDL PARENT_SCOPE)

+ 1 - 3
Source/Engine/LuaScript/CMakeLists.txt

@@ -56,9 +56,7 @@ foreach (API_PKG_FILE ${API_PKG_FILES})
 endforeach ()
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${GEN_CPP_FILES})
+define_source_files (CPP_FILES ${GEN_CPP_FILES})
 
 # Define dependency libs
 set (LIBS ../../ThirdParty/Lua${JIT}/src)

+ 1 - 3
Source/Engine/Math/CMakeLists.txt

@@ -21,6 +21,4 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)

+ 1 - 3
Source/Engine/Navigation/CMakeLists.txt

@@ -21,9 +21,7 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)
 
 # Define dependency libs
 set (ENGINE_LIBS ${ENGINE_LIBS} ../ThirdParty/Recast/include ../ThirdParty/Detour/include PARENT_SCOPE)

+ 1 - 3
Source/Engine/Network/CMakeLists.txt

@@ -21,9 +21,7 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)
 
 # Define dependency libs
 set (ENGINE_LIBS ${ENGINE_LIBS} ../ThirdParty/kNet/include ../ThirdParty/Civetweb/include PARENT_SCOPE)

+ 1 - 3
Source/Engine/Physics/CMakeLists.txt

@@ -21,9 +21,7 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)
 
 # Define dependency libs
 set (ENGINE_LIBS ${ENGINE_LIBS} ../ThirdParty/Bullet/src ../ThirdParty/StanHull PARENT_SCOPE)

+ 1 - 3
Source/Engine/Resource/CMakeLists.txt

@@ -21,9 +21,7 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)
 
 # Define dependency libs
 set (ENGINE_LIBS ${ENGINE_LIBS} ../ThirdParty/JO ../ThirdParty/PugiXml/src ../ThirdParty/STB PARENT_SCOPE)

+ 1 - 3
Source/Engine/Scene/CMakeLists.txt

@@ -21,6 +21,4 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)

+ 1 - 3
Source/Engine/Script/CMakeLists.txt

@@ -21,9 +21,7 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)
 
 # Define dependency libs
 set (ENGINE_LIBS ${ENGINE_LIBS} ../ThirdParty/AngelScript/include PARENT_SCOPE)

+ 1 - 3
Source/Engine/UI/CMakeLists.txt

@@ -21,9 +21,7 @@
 #
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (ENGINE_SOURCE_FILES ${ENGINE_SOURCE_FILES} ${CPP_FILES} ${H_FILES} PARENT_SCOPE)
+define_source_files (PARENT_SCOPE)
 
 # Define dependency libs
 set (ENGINE_LIBS ${ENGINE_LIBS} ../ThirdParty/FreeType/include PARENT_SCOPE)

+ 1 - 3
Source/Extras/OgreBatchConverter/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME OgreBatchConverter)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES})
+define_source_files ()
 
 # Setup target
 setup_executable ()

+ 1 - 3
Source/Samples/01_HelloWorld/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 01_HelloWorld)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/02_HelloGUI/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 02_HelloGUI)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/03_Sprites/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 03_Sprites)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/04_StaticScene/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 04_StaticScene)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/05_AnimatingScene/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 05_AnimatingScene)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/06_SkeletalAnimation/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 06_SkeletalAnimation)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/07_Billboards/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 07_Billboards)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/08_Decals/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 08_Decals)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/09_MultipleViewports/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 09_MultipleViewports)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/10_RenderToTexture/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 10_RenderToTexture)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/11_Physics/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 11_Physics)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/12_PhysicsStressTest/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 12_PhysicsStressTest)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/13_Ragdolls/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 13_Ragdolls)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/14_SoundEffects/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 14_SoundEffects)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/15_Navigation/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 15_Navigation)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/16_Chat/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 16_Chat)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/17_SceneReplication/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 17_SceneReplication)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/18_CharacterDemo/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 18_CharacterDemo)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/19_VehicleDemo/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 19_VehicleDemo)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/20_HugeObjectCount/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 20_HugeObjectCount)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/21_AngelScriptIntegration/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 21_AngelScriptIntegration)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Samples/22_LuaIntegration/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME 22_LuaIntegration)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES} ${COMMON_SAMPLE_H_FILES})
+define_source_files (H_FILES ${COMMON_SAMPLE_H_FILES})
 
 # Setup target with resource copying
 setup_main_executable ()

+ 1 - 3
Source/Tools/AssetImporter/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME AssetImporter)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES})
+define_source_files ()
 
 # Define dependency libs
 add_subdirectory (../../ThirdParty/Assimp ../../ThirdParty/Assimp)

+ 1 - 3
Source/Tools/DocConverter/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME DocConverter)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES})
+define_source_files ()
 
 # Setup target
 setup_executable ()

+ 1 - 3
Source/Tools/OgreImporter/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME OgreImporter)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES})
+define_source_files ()
 
 # Setup target
 if (APPLE)

+ 1 - 1
Source/Tools/PackageTool/CMakeLists.txt

@@ -24,7 +24,7 @@
 set (TARGET_NAME PackageTool)
 
 # Define source files
-set (SOURCE_FILES PackageTool.cpp)
+define_source_files ()
 
 # Define dependency libs
 set (LIBS ../../ThirdParty/LZ4)

+ 1 - 1
Source/Tools/RampGenerator/CMakeLists.txt

@@ -24,7 +24,7 @@
 set (TARGET_NAME RampGenerator)
 
 # Define source files
-set (SOURCE_FILES RampGenerator.cpp)
+define_source_files ()
 
 # Define dependency libs
 set (LIBS ../../ThirdParty/STB)

+ 1 - 3
Source/Tools/ScriptCompiler/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME ScriptCompiler)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES})
+define_source_files ()
 
 # Setup target
 if (APPLE)

+ 1 - 3
Source/Tools/ShaderCompiler/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME ShaderCompiler)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES})
+define_source_files ()
 
 # Define dependency libs
 add_subdirectory (../../ThirdParty/MojoShader ../../ThirdParty/MojoShader)

+ 1 - 3
Source/Tools/Urho3D/CMakeLists.txt

@@ -24,9 +24,7 @@
 set (TARGET_NAME Urho3D)
 
 # Define source files
-file (GLOB CPP_FILES *.cpp)
-file (GLOB H_FILES *.h)
-set (SOURCE_FILES ${CPP_FILES} ${H_FILES})
+define_source_files ()
 
 # Setup target with resource copying
 setup_main_executable ()