From 6add425bb350254e494e1c8c21475c140e549865 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Tue, 17 Jul 2012 17:34:30 +0200 Subject: [PATCH] Cleaned up CMakeLists.txt. --- src/CMakeLists.txt | 27 ++++++++++++--------------- src/MeshTools/CMakeLists.txt | 12 ++++-------- src/Physics/CMakeLists.txt | 3 +-- src/Primitives/CMakeLists.txt | 3 +-- src/Shaders/CMakeLists.txt | 9 ++++----- 5 files changed, 22 insertions(+), 32 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c88df8331..ee656275f 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,9 +1,9 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -pedantic -std=c++0x -fvisibility=hidden") +# If targeting GLES, save it into configuration header if(TARGET_GLES) set(MAGNUM_TARGET_GLES 1) endif() - configure_file(${CMAKE_CURRENT_SOURCE_DIR}/magnumConfigure.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/magnumConfigure.h) @@ -27,37 +27,34 @@ set(Magnum_SRCS TypeTraits.cpp Trade/AbstractImporter.cpp - Trade/MeshData.cpp -) + Trade/MeshData.cpp) add_library(MagnumObjects OBJECT ${Magnum_SRCS}) # Files shared between main library and math unit test library set(MagnumMath_SRCS - Math/Math.cpp -) + Math/Math.cpp) add_library(MagnumMathObjects OBJECT ${MagnumMath_SRCS}) +# Files compiled with different flags for main library and unit test library +set(Magnum_GracefulAssert_SRCS + Object.cpp) + # Set shared library flags for the objects, as they will be part of shared lib # TODO: fix when CMake sets target_EXPORTS for OBJECT targets as well set_target_properties(MagnumObjects MagnumMathObjects PROPERTIES COMPILE_FLAGS "-DMagnumObjects_EXPORTS ${CMAKE_SHARED_LIBRARY_CXX_FLAGS}") -# Files compiled with different flags for main library and unit test library -set(Magnum_GracefulAssert_SRCS - Object.cpp -) - # Main library add_library(Magnum SHARED $ $ - ${Magnum_GracefulAssert_SRCS} -) + ${Magnum_GracefulAssert_SRCS}) target_link_libraries(Magnum ${CORRADE_UTILITY_LIBRARY} ${CORRADE_PLUGINMANAGER_LIBRARY}) if(NOT TARGET_GLES) target_link_libraries(Magnum ${OPENGL_gl_LIBRARY} ${GLEW_LIBRARY}) else() target_link_libraries(Magnum ${OPENGLES2_LIBRARY}) endif() + install(TARGETS Magnum DESTINATION ${MAGNUM_LIBRARY_INSTALL_DIR}) # Install also configure file @@ -73,11 +70,12 @@ add_subdirectory(Shaders) if(BUILD_TESTS) enable_testing() + include_directories(${QT_INCLUDE_DIR}) + # Library with graceful assert for testing add_library(MagnumTestLib SHARED $ - ${Magnum_GracefulAssert_SRCS} - ) + ${Magnum_GracefulAssert_SRCS}) set_target_properties(MagnumTestLib PROPERTIES COMPILE_FLAGS -DCORRADE_GRACEFUL_ASSERT) target_link_libraries(MagnumTestLib ${CORRADE_UTILITY_LIBRARY} ${CORRADE_PLUGINMANAGER_LIBRARY}) if(NOT TARGET_GLES) @@ -86,6 +84,5 @@ if(BUILD_TESTS) target_link_libraries(MagnumTestLib ${OPENGLES2_LIBRARY}) endif() - include_directories(${QT_INCLUDE_DIR}) add_subdirectory(Test) endif() diff --git a/src/MeshTools/CMakeLists.txt b/src/MeshTools/CMakeLists.txt index 2d33389d8..bc2605a7d 100644 --- a/src/MeshTools/CMakeLists.txt +++ b/src/MeshTools/CMakeLists.txt @@ -1,7 +1,6 @@ # Files shared between main library and unit test library set(MagnumMeshTools_SRCS - Tipsify.cpp -) + Tipsify.cpp) add_library(MagnumMeshToolsObjects OBJECT ${MagnumMeshTools_SRCS}) # Set shared library flags for the objects, as they will be part of shared lib @@ -11,14 +10,12 @@ set_target_properties(MagnumMeshToolsObjects PROPERTIES COMPILE_FLAGS "-DMagnumM # Files compiled with different flags for main library and unit test library set(MagnumMeshTools_GracefulAssert_SRCS FlipNormals.cpp - GenerateFlatNormals.cpp -) + GenerateFlatNormals.cpp) # Main library add_library(MagnumMeshTools SHARED $ - ${MagnumMeshTools_GracefulAssert_SRCS} -) + ${MagnumMeshTools_GracefulAssert_SRCS}) target_link_libraries(MagnumMeshTools Magnum) install(TARGETS MagnumMeshTools DESTINATION ${MAGNUM_LIBRARY_INSTALL_DIR}) @@ -29,8 +26,7 @@ if(BUILD_TESTS) # Library with graceful assert for testing add_library(MagnumMeshToolsTestLib SHARED $ - ${MagnumMeshTools_GracefulAssert_SRCS} - ) + ${MagnumMeshTools_GracefulAssert_SRCS}) set_target_properties(MagnumMeshToolsTestLib PROPERTIES COMPILE_FLAGS -DCORRADE_GRACEFUL_ASSERT) target_link_libraries(MagnumMeshToolsTestLib Magnum) diff --git a/src/Physics/CMakeLists.txt b/src/Physics/CMakeLists.txt index 0f3833d7a..f1338baf2 100644 --- a/src/Physics/CMakeLists.txt +++ b/src/Physics/CMakeLists.txt @@ -5,8 +5,7 @@ set(MagnumPhysics_SRCS Line.cpp Plane.cpp ShapeGroup.cpp - Sphere.cpp -) + Sphere.cpp) add_library(MagnumPhysics SHARED ${MagnumPhysics_SRCS}) diff --git a/src/Primitives/CMakeLists.txt b/src/Primitives/CMakeLists.txt index 17a80f388..8a75a54ac 100644 --- a/src/Primitives/CMakeLists.txt +++ b/src/Primitives/CMakeLists.txt @@ -3,8 +3,7 @@ set(MagnumPrimitives_SRCS Cube.cpp Icosphere.cpp Plane.cpp - UVSphere.cpp -) + UVSphere.cpp) add_library(MagnumPrimitives STATIC ${MagnumPrimitives_SRCS}) target_link_libraries(MagnumPrimitives Magnum) diff --git a/src/Shaders/CMakeLists.txt b/src/Shaders/CMakeLists.txt index 8ee7c2b6e..17287f68a 100644 --- a/src/Shaders/CMakeLists.txt +++ b/src/Shaders/CMakeLists.txt @@ -1,10 +1,9 @@ -corrade_add_resource(Shaders MagnumShaders PhongShader.frag PhongShader.vert) -set(Shaders_SRCS +corrade_add_resource(MagnumShaders_RCS MagnumShaders PhongShader.frag PhongShader.vert) +set(MagnumShaders_SRCS PhongShader.cpp - ${Shaders} -) + ${MagnumShaders_RCS}) -add_library(MagnumShaders SHARED ${Shaders_SRCS}) +add_library(MagnumShaders SHARED ${MagnumShaders_SRCS}) target_link_libraries(MagnumShaders Magnum)