Browse Source

CMake: use the CMAKE_FOLDER variable instead of FOLDER property.

It limits the support for CMake 3.12+, but it's much less verbose and I
don't expect people to use ancient CMake versions with IDEs like Xcode
or VS anyway, so this should be fine.
pull/556/head
Vladimír Vondruš 4 years ago
parent
commit
505ad471ad
  1. 45
      doc/snippets/CMakeLists.txt
  2. 5
      src/Magnum/Animation/CMakeLists.txt
  3. 14
      src/Magnum/Animation/Test/CMakeLists.txt
  4. 14
      src/Magnum/Audio/CMakeLists.txt
  5. 28
      src/Magnum/Audio/Test/CMakeLists.txt
  6. 15
      src/Magnum/CMakeLists.txt
  7. 13
      src/Magnum/DebugTools/CMakeLists.txt
  8. 23
      src/Magnum/DebugTools/Test/CMakeLists.txt
  9. 22
      src/Magnum/GL/CMakeLists.txt
  10. 91
      src/Magnum/GL/Test/CMakeLists.txt
  11. 5
      src/Magnum/Math/Algorithms/CMakeLists.txt
  12. 12
      src/Magnum/Math/Algorithms/Test/CMakeLists.txt
  13. 5
      src/Magnum/Math/CMakeLists.txt
  14. 53
      src/Magnum/Math/Test/CMakeLists.txt
  15. 13
      src/Magnum/MeshTools/CMakeLists.txt
  16. 25
      src/Magnum/MeshTools/Test/CMakeLists.txt
  17. 65
      src/Magnum/Platform/CMakeLists.txt
  18. 19
      src/Magnum/Platform/Test/CMakeLists.txt
  19. 7
      src/Magnum/Primitives/CMakeLists.txt
  20. 21
      src/Magnum/Primitives/Test/CMakeLists.txt
  21. 11
      src/Magnum/SceneGraph/CMakeLists.txt
  22. 19
      src/Magnum/SceneGraph/Test/CMakeLists.txt
  23. 14
      src/Magnum/SceneTools/CMakeLists.txt
  24. 11
      src/Magnum/SceneTools/Test/CMakeLists.txt
  25. 14
      src/Magnum/ShaderTools/CMakeLists.txt
  26. 10
      src/Magnum/ShaderTools/Test/CMakeLists.txt
  27. 14
      src/Magnum/Shaders/CMakeLists.txt
  28. 33
      src/Magnum/Shaders/Test/CMakeLists.txt
  29. 18
      src/Magnum/Test/CMakeLists.txt
  30. 14
      src/Magnum/Text/CMakeLists.txt
  31. 17
      src/Magnum/Text/Test/CMakeLists.txt
  32. 10
      src/Magnum/TextureTools/CMakeLists.txt
  33. 6
      src/Magnum/TextureTools/Test/CMakeLists.txt
  34. 14
      src/Magnum/Trade/CMakeLists.txt
  35. 29
      src/Magnum/Trade/Test/CMakeLists.txt
  36. 18
      src/Magnum/Vk/CMakeLists.txt
  37. 80
      src/Magnum/Vk/Test/CMakeLists.txt
  38. 5
      src/MagnumExternal/OpenGL/GL/CMakeLists.txt
  39. 5
      src/MagnumExternal/OpenGL/GLES2/CMakeLists.txt
  40. 5
      src/MagnumExternal/OpenGL/GLES3/CMakeLists.txt
  41. 5
      src/MagnumExternal/Vulkan/CMakeLists.txt
  42. 5
      src/MagnumPlugins/AnyAudioImporter/Test/CMakeLists.txt
  43. 5
      src/MagnumPlugins/AnyImageConverter/Test/CMakeLists.txt
  44. 5
      src/MagnumPlugins/AnyImageImporter/Test/CMakeLists.txt
  45. 5
      src/MagnumPlugins/AnySceneConverter/Test/CMakeLists.txt
  46. 5
      src/MagnumPlugins/AnySceneImporter/Test/CMakeLists.txt
  47. 5
      src/MagnumPlugins/AnyShaderConverter/Test/CMakeLists.txt
  48. 6
      src/MagnumPlugins/MagnumFont/Test/CMakeLists.txt
  49. 5
      src/MagnumPlugins/MagnumFontConverter/Test/CMakeLists.txt
  50. 5
      src/MagnumPlugins/ObjImporter/Test/CMakeLists.txt
  51. 5
      src/MagnumPlugins/TgaImageConverter/Test/CMakeLists.txt
  52. 5
      src/MagnumPlugins/TgaImporter/Test/CMakeLists.txt
  53. 5
      src/MagnumPlugins/WavAudioImporter/CMakeLists.txt
  54. 8
      src/MagnumPlugins/WavAudioImporter/Test/CMakeLists.txt

