Browse Source

Reduce 3rd-party headers installation to as minimum as possible.

Yao Wei Tjong 姚伟忠 12 years ago
parent
commit
b45de628e7

+ 2 - 2
Source/CMake/Modules/FindUrho3D.cmake

@@ -64,7 +64,7 @@ if (URHO3D_HOME)
         foreach (DIR Audio Container Core Engine Graphics Input IO LuaScript Math Navigation Network Physics Resource Scene Script UI)
         foreach (DIR Audio Container Core Engine Graphics Input IO LuaScript Math Navigation Network Physics Resource Scene Script UI)
             list (APPEND URHO3D_INCLUDE_DIR ${SOURCE_TREE_PATH}/${DIR})     # Note: variable change to list context after this
             list (APPEND URHO3D_INCLUDE_DIR ${SOURCE_TREE_PATH}/${DIR})     # Note: variable change to list context after this
         endforeach ()
         endforeach ()
-        foreach (DIR Bullet/src kNet/include LZ4 SDL/include STB)
+        foreach (DIR Bullet/src kNet/include)
             list (APPEND URHO3D_INCLUDE_DIR ${URHO3D_HOME}/Source/ThirdParty/${DIR})
             list (APPEND URHO3D_INCLUDE_DIR ${URHO3D_HOME}/Source/ThirdParty/${DIR})
         endforeach ()
         endforeach ()
 
 
@@ -102,7 +102,7 @@ else ()
 
 
     if (URHO3D_INCLUDE_DIR)
     if (URHO3D_INCLUDE_DIR)
         set (BASE_DIR ${URHO3D_INCLUDE_DIR})
         set (BASE_DIR ${URHO3D_INCLUDE_DIR})
-        foreach (DIR Bullet kNet LZ4 SDL STB)
+        foreach (DIR Bullet kNet)
             list (APPEND URHO3D_INCLUDE_DIR ${BASE_DIR}/${DIR})     # Note: variable change to list context after this, so we need BASE_DIR to remain the same
             list (APPEND URHO3D_INCLUDE_DIR ${BASE_DIR}/${DIR})     # Note: variable change to list context after this, so we need BASE_DIR to remain the same
         endforeach ()
         endforeach ()
     endif ()
     endif ()

+ 1 - 1
Source/Engine/CMakeLists.txt

@@ -104,7 +104,7 @@ endforeach ()
 foreach (SOURCE Audio Container Core Engine Graphics Input IO Math Navigation Network Physics Resource Scene Script UI)
 foreach (SOURCE Audio Container Core Engine Graphics Input IO Math Navigation Network Physics Resource Scene Script UI)
     add_subdirectory (${SOURCE})
     add_subdirectory (${SOURCE})
     if (DEST_INCLUDE_DIR)
     if (DEST_INCLUDE_DIR)
-        install (FILES ${${SOURCE}_H_FILES} DESTINATION ${DEST_INCLUDE_DIR})
+        install (DIRECTORY ${SOURCE}/ DESTINATION ${DEST_INCLUDE_DIR} USE_SOURCE_PERMISSIONS FILES_MATCHING PATTERN *.h)    # Note: the trailing slash is significant
     endif ()
     endif ()
     source_group ("Source Files\\${SOURCE}" FILES ${${SOURCE}_CPP_FILES})
     source_group ("Source Files\\${SOURCE}" FILES ${${SOURCE}_CPP_FILES})
     source_group ("Header Files\\${SOURCE}" FILES ${${SOURCE}_H_FILES})
     source_group ("Header Files\\${SOURCE}" FILES ${${SOURCE}_H_FILES})

+ 2 - 1
Source/ThirdParty/Bullet/CMakeLists.txt

