Skip to content

Commit bf1d4f3

Browse files
mosraErik Wijmans
authored andcommitted
Minor updates to 3rd party dependency handling (#72)
* assets: allow the plugin manager to look around the FS on non-static builds. * CMake: disable Magnum libs we don't use right now. Makes builds slightly faster (50 targets less), also no need to find & link to these in CMakeLists. * CMake: make things work with system GLFW but bundled Magnum.
1 parent 1fdd7b0 commit bf1d4f3

File tree

5 files changed

+23
-15
lines changed

5 files changed

+23
-15
lines changed

src/cmake/dependencies.cmake

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,17 @@ if(NOT USE_SYSTEM_MAGNUM)
7575
set(BUILD_PLUGINS_STATIC ON CACHE BOOL "BUILD_PLUGINS_STATIC" FORCE)
7676
set(BUILD_STATIC ON CACHE BOOL "BUILD_STATIC" FORCE)
7777
set(BUILD_STATIC_PIC ON CACHE BOOL "BUILD_STATIC_PIC" FORCE)
78-
set(WITH_TRADE ON CACHE BOOL "WITH_TRADE" FORCE)
78+
79+
# These are enabled by default but we don't need them right now -- disabling
80+
# for slightly faster builds. If you need any of these, simply delete a line.
81+
set(WITH_INTERCONNECT OFF CACHE BOOL "" FORCE)
82+
set(WITH_TESTSUITE OFF CACHE BOOL "" FORCE)
83+
set(WITH_DEBUGTOOLS OFF CACHE BOOL "" FORCE)
84+
set(WITH_PRIMITIVES OFF CACHE BOOL "" FORCE)
85+
set(WITH_TEXT OFF CACHE BOOL "" FORCE)
86+
set(WITH_TEXTURETOOLS OFF CACHE BOOL "" FORCE)
87+
88+
# These are not enabled by default but we need them
7989
set(WITH_ANYSCENEIMPORTER ON CACHE BOOL "WITH_ANYSCENEIMPORTER" FORCE)
8090
set(WITH_ASSIMPIMPORTER ON CACHE BOOL "WITH_ASSIMPIMPORTER" FORCE)
8191
set(WITH_TINYGLTFIMPORTER ON CACHE BOOL "WITH_TINYGLTFIMPORTER" FORCE)
@@ -84,8 +94,11 @@ if(NOT USE_SYSTEM_MAGNUM)
8494
set(WITH_STBIMAGECONVERTER ON CACHE BOOL "WITH_STBIMAGECONVERTER" FORCE)
8595
set(WITH_SDL2APPLICATION OFF CACHE BOOL "WITH_SDL2APPLICATION" FORCE)
8696
set(WITH_EIGEN ON CACHE BOOL "WITH_EIGEN" FORCE)
97+
8798
if(BUILD_GUI_VIEWERS)
88-
add_subdirectory("${DEPS_DIR}/glfw")
99+
if(NOT USE_SYSTEM_GLFW)
100+
add_subdirectory("${DEPS_DIR}/glfw")
101+
endif()
89102
set(WITH_GLFWAPPLICATION ON CACHE BOOL "WITH_GLFWAPPLICATION" FORCE)
90103
else()
91104
set(WITH_GLFWAPPLICATION OFF CACHE BOOL "WITH_GLFWAPPLICATION" FORCE)

src/esp/assets/CMakeLists.txt

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,10 @@ find_package(Magnum
44
REQUIRED
55
AnyImageImporter
66
AnySceneImporter
7-
DebugTools
87
GL
98
MeshTools
10-
Primitives
119
SceneGraph
1210
Shaders
13-
TextureTools
1411
Trade
1512
)
1613

src/esp/assets/ResourceManager.cpp

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -196,8 +196,14 @@ bool ResourceManager::loadGeneralMeshData(const AssetInfo& info,
196196
return true;
197197
}
198198

199-
// load a scene importer plugin (arg is pluginDirectory to silence warnings)
200-
Magnum::PluginManager::Manager<Importer> manager("./");
199+
// Load a scene importer plugin. In case Magnum is built statically, arg is
200+
// pluginDirectory to silence warnings, otherwise we *do* want it to search
201+
// in the filesystem.
202+
Magnum::PluginManager::Manager<Importer> manager{
203+
#ifdef MAGNUM_BUILD_STATIC
204+
"./"
205+
#endif
206+
};
201207
std::unique_ptr<Importer> importer =
202208
manager.loadAndInstantiate("AnySceneImporter");
203209

src/esp/gfx/CMakeLists.txt

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,10 @@ find_package(Magnum
1616
REQUIRED
1717
AnyImageImporter
1818
AnySceneImporter
19-
DebugTools
2019
GL
2120
MeshTools
22-
Primitives
2321
SceneGraph
2422
Shaders
25-
TextureTools
2623
Trade
2724
)
2825

src/utils/viewer/CMakeLists.txt

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,10 @@ find_package(GLFW REQUIRED)
77

88
find_package(Magnum
99
REQUIRED
10-
DebugTools
1110
GL
1211
MeshTools
13-
Primitives
1412
SceneGraph
1513
Shaders
16-
TextureTools
1714
Trade
1815
GlfwApplication
1916
)
@@ -36,10 +33,8 @@ target_link_libraries(viewer
3633
Magnum::GL
3734
Magnum::Magnum
3835
Magnum::MeshTools
39-
Magnum::Primitives
4036
Magnum::SceneGraph
4137
Magnum::Shaders
42-
Magnum::TextureTools
4338
Magnum::Trade
4439
# MagnumPlugins::AssimpImporter
4540
MagnumPlugins::StbImageImporter

0 commit comments

Comments
 (0)