From b2070feba8286fc5957b26e5466ec323cc2c1ee2 Mon Sep 17 00:00:00 2001
From: Tobias Frisch <tfrisch@uni-koblenz.de>
Date: Fri, 28 May 2021 15:10:23 +0200
Subject: [PATCH] [#26] Added STB as dependency for texture loading later on

Signed-off-by: Tobias Frisch <tfrisch@uni-koblenz.de>
---
 .gitmodules                           | 3 +++
 modules/asset_loader/CMakeLists.txt   | 6 ++++++
 modules/asset_loader/config/STB.cmake | 6 ++++++
 modules/asset_loader/lib/stb          | 1 +
 4 files changed, 16 insertions(+)
 create mode 100644 modules/asset_loader/config/STB.cmake
 create mode 160000 modules/asset_loader/lib/stb

diff --git a/.gitmodules b/.gitmodules
index 3c782ca0..809435ef 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -7,3 +7,6 @@
 [submodule "modules/asset_loader/lib/json"]
 	path = modules/asset_loader/lib/json
 	url = https://github.com/nlohmann/json.git
+[submodule "modules/asset_loader/lib/stb"]
+	path = modules/asset_loader/lib/stb
+	url = https://github.com/nothings/stb.git
diff --git a/modules/asset_loader/CMakeLists.txt b/modules/asset_loader/CMakeLists.txt
index 6246de8a..8d4c0d6c 100644
--- a/modules/asset_loader/CMakeLists.txt
+++ b/modules/asset_loader/CMakeLists.txt
@@ -27,8 +27,14 @@ include(config/NLOHMANN_JSON.cmake)
 # Check and load FX-GLTF
 include(config/FX_GLTF.cmake)
 
+# Check and load STB
+include(config/STB.cmake)
+
 # link the required libraries to the module
 target_link_libraries(vkcv_asset_loader ${vkcv_asset_loader_libraries})
 
+# including headers of dependencies and the VkCV framework
+target_include_directories(vkcv_asset_loader SYSTEM BEFORE PRIVATE ${vkcv_asset_loader_includes})
+
 # add the own include directory for public headers
 target_include_directories(vkcv_asset_loader BEFORE PUBLIC ${vkcv_asset_loader_include})
diff --git a/modules/asset_loader/config/STB.cmake b/modules/asset_loader/config/STB.cmake
new file mode 100644
index 00000000..da20d3ec
--- /dev/null
+++ b/modules/asset_loader/config/STB.cmake
@@ -0,0 +1,6 @@
+
+if (EXISTS "${vkcv_asset_loader_lib_path}/stb")
+	list(APPEND vkcv_asset_loader_includes ${vkcv_asset_loader_lib}/stb)
+else()
+	message(WARNING "STB is required..! Update the submodules!")
+endif ()
diff --git a/modules/asset_loader/lib/stb b/modules/asset_loader/lib/stb
new file mode 160000
index 00000000..c9064e31
--- /dev/null
+++ b/modules/asset_loader/lib/stb
@@ -0,0 +1 @@
+Subproject commit c9064e317699d2e495f36ba4f9ac037e88ee371a
-- 
GitLab