@@ -16,7 +16,8 @@ file (GLOB H_FILES *.h src/BulletCollision/BroadphaseCollision/*.h
     src/LinearMath/*.h)
     src/LinearMath/*.h)
 set (SOURCE_FILES ${CPP_FILES} ${H_FILES})
 set (SOURCE_FILES ${CPP_FILES} ${H_FILES})
 if (DEST_INCLUDE_DIR)
 if (DEST_INCLUDE_DIR)
-    install (FILES ${H_FILES} DESTINATION ${DEST_INCLUDE_DIR}/Bullet)
+    # Dependency from Engine/PhysicsWorld.h and Engine/RigidBody.h
+    install (DIRECTORY src/LinearMath DESTINATION ${DEST_INCLUDE_DIR}/Bullet USE_SOURCE_PERMISSIONS FILES_MATCHING PATTERN *.h)
 endif ()
 endif ()
 
 
 # Define dependency libs
 # Define dependency libs

+ 0 - 3
Source/ThirdParty/LZ4/CMakeLists.txt

@@ -5,9 +5,6 @@ set (TARGET_NAME LZ4)
 file (GLOB C_FILES *.c)
 file (GLOB C_FILES *.c)
 file (GLOB H_FILES *.h)
 file (GLOB H_FILES *.h)
 set (SOURCE_FILES ${C_FILES} ${H_FILES})
 set (SOURCE_FILES ${C_FILES} ${H_FILES})
-if (DEST_INCLUDE_DIR)
-    install (FILES ${H_FILES} DESTINATION ${DEST_INCLUDE_DIR}/LZ4)
-endif ()
 
 
 # Setup target
 # Setup target
 setup_library ()
 setup_library ()

+ 0 - 3
Source/ThirdParty/SDL/CMakeLists.txt

@@ -105,9 +105,6 @@ file (GLOB H_FILES include/*.h)
 set_source_files_properties (${C_FILES} PROPERTIES LANGUAGE C)
 set_source_files_properties (${C_FILES} PROPERTIES LANGUAGE C)
 set_source_files_properties (${SYS_C_FILES} PROPERTIES LANGUAGE C)
 set_source_files_properties (${SYS_C_FILES} PROPERTIES LANGUAGE C)
 set (SOURCE_FILES ${C_FILES} ${SYS_C_FILES} ${H_FILES})
 set (SOURCE_FILES ${C_FILES} ${SYS_C_FILES} ${H_FILES})
-if (DEST_INCLUDE_DIR)
-    install (FILES ${H_FILES} DESTINATION ${DEST_INCLUDE_DIR}/SDL)
-endif ()
 
 
 # Setup target
 # Setup target
 setup_library ()
 setup_library ()

+ 0 - 3
Source/ThirdParty/STB/CMakeLists.txt

@@ -5,9 +5,6 @@ set (TARGET_NAME STB)
 file (GLOB C_FILES *.c)
 file (GLOB C_FILES *.c)
 file (GLOB H_FILES *.h)
 file (GLOB H_FILES *.h)
 set (SOURCE_FILES ${C_FILES} ${H_FILES})
 set (SOURCE_FILES ${C_FILES} ${H_FILES})
-if (DEST_INCLUDE_DIR)
-    install (FILES ${H_FILES} DESTINATION ${DEST_INCLUDE_DIR}/STB)
-endif ()
 
 
 # Setup target
 # Setup target
 setup_library ()
 setup_library ()

+ 2 - 1
Source/ThirdParty/kNet/CMakeLists.txt

@@ -59,7 +59,8 @@ endif ()
 # Define source files
 # Define source files
 set (SOURCE_FILES ${kNetSourceFiles} ${kNetHeaderFiles})
 set (SOURCE_FILES ${kNetSourceFiles} ${kNetHeaderFiles})
 if (DEST_INCLUDE_DIR)
 if (DEST_INCLUDE_DIR)
-    install (FILES ${kNetHeaderFiles} DESTINATION ${DEST_INCLUDE_DIR}/kNet)
+    # Dependency from Engine/Connection.h and Engine/Network.h
+    install (DIRECTORY include/ DESTINATION ${DEST_INCLUDE_DIR}/kNet USE_SOURCE_PERMISSIONS FILES_MATCHING PATTERN *.h PATTERN *.inl)     # Note: the trailing slash is significant
 endif ()
 endif ()
 
 
 # Define dependency libs
 # Define dependency libs