summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEgor Yusov <egor.yusov@gmail.com>2019-11-19 17:11:59 +0000
committerEgor Yusov <egor.yusov@gmail.com>2019-11-19 17:11:59 +0000
commitac5c96e4153d059ad76174db83522641bb4b2b9f (patch)
treec3103e3e7f37b08794c2779a7a44d0bf231006d5
parentUpdated install fodler structure (diff)
downloadDiligentTools-ac5c96e4153d059ad76174db83522641bb4b2b9f.tar.gz
DiligentTools-ac5c96e4153d059ad76174db83522641bb4b2b9f.zip
Added install instructions
-rw-r--r--AssetLoader/CMakeLists.txt4
-rw-r--r--AssetLoader/interface/GLTFLoader.h8
-rw-r--r--CMakeLists.txt45
-rw-r--r--HLSL2GLSLConverter/CMakeLists.txt6
-rw-r--r--Imgui/CMakeLists.txt4
-rw-r--r--Imgui/interface/ImGuiUtils.h4
-rw-r--r--TextureLoader/CMakeLists.txt6
-rw-r--r--ThirdParty/CMakeLists.txt24
8 files changed, 94 insertions, 7 deletions
diff --git a/AssetLoader/CMakeLists.txt b/AssetLoader/CMakeLists.txt
index b3d78c7..822787b 100644
--- a/AssetLoader/CMakeLists.txt
+++ b/AssetLoader/CMakeLists.txt
@@ -44,3 +44,7 @@ PRIVATE
set_target_properties(Diligent-AssetLoader PROPERTIES
FOLDER DiligentTools
)
+
+if(INSTALL_DILIGENT_TOOLS)
+ install_tools_lib(Diligent-AssetLoader)
+endif()
diff --git a/AssetLoader/interface/GLTFLoader.h b/AssetLoader/interface/GLTFLoader.h
index 3544da5..f99cdea 100644
--- a/AssetLoader/interface/GLTFLoader.h
+++ b/AssetLoader/interface/GLTFLoader.h
@@ -26,10 +26,10 @@
#include <vector>
#include <memory>
-#include "RefCntAutoPtr.h"
-#include "RenderDevice.h"
-#include "DeviceContext.h"
-#include "AdvancedMath.h"
+#include "../../../DiligentCore/Graphics/GraphicsEngine/interface/RenderDevice.h"
+#include "../../../DiligentCore/Graphics/GraphicsEngine/interface/DeviceContext.h"
+#include "../../../DiligentCore/Common/interface/RefCntAutoPtr.h"
+#include "../../../DiligentCore/Common/interface/AdvancedMath.h"
namespace tinygltf
{
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 57f253c..a696cc9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -2,6 +2,37 @@ cmake_minimum_required (VERSION 3.6)
option(DILIGENT_BUILD_RENDER_SCRIPT "Build render script" ON)
+file(RELATIVE_PATH DILIGENT_TOOLS_DIR "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}")
+
+if(NOT INSTALL_DILIGENT_TOOLS)
+ set(INSTALL_DILIGENT_TOOLS ${INSTALL_DILIGENT_CORE})
+endif()
+
+function(install_tools_lib _TARGET)
+ get_target_relative_dir(${_TARGET} TARGET_RELATIVE_PATH)
+
+ get_target_property(TARGET_TYPE ${_TARGET} TYPE)
+ if(TARGET_TYPE STREQUAL STATIC_LIBRARY)
+ list(APPEND DILIGENT_TOOLS_INSTALL_LIBS_LIST ${_TARGET})
+ set(DILIGENT_TOOLS_INSTALL_LIBS_LIST ${DILIGENT_TOOLS_INSTALL_LIBS_LIST} CACHE INTERNAL "Diligent tools libraries installation list")
+ elseif(TARGET_TYPE STREQUAL SHARED_LIBRARY)
+ install(TARGETS ${_TARGET}
+ ARCHIVE DESTINATION "lib/${DILIGENT_TOOLS_DIR}/$<CONFIG>"
+ LIBRARY DESTINATION "bin/${DILIGENT_TOOLS_DIR}/$<CONFIG>"
+ RUNTIME DESTINATION "bin/${DILIGENT_TOOLS_DIR}/$<CONFIG>"
+ )
+ if (DILIGENT_INSTALL_PDB)
+ install(FILES $<TARGET_PDB_FILE:${_TARGET}> DESTINATION "bin/${DILIGENT_TOOLS_DIR}/$<CONFIG>" OPTIONAL)
+ endif()
+ endif()
+
+ if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/interface")
+ install(DIRECTORY interface
+ DESTINATION "headers/${TARGET_RELATIVE_PATH}/"
+ )
+ endif()
+endfunction()
+
add_subdirectory(ThirdParty)
add_subdirectory(TextureLoader)
add_subdirectory(AssetLoader)
@@ -15,3 +46,17 @@ endif()
if(PLATFORM_WIN32 AND GL_SUPPORTED)
add_subdirectory(HLSL2GLSLConverter)
endif()
+
+# Installation instructions
+if(INSTALL_DILIGENT_TOOLS)
+
+ install_combined_static_lib(
+ "${CMAKE_STATIC_LIBRARY_PREFIX}DiligentTools${CMAKE_STATIC_LIBRARY_SUFFIX}"
+ "${DILIGENT_TOOLS_INSTALL_LIBS_LIST}"
+ DiligentTools-static # Custom target name
+ DiligentTools # Folder
+ "lib/${DILIGENT_TOOLS_DIR}/$<CONFIG>" # Install destination
+ )
+
+ install(FILES License.txt DESTINATION "Licenses/${DILIGENT_TOOLS_DIR}" RENAME DiligentEngine-License.txt)
+endif()
diff --git a/HLSL2GLSLConverter/CMakeLists.txt b/HLSL2GLSLConverter/CMakeLists.txt
index b712598..4235607 100644
--- a/HLSL2GLSLConverter/CMakeLists.txt
+++ b/HLSL2GLSLConverter/CMakeLists.txt
@@ -35,3 +35,9 @@ source_group("source" FILES ${SOURCE})
set_target_properties(HLSL2GLSLConverter PROPERTIES
FOLDER DiligentTools
)
+
+install(TARGETS HLSL2GLSLConverter
+ ARCHIVE DESTINATION "lib/${DILIGENT_TOOLS_DIR}/$<CONFIG>"
+ LIBRARY DESTINATION "lib/${DILIGENT_TOOLS_DIR}/$<CONFIG>"
+ RUNTIME DESTINATION "bin/${DILIGENT_TOOLS_DIR}/$<CONFIG>"
+)
diff --git a/Imgui/CMakeLists.txt b/Imgui/CMakeLists.txt
index ecca7b4..c78762c 100644
--- a/Imgui/CMakeLists.txt
+++ b/Imgui/CMakeLists.txt
@@ -101,3 +101,7 @@ PRIVATE
set_target_properties(Diligent-Imgui PROPERTIES
FOLDER DiligentTools
)
+
+if(INSTALL_DILIGENT_TOOLS)
+ install_tools_lib(Diligent-Imgui)
+endif()
diff --git a/Imgui/interface/ImGuiUtils.h b/Imgui/interface/ImGuiUtils.h
index 62e3e45..7bbe806 100644
--- a/Imgui/interface/ImGuiUtils.h
+++ b/Imgui/interface/ImGuiUtils.h
@@ -26,8 +26,8 @@
#include <algorithm>
#include <limits>
-#include "imgui.h"
-#include "imgui_internal.h"
+#include "../../ThirdParty/imgui/imgui.h"
+#include "../../ThirdParty/imgui/imgui_internal.h"
namespace Diligent
{
diff --git a/TextureLoader/CMakeLists.txt b/TextureLoader/CMakeLists.txt
index 7f394f3..2730f5b 100644
--- a/TextureLoader/CMakeLists.txt
+++ b/TextureLoader/CMakeLists.txt
@@ -51,4 +51,8 @@ PRIVATE
set_target_properties(Diligent-TextureLoader PROPERTIES
FOLDER DiligentTools
-) \ No newline at end of file
+)
+
+if(INSTALL_DILIGENT_TOOLS)
+ install_tools_lib(Diligent-TextureLoader)
+endif()
diff --git a/ThirdParty/CMakeLists.txt b/ThirdParty/CMakeLists.txt
index 93fe6ba..e636d3b 100644
--- a/ThirdParty/CMakeLists.txt
+++ b/ThirdParty/CMakeLists.txt
@@ -17,3 +17,27 @@ install(FILES tinygltf/LICENSE DESTINATION ${LICENSE_INSTALL_PATH} RENAME tinygl
install(FILES zlib-1.2.8/README DESTINATION ${LICENSE_INSTALL_PATH} RENAME zlib-readme.txt)
install(FILES imgui/LICENSE.txt DESTINATION ${LICENSE_INSTALL_PATH} RENAME imgui-license.txt)
install(FILES imGuIZMO.quat/license.txt DESTINATION ${LICENSE_INSTALL_PATH} RENAME imGuIZMO.quat-license.txt)
+
+if(INSTALL_DILIGENT_TOOLS)
+ set(THIRD_PARTY_TARGETS LibJpeg LibPng LibTiff Lua ZLib)
+ install(TARGETS ${THIRD_PARTY_TARGETS}
+ ARCHIVE DESTINATION "lib/${DILIGENT_TOOLS_DIR}/$<CONFIG>"
+ LIBRARY DESTINATION "lib/${DILIGENT_TOOLS_DIR}/$<CONFIG>"
+ RUNTIME DESTINATION "bin/${DILIGENT_TOOLS_DIR}/$<CONFIG>"
+ )
+
+ list(APPEND DILIGENT_TOOLS_INSTALL_LIBS_LIST ${THIRD_PARTY_TARGETS})
+ set(DILIGENT_TOOLS_INSTALL_LIBS_LIST ${DILIGENT_TOOLS_INSTALL_LIBS_LIST} CACHE INTERNAL "Diligent tools libraries installation list")
+
+ install(
+ FILES
+ imgui/imconfig.h
+ imgui/imgui.h
+ imgui/imgui_internal.h
+ imgui/imstb_rectpack.h
+ imgui/imstb_textedit.h
+ imgui/imstb_truetype.h
+ DESTINATION
+ "headers/${THIRD_PARTY_DIR}/imgui"
+ )
+endif()