45
doc/snippets/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/doc/snippets")
# On MSVC remove /W3, as we are replacing it with /W4
if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC" OR CMAKE_CXX_SIMULATE_ID STREQUAL "MSVC")
string(REPLACE "/W3" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
@ -53,7 +57,6 @@ target_link_libraries(snippets-Magnum PRIVATE Magnum)
if(MAGNUM_TARGET_GL)
target_link_libraries(snippets-Magnum PRIVATE MagnumGL)
endif()
set_target_properties(snippets-Magnum PROPERTIES FOLDER "Magnum/doc/snippets")
# This is taken from corrade/src/Corrade/Test/CMakeLists.txt, keep in sync
if((CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS "5.0") OR
@ -62,15 +65,12 @@ if((CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND NOT CMAKE_CXX_COMPILER_VERSION VERS
(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC"))
add_library(snippets-Magnum-cpp14 STATIC MagnumMath-cpp14.cpp)
target_link_libraries(snippets-Magnum-cpp14 PRIVATE Magnum)
set_target_properties(snippets-Magnum-cpp14 PROPERTIES
CORRADE_CXX_STANDARD 14
FOLDER "Magnum/doc/snippets")
set_target_properties(snippets-Magnum-cpp14 PROPERTIES CORRADE_CXX_STANDARD 14)
endif()
if(WITH_AUDIO)
add_library(snippets-MagnumAudio STATIC MagnumAudio.cpp)
target_link_libraries(snippets-MagnumAudio PRIVATE MagnumAudio)
set_target_properties(snippets-MagnumAudio PROPERTIES FOLDER "Magnum/doc/snippets")
if(WITH_SCENEGRAPH)
add_library(snippets-MagnumAudio-scenegraph STATIC
@ -78,7 +78,6 @@ if(WITH_AUDIO)
target_link_libraries(snippets-MagnumAudio-scenegraph PRIVATE
MagnumAudio
MagnumSceneGraph)
set_target_properties(snippets-MagnumAudio-scenegraph PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
endif()
@ -89,7 +88,6 @@ if(WITH_GL)
MagnumShaders-gl.cpp
MagnumText.cpp)
target_link_libraries(snippets-MagnumGL PRIVATE MagnumGL)
set_target_properties(snippets-MagnumGL PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
if(WITH_MESHTOOLS)
@ -97,14 +95,12 @@ if(WITH_MESHTOOLS)
MagnumMeshTools.cpp
MagnumMeshTools-gl.cpp)
target_link_libraries(snippets-MagnumMeshTools PRIVATE MagnumMeshTools)
set_target_properties(snippets-MagnumMeshTools PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
if(WITH_SHADERTOOLS)
add_library(snippets-MagnumShaderTools STATIC
MagnumShaderTools.cpp)
target_link_libraries(snippets-MagnumShaderTools PRIVATE MagnumShaderTools)
set_target_properties(snippets-MagnumShaderTools PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
if(WITH_TRADE)
@ -115,7 +111,6 @@ if(WITH_TRADE)
if(MAGNUM_TARGET_GL)
target_link_libraries(snippets-MagnumTrade PRIVATE MagnumGL)
endif()
set_target_properties(snippets-MagnumTrade PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
find_package(Corrade COMPONENTS TestSuite)
@ -124,7 +119,6 @@ if(WITH_DEBUGTOOLS)
add_library(snippets-MagnumDebugTools STATIC
MagnumDebugTools.cpp)
target_link_libraries(snippets-MagnumDebugTools PRIVATE MagnumDebugTools)
set_target_properties(snippets-MagnumDebugTools PROPERTIES FOLDER "Magnum/doc/snippets")
if(BUILD_GL_TESTS AND NOT MAGNUM_TARGET_GLES)
add_executable(debugtools-frameprofiler debugtools-frameprofiler.cpp)
@ -147,14 +141,12 @@ if(WITH_DEBUGTOOLS)
MagnumDebugTools
MagnumTrade)
target_include_directories(debugtools-compareimage PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
set_target_properties(debugtools-compareimage PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
if(TARGET_GL)
add_library(snippets-MagnumDebugTools-gl STATIC
MagnumDebugTools-gl.cpp)
target_link_libraries(snippets-MagnumDebugTools-gl PRIVATE MagnumDebugTools)
set_target_properties(snippets-MagnumDebugTools-gl PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
endif()
@ -162,16 +154,12 @@ if(WITH_PRIMITIVES)
add_library(snippets-MagnumPrimitives STATIC
MagnumPrimitives.cpp)
target_link_libraries(snippets-MagnumPrimitives PRIVATE MagnumPrimitives)
set_target_properties(snippets-MagnumPrimitives
PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
if(WITH_SCENEGRAPH)
add_library(snippets-MagnumSceneGraph STATIC
MagnumSceneGraph.cpp)
target_link_libraries(snippets-MagnumSceneGraph PRIVATE MagnumSceneGraph)
set_target_properties(snippets-MagnumSceneGraph
PROPERTIES FOLDER "Magnum/doc/snippets")
if(WITH_SDL2APPLICATION AND WITH_GL AND WITH_PRIMITIVES AND WITH_SHADERS AND WITH_MESHTOOLS)
add_library(snippets-MagnumSceneGraph-gl STATIC
@ -183,8 +171,6 @@ if(WITH_SCENEGRAPH)
MagnumSceneGraph
MagnumSdl2Application
MagnumShaders)
set_target_properties(snippets-MagnumSceneGraph-gl
PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
endif()
@ -192,15 +178,11 @@ if(WITH_SCENETOOLS)
add_library(snippets-MagnumSceneTools STATIC
MagnumSceneTools.cpp)
target_link_libraries(snippets-MagnumSceneTools PRIVATE MagnumSceneTools)
set_target_properties(snippets-MagnumSceneTools
PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
if(WITH_VK)
add_library(snippets-MagnumVk STATIC MagnumVk.cpp)
target_link_libraries(snippets-MagnumVk PRIVATE MagnumVk)
set_target_properties(snippets-MagnumVk
PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
if(WITH_SDL2APPLICATION AND TARGET_GL)
@ -213,12 +195,6 @@ if(WITH_SDL2APPLICATION AND TARGET_GL)
MagnumPlatform.cpp
MagnumGL-application.cpp)
target_link_libraries(snippets-MagnumPlatform PRIVATE MagnumSdl2Application)
set_target_properties(
getting-started
getting-started-blue
snippets-MagnumPlatform
PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
if((NOT TARGET_GLES AND WITH_SDL2APPLICATION) OR (TARGET_GLES AND WITH_XEGLAPPLICATION))
@ -228,10 +204,6 @@ if((NOT TARGET_GLES AND WITH_SDL2APPLICATION) OR (TARGET_GLES AND WITH_XEGLAPPLI
else()
target_link_libraries(snippets-MagnumPlatform-portability PRIVATE MagnumSdl2Application)
endif()
set_target_properties(
snippets-MagnumPlatform-portability
PROPERTIES FOLDER "Magnum/doc/snippets")
endif()
if(WITH_WINDOWLESSEGLAPPLICATION)
@ -244,11 +216,4 @@ if(WITH_WINDOWLESSEGLAPPLICATION)
target_link_libraries(snippets-MagnumPlatform-windowless PRIVATE MagnumWindowlessEglApplication)
target_link_libraries(snippets-MagnumPlatform-windowless-custom PRIVATE MagnumWindowlessEglApplication)
target_link_libraries(snippets-MagnumPlatform-windowless-thread PRIVATE MagnumWindowlessEglApplication)
set_target_properties(
snippets-MagnumPlatform-windowless
snippets-MagnumPlatform-windowless-custom
snippets-MagnumPlatform-windowless-thread
snippets-MagnumPlatform-custom
PROPERTIES FOLDER "Magnum/doc/snippets")
endif()

5
src/Magnum/Animation/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Animation")
set(MagnumAnimation_HEADERS
Animation.h
Easing.h
@ -33,7 +37,6 @@ set(MagnumAnimation_HEADERS
# Force IDEs to display all header files in project view
add_custom_target(MagnumAnimation SOURCES ${MagnumAnimation_HEADERS})
set_target_properties(MagnumAnimation PROPERTIES FOLDER "Magnum/Animation")
install(FILES ${MagnumAnimation_HEADERS} DESTINATION ${MAGNUM_INCLUDE_INSTALL_DIR}/Animation)

14
src/Magnum/Animation/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Animation/Test")
corrade_add_test(AnimationBenchmark Benchmark.cpp LIBRARIES Magnum)
corrade_add_test(AnimationEasingTest EasingTest.cpp LIBRARIES Magnum)
corrade_add_test(AnimationInterpolationTest InterpolationTest.cpp LIBRARIES MagnumTestLib)
@ -34,13 +38,3 @@ corrade_add_test(AnimationTrackViewTest TrackViewTest.cpp LIBRARIES Magnum)
set_property(TARGET
AnimationInterpolationTest
APPEND PROPERTY COMPILE_DEFINITIONS "CORRADE_GRACEFUL_ASSERT")
set_target_properties(
AnimationBenchmark
AnimationEasingTest
AnimationInterpolationTest
AnimationPlayerTest
AnimationPlayerCustomTest
AnimationTrackTest
AnimationTrackViewTest
PROPERTIES FOLDER "Magnum/Animation/Test")

14
src/Magnum/Audio/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Audio")
find_package(Corrade REQUIRED PluginManager)
find_package(OpenAL REQUIRED)
@ -80,16 +84,13 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumAudioObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumAudioObjects PROPERTIES FOLDER "Magnum/Audio")
# Audio library
add_library(MagnumAudio ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumAudioObjects>
${MagnumAudio_GracefulAssert_SRCS})
target_include_directories(MagnumAudio PUBLIC ${OPENAL_INCLUDE_DIR})
set_target_properties(MagnumAudio PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Audio")
set_target_properties(MagnumAudio PROPERTIES DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
set_target_properties(MagnumAudio PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
elseif(BUILD_STATIC_PIC)
@ -132,7 +133,6 @@ add_library(Magnum::Audio ALIAS MagnumAudio)
if(WITH_AL_INFO)
add_executable(magnum-al-info al-info.cpp)
target_link_libraries(magnum-al-info PRIVATE MagnumAudio)
set_target_properties(magnum-al-info PROPERTIES FOLDER "Magnum/Audio")
if(NOT MAGNUM_TARGET_EMSCRIPTEN)
install(TARGETS magnum-al-info DESTINATION ${MAGNUM_BINARY_INSTALL_DIR})
@ -176,9 +176,7 @@ if(BUILD_TESTS)
target_compile_definitions(MagnumAudioTestLib PRIVATE
"CORRADE_GRACEFUL_ASSERT" "MagnumAudio_EXPORTS")
target_include_directories(MagnumAudioTestLib PUBLIC ${OPENAL_INCLUDE_DIR})
set_target_properties(MagnumAudioTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum")
set_target_properties(MagnumAudioTestLib PROPERTIES DEBUG_POSTFIX "-d")
if(BUILD_STATIC_PIC)
set_target_properties(MagnumAudioTestLib PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()

28
src/Magnum/Audio/Test/CMakeLists.txt

@ -24,6 +24,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Audio/Test")
if(CORRADE_TARGET_EMSCRIPTEN)
set(AUDIO_TEST_DIR "")
else()
@ -42,35 +46,15 @@ corrade_add_test(AudioContextTest ContextTest.cpp LIBRARIES MagnumAudio)
corrade_add_test(AudioRendererTest RendererTest.cpp LIBRARIES MagnumAudio)
corrade_add_test(AudioSourceTest SourceTest.cpp LIBRARIES MagnumAudio)
set_target_properties(
AudioAbstractImporterTest
AudioBufferFormatTest
AudioContextTest
AudioRendererTest
AudioSourceTest
PROPERTIES FOLDER "Magnum/Audio/Test")
if(BUILD_AL_TESTS)
corrade_add_test(AudioBufferALTest BufferALTest.cpp LIBRARIES MagnumAudio)
corrade_add_test(AudioContextALTest ContextALTest.cpp LIBRARIES MagnumAudio)
corrade_add_test(AudioRendererALTest RendererALTest.cpp LIBRARIES MagnumAudio)
corrade_add_test(AudioSourceALTest SourceALTest.cpp LIBRARIES MagnumAudio)
set_target_properties(
AudioBufferALTest
AudioContextALTest
AudioRendererALTest
AudioSourceALTest
PROPERTIES FOLDER "Magnum/Audio/Test")
if(WITH_SCENEGRAPH)
corrade_add_test(AudioListenerALTest ListenerALTest.cpp LIBRARIES MagnumSceneGraph MagnumAudio)
corrade_add_test(AudioPlayableALTest PlayableALTest.cpp LIBRARIES MagnumSceneGraph MagnumAudio)
set_target_properties(
AudioListenerALTest
AudioPlayableALTest
PROPERTIES FOLDER "Magnum/Audio/Test")
endif()
if(MAGNUM_BUILD_STATIC AND NOT CORRADE_TARGET_EMSCRIPTEN AND NOT CORRADE_TARGET_IOS AND NOT CORRADE_TARGET_ANDROID AND NOT CORRADE_TARGET_WINDOWS_RT)
@ -81,9 +65,5 @@ if(BUILD_AL_TESTS)
corrade_add_test(AudioGlobalStateAcrossLibra___ALTest
GlobalStateAcrossLibrariesALTest.cpp
LIBRARIES AudioGlobalStateAcrossLibrariesLibrary)
set_target_properties(
AudioGlobalStateAcrossLibrariesLibrary
AudioGlobalStateAcrossLibra___ALTest
PROPERTIES FOLDER "Magnum/Audio/Test")
endif()
endif()

15
src/Magnum/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum")
# Generate configure header
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/configure.h.cmake
${CMAKE_CURRENT_BINARY_DIR}/configure.h)
@ -137,6 +141,7 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumMathObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
# Differs from CMAKE_FOLDER
set_target_properties(MagnumMathObjects PROPERTIES FOLDER "Magnum/Math")
# Objects shared between main and test library
@ -154,7 +159,6 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumObjects PROPERTIES FOLDER "Magnum")
# Main library
add_library(Magnum ${SHARED_OR_STATIC}
@ -162,9 +166,7 @@ add_library(Magnum ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumObjects>
${MagnumMath_GracefulAssert_SRCS}
${Magnum_GracefulAssert_SRCS})
set_target_properties(Magnum PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum")
set_target_properties(Magnum PROPERTIES DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
set_target_properties(Magnum PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
elseif(BUILD_STATIC_PIC)
@ -254,6 +256,7 @@ if(BUILD_TESTS)
"CORRADE_GRACEFUL_ASSERT" "Magnum_EXPORTS")
set_target_properties(MagnumMathTestLib PROPERTIES
DEBUG_POSTFIX "-d"
# Differs from CMAKE_FOLDER
FOLDER "Magnum/Math")
target_link_libraries(MagnumMathTestLib Corrade::Utility)
@ -267,9 +270,7 @@ if(BUILD_TESTS)
${PROJECT_BINARY_DIR}/src)
target_compile_definitions(MagnumTestLib PRIVATE
"CORRADE_GRACEFUL_ASSERT" "Magnum_EXPORTS")
set_target_properties(MagnumTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum")
set_target_properties(MagnumTestLib PROPERTIES DEBUG_POSTFIX "-d")
if(BUILD_STATIC_PIC)
set_target_properties(MagnumTestLib PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()

13
src/Magnum/DebugTools/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/DebugTools")
set(MagnumDebugTools_SRCS
ColorMap.cpp)
@ -112,7 +116,6 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumDebugToolsObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumDebugToolsObjects PROPERTIES FOLDER "Magnum/DebugTools")
if(TARGET_GL)
target_include_directories(MagnumDebugToolsObjects PUBLIC $<TARGET_PROPERTY:MagnumGL,INTERFACE_INCLUDE_DIRECTORIES>)
endif()
@ -121,9 +124,7 @@ endif()
add_library(MagnumDebugTools ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumDebugToolsObjects>
${MagnumDebugTools_GracefulAssert_SRCS})
set_target_properties(MagnumDebugTools PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/DebugTools")
set_target_properties(MagnumDebugTools PROPERTIES DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
set_target_properties(MagnumDebugTools PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
elseif(BUILD_STATIC_PIC)
@ -157,9 +158,7 @@ if(BUILD_TESTS)
add_library(MagnumDebugToolsTestLib ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumDebugToolsObjects>
${MagnumDebugTools_GracefulAssert_SRCS})
set_target_properties(MagnumDebugToolsTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/DebugTools")
set_target_properties(MagnumDebugToolsTestLib PROPERTIES DEBUG_POSTFIX "-d")
target_compile_definitions(MagnumDebugToolsTestLib PRIVATE
"CORRADE_GRACEFUL_ASSERT" "MagnumDebugTools_EXPORTS")
if(BUILD_STATIC_PIC)

23
src/Magnum/DebugTools/Test/CMakeLists.txt

@ -23,9 +23,12 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/DebugTools/Test")
corrade_add_test(DebugToolsFrameProfilerTest FrameProfilerTest.cpp
LIBRARIES MagnumDebugToolsTestLib)
set_target_properties(DebugToolsFrameProfilerTest PROPERTIES FOLDER "Magnum/DebugTools/Test")
if(WITH_TRADE)
# Otherwise CMake complains that Corrade::PluginManager is not found, wtf
@ -73,7 +76,6 @@ if(WITH_TRADE)
CompareImageActual.tga
CompareImageExpected.tga
CompareImageCompressed.dds)
set_target_properties(DebugToolsCompareImageTest PROPERTIES FOLDER "Magnum/DebugTools/Test")
target_include_directories(DebugToolsCompareImageTest PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>)
if(BUILD_PLUGINS_STATIC)
if(WITH_ANYIMAGECONVERTER)
@ -108,26 +110,21 @@ endif()
if(TARGET_GL)
if(WITH_SCENEGRAPH)
corrade_add_test(DebugToolsForceRendererTest ForceRendererTest.cpp LIBRARIES MagnumMathTestLib)
set_target_properties(DebugToolsForceRendererTest PROPERTIES FOLDER "Magnum/DebugTools/Test")
endif()
if(BUILD_GL_TESTS)
corrade_add_test(DebugToolsFrameProfilerGLTest FrameProfilerGLTest.cpp
LIBRARIES MagnumDebugTools MagnumOpenGLTester)
set_target_properties(DebugToolsFrameProfilerTest PROPERTIES FOLDER "Magnum/DebugTools/Test")
corrade_add_test(DebugToolsTextureImageGLTest TextureImageGLTest.cpp LIBRARIES MagnumDebugTools MagnumOpenGLTester)
set_target_properties(DebugToolsTextureImageGLTest PROPERTIES FOLDER "Magnum/DebugTools/Test")
corrade_add_test(DebugToolsTextureImageGLTest TextureImageGLTest.cpp
LIBRARIES MagnumDebugTools MagnumOpenGLTester)
if(NOT MAGNUM_TARGET_WEBGL)
corrade_add_test(DebugToolsBufferDataGLTest BufferDataGLTest.cpp LIBRARIES MagnumDebugTools MagnumOpenGLTester)
set_target_properties(DebugToolsBufferDataGLTest PROPERTIES FOLDER "Magnum/DebugTools/Test")
corrade_add_test(DebugToolsBufferDataGLTest BufferDataGLTest.cpp
LIBRARIES MagnumDebugTools MagnumOpenGLTester)
endif()
if(WITH_TRADE)
corrade_add_test(DebugToolsScreenshotGLTest ScreenshotGLTest.cpp LIBRARIES MagnumDebugTools MagnumOpenGLTester)
set_target_properties(DebugToolsScreenshotGLTest PROPERTIES FOLDER "Magnum/DebugTools/Test")
# The configure.h file is provided for DebugToolsCompareImageTest
# already
target_include_directories(DebugToolsScreenshotGLTest PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>)
@ -177,10 +174,6 @@ if(TARGET_GL)
corrade_add_test(DebugToolsObjectRendererGLTest ObjectRendererGLTest.cpp
LIBRARIES MagnumDebugTools MagnumOpenGLTester
FILES ObjectRenderer2D.tga ObjectRenderer3D.tga)
set_target_properties(
DebugToolsForceRendererGLTest
DebugToolsObjectRendererGLTest
PROPERTIES FOLDER "Magnum/DebugTools/Test")
target_include_directories(DebugToolsForceRendererGLTest PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>)
target_include_directories(DebugToolsObjectRendererGLTest PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>)
if(BUILD_PLUGINS_STATIC)

22
src/Magnum/GL/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/GL")
set(MagnumGL_SRCS
AbstractObject.cpp
AbstractQuery.cpp
@ -191,7 +195,6 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumGLObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumGLObjects PROPERTIES FOLDER "Magnum/GL")
# Link in GL function pointer variables on platforms that support it
if(NOT CORRADE_TARGET_EMSCRIPTEN)
@ -203,9 +206,7 @@ add_library(MagnumGL ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumGLObjects>
${MagnumGL_FlextGL_SRCS}
${MagnumGL_GracefulAssert_SRCS})
set_target_properties(MagnumGL PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/GL")
set_target_properties(MagnumGL PROPERTIES DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
target_compile_definitions(MagnumGL PRIVATE "FlextGL_EXPORTS")
set_target_properties(MagnumGL PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
@ -259,7 +260,6 @@ if(WITH_OPENGLTESTER)
${MagnumOpenGLTester_HEADERS})
# Assuming that PIC is not needed because the Tester lib is always linked
# to the executable and not to any intermediate shared lib
set_target_properties(MagnumOpenGLTesterObjects PROPERTIES FOLDER "Magnum/GL")
target_include_directories(MagnumOpenGLTesterObjects PUBLIC
$<TARGET_PROPERTY:Corrade::TestSuite,INTERFACE_INCLUDE_DIRECTORIES>
$<TARGET_PROPERTY:MagnumGL,INTERFACE_INCLUDE_DIRECTORIES>
@ -268,9 +268,7 @@ if(WITH_OPENGLTESTER)
add_library(MagnumOpenGLTester STATIC
$<TARGET_OBJECTS:MagnumOpenGLTesterObjects>
${PROJECT_SOURCE_DIR}/src/dummy.cpp) # XCode workaround, see file comment for details
set_target_properties(MagnumOpenGLTester PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/GL")
set_target_properties(MagnumOpenGLTester PROPERTIES DEBUG_POSTFIX "-d")
# OPENGLTESTER_APPLICATION defined in the root CMakeLists, because it also
# enables the application library dependencies
target_link_libraries(MagnumOpenGLTester PUBLIC Magnum Corrade::TestSuite ${OPENGLTESTER_APPLICATION})
@ -291,9 +289,7 @@ if(BUILD_TESTS)
$<TARGET_OBJECTS:MagnumGLObjects>
${MagnumGL_FlextGL_SRCS}
${MagnumGL_GracefulAssert_SRCS})
set_target_properties(MagnumGLTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/GL")
set_target_properties(MagnumGLTestLib PROPERTIES DEBUG_POSTFIX "-d")
target_compile_definitions(MagnumGLTestLib PRIVATE
"CORRADE_GRACEFUL_ASSERT" "MagnumGL_EXPORTS" "FlextGL_EXPORTS")
if(BUILD_STATIC_PIC)
@ -323,9 +319,7 @@ if(BUILD_TESTS)
add_library(MagnumOpenGLTesterTestLib STATIC
$<TARGET_OBJECTS:MagnumOpenGLTesterObjects>
${PROJECT_SOURCE_DIR}/src/dummy.cpp) # XCode workaround, see file comment for details
set_target_properties(MagnumOpenGLTesterTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/GL")
set_target_properties(MagnumOpenGLTesterTestLib PROPERTIES DEBUG_POSTFIX "-d")
target_link_libraries(MagnumOpenGLTesterTestLib PUBLIC Magnum Corrade::TestSuite)
# On Windows the ${OPENGLTESTER_APPLICATION} links to MagnumGL, which
# is causing asserts in GL::Context::current() due to two different

91
src/Magnum/GL/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/GL/Test")
corrade_add_test(GLAttributeTest AttributeTest.cpp LIBRARIES MagnumGLTestLib)
corrade_add_test(GLAbstractShaderProgramTest AbstractShaderProgramTest.cpp LIBRARIES MagnumGL)
corrade_add_test(GLBufferTest BufferTest.cpp LIBRARIES MagnumGL)
@ -40,28 +44,8 @@ corrade_add_test(GLTextureTest TextureTest.cpp LIBRARIES MagnumGL)
corrade_add_test(GLTimeQueryTest TimeQueryTest.cpp LIBRARIES MagnumGL)
corrade_add_test(GLVersionTest VersionTest.cpp LIBRARIES MagnumGL)
set_target_properties(
GLAttributeTest
GLAbstractShaderProgramTest
GLBufferTest
GLContextTest
GLCubeMapTextureTest
GLDefaultFramebufferTest
GLFramebufferTest
GLMeshTest
GLPixelFormatTest
GLRendererTest
GLRenderbufferTest
GLSamplerTest
GLShaderTest
GLTextureTest
GLTimeQueryTest
GLVersionTest
PROPERTIES FOLDER "Magnum/GL/Test")
if(NOT MAGNUM_TARGET_WEBGL)
corrade_add_test(GLDebugOutputTest DebugOutputTest.cpp LIBRARIES MagnumGL)
set_target_properties(GLDebugOutputTest PROPERTIES FOLDER "Magnum/GL/Test")
endif()
if(NOT MAGNUM_TARGET_GLES2)
@ -69,39 +53,21 @@ if(NOT MAGNUM_TARGET_GLES2)
corrade_add_test(GLPrimitiveQueryTest PrimitiveQueryTest.cpp LIBRARIES MagnumGL)
corrade_add_test(GLTextureArrayTest TextureArrayTest.cpp LIBRARIES MagnumGL)
corrade_add_test(GLTransformFeedbackTest TransformFeedbackTest.cpp LIBRARIES MagnumGL)
set_target_properties(
GLBufferImageTest
GLPrimitiveQueryTest
GLTextureArrayTest
GLTransformFeedbackTest
PROPERTIES FOLDER "Magnum/GL/Test")
endif()
if(NOT MAGNUM_TARGET_GLES2 AND NOT MAGNUM_TARGET_WEBGL)
corrade_add_test(GLBufferTextureTest BufferTextureTest.cpp LIBRARIES MagnumGL)
corrade_add_test(GLCubeMapTextureArrayTest CubeMapTextureArrayTest.cpp LIBRARIES MagnumGL)
corrade_add_test(GLMultisampleTextureTest MultisampleTextureTest.cpp LIBRARIES MagnumGL)
set_target_properties(
GLBufferTextureTest
GLCubeMapTextureArrayTest
GLMultisampleTextureTest
PROPERTIES FOLDER "Magnum/GL/Test")
endif()
if(NOT (MAGNUM_TARGET_WEBGL AND MAGNUM_TARGET_GLES2))
corrade_add_test(GLSampleQueryTest SampleQueryTest.cpp LIBRARIES MagnumGL)
set_target_properties(GLSampleQueryTest PROPERTIES FOLDER "Magnum/GL/Test")
endif()
if(NOT MAGNUM_TARGET_GLES)
corrade_add_test(GLPipelineStatisticsQueryTest PipelineStatisticsQueryTest.cpp LIBRARIES MagnumGL)
corrade_add_test(GLRectangleTextureTest RectangleTextureTest.cpp LIBRARIES MagnumGL)
set_target_properties(
GLPipelineStatisticsQueryTest
GLRectangleTextureTest
PROPERTIES FOLDER "Magnum/GL/Test")
endif()
if(BUILD_GL_TESTS)
@ -184,43 +150,15 @@ if(BUILD_GL_TESTS)
FILES ShaderGLTestFiles/shader.glsl)
target_include_directories(GLShaderGLTest PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>)
set_target_properties(
GLAbstractTextureGLTest
GLBufferGLTest
GLContextGLTest
GLCubeMapTextureGLTest
GLFramebufferGLTest
GLMeshGLTest
GLRenderbufferGLTest
GLTextureGLTest
GLTimeQueryGLTest
GLAbstractShaderProgramGLTest
GLAbstractShaderProgramGLTest_RES-dependencies
GLShaderGLTest
PROPERTIES FOLDER "Magnum/GL/Test")
if(NOT MAGNUM_TARGET_WEBGL)
corrade_add_test(GLAbstractObjectGLTest AbstractObjectGLTest.cpp LIBRARIES MagnumOpenGLTester)
corrade_add_test(GLDebugOutputGLTest DebugOutputGLTest.cpp LIBRARIES MagnumOpenGLTester)
set_target_properties(
GLAbstractObjectGLTest
GLDebugOutputGLTest
PROPERTIES FOLDER "Magnum/GL/Test")
endif()
if(NOT (MAGNUM_TARGET_WEBGL AND MAGNUM_TARGET_GLES2))
corrade_add_test(GLAbstractQueryGLTest AbstractQueryGLTest.cpp LIBRARIES MagnumOpenGLTester)
corrade_add_test(GLPixelStorageGLTest PixelStorageGLTest.cpp LIBRARIES MagnumOpenGLTester)
corrade_add_test(GLSampleQueryGLTest SampleQueryGLTest.cpp LIBRARIES MagnumOpenGLTester)
set_target_properties(
GLAbstractQueryGLTest
GLPixelStorageGLTest
GLSampleQueryGLTest
PROPERTIES FOLDER "Magnum/GL/Test")
endif()
if(NOT MAGNUM_TARGET_GLES2)
@ -228,34 +166,17 @@ if(BUILD_GL_TESTS)
corrade_add_test(GLPrimitiveQueryGLTest PrimitiveQueryGLTest.cpp LIBRARIES MagnumOpenGLTester)
corrade_add_test(GLTextureArrayGLTest TextureArrayGLTest.cpp LIBRARIES MagnumOpenGLTester)
corrade_add_test(GLTransformFeedbackGLTest TransformFeedbackGLTest.cpp LIBRARIES MagnumOpenGLTester)
set_target_properties(
GLBufferImageGLTest
GLPrimitiveQueryGLTest
GLTextureArrayGLTest
GLTransformFeedbackGLTest
PROPERTIES FOLDER "Magnum/GL/Test")
endif()
if(NOT MAGNUM_TARGET_GLES2 AND NOT MAGNUM_TARGET_WEBGL)
corrade_add_test(GLBufferTextureGLTest BufferTextureGLTest.cpp LIBRARIES MagnumOpenGLTester)
corrade_add_test(GLCubeMapTextureArrayGLTest CubeMapTextureArrayGLTest.cpp LIBRARIES MagnumOpenGLTester)
corrade_add_test(GLMultisampleTextureGLTest MultisampleTextureGLTest.cpp LIBRARIES MagnumOpenGLTester)
set_target_properties(
GLBufferTextureGLTest
GLCubeMapTextureArrayGLTest
GLMultisampleTextureGLTest
PROPERTIES FOLDER "Magnum/GL/Test")
endif()
if(NOT MAGNUM_TARGET_GLES)
corrade_add_test(GLPipelineStatisticsQueryGLTest PipelineStatisticsQueryGLTest.cpp LIBRARIES MagnumOpenGLTester)
corrade_add_test(GLRectangleTextureGLTest RectangleTextureGLTest.cpp LIBRARIES MagnumOpenGLTester)
set_target_properties(
GLPipelineStatisticsQueryGLTest
GLRectangleTextureGLTest
PROPERTIES FOLDER "Magnum/GL/Test")
endif()
if(MAGNUM_BUILD_STATIC AND NOT CORRADE_TARGET_EMSCRIPTEN AND NOT CORRADE_TARGET_IOS AND NOT CORRADE_TARGET_ANDROID AND NOT CORRADE_TARGET_WINDOWS_RT)
@ -266,9 +187,5 @@ if(BUILD_GL_TESTS)
corrade_add_test(GLGlobalStateAcrossLibrariesGLTest
GlobalStateAcrossLibrariesGLTest.cpp
LIBRARIES GLGlobalStateAcrossLibrariesLibrary MagnumOpenGLTester)
set_target_properties(
GLGlobalStateAcrossLibrariesLibrary
GLGlobalStateAcrossLibrariesGLTest
PROPERTIES FOLDER "Magnum/GL/Test")
endif()
endif()

5
src/Magnum/Math/Algorithms/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Math/Algorithms")
set(MagnumMathAlgorithms_HEADERS
GaussJordan.h
GramSchmidt.h
@ -32,7 +36,6 @@ set(MagnumMathAlgorithms_HEADERS
# Force IDEs to display all header files in project view
add_custom_target(MagnumMathAlgorithms SOURCES ${MagnumMathAlgorithms_HEADERS})
set_target_properties(MagnumMathAlgorithms PROPERTIES FOLDER "Magnum/Math/Algorithms")
install(FILES ${MagnumMathAlgorithms_HEADERS} DESTINATION ${MAGNUM_INCLUDE_INSTALL_DIR}/Math/Algorithms)

12
src/Magnum/Math/Algorithms/Test/CMakeLists.txt

@ -23,16 +23,12 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Math/Algorithms/Test")
corrade_add_test(MathAlgorithmsGaussJordanTest GaussJordanTest.cpp LIBRARIES MagnumMathTestLib)
corrade_add_test(MathAlgorithmsGramSchmidtTest GramSchmidtTest.cpp LIBRARIES MagnumMathTestLib)
corrade_add_test(MathAlgorithmsKahanSumTest KahanSumTest.cpp LIBRARIES MagnumMathTestLib)
corrade_add_test(MathAlgorithmsQrTest QrTest.cpp LIBRARIES MagnumMathTestLib)
corrade_add_test(MathAlgorithmsSvdTest SvdTest.cpp LIBRARIES MagnumMathTestLib)
set_target_properties(
MathAlgorithmsGaussJordanTest
MathAlgorithmsGramSchmidtTest
MathAlgorithmsKahanSumTest
MathAlgorithmsQrTest
MathAlgorithmsSvdTest
PROPERTIES FOLDER "Magnum/Math/Algorithms/Test")

5
src/Magnum/Math/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Math")
set(MagnumMath_HEADERS
Angle.h
Bezier.h
@ -67,7 +71,6 @@ set(MagnumMath_INTERNAL_HEADERS
add_custom_target(MagnumMath SOURCES
${MagnumMath_HEADERS}
${MagnumMath_INTERNAL_HEADERS})
set_target_properties(MagnumMath PROPERTIES FOLDER "Magnum/Math")
install(FILES ${MagnumMath_HEADERS} DESTINATION ${MAGNUM_INCLUDE_INSTALL_DIR}/Math)

53
src/Magnum/Math/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Math/Test")
corrade_add_test(MathBoolVectorTest BoolVectorTest.cpp LIBRARIES MagnumMathTestLib)
corrade_add_test(MathConstantsTest ConstantsTest.cpp LIBRARIES MagnumMathTestLib)
corrade_add_test(MathFunctionsTest FunctionsTest.cpp LIBRARIES MagnumMathTestLib)
@ -88,52 +92,3 @@ set_property(TARGET
MathDistanceTest
MathIntersectionTest
APPEND PROPERTY COMPILE_DEFINITIONS "CORRADE_GRACEFUL_ASSERT")
set_target_properties(
MathBoolVectorTest
MathConstantsTest
MathFunctionsTest
MathFunctionsBatchTest
MathHalfTest
MathPackingTest
MathPackingBatchTest
MathTagsTest
MathTypeTraitsTest
MathVectorTest
MathVector2Test
MathVector3Test
MathVector4Test
MathColorTest
MathRectangularMatrixTest
MathMatrixTest
MathMatrix3Test
MathMatrix4Test
MathSwizzleTest
MathUnitTest
MathAngleTest
MathRangeTest
MathDualTest
MathComplexTest
MathDualComplexTest
MathQuaternionTest
MathDualQuaternionTest
MathBezierTest
MathCubicHermiteTest
MathFrustumTest
MathDistanceTest
MathIntersectionTest
MathIntersectionBenchmark
MathConfigurationValueTest
MathStrictWeakOrderingTest
MathVectorBenchmark
MathMatrixBenchmark
MathFunctionsBenchmark
PROPERTIES FOLDER "Magnum/Math/Test")

13
src/Magnum/MeshTools/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/MeshTools")
# Files shared between main library and unit test library
set(MagnumMeshTools_SRCS
Tipsify.cpp)
@ -96,7 +100,6 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumMeshToolsObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumMeshToolsObjects PROPERTIES FOLDER "Magnum/MeshTools")
if(TARGET_GL)
target_include_directories(MagnumMeshToolsObjects PUBLIC $<TARGET_PROPERTY:MagnumGL,INTERFACE_INCLUDE_DIRECTORIES>)
endif()
@ -105,9 +108,7 @@ endif()
add_library(MagnumMeshTools ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumMeshToolsObjects>
${MagnumMeshTools_GracefulAssert_SRCS})
set_target_properties(MagnumMeshTools PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/MeshTools")
set_target_properties(MagnumMeshTools PROPERTIES DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
set_target_properties(MagnumMeshTools PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
elseif(BUILD_STATIC_PIC)
@ -130,9 +131,7 @@ if(BUILD_TESTS)
add_library(MagnumMeshToolsTestLib ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumMeshToolsObjects>
${MagnumMeshTools_GracefulAssert_SRCS})
set_target_properties(MagnumMeshToolsTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/MeshTools")
set_target_properties(MagnumMeshToolsTestLib PROPERTIES DEBUG_POSTFIX "-d")
target_compile_definitions(MagnumMeshToolsTestLib PRIVATE
"CORRADE_GRACEFUL_ASSERT" "MagnumMeshTools_EXPORTS")
if(BUILD_STATIC_PIC)

25
src/Magnum/MeshTools/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/MeshTools/Test")
corrade_add_test(MeshToolsCombineTest CombineTest.cpp LIBRARIES MagnumMeshToolsTestLib)
corrade_add_test(MeshToolsCompressIndicesTest CompressIndicesTest.cpp LIBRARIES MagnumMeshToolsTestLib)
corrade_add_test(MeshToolsConcatenateTest ConcatenateTest.cpp LIBRARIES MagnumMeshToolsTestLib)
@ -47,30 +51,11 @@ set_property(TARGET
MeshToolsSubdivideTest
APPEND PROPERTY COMPILE_DEFINITIONS "CORRADE_GRACEFUL_ASSERT")
set_target_properties(
MeshToolsCombineTest
MeshToolsCompressIndicesTest
MeshToolsConcatenateTest
MeshToolsDuplicateTest
MeshToolsFilterAttributesTest
MeshToolsFlipNormalsTest
MeshToolsGenerateIndicesTest
MeshToolsGenerateNormalsTest
MeshToolsInterleaveTest
MeshToolsRemoveDuplicatesTest
MeshToolsSubdivideTest
MeshToolsTipsifyTest
MeshToolsTransformTest
PROPERTIES FOLDER "Magnum/MeshTools/Test")
if(BUILD_DEPRECATED)
corrade_add_test(MeshToolsCombineIndexedArraysTest CombineIndexedArraysTest.cpp LIBRARIES MagnumMeshToolsTestLib)
set_property(TARGET
MeshToolsCombineIndexedArraysTest
APPEND PROPERTY COMPILE_DEFINITIONS "CORRADE_GRACEFUL_ASSERT")
set_target_properties(
MeshToolsCombineIndexedArraysTest
PROPERTIES FOLDER "Magnum/MeshTools/Test")
endif()
if(BUILD_GL_TESTS)
@ -78,7 +63,6 @@ if(BUILD_GL_TESTS)
find_package(Corrade REQUIRED PluginManager)
corrade_add_resource(FullScreenTriangleGLTest_RESOURCES resources.conf)
set_target_properties(FullScreenTriangleGLTest_RESOURCES-dependencies PROPERTIES FOLDER "Magnum/MeshTools/Test")
corrade_add_test(MeshToolsFullScreenTriangleGLTest
FullScreenTriangleGLTest.cpp ${FullScreenTriangleGLTest_RESOURCES}
@ -127,7 +111,6 @@ if(BUILD_GL_TESTS)
CompileTestFiles/phong-flat.tga
CompileTestFiles/textured2D.tga
CompileTestFiles/textured3D.tga)
set_target_properties(MeshToolsCompileGLTest PROPERTIES FOLDER "Magnum/MeshTools/Test")
target_include_directories(MeshToolsCompileGLTest PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>)
if(BUILD_PLUGINS_STATIC)
if(WITH_ANYIMAGEIMPORTER)

65
src/Magnum/Platform/CMakeLists.txt

@ -24,6 +24,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Platform")
# Code shared by more application/context implementations
set(MagnumPlatform_SRCS )
@ -63,7 +67,6 @@ if(WITH_EMSCRIPTENAPPLICATION OR WITH_GLFWAPPLICATION OR WITH_SDL2APPLICATION)
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumPlatformObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumPlatformObjects PROPERTIES FOLDER "Magnum/Platform")
# Use the Foundation framework on Apple to query the DPI awareness
if(CORRADE_TARGET_APPLE)
@ -148,8 +151,7 @@ if(WITH_ANDROIDAPPLICATION)
add_library(MagnumAndroidApplicationGlue OBJECT
"${CMAKE_ANDROID_NDK}/sources/android/native_app_glue/android_native_app_glue.c")
set_target_properties(MagnumAndroidApplicationGlue PROPERTIES
CORRADE_USE_PEDANTIC_FLAGS OFF
FOLDER "Magnum/Platform")
CORRADE_USE_PEDANTIC_FLAGS OFF)
add_library(MagnumAndroidApplication STATIC
${MagnumAndroidApplication_SRCS}
@ -159,8 +161,7 @@ if(WITH_ANDROIDAPPLICATION)
target_include_directories(MagnumAndroidApplication PUBLIC
"${CMAKE_ANDROID_NDK}/sources/android/native_app_glue/")
set_target_properties(MagnumAndroidApplication PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
# Assuming that PIC is not needed because the Application lib is always
# linked to the executable and not to any intermediate shared lib
target_link_libraries(MagnumAndroidApplication PUBLIC
@ -195,8 +196,7 @@ if(WITH_EMSCRIPTENAPPLICATION)
${MagnumEmscriptenApplication_HEADERS}
${MagnumEmscriptenApplication_PRIVATE_HEADERS})
set_target_properties(MagnumEmscriptenApplication PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
# TODO: use MagnumPlatformObjects instead of ${MagnumPlatform_*} when
# CMake supports it
target_link_libraries(MagnumEmscriptenApplication PUBLIC Magnum
@ -236,8 +236,7 @@ if(WITH_GLFWAPPLICATION)
${MagnumGlfwApplication_SRCS}
${MagnumGlfwApplication_HEADERS})
set_target_properties(MagnumGlfwApplication PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumGlfwApplication PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
@ -309,8 +308,7 @@ if(WITH_SDL2APPLICATION)
${MagnumSdl2Application_SRCS}
${MagnumSdl2Application_HEADERS})
set_target_properties(MagnumSdl2Application PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumSdl2Application PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
@ -401,8 +399,7 @@ if(WITH_GLXAPPLICATION)
${MagnumGlxApplication_SRCS}
${MagnumGlxApplication_HEADERS})
set_target_properties(MagnumGlxApplication PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
# Assuming that PIC is not needed because the Application lib is always
# linked to the executable and not to any intermediate shared lib
target_include_directories(MagnumGlxApplication PUBLIC ${X11_INCLUDE_DIR})
@ -452,8 +449,7 @@ if(WITH_XEGLAPPLICATION)
${MagnumXEglApplication_SRCS}
${MagnumXEglApplication_HEADERS})
set_target_properties(MagnumXEglApplication PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
# Assuming that PIC is not needed because the Application lib is always
# linked to the executable and not to any intermediate shared lib
target_include_directories(MagnumXEglApplication PUBLIC ${X11_INCLUDE_DIR})
@ -491,8 +487,7 @@ if(WITH_WINDOWLESSEGLAPPLICATION)
${MagnumWindowlessEglApplication_HEADERS}
${MagnumWindowlessEglApplication_PRIVATE_HEADERS})
set_target_properties(MagnumWindowlessEglApplication PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumWindowlessEglApplication PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
@ -530,8 +525,7 @@ if(WITH_WINDOWLESSGLXAPPLICATION)
${MagnumWindowlessGlxApplication_SRCS}
${MagnumWindowlessGlxApplication_HEADERS})
set_target_properties(MagnumWindowlessGlxApplication PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
# X11 macros are a mess, disable warnings for C-style casts
target_compile_options(MagnumWindowlessGlxApplication PRIVATE "-Wno-old-style-cast")
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
@ -576,8 +570,7 @@ if(WITH_WINDOWLESSIOSAPPLICATION)
${MagnumWindowlessIosApplication_SRCS}
${MagnumWindowlessIosApplication_HEADERS})
set_target_properties(MagnumWindowlessIosApplication PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumWindowlessIosApplication PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
@ -613,8 +606,7 @@ if(WITH_WINDOWLESSWGLAPPLICATION)
${MagnumWindowlessWglApplication_SRCS}
${MagnumWindowlessWglApplication_HEADERS})
set_target_properties(MagnumWindowlessWglApplication PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
target_compile_definitions(MagnumWindowlessWglApplication PRIVATE "UNICODE")
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumWindowlessWglApplication PROPERTIES POSITION_INDEPENDENT_CODE ON)
@ -653,8 +645,7 @@ if(WITH_WINDOWLESSWINDOWSEGLAPPLICATION)
${MagnumWindowlessWindowsEglApplication_HEADERS}
${MagnumWindowlessWindowsEglApplication_PRIVATE_HEADERS})
set_target_properties(MagnumWindowlessWindowsEglApplication PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumWindowlessWindowsEglApplication PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
@ -690,8 +681,7 @@ if(WITH_WINDOWLESSCGLAPPLICATION)
${MagnumWindowlessCglApplication_SRCS}
${MagnumWindowlessCglApplication_HEADERS})
set_target_properties(MagnumWindowlessCglApplication PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumWindowlessCglApplication PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
@ -720,7 +710,6 @@ if(NEED_ABSTRACTXAPPLICATION)
target_compile_options(MagnumAbstractXApplication PRIVATE "-Wno-old-style-cast")
# Assuming that PIC is not needed because the Application lib is always
# linked to the executable and not to any intermediate shared lib
set_target_properties(MagnumAbstractXApplication PROPERTIES FOLDER "Magnum/Platform")
install(FILES ${MagnumAbstractXApplication_HEADERS} DESTINATION ${MAGNUM_INCLUDE_INSTALL_DIR}/Platform)
endif()
@ -742,7 +731,6 @@ if(NEED_GLXCONTEXTHANDLER)
# Assuming that PIC is not needed because this is part of Application lib,
# which is always linked to the executable and not to any intermediate
# shared lib
set_target_properties(MagnumGlxContextHandler PROPERTIES FOLDER "Magnum/Platform")
endif()
# EGL context handler
@ -771,7 +759,6 @@ if(NEED_EGLCONTEXTHANDLER)
# Assuming that PIC is not needed because this is part of Application lib,
# which is always linked to the executable and not to any intermediate
# shared lib
set_target_properties(MagnumEglContextHandler PROPERTIES FOLDER "Magnum/Platform")
endif()
# Platform-specific sources for context library
@ -806,7 +793,6 @@ if(NEED_CGLCONTEXT OR WITH_CGLCONTEXT)
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumCglContextObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumCglContextObjects PROPERTIES FOLDER "Magnum/Platform")
# Also create proper static library, if requested
if(WITH_CGLCONTEXT)
@ -818,8 +804,7 @@ if(NEED_CGLCONTEXT OR WITH_CGLCONTEXT)
$<TARGET_OBJECTS:MagnumCglContextObjects>
${PROJECT_SOURCE_DIR}/src/dummy.cpp) # XCode workaround, see file comment for details
set_target_properties(MagnumCglContext PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumCglContext PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
@ -850,7 +835,6 @@ if(NEED_EGLCONTEXT OR WITH_EGLCONTEXT)
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumEglContextObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumEglContextObjects PROPERTIES FOLDER "Magnum/Platform")
# Also create proper static library, if requested
if(WITH_EGLCONTEXT)
@ -862,8 +846,7 @@ if(NEED_EGLCONTEXT OR WITH_EGLCONTEXT)
$<TARGET_OBJECTS:MagnumEglContextObjects>
${PROJECT_SOURCE_DIR}/src/dummy.cpp) # XCode workaround, see file comment for details
set_target_properties(MagnumEglContext PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumEglContext PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
@ -889,7 +872,6 @@ if(NEED_GLXCONTEXT OR WITH_GLXCONTEXT)
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumGlxContextObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumGlxContextObjects PROPERTIES FOLDER "Magnum/Platform")
# Also create proper static library, if requested
if(WITH_GLXCONTEXT)
@ -899,8 +881,7 @@ if(NEED_GLXCONTEXT OR WITH_GLXCONTEXT)
add_library(MagnumGlxContext STATIC $<TARGET_OBJECTS:MagnumGlxContextObjects>)
set_target_properties(MagnumGlxContext PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumGlxContext PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
@ -927,7 +908,6 @@ if(NEED_WGLCONTEXT OR WITH_WGLCONTEXT)
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumWglContextObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumWglContextObjects PROPERTIES FOLDER "Magnum/Platform")
# Also create proper static library, if requested
if(WITH_WGLCONTEXT)
@ -937,8 +917,7 @@ if(NEED_WGLCONTEXT OR WITH_WGLCONTEXT)
add_library(MagnumWglContext STATIC $<TARGET_OBJECTS:MagnumWglContextObjects>)
set_target_properties(MagnumWglContext PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Platform")
DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumWglContext PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
@ -983,7 +962,6 @@ if(WITH_GL_INFO)
else()
message(FATAL_ERROR "magnum-gl-info is not available on this platform. Set WITH_GL_INFO to OFF to skip building it.")
endif()
set_target_properties(magnum-gl-info PROPERTIES FOLDER "Magnum/Platform")
if(NOT CORRADE_TARGET_EMSCRIPTEN)
install(TARGETS magnum-gl-info DESTINATION ${MAGNUM_BINARY_INSTALL_DIR})
@ -1021,7 +999,6 @@ endif()
# Force IDEs display also all header files and additional files in project view
add_custom_target(MagnumPlatform SOURCES ${MagnumPlatform_HEADERS} ${MagnumPlatform_FILES})
set_target_properties(MagnumPlatform PROPERTIES FOLDER "Magnum/Platform")
if(BUILD_TESTS)
add_subdirectory(Test)

19
src/Magnum/Platform/Test/CMakeLists.txt

@ -24,6 +24,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Platform/Test")
find_package(Corrade REQUIRED Main)
# Icons for SDL/GLFW
@ -34,7 +38,6 @@ endif()
if(WITH_ANDROIDAPPLICATION)
add_library(PlatformAndroidApplicationTest SHARED AndroidApplicationTest.cpp)
target_link_libraries(PlatformAndroidApplicationTest PRIVATE MagnumAndroidApplication)
set_target_properties(PlatformAndroidApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test")
if(CMAKE_ANDROID_NDK)
android_create_apk(PlatformAndroidApplicationTest AndroidManifest.xml)
endif()
@ -50,7 +53,6 @@ if(WITH_EMSCRIPTENAPPLICATION)
"-s DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR=0"
# Enable memory runtime checks
"-s ASSERTIONS=2 -s SAFE_HEAP=1")
set_target_properties(PlatformEmscriptenApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test")
add_custom_command(TARGET PlatformEmscriptenApplicationTest POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
${CMAKE_CURRENT_SOURCE_DIR}/../WebApplication.css
@ -68,7 +70,6 @@ if(WITH_EMSCRIPTENAPPLICATION)
"-s DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR=1"
"-s ASSERTIONS=2 -s SAFE_HEAP=1")
target_compile_definitions(PlatformMultipleEmscriptenApplicationTest PRIVATE CUSTOM_CLEAR_COLOR=0x3bd267_rgbf)
set_target_properties(PlatformMultipleEmscriptenApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test")
add_custom_command(TARGET PlatformMultipleEmscriptenApplicationTest POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
${CMAKE_CURRENT_SOURCE_DIR}/../WebApplication.css
@ -86,7 +87,6 @@ if(WITH_GLFWAPPLICATION)
# Window icon loading
target_sources(PlatformGlfwApplicationTest PRIVATE ${Platform_RESOURCES})
target_link_libraries(PlatformGlfwApplicationTest PRIVATE MagnumTrade)
set_target_properties(PlatformGlfwApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test")
if(CORRADE_TARGET_APPLE)
# The plist is needed in order to mark the app as DPI-aware
set_target_properties(PlatformGlfwApplicationTest PROPERTIES
@ -99,7 +99,6 @@ endif()
if(WITH_GLXAPPLICATION)
add_executable(PlatformGlxApplicationTest GlxApplicationTest.cpp)
target_link_libraries(PlatformGlxApplicationTest PRIVATE MagnumGlxApplication)
set_target_properties(PlatformGlxApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test")
endif()
if(WITH_SDL2APPLICATION)
@ -117,7 +116,6 @@ if(WITH_SDL2APPLICATION)
target_sources(PlatformSdl2ApplicationTest PRIVATE ${Platform_RESOURCES})
target_link_libraries(PlatformSdl2ApplicationTest PRIVATE MagnumTrade)
endif()
set_target_properties(PlatformSdl2ApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test")
if(CORRADE_TARGET_EMSCRIPTEN)
add_custom_command(TARGET PlatformSdl2ApplicationTest POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
@ -139,19 +137,16 @@ endif()
if(WITH_XEGLAPPLICATION)
add_executable(PlatformXEglApplicationTest XEglApplicationTest.cpp)
target_link_libraries(PlatformXEglApplicationTest PRIVATE MagnumXEglApplication)
set_target_properties(PlatformXEglApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test")
endif()
if(WITH_WINDOWLESSCGLAPPLICATION)
add_executable(PlatformWindowlessCglApplicationTest WindowlessCglApplicationTest.cpp)
target_link_libraries(PlatformWindowlessCglApplicationTest PRIVATE MagnumWindowlessCglApplication)
set_target_properties(PlatformWindowlessCglApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test")
endif()
if(WITH_WINDOWLESSEGLAPPLICATION)
add_executable(PlatformWindowlessEglApplicationTest WindowlessEglApplicationTest.cpp)
target_link_libraries(PlatformWindowlessEglApplicationTest PRIVATE MagnumWindowlessEglApplication)
set_target_properties(PlatformWindowlessEglApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test")
if(CORRADE_TARGET_EMSCRIPTEN)
add_custom_command(TARGET PlatformWindowlessEglApplicationTest POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
@ -167,7 +162,6 @@ endif()
if(WITH_WINDOWLESSGLXAPPLICATION)
add_executable(PlatformWindowlessGlxApplicationTest WindowlessGlxApplicationTest.cpp)
target_link_libraries(PlatformWindowlessGlxApplicationTest PRIVATE MagnumWindowlessGlxApplication)
set_target_properties(PlatformWindowlessGlxApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test")
endif()
if(WITH_WINDOWLESSIOSAPPLICATION)
@ -175,18 +169,15 @@ if(WITH_WINDOWLESSIOSAPPLICATION)
target_link_libraries(PlatformWindowlessIosApplicationTest PRIVATE MagnumWindowlessIosApplication)
set_target_properties(PlatformWindowlessIosApplicationTest PROPERTIES
MACOSX_BUNDLE ON
XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "YES"
FOLDER "Magnum/Platform/Test")
XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "YES")
endif()
if(WITH_WINDOWLESSWGLAPPLICATION)
add_executable(PlatformWindowlessWglApplicationTest WindowlessWglApplicationTest.cpp)
target_link_libraries(PlatformWindowlessWglApplicationTest PRIVATE MagnumWindowlessWglApplication)
set_target_properties(PlatformWindowlessWglApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test")
endif()
if(WITH_WINDOWLESSWINDOWSEGLAPPLICATION)
add_executable(PlatformWindowlessWindowsEglApplicationTest WindowlessWindowsEglApplicationTest.cpp)
target_link_libraries(PlatformWindowlessWindowsEglApplicationTest PRIVATE MagnumWindowlessWindowsEglApplication)
set_target_properties(PlatformWindowlessWindowsEglApplicationTest PROPERTIES FOLDER "Magnum/Platform/Test")
endif()

7
src/Magnum/Primitives/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Primitives")
set(MagnumPrimitives_SRCS
Axis.cpp
Capsule.cpp
@ -71,8 +75,7 @@ add_library(MagnumPrimitives ${SHARED_OR_STATIC}
${MagnumPrimitives_HEADERS}
${MagnumPrimitives_PRIVATE_HEADERS})
set_target_properties(MagnumPrimitives PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Primitives")
DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
set_target_properties(MagnumPrimitives PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
elseif(BUILD_STATIC_PIC)

21
src/Magnum/Primitives/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Primitives/Test")
corrade_add_test(PrimitivesAxisTest AxisTest.cpp LIBRARIES MagnumPrimitives)
corrade_add_test(PrimitivesCapsuleTest CapsuleTest.cpp LIBRARIES MagnumPrimitives)
corrade_add_test(PrimitivesCircleTest CircleTest.cpp LIBRARIES MagnumPrimitives)
@ -37,20 +41,3 @@ corrade_add_test(PrimitivesLineTest LineTest.cpp LIBRARIES MagnumPrimitives)
corrade_add_test(PrimitivesPlaneTest PlaneTest.cpp LIBRARIES MagnumPrimitives)
corrade_add_test(PrimitivesSquareTest SquareTest.cpp LIBRARIES MagnumPrimitives)
corrade_add_test(PrimitivesUVSphereTest UVSphereTest.cpp LIBRARIES MagnumPrimitives)
set_target_properties(
PrimitivesAxisTest
PrimitivesCapsuleTest
PrimitivesCircleTest
PrimitivesCrosshairTest
PrimitivesCubeTest
PrimitivesConeTest
PrimitivesCylinderTest
PrimitivesGradientTest
PrimitivesGridTest
PrimitivesIcosphereTest
PrimitivesLineTest
PrimitivesPlaneTest
PrimitivesSquareTest
PrimitivesUVSphereTest
PROPERTIES FOLDER "Magnum/Primitives/Test")

11
src/Magnum/SceneGraph/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/SceneGraph")
# Files shared between main library and unit test library
set(MagnumSceneGraph_SRCS
Animable.cpp)
@ -82,15 +86,13 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumSceneGraphObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumSceneGraphObjects PROPERTIES FOLDER "Magnum/SceneGraph")
# Main SceneGraph library
add_library(MagnumSceneGraph ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumSceneGraphObjects>
${MagnumSceneGraph_GracefulAssert_SRCS})
set_target_properties(MagnumSceneGraph PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/SceneGraph")
DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
set_target_properties(MagnumSceneGraph PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
elseif(BUILD_STATIC_PIC)
@ -110,8 +112,7 @@ if(BUILD_TESTS)
$<TARGET_OBJECTS:MagnumSceneGraphObjects>
${MagnumSceneGraph_GracefulAssert_SRCS})
set_target_properties(MagnumSceneGraphTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/SceneGraph")
DEBUG_POSTFIX "-d")
target_compile_definitions(MagnumSceneGraphTestLib PRIVATE
"CORRADE_GRACEFUL_ASSERT" "MagnumSceneGraph_EXPORTS")
target_link_libraries(MagnumSceneGraphTestLib MagnumMathTestLib)

19
src/Magnum/SceneGraph/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/SceneGraph/Test")
corrade_add_test(SceneGraphAnimableTest AnimableTest.cpp LIBRARIES MagnumSceneGraph)
corrade_add_test(SceneGraphCameraTest CameraTest.cpp LIBRARIES MagnumSceneGraph)
corrade_add_test(SceneGraphDualComplexTransfo___Test DualComplexTransformationTest.cpp LIBRARIES MagnumSceneGraphTestLib)
@ -48,18 +52,3 @@ set_property(TARGET
SceneGraphTranslationTransfo___Test
APPEND PROPERTY COMPILE_DEFINITIONS "CORRADE_GRACEFUL_ASSERT")
set_target_properties(
SceneGraphAnimableTest
SceneGraphCameraTest
SceneGraphDualComplexTransfo___Test
SceneGraphDualQuaternionTran___Test
SceneGraphMatrixTransforma___2DTest
SceneGraphMatrixTransforma___3DTest
SceneGraphObjectTest
SceneGraphRigidMatrixTrans___2DTest
SceneGraphRigidMatrixTrans___3DTest
SceneGraphSceneTest
SceneGraphTranslationRotat___2DTest
SceneGraphTranslationRotat___3DTest
SceneGraphTranslationTransfo___Test
PROPERTIES FOLDER "Magnum/SceneGraph/Test")

14
src/Magnum/SceneTools/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/SceneTools")
# Files shared between main library and unit test library
set(MagnumSceneTools_SRCS )
@ -54,7 +58,6 @@ set(MagnumSceneTools_PRIVATE_HEADERS
#if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
#set_target_properties(MagnumSceneToolsObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
#endif()
#set_target_properties(MagnumSceneToolsObjects PROPERTIES FOLDER "Magnum/SceneTools")
# Main SceneTools library
add_library(MagnumSceneTools ${SHARED_OR_STATIC}
@ -62,9 +65,7 @@ add_library(MagnumSceneTools ${SHARED_OR_STATIC}
${MagnumSceneTools_GracefulAssert_SRCS}
${MagnumSceneTools_HEADERS}
${MagnumSceneTools_PRIVATE_HEADERS})
set_target_properties(MagnumSceneTools PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/SceneTools")
set_target_properties(MagnumSceneTools PROPERTIES DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
set_target_properties(MagnumSceneTools PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
elseif(BUILD_STATIC_PIC)
@ -87,7 +88,6 @@ if(WITH_SCENECONVERTER)
MagnumMeshTools
MagnumSceneTools
MagnumTrade)
set_target_properties(magnum-sceneconverter PROPERTIES FOLDER "Magnum/MeshTools")
install(TARGETS magnum-sceneconverter DESTINATION ${MAGNUM_BINARY_INSTALL_DIR})
@ -100,9 +100,7 @@ if(BUILD_TESTS)
add_library(MagnumSceneToolsTestLib ${SHARED_OR_STATIC}
#$<TARGET_OBJECTS:MagnumSceneToolsObjects>
${MagnumSceneTools_GracefulAssert_SRCS})
set_target_properties(MagnumSceneToolsTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/SceneTools")
set_target_properties(MagnumSceneToolsTestLib PROPERTIES DEBUG_POSTFIX "-d")
target_compile_definitions(MagnumSceneToolsTestLib PRIVATE
"CORRADE_GRACEFUL_ASSERT" "MagnumSceneTools_EXPORTS")
if(BUILD_STATIC_PIC)

11
src/Magnum/SceneTools/Test/CMakeLists.txt

@ -23,14 +23,11 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/SceneTools/Test")
corrade_add_test(SceneToolsCombineTest CombineTest.cpp LIBRARIES MagnumTrade)
corrade_add_test(SceneToolsConvertToSingleFun___Test ConvertToSingleFunctionObjectsTest.cpp LIBRARIES MagnumTrade)
corrade_add_test(SceneToolsFlattenMeshHierarchyTest FlattenMeshHierarchyTest.cpp LIBRARIES MagnumSceneToolsTestLib)
corrade_add_test(SceneToolsOrderClusterParentsTest OrderClusterParentsTest.cpp LIBRARIES MagnumSceneToolsTestLib)
set_target_properties(
SceneToolsCombineTest
SceneToolsConvertToSingleFun___Test
SceneToolsFlattenMeshHierarchyTest
SceneToolsOrderClusterParentsTest
PROPERTIES FOLDER "Magnum/SceneTools/Test")

14
src/Magnum/ShaderTools/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/ShaderTools")
find_package(Corrade REQUIRED PluginManager)
# Files shared between main library and unit test library
@ -60,7 +64,6 @@ endif()
# if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
# set_target_properties(MagnumShaderToolsObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
# endif()
# set_target_properties(MagnumShaderToolsObjects PROPERTIES FOLDER "Magnum/ShaderTools")
# Main ShaderTools library
add_library(MagnumShaderTools ${SHARED_OR_STATIC}
@ -68,9 +71,7 @@ add_library(MagnumShaderTools ${SHARED_OR_STATIC}
${MagnumShaderTools_GracefulAssert_SRCS}
${MagnumShaderTools_HEADERS}
${MagnumShaderTools_PRIVATE_HEADERS})
set_target_properties(MagnumShaderTools PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/ShaderTools")
set_target_properties(MagnumShaderTools PROPERTIES DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
set_target_properties(MagnumShaderTools PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
elseif(BUILD_STATIC_PIC)
@ -91,7 +92,6 @@ if(WITH_SHADERCONVERTER)
target_link_libraries(magnum-shaderconverter PRIVATE
Magnum
MagnumShaderTools)
set_target_properties(magnum-shaderconverter PROPERTIES FOLDER "Magnum/ShaderTools")
install(TARGETS magnum-shaderconverter DESTINATION ${MAGNUM_BINARY_INSTALL_DIR})
@ -104,9 +104,7 @@ if(BUILD_TESTS)
add_library(MagnumShaderToolsTestLib ${SHARED_OR_STATIC}
# $<TARGET_OBJECTS:MagnumShaderToolsObjects>
${MagnumShaderTools_GracefulAssert_SRCS})
set_target_properties(MagnumShaderToolsTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/ShaderTools")
set_target_properties(MagnumShaderToolsTestLib PROPERTIES DEBUG_POSTFIX "-d")
target_compile_definitions(MagnumShaderToolsTestLib PRIVATE
"CORRADE_GRACEFUL_ASSERT" "MagnumShaderTools_EXPORTS")
if(BUILD_STATIC_PIC)

10
src/Magnum/ShaderTools/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/ShaderTools/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(SHADERTOOLS_TEST_DIR ".")
set(SHADERTOOLS_TEST_OUTPUT_DIR "./write")
@ -43,9 +47,3 @@ corrade_add_test(ShaderToolsSpirvTest SpirvTest.cpp
FILES SpirvTestFiles/entrypoint-interface.spv)
target_include_directories(ShaderToolsSpirvTest PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
corrade_add_test(ShaderToolsStageTest StageTest.cpp LIBRARIES MagnumShaderTools)
set_target_properties(
ShaderToolsAbstractConverterTest
ShaderToolsSpirvTest
ShaderToolsStageTest
PROPERTIES FOLDER "Magnum/ShaderTools/Test")

14
src/Magnum/Shaders/CMakeLists.txt

@ -23,12 +23,15 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Shaders")
if(NOT WITH_GL)
message(SEND_ERROR "Shaders are available only if WITH_GL is enabled")
endif()
corrade_add_resource(MagnumShaders_RESOURCES_GL resources-gl.conf)
set_target_properties(MagnumShaders_RESOURCES_GL-dependencies PROPERTIES FOLDER "Magnum/Shaders")
set(MagnumShaders_SRCS
${MagnumShaders_RESOURCES_GL})
@ -87,15 +90,12 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumShadersObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumShadersObjects PROPERTIES FOLDER "Magnum/Shaders")
# Main Shaders library
add_library(MagnumShaders ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumShadersObjects>
${MagnumShaders_GracefulAssert_SRCS})
set_target_properties(MagnumShaders PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Shaders")
set_target_properties(MagnumShaders PROPERTIES DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
set_target_properties(MagnumShaders PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
elseif(BUILD_STATIC_PIC)
@ -116,9 +116,7 @@ if(BUILD_TESTS)
add_library(MagnumShadersTestLib ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumShadersObjects>
${MagnumShaders_GracefulAssert_SRCS})
set_target_properties(MagnumShadersTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Shaders")
set_target_properties(MagnumShadersTestLib PROPERTIES DEBUG_POSTFIX "-d")
target_compile_definitions(MagnumShadersTestLib PRIVATE
"CORRADE_GRACEFUL_ASSERT" "MagnumShaders_EXPORTS")
if(BUILD_STATIC_PIC)

33
src/Magnum/Shaders/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Shaders/Test")
corrade_add_test(ShadersDistanceFieldVectorTest DistanceFieldVectorTest.cpp LIBRARIES MagnumShaders)
corrade_add_test(ShadersFlatTest FlatTest.cpp LIBRARIES MagnumShaders)
corrade_add_test(ShadersGenericTest GenericTest.cpp LIBRARIES MagnumShaders)
@ -30,15 +34,6 @@ corrade_add_test(ShadersMeshVisualizerTest MeshVisualizerTest.cpp LIBRARIES Magn
corrade_add_test(ShadersPhongTest PhongTest.cpp LIBRARIES MagnumShaders)
corrade_add_test(ShadersVectorTest VectorTest.cpp LIBRARIES MagnumShaders)
set_target_properties(
ShadersDistanceFieldVectorTest
ShadersFlatTest
ShadersGenericTest
ShadersMeshVisualizerTest
ShadersPhongTest
ShadersVectorTest
PROPERTIES FOLDER "Magnum/Shaders/Test")
# There's an underscore between GL and Test to disambiguate from GLTest, which
# is a common suffix used to mark tests that need a GL context. Ugly, I know.
corrade_add_test(ShadersDistanceFieldVectorGL_Test DistanceFieldVectorGL_Test.cpp LIBRARIES MagnumShaders)
@ -49,16 +44,6 @@ corrade_add_test(ShadersPhongGL_Test PhongGL_Test.cpp LIBRARIES MagnumShaders)
corrade_add_test(ShadersVectorGL_Test VectorGL_Test.cpp LIBRARIES MagnumShaders)
corrade_add_test(ShadersVertexColorGL_Test VertexColorGL_Test.cpp LIBRARIES MagnumShaders)
set_target_properties(
ShadersDistanceFieldVectorGL_Test
ShadersFlatGL_Test
ShadersGenericGL_Test
ShadersMeshVisualizerGL_Test
ShadersPhongGL_Test
ShadersVectorGL_Test
ShadersVertexColorGL_Test
PROPERTIES FOLDER "Magnum/Shaders/Test")
if(BUILD_GL_TESTS)
# Otherwise CMake complains that Corrade::PluginManager is not found, wtf
find_package(Corrade REQUIRED PluginManager)
@ -460,14 +445,4 @@ if(BUILD_GL_TESTS)
VertexColorTestFiles
PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
endif()
set_target_properties(
ShadersDistanceFieldVectorGLTest
ShadersFlatGLTest
ShadersMeshVisualizerGLTest
ShadersPhongGLTest
ShadersVectorGLTest
ShadersVertexColorGLTest
ShadersGLBenchmark
PROPERTIES FOLDER "Magnum/Shaders/Test")
endif()

18
src/Magnum/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Test")
corrade_add_test(FileCallbackTest FileCallbackTest.cpp LIBRARIES Magnum)
corrade_add_test(ImageTest ImageTest.cpp LIBRARIES MagnumTestLib)
corrade_add_test(ImageViewTest ImageViewTest.cpp LIBRARIES MagnumTestLib)
@ -40,22 +44,8 @@ corrade_add_test(MagnumVersionTest VersionTest.cpp LIBRARIES Magnum)
corrade_add_test(VertexFormatTest VertexFormatTest.cpp LIBRARIES MagnumTestLib)
set_target_properties(
ImageTest
ImageViewTest
MeshTest
PixelFormatTest
PixelStorageTest
ResourceManagerTest
SamplerTest
MagnumTagsTest
MagnumVersionTest
VertexFormatTest
PROPERTIES FOLDER "Magnum/Test")
if(MAGNUM_BUILD_DEPRECATED)
corrade_add_test(ArrayTest ArrayTest.cpp LIBRARIES Magnum)
set_target_properties(ArrayTest PROPERTIES FOLDER "Magnum/Test")
endif()
set_property(TARGET

14
src/Magnum/Text/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Text")
find_package(Corrade REQUIRED PluginManager)
# Files shared between main library and unit test library
@ -78,15 +82,12 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumTextObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumTextObjects PROPERTIES FOLDER "Magnum/Text")
# Text library
add_library(MagnumText ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumTextObjects>
${MagnumText_GracefulAssert_SRCS})
set_target_properties(MagnumText PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Text")
set_target_properties(MagnumText PROPERTIES DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
set_target_properties(MagnumText PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
elseif(BUILD_STATIC_PIC)
@ -137,7 +138,6 @@ if(WITH_FONTCONVERTER)
else()
message(FATAL_ERROR "magnum-fontconverter is not available on this platform. Set WITH_FONTCONVERTER to OFF to suppress this warning.")
endif()
set_target_properties(magnum-fontconverter PROPERTIES FOLDER "Magnum/Text")
install(TARGETS magnum-fontconverter DESTINATION ${MAGNUM_BINARY_INSTALL_DIR})
@ -150,9 +150,7 @@ if(BUILD_TESTS)
add_library(MagnumTextTestLib ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumTextObjects>
${MagnumText_GracefulAssert_SRCS})
set_target_properties(MagnumTextTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Text")
set_target_properties(MagnumTextTestLib PROPERTIES DEBUG_POSTFIX "-d")
target_compile_definitions(MagnumTextTestLib PRIVATE
"CORRADE_GRACEFUL_ASSERT" "MagnumText_EXPORTS")
if(BUILD_STATIC_PIC)

17
src/Magnum/Text/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Text/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(TEXT_TEST_DIR ".")
set(TEXT_TEST_OUTPUT_DIR "./write")
@ -45,21 +49,8 @@ target_include_directories(TextAbstractFontConverterTest PRIVATE ${CMAKE_CURRENT
corrade_add_test(TextAbstractGlyphCacheTest AbstractGlyphCacheTest.cpp LIBRARIES MagnumTextTestLib)
corrade_add_test(TextAbstractLayouterTest AbstractLayouterTest.cpp LIBRARIES Magnum MagnumText)
set_target_properties(
TextAbstractFontTest
TextAbstractFontConverterTest
TextAbstractGlyphCacheTest
TextAbstractLayouterTest
PROPERTIES FOLDER "Magnum/Text/Test")
if(TARGET_GL AND BUILD_GL_TESTS)
corrade_add_test(TextDistanceFieldGlyphCacheGLTest DistanceFieldGlyphCacheGLTest.cpp LIBRARIES MagnumText MagnumOpenGLTester)
corrade_add_test(TextGlyphCacheGLTest GlyphCacheGLTest.cpp LIBRARIES MagnumText MagnumOpenGLTester)
corrade_add_test(TextRendererGLTest RendererGLTest.cpp LIBRARIES MagnumText MagnumOpenGLTester)
set_target_properties(
TextDistanceFieldGlyphCacheGLTest
TextGlyphCacheGLTest
TextRendererGLTest
PROPERTIES FOLDER "Magnum/Text/Test")
endif()

10
src/Magnum/TextureTools/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/TextureTools")
set(MagnumTextureTools_SRCS
Atlas.cpp)
@ -33,7 +37,6 @@ set(MagnumTextureTools_HEADERS
if(TARGET_GL)
corrade_add_resource(MagnumTextureTools_RCS resources.conf)
set_target_properties(MagnumTextureTools_RCS-dependencies PROPERTIES FOLDER "Magnum/TextureTools")
if(BUILD_STATIC)
# On the static build we're importing the resources manually, so no
# need to have the implicit initializers as well.
@ -54,9 +57,7 @@ endif()
add_library(MagnumTextureTools ${SHARED_OR_STATIC}
${MagnumTextureTools_SRCS}
${MagnumTextureTools_HEADERS})
set_target_properties(MagnumTextureTools PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/TextureTools")
set_target_properties(MagnumTextureTools PROPERTIES DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
set_target_properties(MagnumTextureTools PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
elseif(BUILD_STATIC_PIC)
@ -105,7 +106,6 @@ if(WITH_DISTANCEFIELDCONVERTER)
else()
message(FATAL_ERROR "magnum-distancefieldconverter is not available on this platform. Set WITH_DISTANCEFIELDCONVERTER to OFF to suppress this warning.")
endif()
set_target_properties(magnum-distancefieldconverter PROPERTIES FOLDER "Magnum/TextureTools")
install(TARGETS magnum-distancefieldconverter DESTINATION ${MAGNUM_BINARY_INSTALL_DIR})

6
src/Magnum/TextureTools/Test/CMakeLists.txt

@ -23,8 +23,11 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/TextureTools/Test")
corrade_add_test(TextureToolsAtlasTest AtlasTest.cpp LIBRARIES MagnumTextureTools)
set_target_properties(TextureToolsAtlasTest PROPERTIES FOLDER "Magnum/TextureTools/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(DISTANCEFIELDGLTEST_FILES_DIR "DistanceFieldGLTestFiles")
@ -68,7 +71,6 @@ if(BUILD_GL_TESTS)
FILES
DistanceFieldGLTestFiles/input.tga
DistanceFieldGLTestFiles/output.tga)
set_target_properties(TextureToolsDistanceFieldGLTest PROPERTIES FOLDER "Magnum/TextureTools/Test")
target_include_directories(TextureToolsDistanceFieldGLTest PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>)
if(BUILD_PLUGINS_STATIC)
if(WITH_ANYIMAGEIMPORTER)

14
src/Magnum/Trade/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Trade")
find_package(Corrade REQUIRED PluginManager)
set(MagnumTrade_SRCS
@ -125,15 +129,12 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumTradeObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumTradeObjects PROPERTIES FOLDER "Magnum/Trade")
# Trade library
add_library(MagnumTrade ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumTradeObjects>
${MagnumTrade_GracefulAssert_SRCS})
set_target_properties(MagnumTrade PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Trade")
set_target_properties(MagnumTrade PROPERTIES DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
set_target_properties(MagnumTrade PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
elseif(BUILD_STATIC_PIC)
@ -160,7 +161,6 @@ if(WITH_IMAGECONVERTER)
# BasisImageConverter uses these, and linking pthread to just the
# plugin doesn't work. See its documentation for details.
Threads::Threads)
set_target_properties(magnum-imageconverter PROPERTIES FOLDER "Magnum/Trade")
install(TARGETS magnum-imageconverter DESTINATION ${MAGNUM_BINARY_INSTALL_DIR})
@ -175,9 +175,7 @@ if(BUILD_TESTS)
${MagnumTrade_GracefulAssert_SRCS})
target_compile_definitions(MagnumTradeTestLib PRIVATE
"CORRADE_GRACEFUL_ASSERT" "MagnumTrade_EXPORTS")
set_target_properties(MagnumTradeTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum")
set_target_properties(MagnumTradeTestLib PROPERTIES DEBUG_POSTFIX "-d")
if(BUILD_STATIC_PIC)
set_target_properties(MagnumTradeTestLib PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()

29
src/Magnum/Trade/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Trade/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(TRADE_TEST_DIR ".")
set(TRADE_TEST_OUTPUT_DIR "./write")
@ -69,34 +73,9 @@ set_property(TARGET
TradeSceneDataTest
APPEND PROPERTY COMPILE_DEFINITIONS "CORRADE_GRACEFUL_ASSERT")
set_target_properties(
TradeAbstractImageConverterTest
TradeAbstractImporterTest
TradeAbstractSceneConverterTest
TradeAnimationDataTest
TradeCameraDataTest
TradeFlatMaterialDataTest
TradeImageDataTest
TradeLightDataTest
TradeMaterialDataTest
TradePbrClearCoatMaterialDataTest
TradePbrMetallicRoughnessMate___Test
TradePbrSpecularGlossinessMat___Test
TradePhongMaterialDataTest
TradeSceneDataTest
TradeTextureDataTest
PROPERTIES FOLDER "Magnum/Trade/Test")
if(MAGNUM_BUILD_DEPRECATED)
corrade_add_test(TradeMeshData2DTest MeshData2DTest.cpp LIBRARIES MagnumTrade)
corrade_add_test(TradeMeshData3DTest MeshData3DTest.cpp LIBRARIES MagnumTrade)
corrade_add_test(TradeObjectData2DTest ObjectData2DTest.cpp LIBRARIES MagnumTradeTestLib)
corrade_add_test(TradeObjectData3DTest ObjectData3DTest.cpp LIBRARIES MagnumTradeTestLib)
set_target_properties(
TradeMeshData2DTest
TradeMeshData3DTest
TradeObjectData2DTest
TradeObjectData3DTest
PROPERTIES FOLDER "Magnum/Trade/Test")
endif()

18
src/Magnum/Vk/CMakeLists.txt

@ -24,6 +24,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Vk")
find_package(Vulkan REQUIRED)
set(MagnumVk_SRCS
@ -159,16 +163,13 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumVkObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumVkObjects PROPERTIES FOLDER "Magnum/Vk")
# Vk library
add_library(MagnumVk ${SHARED_OR_STATIC}
$<TARGET_OBJECTS:MagnumVkObjects>
$<TARGET_OBJECTS:MagnumFlextVkObjects>
${MagnumVk_GracefulAssert_SRCS})
set_target_properties(MagnumVk PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Vk")
set_target_properties(MagnumVk PROPERTIES DEBUG_POSTFIX "-d")
if(NOT BUILD_STATIC)
target_compile_definitions(MagnumVk PRIVATE "FlextVk_EXPORTS")
set_target_properties(MagnumVk PROPERTIES VERSION ${MAGNUM_LIBRARY_VERSION} SOVERSION ${MAGNUM_LIBRARY_SOVERSION})
@ -191,7 +192,6 @@ install(FILES ${MagnumVk_HEADERS} DESTINATION ${MAGNUM_INCLUDE_INSTALL_DIR}/Vk)
if(WITH_VK_INFO)
add_executable(magnum-vk-info vk-info.cpp)
target_link_libraries(magnum-vk-info PRIVATE MagnumVk)
set_target_properties(magnum-vk-info PROPERTIES FOLDER "Magnum/Vk")
install(TARGETS magnum-vk-info DESTINATION ${MAGNUM_BINARY_INSTALL_DIR})
@ -215,9 +215,7 @@ if(WITH_VULKANTESTER)
add_library(MagnumVulkanTester STATIC
${MagnumVulkanTester_SRCS}
${MagnumVulkanTester_HEADERS})
set_target_properties(MagnumVulkanTester PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Vk")
set_target_properties(MagnumVulkanTester PROPERTIES DEBUG_POSTFIX "-d")
target_link_libraries(MagnumVulkanTester PUBLIC MagnumVk Corrade::TestSuite)
install(FILES ${MagnumVulkanTester_HEADERS} DESTINATION ${MAGNUM_INCLUDE_INSTALL_DIR}/Vk)
@ -236,9 +234,7 @@ if(BUILD_TESTS)
$<TARGET_OBJECTS:MagnumVkObjects>
$<TARGET_OBJECTS:MagnumFlextVkObjects>
${MagnumVk_GracefulAssert_SRCS})
set_target_properties(MagnumVkTestLib PROPERTIES
DEBUG_POSTFIX "-d"
FOLDER "Magnum/Vk")
set_target_properties(MagnumVkTestLib PROPERTIES DEBUG_POSTFIX "-d")
target_compile_definitions(MagnumVkTestLib PRIVATE
"CORRADE_GRACEFUL_ASSERT" "MagnumVk_EXPORTS" "FlextVk_EXPORTS")
if(BUILD_STATIC_PIC)

80
src/Magnum/Vk/Test/CMakeLists.txt

@ -24,6 +24,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "Magnum/Vk/Test")
# Inputs to configure.h needed only by Vulkan tests
if(BUILD_VK_TESTS)
# Otherwise CMake complains that Corrade::PluginManager is not found, wtf
@ -139,13 +143,6 @@ if(CORRADE_TARGET_ANDROID)
LIBRARIES MagnumVk)
set_tests_properties(VkAssertTestFailAssertVkSuccessOr PROPERTIES
PASS_REGULAR_EXPRESSION "Call a = s failed with Vk::Result::ErrorExtensionNotPresent at ")
set_target_properties(
VkAssertTestFailAssertSuccess
VkAssertTestFailAssertSuccessOr
VkAssertTestFailAssertVkSuccess
VkAssertTestFailAssertVkSuccessOr
PROPERTIES FOLDER "Magnum/Vk/Test")
endif()
# The same as above, but using CORRADE_STANDARD_ASSERT
@ -161,48 +158,6 @@ target_compile_definitions(VkAssertStandardDisabledTest PRIVATE
corrade_add_test(VkVersionTest VersionTest.cpp LIBRARIES MagnumVk)
set_target_properties(
VkAssertTest
VkAssertStandardTest
VkAssertDisabledTest
VkAssertStandardDisabledTest
VkBufferTest
VkCommandBufferTest
VkCommandPoolTest
VkDescriptorPoolTest
VkDescriptorSetTest
VkDescriptorSetLayoutTest
VkDescriptorTypeTest
VkDeviceTest
VkDeviceFeaturesTest
VkDevicePropertiesTest
VkExtensionsTest
VkExtensionPropertiesTest
VkFenceTest
VkFramebufferTest
VkHandleTest
VkImageTest
VkImageViewTest
VkInstanceTest
VkIntegrationTest
VkLayerPropertiesTest
VkMemoryTest
VkMeshTest
VkMeshLayoutTest
VkPipelineTest
VkPipelineLayoutTest
VkPixelFormatTest
VkQueueTest
VkResultTest
VkRenderPassTest
VkSamplerTest
VkShaderTest
VkShaderSetTest
VkStructureHelpersTest
VkVersionTest
VkVertexFormatTest
PROPERTIES FOLDER "Magnum/Vk/Test")
if(BUILD_VK_TESTS)
corrade_add_test(VkBufferVkTest BufferVkTest.cpp LIBRARIES MagnumVkTestLib MagnumVulkanTester)
corrade_add_test(VkCommandBufferVkTest CommandBufferVkTest.cpp LIBRARIES MagnumVulkanTester)
@ -264,31 +219,4 @@ if(BUILD_VK_TESTS)
target_include_directories(VkShaderVkTest PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>)
corrade_add_test(VkVersionVkTest VersionVkTest.cpp LIBRARIES MagnumVk)
set_target_properties(
VkBufferVkTest
VkCommandBufferVkTest
VkCommandPoolVkTest
VkDescriptorPoolVkTest
VkDescriptorSetVkTest
VkDescriptorSetLayoutVkTest
VkDeviceVkTest
VkDevicePropertiesVkTest
VkExtensionPropertiesVkTest
VkFenceVkTest
VkFramebufferVkTest
VkLayerPropertiesVkTest
VkImageVkTest
VkImageViewVkTest
VkInstanceVkTest
VkMemoryVkTest
VkMeshVkTest
VkPipelineVkTest
VkPipelineLayoutVkTest
VkQueueVkTest
VkRenderPassVkTest
VkSamplerVkTest
VkShaderVkTest
VkVersionVkTest
PROPERTIES FOLDER "Magnum/Vk/Test")
endif()

5
src/MagnumExternal/OpenGL/GL/CMakeLists.txt vendored

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumExternal/OpenGL")
# flextGLPlatform.cpp is compiled as part of Magnum*Context libraries in Platform
add_library(MagnumFlextGLObjects OBJECT flextGL.cpp)
target_include_directories(MagnumFlextGLObjects PUBLIC $<TARGET_PROPERTY:MagnumGL,INTERFACE_INCLUDE_DIRECTORIES>)
@ -32,6 +36,5 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumFlextGLObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumFlextGLObjects PROPERTIES FOLDER "MagnumExternal/OpenGL")
install(FILES flextGL.h DESTINATION ${MAGNUM_EXTERNAL_INCLUDE_INSTALL_DIR}/OpenGL/GL)

5
src/MagnumExternal/OpenGL/GLES2/CMakeLists.txt vendored

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumExternal/OpenGL")
# Desktop GLES on Windows still links to opengl32.dll so we have a special
# function loading code that queries everything above OpenGL 1.1
if(CORRADE_TARGET_WINDOWS AND MAGNUM_TARGET_DESKTOP_GLES)
@ -51,7 +55,6 @@ if(NOT CORRADE_TARGET_EMSCRIPTEN)
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumFlextGLObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumFlextGLObjects PROPERTIES FOLDER "MagnumExternal/OpenGL")
endif()
install(FILES ${MagnumOpenGL_HEADERS} DESTINATION ${MAGNUM_EXTERNAL_INCLUDE_INSTALL_DIR}/OpenGL/GLES2)

5
src/MagnumExternal/OpenGL/GLES3/CMakeLists.txt vendored

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumExternal/OpenGL")
# Desktop GLES on Windows still links to opengl32.dll so we have a special
# function loading code that queries everything above OpenGL 1.1
if(CORRADE_TARGET_WINDOWS AND MAGNUM_TARGET_DESKTOP_GLES)
@ -51,7 +55,6 @@ if(NOT CORRADE_TARGET_EMSCRIPTEN)
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumFlextGLObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumFlextGLObjects PROPERTIES FOLDER "MagnumExternal/OpenGL")
endif()
install(FILES ${MagnumOpenGL_HEADERS} DESTINATION ${MAGNUM_EXTERNAL_INCLUDE_INSTALL_DIR}/OpenGL/GLES3)

5
src/MagnumExternal/Vulkan/CMakeLists.txt vendored

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumExternal/Vulkan")
add_library(MagnumFlextVkObjects OBJECT flextVk.cpp)
target_include_directories(MagnumFlextVkObjects PUBLIC $<TARGET_PROPERTY:MagnumVk,INTERFACE_INCLUDE_DIRECTORIES>)
if(NOT BUILD_STATIC)
@ -31,6 +35,5 @@ endif()
if(NOT BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(MagnumFlextVkObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(MagnumFlextVkObjects PROPERTIES FOLDER "MagnumExternal/Vulkan")
install(FILES flextVk.h flextVkGlobal.h spirv.h DESTINATION ${MAGNUM_EXTERNAL_INCLUDE_INSTALL_DIR}/Vulkan)

5
src/MagnumPlugins/AnyAudioImporter/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/AnyAudioImporter/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(WAV_FILE stereo8.wav)
else()
@ -63,7 +67,6 @@ else()
add_dependencies(AnyAudioImporterTest WavAudioImporter)
endif()
endif()
set_target_properties(AnyAudioImporterTest PROPERTIES FOLDER "MagnumPlugins/AnyAudioImporter/Test")
if(CORRADE_BUILD_STATIC AND NOT MAGNUM_ANYAUDIOIMPORTER_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the executable

5
src/MagnumPlugins/AnyImageConverter/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/AnyImageConverter/Test")
# Needed to test verbose output from OpenExrImageConverter (detected thread
# count), unfortunately no better option for testing flags right now
set(THREADS_PREFER_PTHREAD_FLAG TRUE)
@ -81,7 +85,6 @@ else()
add_dependencies(AnyImageConverterTest TgaImageConverter)
endif()
endif()
set_target_properties(AnyImageConverterTest PROPERTIES FOLDER "MagnumPlugins/AnyImageConverter/Test")
if(CORRADE_BUILD_STATIC AND NOT MAGNUM_ANYIMAGECONVERTER_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the executable

5
src/MagnumPlugins/AnyImageImporter/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/AnyImageImporter/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(TEST_FILE_DIR .)
set(TGA_FILE rgb.tga)
@ -85,7 +89,6 @@ else()
add_dependencies(AnyImageImporterTest TgaImporter)
endif()
endif()
set_target_properties(AnyImageImporterTest PROPERTIES FOLDER "MagnumPlugins/AnyImageImporter/Test")
if(CORRADE_BUILD_STATIC AND NOT MAGNUM_ANYIMAGEIMPORTER_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the executable

5
src/MagnumPlugins/AnySceneConverter/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/AnySceneConverter/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(ANYSCENECONVERTER_TEST_OUTPUT_DIR "write")
set(PLY_FILE triangle.ply)
@ -68,7 +72,6 @@ else()
add_dependencies(AnySceneConverterTest TgaImageConverter)
endif()
endif()
set_target_properties(AnySceneConverterTest PROPERTIES FOLDER "MagnumPlugins/AnySceneConverter/Test")
if(CORRADE_BUILD_STATIC AND NOT MAGNUM_ANYSCENECONVERTER_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the executable

5
src/MagnumPlugins/AnySceneImporter/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/AnySceneImporter/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(OBJ_FILE pointMesh.obj)
set(PLY_FILE triangle.ply)
@ -66,7 +70,6 @@ else()
add_dependencies(AnySceneImporterTest ObjImporter)
endif()
endif()
set_target_properties(AnySceneImporterTest PROPERTIES FOLDER "MagnumPlugins/AnySceneImporter/Test")
if(CORRADE_BUILD_STATIC AND NOT MAGNUM_ANYSCENEIMPORTER_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the executable

5
src/MagnumPlugins/AnyShaderConverter/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/AnyShaderConverter/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(ANYSHADERCONVERTER_TEST_DIR ".")
set(ANYSHADERCONVERTER_TEST_OUTPUT_DIR "write")
@ -58,7 +62,6 @@ else()
# So the plugins get properly built when building the test
add_dependencies(AnyShaderConverterTest AnyShaderConverter)
endif()
set_target_properties(AnyShaderConverterTest PROPERTIES FOLDER "MagnumPlugins/AnyShaderConverter/Test")
if(CORRADE_BUILD_STATIC AND NOT MAGNUM_ANYSHADERCONVERTER_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the executable

6
src/MagnumPlugins/MagnumFont/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/MagnumFont/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(MAGNUMFONT_TEST_DIR ".")
else()
@ -53,7 +57,6 @@ target_include_directories(MagnumFontTest PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/$<
if(MAGNUM_MAGNUMFONT_BUILD_STATIC)
target_link_libraries(MagnumFontTest PRIVATE MagnumFont TgaImporter)
endif()
set_target_properties(MagnumFontTest PROPERTIES FOLDER "MagnumPlugins/MagnumFont/Test")
if(CORRADE_BUILD_STATIC AND NOT MAGNUM_MAGNUMFONT_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the executable
@ -75,7 +78,6 @@ if(BUILD_GL_TESTS)
# So the plugins get properly built when building the test
add_dependencies(MagnumFontGLTest MagnumFont TgaImporter)
endif()
set_target_properties(MagnumFontGLTest PROPERTIES FOLDER "MagnumPlugins/MagnumFont/Test")
if((CORRADE_BUILD_STATIC OR MAGNUM_BUILD_STATIC) AND NOT MAGNUM_MAGNUMFONT_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the

5
src/MagnumPlugins/MagnumFontConverter/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/MagnumFontConverter/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(MAGNUMFONTCONVERTER_TEST_WRITE_DIR "write")
set(MAGNUMFONT_TEST_DIR ".")
@ -68,7 +72,6 @@ else()
add_dependencies(MagnumFontConverterTest TgaImporter)
endif()
endif()
set_target_properties(MagnumFontConverterTest PROPERTIES FOLDER "MagnumPlugins/MagnumFontConverter/Test")
if(CORRADE_BUILD_STATIC AND NOT MAGNUM_MAGNUMFONTCONVERTER_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the executable

5
src/MagnumPlugins/ObjImporter/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/ObjImporter/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(OBJIMPORTER_TEST_DIR ".")
else()
@ -70,7 +74,6 @@ else()
# So the plugins get properly built when building the test
add_dependencies(ObjImporterTest ObjImporter)
endif()
set_target_properties(ObjImporterTest PROPERTIES FOLDER "MagnumPlugins/ObjImporter/Test")
if(CORRADE_BUILD_STATIC AND NOT MAGNUM_OBJIMPORTER_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the executable

5
src/MagnumPlugins/TgaImageConverter/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/TgaImageConverter/Test")
# CMake before 3.8 has broken $<TARGET_FILE*> expressions for iOS (see
# https://gitlab.kitware.com/cmake/cmake/merge_requests/404) and since Corrade
# doesn't support dynamic plugins on iOS, this sorta works around that. Should
@ -55,7 +59,6 @@ else()
add_dependencies(TgaImageConverterTest TgaImporter)
endif()
endif()
set_target_properties(TgaImageConverterTest PROPERTIES FOLDER "MagnumPlugins/TgaImageConverter/Test")
if(CORRADE_BUILD_STATIC AND NOT MAGNUM_TGAIMAGECONVERTER_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the executable

5
src/MagnumPlugins/TgaImporter/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/TgaImporter/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(TGAIMPORTER_TEST_DIR ".")
else()
@ -53,7 +57,6 @@ else()
# So the plugins get properly built when building the test
add_dependencies(TgaImporterTest TgaImporter)
endif()
set_target_properties(TgaImporterTest PROPERTIES FOLDER "MagnumPlugins/TgaImporter/Test")
if(CORRADE_BUILD_STATIC AND NOT MAGNUM_TGAIMPORTER_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the executable

5
src/MagnumPlugins/WavAudioImporter/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/WavAudioImporter")
find_package(Corrade REQUIRED PluginManager)
if(BUILD_PLUGINS_STATIC AND NOT DEFINED MAGNUM_WAVAUDIOIMPORTER_BUILD_STATIC)
@ -45,7 +49,6 @@ endif()
if(NOT MAGNUM_WAVAUDIOIMPORTER_BUILD_STATIC OR BUILD_STATIC_PIC)
set_target_properties(WavAudioImporterObjects PROPERTIES POSITION_INDEPENDENT_CODE ON)
endif()
set_target_properties(WavAudioImporterObjects PROPERTIES FOLDER "MagnumPlugins/WavAudioImporter")
# WavAudioImporter plugin
add_plugin(WavAudioImporter

8
src/MagnumPlugins/WavAudioImporter/Test/CMakeLists.txt

@ -23,6 +23,10 @@
# DEALINGS IN THE SOFTWARE.
#
# IDE folder in VS, Xcode etc. CMake 3.12+, older versions have only the FOLDER
# property that would have to be set on each target separately.
set(CMAKE_FOLDER "MagnumPlugins/WavAudioImporter/Test")
if(CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(WAVAUDIOIMPORTER_TEST_DIR ".")
else()
@ -104,10 +108,6 @@ corrade_add_test(WavAudioImporterWavHeaderTest
WavHeaderTest.cpp
$<TARGET_OBJECTS:WavAudioImporterObjects>
LIBRARIES MagnumAudio)
set_target_properties(
WavAudioImporterTest
WavAudioImporterWavHeaderTest
PROPERTIES FOLDER "MagnumPlugins/WavAudioImporter/Test")
if(CORRADE_BUILD_STATIC AND NOT MAGNUM_WAVAUDIOIMPORTER_BUILD_STATIC)
# CMake < 3.4 does this implicitly, but 3.4+ not anymore (see CMP0065).
# That's generally okay, *except if* the build is static, the executable

Loading…
Cancel
Save