diff --git a/Apps/Benches/CMakeLists.txt b/Apps/Benches/CMakeLists.txt index 51491249f6274464f164a69290595918b1eeed11..eff478c31f998eefc9b427008906a62401e41f8d 100644 --- a/Apps/Benches/CMakeLists.txt +++ b/Apps/Benches/CMakeLists.txt @@ -1,12 +1,10 @@ cmake_minimum_required(VERSION 2.8) -project(examples) +project(benches) -SET(CMAKE_BUILD_TYPE Release) +#SET(CMAKE_BUILD_TYPE Release) #SET(CMAKE_BUILD_TYPE Debug) - - -SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNOTOPOWARNING") +#SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNOTOPOWARNING") # define includes path @@ -17,18 +15,18 @@ include_directories( ) # define libs path -IF(WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/$(ConfigurationName) ${Boost_LIBRARY_DIRS} ) -ELSE(WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/Release ) -ENDIF(WIN32) +#IF(WIN32) +# link_directories( ${CGoGN_ROOT_DIR}/lib/$(ConfigurationName) ${Boost_LIBRARY_DIRS} ) +#ELSE(WIN32) +# link_directories( ${CGoGN_ROOT_DIR}/lib/Release ) +#ENDIF(WIN32) add_executable(bench_trav bench_trav.cpp ) -target_link_libraries( bench_trav ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) +target_link_libraries( bench_trav ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) add_executable(bench_remesh bench_remesh.cpp ) -target_link_libraries( bench_remesh ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) +target_link_libraries( bench_remesh ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) add_executable(bench_compact bench_compact.cpp ) -target_link_libraries( bench_compact ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) +target_link_libraries( bench_compact ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) diff --git a/Apps/CMakeLists.txt b/Apps/CMakeLists.txt index d66653ce5b988cff83268274e3c83436d0761394..2487b968afbb5639262ebf4f22bdffeb7b3c129a 100644 --- a/Apps/CMakeLists.txt +++ b/Apps/CMakeLists.txt @@ -1,44 +1,67 @@ -SET(EXECUTABLE_OUTPUT_PATH ${CGoGN_ROOT_DIR}/bin) IF (ONELIB) - SET(CGoGN_LIBS_R cgogn) + SET(CGoGN_LIBS cgogn) ELSE (ONELIB) - SET(CGoGN_LIBS_R topology algo container utils) + SET(CGoGN_LIBS topology algo container utils) ENDIF (ONELIB) -IF(WIN32) - # libs have same name but in different place in Visual - IF (ONELIB) - SET(CGoGN_LIBS_D cgogn) - ELSE (ONELIB) - SET(CGoGN_LIBS_D topology algo container utils) - ENDIF (ONELIB) -ELSE(WIN32) - IF (ONELIB) - SET(CGoGN_LIBS_D cgognD) - ELSE (ONELIB) - SET(CGoGN_LIBS_D topologyD algoD containerD utilsD) - ENDIF (ONELIB) - - IF (WITH_QT) - add_subdirectory(Examples/Debug) - ENDIF (WITH_QT) -ENDIF(WIN32) - -IF (WITH_QT) + +#IF(${CMAKE_BUILD_TYPE} MATCHES Release|release|RELEASE) +# SET(CGoGN_LIBS ${CGoGN_LIBS_R}) +#ELSE() +# SET(CGoGN_LIBS ${CGoGN_LIBS_D}) +#ENDIF() + + +#IF(WIN32) +# link_directories(${CGoGN_ROOT_DIR}/lib/$(ConfigurationName) +# ${Boost_LIBRARY_DIRS}) +#ELSE(WIN32) + +SET(EXECUTABLE_OUTPUT_PATH ${CGoGN_ROOT_DIR}/bin/${CMAKE_BUILD_TYPE} ) + +link_directories( ${CGoGN_ROOT_DIR}/lib/${CMAKE_BUILD_TYPE} ) + +include_directories( + ${CGoGN_ROOT_DIR}/include + ${CGoGN_EXT_INCLUDES}) + + + +IF (COMPILE_SANDBOX) + add_subdirectory(SandBox) +ENDIF() + +IF (COMPILE_EXAMPLES AND WITH_QT) + add_subdirectory(Examples) +ENDIF() + +IF (COMPILE_TUTOS) add_subdirectory(Tuto) - add_subdirectory(Examples/Release) - IF (NOT DONOT_COMPILE_SANDBOX) - add_subdirectory(SandBox) - ENDIF (NOT DONOT_COMPILE_SANDBOX) -ENDIF (WITH_QT) +ENDIF() + +IF (COMPILE_BENCHES) + add_subdirectory(Benches) +ENDIF() + +IF (COMPILE_TESTS) + add_subdirectory(Tests) +ENDIF() + -add_subdirectory(Tests) +#IF (WITH_QT) +# add_subdirectory(Tuto) +# add_subdirectory(Examples) +# IF (NOT DONOT_COMPILE_SANDBOX) +# add_subdirectory(SandBox) +# ENDIF (NOT DONOT_COMPILE_SANDBOX) +#ENDIF (WITH_QT) -add_subdirectory(Benches) +#add_subdirectory(Tests) +#add_subdirectory(Benches) -add_subdirectory(Tuto/Traversals) -add_subdirectory(Tuto/Attributes) -add_subdirectory(Tuto/Markers) -add_subdirectory(Tuto/Boundary) -add_subdirectory(Tuto/Modelling) +#add_subdirectory(Tuto/Traversals) +#add_subdirectory(Tuto/Attributes) +#add_subdirectory(Tuto/Markers) +#add_subdirectory(Tuto/Boundary) +#add_subdirectory(Tuto/Modelling) diff --git a/Apps/Examples/CMakeLists.txt b/Apps/Examples/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..4a4919a0560c8913616ba3b6e0bd2cfc385bb587 --- /dev/null +++ b/Apps/Examples/CMakeLists.txt @@ -0,0 +1,72 @@ +cmake_minimum_required(VERSION 2.8) + +project(examples) + +#SET(CMAKE_BUILD_TYPE Release) +#SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNOTOPOWARNING") + + +# define includes path +include_directories(${CMAKE_CURRENT_BINARY_DIR}) + +# define libs path +#IF(WIN32) +# link_directories( ${CGoGN_ROOT_DIR}/lib/$(ConfigurationName) ${Boost_LIBRARY_DIRS} ) +#ELSE(WIN32) +# link_directories( ${CGoGN_ROOT_DIR}/lib/Release ) +#ENDIF(WIN32) + + +#define exec to compile + +QT4_WRAP_CPP( frame_manip_moc frame_manip.h ) +add_executable( frame_manip frame_manip.cpp ${frame_manip_moc} ) +target_link_libraries( frame_manip ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + +QT4_WRAP_CPP( texturesExample_moc texturesExample.h ) +add_executable( texturesExample texturesExample.cpp ${texturesExample_moc} ) +target_link_libraries( texturesExample ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + +QT4_WRAP_CPP(simpleMap3_moc simpleMap3.h) +add_executable( simpleMap3 simpleMap3.cpp ${simpleMap3_moc} ) +target_link_libraries( simpleMap3 ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + +QT4_WRAP_CPP( simpleGMap2_moc simpleGMap2.h ) +add_executable( simpleGMap2 simpleGMap2.cpp ${simpleGMap2_moc} ) +target_link_libraries( simpleGMap2 ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + +QT4_WRAP_CPP( simpleGMap3_moc simpleGMap3.h ) +add_executable( simpleGMap3 simpleGMap3.cpp ${simpleGMap3_moc} ) +target_link_libraries( simpleGMap3 ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + +QT4_WRAP_CPP( extrusionView_moc extrusionView.h ) +add_executable( extrusionView extrusionView.cpp ${extrusionView_moc} ) +target_link_libraries( extrusionView ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + +QT4_WRAP_UI( viewer_ui viewer.ui ) +QT4_WRAP_CPP( viewer_moc viewer.h ) +add_executable( viewer viewer.cpp ${viewer_moc} ${viewer_ui} ) +target_link_libraries( viewer ${CGoGN_LIBS} ${NUMERICAL_LIBS} ${CGoGN_EXT_LIBS} ) + +QT4_WRAP_UI( clipping_ui clipping.ui ) +QT4_WRAP_CPP( clipping_moc clipping.h ) +add_executable( clipping clipping.cpp ${clipping_ui} ${clipping_moc} ) +target_link_libraries( clipping ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + +QT4_WRAP_UI( volumeExplorer_ui volumeExplorer.ui ) +QT4_WRAP_CPP( volumeExplorer_moc volumeExplorer.h ) +add_executable( volumeExplorer volumeExplorer.cpp ${volumeExplorer_ui} ${volumeExplorer_moc} ) +target_link_libraries( volumeExplorer ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + +QT4_WRAP_UI( mcmesh_ui mcmesh.ui ) +QT4_WRAP_CPP( mcmesh_moc mcmesh.h ) +add_executable( mcmesh mcmesh.cpp ${mcmesh_moc} ${mcmesh_ui} ) +target_link_libraries( mcmesh ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + +QT4_WRAP_CPP( concave_rendering_moc concave_rendering.h ) +add_executable( concave_rendering concave_rendering.cpp ${concave_rendering_moc} ${concave_rendering_ui} ) +target_link_libraries( concave_rendering ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + +QT4_WRAP_CPP( viewerOBJ_moc viewerOBJ.h ) +add_executable( viewerOBJ viewerOBJ.cpp ${viewerOBJ_moc} ) +target_link_libraries( viewerOBJ ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) diff --git a/Apps/Examples/Debug/CMakeLists.txt b/Apps/Examples/Debug/CMakeLists.txt deleted file mode 100644 index c8645c675c8f182e7757b9c6fea01cef5e246700..0000000000000000000000000000000000000000 --- a/Apps/Examples/Debug/CMakeLists.txt +++ /dev/null @@ -1,79 +0,0 @@ -cmake_minimum_required(VERSION 2.8) - -project(examplesD) - -SET(CMAKE_BUILD_TYPE Debug) - -# define includes path -include_directories( - ${CMAKE_CURRENT_BINARY_DIR} - ${CGoGN_ROOT_DIR}/include - ${CGoGN_EXT_INCLUDES} -) - -# define libs path -link_directories( - ${CGoGN_ROOT_DIR}/lib/Debug - ${CGoGN_ROOT_DIR}/lib/Release - ${Boost_LIBRARY_DIRS} -) -IF(WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/$(ConfigurationName) - ${Boost_LIBRARY_DIRS}) -ELSE(WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/Debug ${CGoGN_ROOT_DIR}/lib/Release ) -ENDIF(WIN32) - -#define exec to compile - -QT4_WRAP_CPP(frame_manip_moc ../frame_manip.h) -add_executable( frame_manipD ../frame_manip.cpp ${frame_manip_moc}) -target_link_libraries( frame_manipD ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP(texturesExample_moc ../texturesExample.h) -add_executable( texturesExampleD ../texturesExample.cpp ${texturesExample_moc} ) -target_link_libraries( texturesExampleD ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP(simpleMap3_moc ../simpleMap3.h) -add_executable( simpleMap3D ../simpleMap3.cpp ${simpleMap3_moc} ) -target_link_libraries( simpleMap3D ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP(simpleGMap2_moc ../simpleGMap2.h) -add_executable( simpleGMap2D ../simpleGMap2.cpp ${simpleGMap2_moc} ) -target_link_libraries( simpleGMap2D ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP(simpleGMap3_moc ../simpleGMap3.h) -add_executable( simpleGMap3D ../simpleGMap3.cpp ${simpleGMap3_moc} ) -target_link_libraries( simpleGMap3D ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP(extrusionView_moc ../extrusionView.h) -add_executable( extrusionViewD ../extrusionView.cpp ${extrusionView_moc}) -target_link_libraries( extrusionViewD ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_UI( viewer_ui ../viewer.ui ) -QT4_WRAP_CPP( viewer_moc ../viewer.h ) -add_executable( viewerD ../viewer.cpp ${viewer_moc} ${viewer_ui}) -target_link_libraries( viewerD ${CGoGN_LIBS_D} ${NUMERICAL_LIBS} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_UI( clipping_ui ../clipping.ui ) -QT4_WRAP_CPP( clipping_moc ../clipping.h ) -add_executable( clippingD ../clipping.cpp ${clipping_ui} ${clipping_moc}) -target_link_libraries( clippingD ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_UI( volumeExplorer_ui ../volumeExplorer.ui ) -QT4_WRAP_CPP( volumeExplorer_moc ../volumeExplorer.h ) -add_executable( volumeExplorerD ../volumeExplorer.cpp ${volumeExplorer_ui} ${volumeExplorer_moc}) -target_link_libraries( volumeExplorerD ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_UI( mcmesh_ui ../mcmesh.ui ) -QT4_WRAP_CPP( mcmesh_moc ../mcmesh.h ) -add_executable( mcmeshD ../mcmesh.cpp ${mcmesh_moc} ${mcmesh_ui} ) -target_link_libraries( mcmeshD ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP( concave_rendering_moc ../concave_rendering.h ) -add_executable( concave_renderingD ../concave_rendering.cpp ${concave_rendering_moc} ${concave_rendering_ui} ) -target_link_libraries( concave_renderingD ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP( viewerOBJ_moc ../viewerOBJ.h ) -add_executable( viewerOBJD ../viewerOBJ.cpp ${viewerOBJ_moc} ) -target_link_libraries( viewerOBJD ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) diff --git a/Apps/Examples/Release/CMakeLists.txt b/Apps/Examples/Release/CMakeLists.txt deleted file mode 100644 index 1e5c8b73755fe2938e0d2675c94d235873b4cff8..0000000000000000000000000000000000000000 --- a/Apps/Examples/Release/CMakeLists.txt +++ /dev/null @@ -1,76 +0,0 @@ -cmake_minimum_required(VERSION 2.8) - -project(examples) - -SET(CMAKE_BUILD_TYPE Release) -SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNOTOPOWARNING") - - -# define includes path -include_directories( - ${CMAKE_CURRENT_BINARY_DIR} - ${CGoGN_ROOT_DIR}/include - ${CGoGN_EXT_INCLUDES} -) - -# define libs path -IF(WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/$(ConfigurationName) ${Boost_LIBRARY_DIRS} ) -ELSE(WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/Release ) -ENDIF(WIN32) - - -#define exec to compile - -QT4_WRAP_CPP( frame_manip_moc ../frame_manip.h ) -add_executable( frame_manip ../frame_manip.cpp ${frame_manip_moc} ) -target_link_libraries( frame_manip ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP( texturesExample_moc ../texturesExample.h ) -add_executable( texturesExample ../texturesExample.cpp ${texturesExample_moc} ) -target_link_libraries( texturesExample ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP(simpleMap3_moc ../simpleMap3.h) -add_executable( simpleMap3 ../simpleMap3.cpp ${simpleMap3_moc} ) -target_link_libraries( simpleMap3 ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP( simpleGMap2_moc ../simpleGMap2.h ) -add_executable( simpleGMap2 ../simpleGMap2.cpp ${simpleGMap2_moc} ) -target_link_libraries( simpleGMap2 ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP( simpleGMap3_moc ../simpleGMap3.h ) -add_executable( simpleGMap3 ../simpleGMap3.cpp ${simpleGMap3_moc} ) -target_link_libraries( simpleGMap3 ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP( extrusionView_moc ../extrusionView.h ) -add_executable( extrusionView ../extrusionView.cpp ${extrusionView_moc} ) -target_link_libraries( extrusionView ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_UI( viewer_ui ../viewer.ui ) -QT4_WRAP_CPP( viewer_moc ../viewer.h ) -add_executable( viewer ../viewer.cpp ${viewer_moc} ${viewer_ui} ) -target_link_libraries( viewer ${CGoGN_LIBS_R} ${NUMERICAL_LIBS} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_UI( clipping_ui ../clipping.ui ) -QT4_WRAP_CPP( clipping_moc ../clipping.h ) -add_executable( clipping ../clipping.cpp ${clipping_ui} ${clipping_moc} ) -target_link_libraries( clipping ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_UI( volumeExplorer_ui ../volumeExplorer.ui ) -QT4_WRAP_CPP( volumeExplorer_moc ../volumeExplorer.h ) -add_executable( volumeExplorer ../volumeExplorer.cpp ${volumeExplorer_ui} ${volumeExplorer_moc} ) -target_link_libraries( volumeExplorer ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_UI( mcmesh_ui ../mcmesh.ui ) -QT4_WRAP_CPP( mcmesh_moc ../mcmesh.h ) -add_executable( mcmesh ../mcmesh.cpp ${mcmesh_moc} ${mcmesh_ui} ) -target_link_libraries( mcmesh ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP( concave_rendering_moc ../concave_rendering.h ) -add_executable( concave_rendering ../concave_rendering.cpp ${concave_rendering_moc} ${concave_rendering_ui} ) -target_link_libraries( concave_rendering ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP( viewerOBJ_moc ../viewerOBJ.h ) -add_executable( viewerOBJ ../viewerOBJ.cpp ${viewerOBJ_moc} ) -target_link_libraries( viewerOBJ ${CGoGN_LIBS_R} ${CGoGN_EXT_LIBS} ) diff --git a/Apps/SandBox/CMakeLists.txt b/Apps/SandBox/CMakeLists.txt index a9784c384452edc40c3760a228eb9973fd181eb0..1af8b576aa265089cb7ab072d9ff1eb8e05a8d64 100644 --- a/Apps/SandBox/CMakeLists.txt +++ b/Apps/SandBox/CMakeLists.txt @@ -3,53 +3,53 @@ cmake_minimum_required(VERSION 2.8) project(SandBox) -SET (CMAKE_BUILD_TYPE Debug) -SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNOTOPOWARNING") +#SET (CMAKE_BUILD_TYPE Debug) +#SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNOTOPOWARNING") -include_directories( - ${CMAKE_CURRENT_BINARY_DIR} - ${CGoGN_ROOT_DIR}/include - ${CGoGN_EXT_INCLUDES} -) +include_directories(${CMAKE_CURRENT_BINARY_DIR}) +# ${CGoGN_ROOT_DIR}/include +# ${CGoGN_EXT_INCLUDES}) # define libs path -IF(WIN32) - link_directories(${CGoGN_ROOT_DIR}/lib/$(ConfigurationName) - ${Boost_LIBRARY_DIRS}) -ELSE(WIN32) - link_directories(${CGoGN_ROOT_DIR}/lib/Release ${CGoGN_ROOT_DIR}/lib/Debug) -ENDIF(WIN32) +#IF(WIN32) +# link_directories(${CGoGN_ROOT_DIR}/lib/$(ConfigurationName) +# ${Boost_LIBRARY_DIRS}) +#ELSE(WIN32) +# link_directories(${CGoGN_ROOT_DIR}/lib/Release ${CGoGN_ROOT_DIR}/lib/Debug) +#ENDIF(WIN32) #define exec to compile add_executable(multi_att multi_att.cpp) -target_link_libraries(multi_att ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS}) +target_link_libraries(multi_att ${CGoGN_LIBS} ${CGoGN_EXT_LIBS}) -QT4_WRAP_CPP(tilings_moc tilings.h) -add_executable(tilings tilings.cpp ${tilings_moc}) -target_link_libraries(tilings ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS}) +IF (WITH_QT) + QT4_WRAP_CPP(tilings_moc tilings.h) + add_executable(tilings tilings.cpp ${tilings_moc}) + target_link_libraries(tilings ${CGoGN_LIBS} ${CGoGN_EXT_LIBS}) -QT4_WRAP_UI( test_traversor2_ui test_traversor2.ui ) -QT4_WRAP_CPP(test_traversor2_moc test_traversor2.h) -add_executable(test_traversor2 test_traversor2.cpp ${test_traversor2_ui} ${test_traversor2_moc}) -target_link_libraries(test_traversor2 ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS}) + QT4_WRAP_UI( test_traversor2_ui test_traversor2.ui ) + QT4_WRAP_CPP(test_traversor2_moc test_traversor2.h) + add_executable(test_traversor2 test_traversor2.cpp ${test_traversor2_ui} ${test_traversor2_moc}) + target_link_libraries(test_traversor2 ${CGoGN_LIBS} ${CGoGN_EXT_LIBS}) -QT4_WRAP_UI( testPlaneCutting_ui testPlaneCutting.ui ) -QT4_WRAP_CPP(testPlaneCutting_moc testPlaneCutting.h) -add_executable(testPlaneCutting testPlaneCutting.cpp ${testPlaneCutting_ui} ${testPlaneCutting_moc}) -target_link_libraries(testPlaneCutting ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS}) + QT4_WRAP_UI( testPlaneCutting_ui testPlaneCutting.ui ) + QT4_WRAP_CPP(testPlaneCutting_moc testPlaneCutting.h) + add_executable(testPlaneCutting testPlaneCutting.cpp ${testPlaneCutting_ui} ${testPlaneCutting_moc}) + target_link_libraries(testPlaneCutting ${CGoGN_LIBS} ${CGoGN_EXT_LIBS}) +ENDIF() # Example with Qt # #QT4_WRAP_CPP(tuto1_moc tuto1.h) #add_executable( tuto1 tuto1.cpp ${tuto1_moc}) -#target_link_libraries( tuto1 ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) +#target_link_libraries( tuto1 ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) #QT4_WRAP_CPP(tuto_mt_moc tuto_mt.h) #add_executable( tuto_mt tuto_mt.cpp ${tuto_mt_moc}) #target_link_libraries( tuto_mt -# ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ${Boost_THREAD_LIBRARY}) +# ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ${Boost_THREAD_LIBRARY}) diff --git a/Apps/Tests/CMakeLists.txt b/Apps/Tests/CMakeLists.txt index 8b9c746d3b9812c728254ac883d081f42969244c..afb0956ff2737efd4b08bdb5375416f80e5ec81a 100644 --- a/Apps/Tests/CMakeLists.txt +++ b/Apps/Tests/CMakeLists.txt @@ -1,56 +1,55 @@ cmake_minimum_required(VERSION 2.6) -project(testing_debug) +project(testing) -SET(CMAKE_BUILD_TYPE Debug) +#SET(CMAKE_BUILD_TYPE Debug) -include_directories( - ${CMAKE_CURRENT_BINARY_DIR} - ${CGoGN_ROOT_DIR}/include - ${CGoGN_EXT_INCLUDES} -) +include_directories(${CMAKE_CURRENT_BINARY_DIR}) +# ${CGoGN_ROOT_DIR}/include +# ${CGoGN_EXT_INCLUDES} +#) -IF(WIN32) - link_directories( - ${CGoGN_ROOT_DIR}/lib/$(ConfigurationName) - ${Boost_LIBRARY_DIRS} ) -ELSE(WIN32) - link_directories( - ${CGoGN_ROOT_DIR}/lib/Debug - ${CGoGN_ROOT_DIR}/lib/Release ) -ENDIF(WIN32) +#IF(WIN32) +# link_directories( +# ${CGoGN_ROOT_DIR}/lib/$(ConfigurationName) +# ${Boost_LIBRARY_DIRS} ) +#ELSE(WIN32) +# link_directories( +# ${CGoGN_ROOT_DIR}/lib/Debug +# ${CGoGN_ROOT_DIR}/lib/Release ) +#ENDIF(WIN32) #define exec to compile -add_executable( Geom_orientationD ./Geom_orientation.cpp) -target_link_libraries( Geom_orientationD - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS}) +add_executable( Geom_orientation ./Geom_orientation.cpp) +target_link_libraries( Geom_orientation + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS}) -add_executable( Geom_inclusionD ./Geom_inclusion.cpp) -target_link_libraries( Geom_inclusionD - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS}) +add_executable( Geom_inclusion ./Geom_inclusion.cpp) +target_link_libraries( Geom_inclusion + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS}) -add_executable( Geom_intersectionD ./Geom_intersection.cpp) -target_link_libraries( Geom_intersectionD - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS}) +add_executable( Geom_intersection ./Geom_intersection.cpp) +target_link_libraries( Geom_intersection + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS}) add_executable( loadSave ./loadSave.cpp) target_link_libraries( loadSave - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS}) + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS}) add_executable( copyfrom ./copyfrom.cpp) target_link_libraries( copyfrom - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS}) + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS}) add_executable( movefrom ./movefrom.cpp) target_link_libraries( movefrom - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS}) + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS}) add_executable( compact ./compact.cpp) target_link_libraries( compact - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS}) + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS}) add_executable( reusememory ./reusememory.cpp) target_link_libraries( reusememory - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS}) + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS}) diff --git a/Apps/Tuto/CMakeLists.txt b/Apps/Tuto/CMakeLists.txt index fd80c96b649cec2a482ad3c3dfc0ca60703b328a..d8cf5be4ec8d0d36b1969749fed0a4fa6500895e 100644 --- a/Apps/Tuto/CMakeLists.txt +++ b/Apps/Tuto/CMakeLists.txt @@ -3,92 +3,92 @@ cmake_minimum_required(VERSION 2.8) project(Tutos) -SET (CMAKE_BUILD_TYPE Debug) -SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNOTOPOWARNING") +#SET (CMAKE_BUILD_TYPE Debug) +#SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNOTOPOWARNING") -include_directories( - ${CMAKE_CURRENT_BINARY_DIR} - ${CGoGN_ROOT_DIR}/include - ${CGoGN_EXT_INCLUDES} -) +include_directories(${CMAKE_CURRENT_BINARY_DIR}) +# ${CGoGN_ROOT_DIR}/include +# ${CGoGN_EXT_INCLUDES}) # define libs path -IF(WIN32) - link_directories(${CGoGN_ROOT_DIR}/lib/$(ConfigurationName) - ${Boost_LIBRARY_DIRS}) -ELSE(WIN32) - link_directories(${CGoGN_ROOT_DIR}/lib/Release ${CGoGN_ROOT_DIR}/lib/Debug) -ENDIF(WIN32) +#IF(WIN32) +# link_directories(${CGoGN_ROOT_DIR}/lib/$(ConfigurationName) +# ${Boost_LIBRARY_DIRS}) +#ELSE(WIN32) +# link_directories(${CGoGN_ROOT_DIR}/lib/Release ${CGoGN_ROOT_DIR}/lib/Debug) +#ENDIF(WIN32) #define exec to compile - -QT4_WRAP_CPP(tuto1_moc tuto1.h) -add_executable( tuto1 tuto1.cpp ${tuto1_moc}) -target_link_libraries( tuto1 - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_UI( tuto2_ui tuto2.ui ) -QT4_WRAP_CPP(tuto2_moc tuto2.h) -add_executable( tuto2 tuto2.cpp tuto2.h ${tuto2_ui} ${tuto2_moc}) -target_link_libraries( tuto2 - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_CPP(tuto3_moc tuto3.h) -add_executable( tuto3 tuto3.cpp ${tuto3_moc}) -target_link_libraries( tuto3 - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_UI( tuto4_ui tuto4.ui ) -QT4_WRAP_CPP(tuto4_moc tuto4.h) -add_executable( tuto4 tuto4.cpp ${tuto4_ui} ${tuto4_moc}) -target_link_libraries( tuto4 - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_UI( tuto5_ui tuto5.ui ) -QT4_WRAP_CPP(tuto5_moc tuto5.h) -add_executable( tuto5 tuto5.cpp ${tuto5_ui} ${tuto5_moc}) -target_link_libraries( tuto5 - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) - +IF (WITH_QT) + + QT4_WRAP_CPP(tuto1_moc tuto1.h) + add_executable( tuto1 tuto1.cpp ${tuto1_moc}) + target_link_libraries( tuto1 + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + + QT4_WRAP_UI( tuto2_ui tuto2.ui ) + QT4_WRAP_CPP(tuto2_moc tuto2.h) + add_executable( tuto2 tuto2.cpp tuto2.h ${tuto2_ui} ${tuto2_moc}) + target_link_libraries( tuto2 + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + + QT4_WRAP_CPP(tuto3_moc tuto3.h) + add_executable( tuto3 tuto3.cpp ${tuto3_moc}) + target_link_libraries( tuto3 + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + + QT4_WRAP_UI( tuto4_ui tuto4.ui ) + QT4_WRAP_CPP(tuto4_moc tuto4.h) + add_executable( tuto4 tuto4.cpp ${tuto4_ui} ${tuto4_moc}) + target_link_libraries( tuto4 + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + + QT4_WRAP_UI( tuto5_ui tuto5.ui ) + QT4_WRAP_CPP(tuto5_moc tuto5.h) + add_executable( tuto5 tuto5.cpp ${tuto5_ui} ${tuto5_moc}) + target_link_libraries( tuto5 + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + QT4_WRAP_UI( tuto_orbits_ui tuto_orbits.ui ) + QT4_WRAP_CPP(tuto_orbits_moc tuto_orbits.h) + add_executable( tuto_orbits tuto_orbits.cpp ${tuto_orbits_ui} ${tuto_orbits_moc}) + target_link_libraries( tuto_orbits + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) - -QT4_WRAP_UI( tuto_orbits_ui tuto_orbits.ui ) -QT4_WRAP_CPP(tuto_orbits_moc tuto_orbits.h) -add_executable( tuto_orbits tuto_orbits.cpp ${tuto_orbits_ui} ${tuto_orbits_moc}) -target_link_libraries( tuto_orbits - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) + QT4_WRAP_CPP(tuto_histo_moc tuto_histo.h) + add_executable( tuto_histo tuto_histo.cpp tuto_histo.h ${tuto_histo_ui} ${tuto_histo_moc}) + target_link_libraries( tuto_histo + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + +ENDIF() #QT4_WRAP_UI( show_traversors_ui show_traversors.ui ) #QT4_WRAP_CPP(show_traversors_moc show_traversors.h) #add_executable( show_traversors show_traversors.cpp ${show_traversors_ui} ${show_traversors_moc}) #target_link_libraries( show_traversors -# ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) +# ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) add_executable( tuto_subdivision tuto_subdivision.cpp) target_link_libraries( tuto_subdivision - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) add_executable( tuto_dual2 tuto_dual2.cpp) target_link_libraries( tuto_dual2 - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) add_executable( tuto_dual3 tuto_dual3.cpp) target_link_libraries( tuto_dual3 - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) + ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) #QT4_WRAP_CPP(tp_master_moc tp_master.h) #add_executable( tp_master tp_master.cpp ${tp_master_moc}) #target_link_libraries( tp_master -# ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) +# ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ) + -QT4_WRAP_CPP(tuto_histo_moc tuto_histo.h) -add_executable( tuto_histo tuto_histo.cpp tuto_histo.h ${tuto_histo_ui} ${tuto_histo_moc}) -target_link_libraries( tuto_histo - ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ) #BOOST_LIBS macro: allow using compiled boost in windows (see readme) @@ -100,5 +100,5 @@ target_link_libraries( tuto_histo #QT4_WRAP_CPP(tuto_mt_moc tuto_mt.h) #add_executable( tuto_mt tuto_mt.cpp ${tuto_mt_moc}) #target_link_libraries( tuto_mt -# ${CGoGN_LIBS_D} ${CGoGN_EXT_LIBS} ${Boost_THREAD_LIBRARY}) +# ${CGoGN_LIBS} ${CGoGN_EXT_LIBS} ${Boost_THREAD_LIBRARY}) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3706806683a9bd7457d5f0f273b1200fcfa9da4e..29c6ebb6be77886d1e15164628c78610c78d9e8b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,19 +8,40 @@ SET ( CGoGN_ROOT_DIR ${CMAKE_SOURCE_DIR} ) SET ( CMAKE_MODULE_PATH ${CGoGN_ROOT_DIR}/cmake_modules/ ) + + +IF (NOT (${CMAKE_BUILD_TYPE} MATCHES "Debug|Release")) + IF (${CMAKE_CURRENT_BINARY_DIR} MATCHES "(.*)Debug|(.*)debug|(.*)DEBUG") + SET(CMAKE_BUILD_TYPE "Debug") + ELSE() + SET(CMAKE_BUILD_TYPE "Release") + ENDIF() +ENDIF() + # for shared or not shared SET ( BUILD_SHARED_LIBS OFF CACHE BOOL "if used all library are build as shared type (.so/.dylib/.dll)" ) -SET ( WITH_ASSIMP ON CACHE BOOL "build CGoGN with Assimp" ) -SET ( WITH_ZINRI ON CACHE BOOL "build CGoGN with Zinri lib" ) +IF(EXISTS "${CGoGN_ROOT_DIR}/ThirdParty/include/Assimp") + SET ( WITH_ASSIMP ON CACHE BOOL "build CGoGN with Assimp" ) +ELSE() + SET ( WITH_ASSIMP OFF CACHE BOOL "build CGoGN with Assimp" ) +ENDIF() + +IF(EXISTS "${CGoGN_ROOT_DIR}/ThirdParty/include/Zinri") + SET ( WITH_ZINRI ON CACHE BOOL "build CGoGN with Zinri lib" ) +ELSE() + SET ( WITH_ZINRI OFF CACHE BOOL "build CGoGN with Zinri lib" ) +ENDIF() + SET ( WITH_QT ON CACHE BOOL "build CGoGN with Qt lib" ) SET ( DESIRED_QT_VERSION "4" CACHE STRING "4: QT4/ 5 not yet implemented" ) -SET ( DONOT_COMPILE_SANDBOX OFF CACHE BOOL "do not compile the SandBox directory" ) - +SET ( COMPILE_EXAMPLES ON CACHE BOOL "compile examples" ) +SET ( COMPILE_TUTOS ON CACHE BOOL "compile tutorials" ) +SET ( COMPILE_TESTS ON CACHE BOOL "compile tests" ) +SET ( COMPILE_BENCHES ON CACHE BOOL "compile benches" ) +SET ( COMPILE_SANDBOX ON CACHE BOOL "compile all in sandbox" ) -# for CGoGN MR -SET ( FORCE_MR "0" CACHE STRING "0: normal mode / 1 multires mode" ) #create one big lib SET ( ONELIB OFF CACHE BOOL "build CGoGN in one lib" ) @@ -38,21 +59,16 @@ find_package(ZLIB REQUIRED) find_package(LibXml2 REQUIRED) find_package(GLEW REQUIRED) +# MESSAGE HERE FOR MORE EASY USER READING +MESSAGE("Building type = " ${CMAKE_BUILD_TYPE} " (for change -DCMAKE_BUILD_TYPE=Release|Debug)" ) + + IF (DEFINED ASSERTON) add_definitions(-DCGOGN_ASSERT_BOOL=${ASSERTON}) ELSE (DEFINED ASSERTON) add_definitions(-DCGOGN_ASSERT_BOOL=false) ENDIF (DEFINED ASSERTON) -IF (FORCE_MR EQUAL 0) - file(WRITE ${CGoGN_ROOT_DIR}/include/cgogn_mr.h "0" ) -ENDIF (FORCE_MR EQUAL 0) - -IF (FORCE_MR EQUAL 1) - add_definitions(-DCGoGN_FORCE_MR=1) - file(WRITE ${CGoGN_ROOT_DIR}/include/cgogn_mr.h "1" ) -ENDIF (FORCE_MR EQUAL 1) - IF (ONELIB) file(WRITE ${CGoGN_ROOT_DIR}/include/cgogn_onelib.h "1" ) ELSE (ONELIB) @@ -106,13 +122,13 @@ ENDIF(WIN32) IF (WITH_ASSIMP) add_definitions(-DWITH_ASSIMP) SET (CGoGN_EXT_LIBS ${CGoGN_EXT_LIBS} assimp) - INSTALL (DIRECTORY ThirdParty/Assimp/include DESTINATION .) +# INSTALL (DIRECTORY ThirdParty/Assimp/include DESTINATION .) ENDIF (WITH_ASSIMP) IF (WITH_ZINRI) add_definitions(-DWITH_ZINRI) SET (CGoGN_EXT_LIBS ${CGoGN_EXT_LIBS} Zinri) - INSTALL (DIRECTORY ThirdParty/Zinri/ DESTINATION include FILES_MATCHING PATTERN "*.h") +# INSTALL (DIRECTORY ThirdParty/Zinri/ DESTINATION include FILES_MATCHING PATTERN "*.h") ENDIF (WITH_ZINRI) IF (WITH_QT) @@ -136,18 +152,15 @@ ENDIF (WITH_GLEWMX) # qq definition specifiques pour mac #IF(APPLE) -# SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DMAC_OSX") +# SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DMAC_OSX") # SET(CMAKE_OSX_ARCHITECTURES x86_64) # SET (CGoGN_EXT_LIBS ${CGoGN_EXT_LIBS} "-framework Foundation -framework cocoa" ) #ENDIF(APPLE) IF(WIN32) - add_subdirectory(Release) - add_subdirectory(${CGoGN_ROOT_DIR}/Apps Apps) set(CMAKE_CONFIGURATION_TYPES Release Debug) set(CMAKE_CONFIGURATION_TYPES "${CMAKE_CONFIGURATION_TYPES}" CACHE STRING "Only Release or Debug" FORCE) -# set(CMAKE_CONFIGURATION_TYPES "Release Debug" CACHE STRING "Only Release or Debug" FORCE) -ELSE(WIN32) +ELSE() SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -fPIC -std=c++11") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Woverride-init -fPIC") # remove the 60000+ "no unused local typedefs" warnings with GCC4.8+ @@ -157,13 +170,14 @@ ELSE(WIN32) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unused-local-typedefs") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-local-typedefs") endif(GCC_VERSION VERSION_GREATER 4.8 OR GCC_VERSION VERSION_EQUAL 4.8) - endif(CMAKE_COMPILER_IS_GNUCXX) - add_subdirectory(Release) - add_subdirectory(Debug) - add_subdirectory(${CGoGN_ROOT_DIR}/Apps Apps) -ENDIF(WIN32) + endif() +ENDIF() + +add_subdirectory(Release) +add_subdirectory(${CGoGN_ROOT_DIR}/Apps Apps) + -INSTALL (DIRECTORY ${CGoGN_ROOT_DIR}/include ${CGoGN_ROOT_DIR}/lib ${CGoGN_ROOT_DIR}/bin DESTINATION .) -INSTALL (DIRECTORY ThirdParty/glm DESTINATION include) -INSTALL (DIRECTORY cmake_modules DESTINATION .) -INSTALL (FILES apps_cmake.txt DESTINATION .) +#INSTALL (DIRECTORY ${CGoGN_ROOT_DIR}/include ${CGoGN_ROOT_DIR}/lib ${CGoGN_ROOT_DIR}/bin DESTINATION .) +#INSTALL (DIRECTORY ThirdParty/glm DESTINATION include) +#INSTALL (DIRECTORY cmake_modules DESTINATION .) +#INSTALL (FILES apps_cmake.txt DESTINATION .) diff --git a/Debug/CMakeLists.txt b/Debug/CMakeLists.txt deleted file mode 100644 index 0b100e5005ed2c964d87f4736e9cdac35a314df4..0000000000000000000000000000000000000000 --- a/Debug/CMakeLists.txt +++ /dev/null @@ -1,124 +0,0 @@ -cmake_minimum_required(VERSION 2.8) - -project(CGoGNDebug) - -SET(CMAKE_BUILD_TYPE Debug) - -IF(WIN32) - SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib) -ELSE(WIN32) - SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib/Debug) -ENDIF(WIN32) - - -include_directories( - ${CMAKE_CURRENT_BINARY_DIR} - ${CGoGN_ROOT_DIR}/include - ${CGoGN_EXT_INCLUDES} -) - - -file( - GLOB_RECURSE - files_topology - ${CGoGN_ROOT_DIR}/src/Topology/*.cpp - ${CGoGN_ROOT_DIR}/include/Topology/*.hpp - ${CGoGN_ROOT_DIR}/include/Topology/*.h -) - -file( - GLOB_RECURSE - files_container - ${CGoGN_ROOT_DIR}/src/Container/*.cpp - ${CGoGN_ROOT_DIR}/include/Container/*.hpp - ${CGoGN_ROOT_DIR}/include/Container/*.h -) - -file( - GLOB_RECURSE - files_algo - ${CGoGN_ROOT_DIR}/src/Algo/*.cpp - ${CGoGN_ROOT_DIR}/src/Algo/*.c - ${CGoGN_ROOT_DIR}/include/Algo/*.hpp - ${CGoGN_ROOT_DIR}/include/Algo/*.h -) - -file( - GLOB - shaders_srcD - ${CGoGN_ROOT_DIR}/include/Utils/*.frag - ${CGoGN_ROOT_DIR}/include/Utils/*.vert - ${CGoGN_ROOT_DIR}/include/Utils/*.geom - ${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.frag - ${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.vert - ${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.geom -) - - -IF(WIN32) - add_custom_target(shader_targetD ${CGoGN_ROOT_DIR}/ThirdParty/bin/Release/shader_to_h ${shaders_srcD} - WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} - SOURCES ${shaders_srcD} ) -ELSE(WIN32) - add_custom_target(shader_targetD ${CGoGN_ROOT_DIR}/ThirdParty/bin/shader_to_h ${shaders_srcD} - WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} - SOURCES ${shaders_srcD} -) -ENDIF(WIN32) - - -file( - GLOB # WARNING NO MORE RECURSE TO AVOID TAKING QT FILES - files_utils - ${CGoGN_ROOT_DIR}/src/Utils/*.cpp - ${CGoGN_ROOT_DIR}/include/Utils/*.hpp - ${CGoGN_ROOT_DIR}/include/Utils/*.h - - ${CGoGN_ROOT_DIR}/src/Utils/Shaders/*.cpp - ${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.hpp - ${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.h -) - -IF(WITH_QT) - file( - GLOB - files_utils_qt - ${CGoGN_ROOT_DIR}/src/Utils/Qt/*.cpp - ${CGoGN_ROOT_DIR}/include/Utils/Qt/*.hpp - ${CGoGN_ROOT_DIR}/include/Utils/Qt/*.h - ) - file( - GLOB - utils_qt_headers - ${CGoGN_ROOT_DIR}/include/Utils/Qt/qtgl.h - ${CGoGN_ROOT_DIR}/include/Utils/Qt/qtSimple.h - ${CGoGN_ROOT_DIR}/include/Utils/Qt/qtQGLV_glw.h - ${CGoGN_ROOT_DIR}/include/Utils/Qt/qtQGLV.h - ${CGoGN_ROOT_DIR}/include/Utils/Qt/qtpopup.h - ${CGoGN_ROOT_DIR}/include/Utils/Qt/qthistodraw.h - ${CGoGN_ROOT_DIR}/include/Utils/Qt/qtcolorschooser.h - ) - - QT4_WRAP_CPP(UTILS_QT_HEADERS_MOC ${utils_qt_headers}) - SET (files_utils_withQt ${files_utils} ${files_utils_qt} ${UTILS_QT_HEADERS_MOC}) -ENDIF (WITH_QT) - - -IF (ONELIB) - IF(WITH_QT) - add_library( cgognD ${files_topology} ${files_container} ${files_algo} ${files_utils_withQt}) - ELSE(WITH_QT) - add_library( cgognD ${files_topology} ${files_container} ${files_algo} ${files_utils} ) - ENDIF (WITH_QT) - add_dependencies(cgognD shader_targetD ) -ELSE (ONELIB) - add_library( topologyD ${files_topology}) - add_library( containerD ${files_container}) - add_library( algoD ${files_algo}) - IF(WITH_QT) - add_library( utilsD ${files_utils_withQt} ) - ELSE(WITH_QT) - add_library( utilsD ${files_utils} ) - ENDIF (WITH_QT) - add_dependencies(utilsD shader_targetD ) -ENDIF (ONELIB) diff --git a/Release/CMakeLists.txt b/Release/CMakeLists.txt index 06e61a1aa64a37343c21825fc4786eb936d056cc..67b2a0cf4975de22933da72bb290410f0eb1d4a5 100644 --- a/Release/CMakeLists.txt +++ b/Release/CMakeLists.txt @@ -1,15 +1,22 @@ cmake_minimum_required(VERSION 2.8) -project(CGoGNRelease) +project(CGoGNLibrary) + +# SET(CMAKE_BUILD_TYPE Release) + +#IF(WIN32) +# SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib) +#ELSE(WIN32) +# SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib/Release) +# ADD_DEFINITIONS(-DNOTOPOWARNING) +#ENDIF(WIN32) -SET(CMAKE_BUILD_TYPE Release) IF(WIN32) SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib) -ELSE(WIN32) - SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib/Release) - ADD_DEFINITIONS(-DNOTOPOWARNING) -ENDIF(WIN32) +ELSE() + SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib/${CMAKE_BUILD_TYPE}) +ENDIF() include_directories( ${CMAKE_CURRENT_BINARY_DIR} @@ -58,11 +65,11 @@ IF(WIN32) add_custom_target(shader_target ${CGoGN_ROOT_DIR}/ThirdParty/bin/Release/shader_to_h ${shaders_src} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} SOURCES ${shaders_src} ) -ELSE(WIN32) +ELSE() add_custom_target(shader_target ${CGoGN_ROOT_DIR}/ThirdParty/bin/shader_to_h ${shaders_src} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} SOURCES ${shaders_src} ) -ENDIF(WIN32) +ENDIF() file( @@ -99,7 +106,7 @@ IF(WITH_QT) QT4_WRAP_CPP(UTILS_QT_HEADERS_MOC ${utils_qt_headers}) SET (files_utils_withQt ${files_utils} ${files_utils_qt} ${UTILS_QT_HEADERS_MOC}) -ENDIF (WITH_QT) +ENDIF() file( GLOB_RECURSE files_geometry @@ -116,20 +123,21 @@ file( GLOB_RECURSE IF (ONELIB) IF(WITH_QT) add_library( cgogn ${files_topology} ${files_container} ${files_algo} ${files_utils_withQt}) - ELSE(WITH_QT) + ELSE() add_library( cgogn ${files_topology} ${files_container} ${files_algo} ${files_utils} ) - ENDIF (WITH_QT) + ENDIF() add_dependencies(cgogn shader_target ) -ELSE (ONELIB) +ELSE() add_library( container ${files_container}) add_library( topology ${files_topology}) add_library( algo ${files_algo}) - IF(WITH_QT) + IF (WITH_QT) add_library( utils ${files_utils_withQt} ) - ELSE(WITH_QT) + ELSE() add_library( utils ${files_utils} ) - ENDIF (WITH_QT) + ENDIF() add_custom_target( Geometry SOURCES ${files_geometry} ) add_custom_target( ThirdParty SOURCES ${files_thirdParty} ) add_dependencies( utils shader_target ) -ENDIF (ONELIB) +ENDIF() + diff --git a/SCHNApps/CMakeLists.txt b/SCHNApps/CMakeLists.txt index d9c1d83760719890053d17cc8da03fae2de8ea74..d3e65ce1c8cf3222e803a9e6ac60a2dc0470b43a 100644 --- a/SCHNApps/CMakeLists.txt +++ b/SCHNApps/CMakeLists.txt @@ -2,15 +2,22 @@ cmake_minimum_required(VERSION 2.8) project(SCHNApps) -SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fPIC -std=c++11") +IF (NOT (${CMAKE_BUILD_TYPE} MATCHES "Debug|Release")) + IF (${CMAKE_CURRENT_BINARY_DIR} MATCHES "(.*)Debug|(.*)debug|(.*)DEBUG") + SET(CMAKE_BUILD_TYPE "Debug") + ELSE() + SET(CMAKE_BUILD_TYPE "Release") + ENDIF() +ENDIF() +SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fPIC -std=c++11") SET(CGoGN_ROOT_DIR ${CMAKE_SOURCE_DIR}/.. CACHE STRING "CGoGN root dir") SET(CMAKE_MODULE_PATH ${CGoGN_ROOT_DIR}/cmake_modules/) find_package(OpenGL REQUIRED) -find_package(Boost COMPONENTS regex thread system REQUIRED) +find_package(Boost COMPONENTS regex system REQUIRED) find_package(ZLIB REQUIRED) find_package(LibXml2 REQUIRED) find_package(GLEW REQUIRED) @@ -30,22 +37,15 @@ SET( QT_USE_QTPLUGIN TRUE ) INCLUDE(${QT_USE_FILE}) ADD_DEFINITIONS(${QT_DEFINITIONS}) - - - -file(STRINGS ${CGoGN_ROOT_DIR}/include/cgogn_mr.h FORCE_MR) -IF (FORCE_MR EQUAL 1) - add_definitions(-DCGoGN_FORCE_MR=1) -ENDIF (FORCE_MR EQUAL 1) +#MESSAGE HERE FOR MORE EASY READING (MESSAGE AT THE END) +MESSAGE("Build type = " ${CMAKE_BUILD_TYPE} " (for change -DCMAKE_BUILD_TYPE=Release|Debug)" ) file(STRINGS ${CGoGN_ROOT_DIR}/include/cgogn_onelib.h ONELIB_STR) IF (ONELIB_STR EQUAL 1) - SET(CGoGN_LIBS_D cgognD) - SET(CGoGN_LIBS_R cgogn) -ELSE (ONELIB_STR EQUAL 1) - SET(CGoGN_LIBS_D topologyD algoD containerD utilsD) - SET(CGoGN_LIBS_R topology algo container utils) -ENDIF (ONELIB_STR EQUAL 1) + SET(CGoGN_LIBS cgogn) +ELSE() + SET(CGoGN_LIBS topology algo container utils) +ENDIF() IF (DEFINED ASSERTON) add_definitions(-DCGOGN_ASSERT_BOOL=${ASSERTON}) @@ -53,10 +53,6 @@ ELSE (DEFINED ASSERTON) add_definitions(-DCGOGN_ASSERT_BOOL=false) ENDIF (DEFINED ASSERTON) -add_definitions(-DSHADERPATH="${CGoGN_ROOT_DIR}/lib/Shaders/") - - - # define includes of external libs SET (EXT_INCLUDES @@ -83,7 +79,6 @@ SET (EXT_LIBS ${LIBXML2_LIBRARIES} ${Boost_SYSTEM_LIBRARY} ${Boost_REGEX_LIBRARY} - ${Boost_THREAD_LIBRARY} ${QT_LIBRARIES} ${QGLVIEWER_LIBRARIES} ${PYTHON_LIBRARIES} @@ -114,9 +109,12 @@ endif(CMAKE_COMPILER_IS_GNUCXX) SET(SCHNApps_ROOT_DIR ${CGoGN_ROOT_DIR}/SCHNApps) -SET(EXECUTABLE_OUTPUT_PATH ${SCHNApps_ROOT_DIR}/bin) -SET(LIBRARY_OUTPUT_PATH ${SCHNApps_ROOT_DIR}/lib) +SET(EXECUTABLE_OUTPUT_PATH ${SCHNApps_ROOT_DIR}/bin/${CMAKE_BUILD_TYPE}) +SET(LIBRARY_OUTPUT_PATH ${SCHNApps_ROOT_DIR}/lib/${CMAKE_BUILD_TYPE}) +# for application auto selection of plugin directory +file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/plugins_default_directory.h +\#define\ PLUGINS_DEFAULT_DIRECTORY\ \"${SCHNApps_ROOT_DIR}/lib/${CMAKE_BUILD_TYPE}\" ) file( GLOB_RECURSE @@ -150,7 +148,41 @@ SET(SCHNApps_QOBJECT_FILES -ADD_SUBDIRECTORY(${CMAKE_SOURCE_DIR}/Release Release) -IF (NOT WIN32) - ADD_SUBDIRECTORY(${CMAKE_SOURCE_DIR}/Debug Debug) -ENDIF (NOT WIN32) + link_directories( ${CGoGN_ROOT_DIR}/lib/${CMAKE_BUILD_TYPE} ) + + +INCLUDE_DIRECTORIES( + ${CGoGN_ROOT_DIR}/include + ${SCHNApps_ROOT_DIR}/include + ${EXT_INCLUDES} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_BINARY_DIR} +) + +QT4_WRAP_UI( UIC_FILES + ${SCHNApps_UI_FILES} +) + +QT4_WRAP_CPP( MOC_FILES + ${SCHNApps_QOBJECT_FILES} +) + +QT4_ADD_RESOURCES( RCC_FILES + ${SCHNApps_ROOT_DIR}/resources/resources.qrc +) + +ADD_EXECUTABLE( SCHNApps + ${SCHNApps_FILES} + ${UIC_FILES} + ${MOC_FILES} + ${RCC_FILES} +) + +TARGET_LINK_LIBRARIES( SCHNApps + ${CGoGN_LIBS} + ${EXT_LIBS} +) + + +ADD_SUBDIRECTORY(${SCHNApps_ROOT_DIR}/Plugins Plugins) + diff --git a/SCHNApps/Debug/CMakeLists.txt b/SCHNApps/Debug/CMakeLists.txt deleted file mode 100644 index b1b775b952b506ba760ee89915a6e238a83b4b86..0000000000000000000000000000000000000000 --- a/SCHNApps/Debug/CMakeLists.txt +++ /dev/null @@ -1,48 +0,0 @@ -cmake_minimum_required(VERSION 2.8) - -SET(CMAKE_BUILD_TYPE Debug) - -IF(WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/Release ) -ELSE (WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/Debug ${CGoGN_ROOT_DIR}/lib/Release ) -ENDIF (WIN32) - -INCLUDE_DIRECTORIES( - ${CGoGN_ROOT_DIR}/include - ${SCHNApps_ROOT_DIR}/include - ${EXT_INCLUDES} - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_BINARY_DIR} -) - -QT4_WRAP_UI( UIC_FILES - ${SCHNApps_UI_FILES} -) - -QT4_WRAP_CPP( MOC_FILES - ${SCHNApps_QOBJECT_FILES} -) - -QT4_ADD_RESOURCES( RCC_FILES - ${SCHNApps_ROOT_DIR}/resources/resources.qrc -) - -ADD_EXECUTABLE( SCHNAppsD - ${SCHNApps_FILES} - ${UIC_FILES} - ${MOC_FILES} - ${RCC_FILES} -) - -TARGET_LINK_LIBRARIES( SCHNAppsD - ${CGoGN_LIBS_D} - ${EXT_LIBS} -) - - -ADD_SUBDIRECTORY(${SCHNApps_ROOT_DIR}/Plugins PluginsD) - -#IF(IS_DIRECTORY ${SCHNApps_ROOT_DIR}/../../Plugins) -# ADD_SUBDIRECTORY(${SCHNApps_ROOT_DIR}/../../Plugins ExtPluginsD) -#ENDIF(IS_DIRECTORY ${SCHNApps_ROOT_DIR}/../../Plugins) diff --git a/SCHNApps/Plugins/plugins_cmake.txt b/SCHNApps/Plugins/plugins_cmake.txt index 4c5d08c00b1de2cba46a2e66bc17d3bc17982b2b..ce5f9f462a75d2c9bcf7f23c611bb80bb9924c9d 100644 --- a/SCHNApps/Plugins/plugins_cmake.txt +++ b/SCHNApps/Plugins/plugins_cmake.txt @@ -7,50 +7,19 @@ IF(APPLE) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L/usr/local/lib") ENDIF(APPLE) -IF( ${CMAKE_BUILD_TYPE} STREQUAL Debug ) - - ADD_DEFINITIONS(-DDEBUG) - - IF(WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/Release ) - ELSE (WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/Debug ${CGoGN_ROOT_DIR}/lib/Release ) - ENDIF (WIN32) - - ADD_LIBRARY( ${PLUGIN_NAME}D SHARED - ${PLUGIN_FILES} - ${PLUGIN_UIC_FILES} - ${PLUGIN_MOC_FILES} - ) - - TARGET_LINK_LIBRARIES( ${PLUGIN_NAME}D - ${CGoGN_LIBS_D} - ${EXT_LIBS} - ) - - ADD_DEPENDENCIES( ${PLUGIN_NAME}D SCHNAppsD ) - - SET_TARGET_PROPERTIES( ${PLUGIN_NAME}D PROPERTIES COMPILE_DEFINITIONS "DEBUG" ) - -ELSE ( ${CMAKE_BUILD_TYPE} STREQUAL Debug ) - - IF(WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/Release ) - ELSE (WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/Release ) - ENDIF (WIN32) - - ADD_LIBRARY( ${PLUGIN_NAME} SHARED - ${PLUGIN_FILES} - ${PLUGIN_UIC_FILES} - ${PLUGIN_MOC_FILES} - ) - - TARGET_LINK_LIBRARIES( ${PLUGIN_NAME} - ${CGoGN_LIBS_R} - ${EXT_LIBS} - ) - - ADD_DEPENDENCIES( ${PLUGIN_NAME} SCHNApps ) - -ENDIF ( ${CMAKE_BUILD_TYPE} STREQUAL Debug ) + +ADD_LIBRARY( ${PLUGIN_NAME} SHARED + ${PLUGIN_FILES} + ${PLUGIN_UIC_FILES} + ${PLUGIN_MOC_FILES} +) + +TARGET_LINK_LIBRARIES( ${PLUGIN_NAME} + ${CGoGN_LIBS} + ${EXT_LIBS} +) + +ADD_DEPENDENCIES( ${PLUGIN_NAME} SCHNApps ) + + + diff --git a/SCHNApps/Release/CMakeLists.txt b/SCHNApps/Release/CMakeLists.txt deleted file mode 100644 index c1744995229172969dbf3c8c67dd5948162b1c75..0000000000000000000000000000000000000000 --- a/SCHNApps/Release/CMakeLists.txt +++ /dev/null @@ -1,48 +0,0 @@ -cmake_minimum_required(VERSION 2.8) - -SET(CMAKE_BUILD_TYPE Release) - -IF(WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/Release ) -ELSE (WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/Release ) -ENDIF (WIN32) - -INCLUDE_DIRECTORIES( - ${CGoGN_ROOT_DIR}/include - ${SCHNApps_ROOT_DIR}/include - ${EXT_INCLUDES} - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_BINARY_DIR} -) - -QT4_WRAP_UI( UIC_FILES - ${SCHNApps_UI_FILES} -) - -QT4_WRAP_CPP( MOC_FILES - ${SCHNApps_QOBJECT_FILES} -) - -QT4_ADD_RESOURCES( RCC_FILES - ${SCHNApps_ROOT_DIR}/resources/resources.qrc -) - -ADD_EXECUTABLE( SCHNApps - ${SCHNApps_FILES} - ${UIC_FILES} - ${MOC_FILES} - ${RCC_FILES} -) - -TARGET_LINK_LIBRARIES( SCHNApps - ${CGoGN_LIBS_R} - ${EXT_LIBS} -) - - -ADD_SUBDIRECTORY(${SCHNApps_ROOT_DIR}/Plugins Plugins) - -#IF(IS_DIRECTORY ${SCHNApps_ROOT_DIR}/../../Plugins) -# ADD_SUBDIRECTORY(${SCHNApps_ROOT_DIR}/../../Plugins ExtPlugins) -#ENDIF(IS_DIRECTORY ${SCHNApps_ROOT_DIR}/../../Plugins) diff --git a/SCHNApps/src/schnapps.cpp b/SCHNApps/src/schnapps.cpp index 3de4f50f6707393a5782510b32c605d072e50bf5..c6b6c1b5f5ab0a4302a53f4247937aa494526ac1 100644 --- a/SCHNApps/src/schnapps.cpp +++ b/SCHNApps/src/schnapps.cpp @@ -25,6 +25,8 @@ #include "plugin_interaction.h" #include "plugin_processing.h" +#include "plugins_default_directory.h" + namespace CGoGN { @@ -118,8 +120,11 @@ SCHNApps::SCHNApps(const QString& appPath, PythonQtObjectPtr& pythonContext, Pyt connect(action_AboutCGoGN, SIGNAL(triggered()), this, SLOT(aboutCGoGN())); // register a first plugins directory +// registerPluginsDirectory(m_appPath + QString("/../lib")); + +// using macro in plugins_default_directory.h generated by cmake for lib/Release or lib/Debug auto selection ! + registerPluginsDirectory(QString(PLUGINS_DEFAULT_DIRECTORY)); - registerPluginsDirectory(m_appPath + QString("/../lib")); } SCHNApps::~SCHNApps() diff --git a/ThirdParty/CMakeLists.txt b/ThirdParty/CMakeLists.txt index bae8a192a8da880bc1a6e1b8acbe425784e6ef50..7a7f35c366946ae3f1ca573078aa9633cbff0762 100644 --- a/ThirdParty/CMakeLists.txt +++ b/ThirdParty/CMakeLists.txt @@ -9,25 +9,25 @@ IF(WIN32) ENDIF(WIN32) IF (${CMAKE_CURRENT_BINARY_DIR} MATCHES "(.*)Debug") - SET(CMAKE_BUILD_TYPE Debug) -ELSE (${CMAKE_CURRENT_BINARY_DIR} MATCHES "(.*)Debug") - SET(CMAKE_BUILD_TYPE Release) -ENDIF (${CMAKE_CURRENT_BINARY_DIR} MATCHES "(.*)Debug") +# SET(CMAKE_BUILD_TYPE Debug) + set(CMAKE_BUILD_TYPE "Debug" CACHE STRING "Debug/Release" FORCE) +ELSE() +# SET(CMAKE_BUILD_TYPE Release) + set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Debug/Release" FORCE) +ENDIF() IF(WIN32) - SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib) #release added by visual INCLUDE_DIRECTORIES(${CGoGN_ROOT_DIR}/windows_dependencies/include/) INCLUDE_DIRECTORIES(${CGoGN_ROOT_DIR}/windows_dependencies/include/suitesparse) -ELSE(WIN32) - SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib/${CMAKE_BUILD_TYPE}) ENDIF(WIN32) +SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib/${CMAKE_BUILD_TYPE}) # for shared or not shared SET (BUILD_SHARED_LIBS OFF CACHE BOOL "if used all library are build as shared type (.so/.dylib/.dll)") -SET (WITH_ASSIMP ON CACHE BOOL "build with Assimp") +SET (WITH_ASSIMP OFF CACHE BOOL "build with Assimp") SET (WITH_ZINRI ON CACHE BOOL "build with Zinri libs") SET (WITH_PYTHONQT ON CACHE BOOL "build PythonQt (for Schnapps)") diff --git a/apps_cmake.txt b/apps_cmake.txt index e63ec17d96caa50955edd9fe65885abe67388110..9605f3569b57c1c32e9105519affaf05d30719a2 100644 --- a/apps_cmake.txt +++ b/apps_cmake.txt @@ -3,25 +3,31 @@ SET(CMAKE_MODULE_PATH ${CGoGN_ROOT_DIR}/cmake_modules/) -SET ( WITH_ASSIMP ON CACHE BOOL "need Assimp") -SET ( WITH_ZINRI ON CACHE BOOL "need Zinri lib") +#SET ( WITH_ASSIMP ON CACHE BOOL "need Assimp") +#SET ( WITH_ZINRI ON CACHE BOOL "need Zinri lib") + +IF(EXISTS "${CGoGN_ROOT_DIR}/ThirdParty/include/Assimp") + SET ( WITH_ASSIMP ON CACHE BOOL "build CGoGN with Assimp" ) +ELSE() + SET ( WITH_ASSIMP OFF CACHE BOOL "build CGoGN with Assimp" ) +ENDIF() + +IF(EXISTS "${CGoGN_ROOT_DIR}/ThirdParty/include/Zinri") + SET ( WITH_ZINRI ON CACHE BOOL "build CGoGN with Zinri lib" ) +ELSE() + SET ( WITH_ZINRI OFF CACHE BOOL "build CGoGN with Zinri lib" ) +ENDIF() + SET ( WITH_QT ON CACHE BOOL "need Qt lib") -# for CGoGN MR -file(STRINGS ${CGoGN_ROOT_DIR}/include/cgogn_mr.h FORCE_MR) -IF (FORCE_MR EQUAL 1) - add_definitions(-DCGoGN_FORCE_MR=1) -ENDIF (FORCE_MR EQUAL 1) # for CGoGN in one lib or not file(STRINGS ${CGoGN_ROOT_DIR}/include/cgogn_onelib.h ONELIB_STR) IF (ONELIB_STR EQUAL 1) - SET(CGoGN_LIBS_D cgognD) - SET(CGoGN_LIBS_R cgogn) -ELSE (ONELIB_STR EQUAL 1) - SET(CGoGN_LIBS_D topologyD algoD containerD utilsD) - SET(CGoGN_LIBS_R topology algo container utils) -ENDIF (ONELIB_STR EQUAL 1) + SET(CGoGN_LIBS cgogn) +ELSE() + SET(CGoGN_LIBS topology algo container utils) +ENDIF() IF(WIN32) set(CMAKE_PREFIX_PATH ${CGoGN_ROOT_DIR}/windows_dependencies CACHE STRING "path to dependencies") @@ -123,10 +129,18 @@ ELSE(WIN32) endif(CMAKE_COMPILER_IS_GNUCXX) ENDIF(WIN32) -SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/bin) +SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/bin/${CMAKE_BUILD_TYPE}) IF(WIN32) link_directories( ${CGoGN_ROOT_DIR}/lib/ ${Boost_LIBRARY_DIRS} ) ELSE (WIN32) - link_directories( ${CGoGN_ROOT_DIR}/lib/Debug ${CGoGN_ROOT_DIR}/lib/Release) + link_directories( ${CGoGN_ROOT_DIR}/lib/${CMAKE_BUILD_TYPE}) ENDIF (WIN32) + +IF(NOT CMAKE_BUILD_TYPE) + IF (${CMAKE_CURRENT_BINARY_DIR} MATCHES "(.*)Debug|(.*)debug") + set(CMAKE_BUILD_TYPE "Debug" CACHE STRING "options are: Debug Release RelWithDebInfo MinSizeRel." FORCE) + ELSE() + set(CMAKE_BUILD_TYPE "Release" CACHE STRING "options are: Debug Release RelWithDebInfo MinSizeRel." FORCE) + ENDIF() +ENDIF() diff --git a/include/Algo/Import/import2tablesSurface.hpp b/include/Algo/Import/import2tablesSurface.hpp index fcdabd828f51a8f83252fca6186ce80f909bda9d..9b9dd5f27f1a5d3826e6eabb467e632369700cb4 100644 --- a/include/Algo/Import/import2tablesSurface.hpp +++ b/include/Algo/Import/import2tablesSurface.hpp @@ -30,6 +30,8 @@ #include "Algo/Import/AHEM.h" +#include + namespace CGoGN { diff --git a/include/Geometry/tensor.hpp b/include/Geometry/tensor.hpp index a36c3c0165fbeba2aca2232b6984eedd8d4466b5..60cfde8b046a75ae53675b3d048c809907db3e8f 100644 --- a/include/Geometry/tensor.hpp +++ b/include/Geometry/tensor.hpp @@ -22,7 +22,7 @@ * * *******************************************************************************/ -/* \file tensor.hpp */ +#include namespace CGoGN { namespace Geom { diff --git a/lib/Shaders/color_gl3.frag b/lib/Shaders/color_gl3.frag deleted file mode 100644 index 45815da2f8019e9e10b8780517f92f31511ca183..0000000000000000000000000000000000000000 --- a/lib/Shaders/color_gl3.frag +++ /dev/null @@ -1,10 +0,0 @@ -#version 330 core - -uniform vec4 Color; - -out vec4 FragColor; - -void main (void) -{ - FragColor = Color; -} diff --git a/lib/Shaders/color_gl3.vert b/lib/Shaders/color_gl3.vert deleted file mode 100644 index f8bdd346ef42cb0baeb3b6f25e021935984ccb98..0000000000000000000000000000000000000000 --- a/lib/Shaders/color_gl3.vert +++ /dev/null @@ -1,13 +0,0 @@ -#version 330 core - -in vec3 VertexPosition; - -uniform mat4 ModelViewProjectionMatrix; - -invariant gl_Position; - -void main () -{ - gl_Position = ModelViewProjectionMatrix * vec4 (VertexPosition, 1.0); -} - diff --git a/lib/Shaders/dart_clip_gs.txt b/lib/Shaders/dart_clip_gs.txt deleted file mode 100644 index e413c250a5732678b61cce47e4f18d6f0336f9d2..0000000000000000000000000000000000000000 --- a/lib/Shaders/dart_clip_gs.txt +++ /dev/null @@ -1,29 +0,0 @@ -//geometry shader for flat rendering - -#extension GL_EXT_geometry_shader4 : enable - -varying in vec3 texCoord[]; - -uniform vec4 Plane; - -void main(void) -{ - // get center of volume - vec3 center = texCoord[0].xyz; - - // compute if volume is clipped by plane - float planeSide = dot(center,Plane.xyz) + Plane.w; - - // clipping test - if (planeSide >= 0.0) - { - // emit the line - gl_Position = gl_ModelViewProjectionMatrix * gl_PositionIn[0]; - gl_FrontColor = gl_FrontColorIn[0]; - EmitVertex(); - gl_Position = gl_ModelViewProjectionMatrix * gl_PositionIn[1]; - gl_FrontColor = gl_FrontColorIn[1]; - EmitVertex(); - } - EndPrimitive(); -} diff --git a/lib/Shaders/dart_clip_ps.txt b/lib/Shaders/dart_clip_ps.txt deleted file mode 100644 index d3ffe16b05ea53811358f7abdd71aac9fca7bc3a..0000000000000000000000000000000000000000 --- a/lib/Shaders/dart_clip_ps.txt +++ /dev/null @@ -1,8 +0,0 @@ -//Pixel_Shader for flat rendering - -varying vec4 color; - -void main (void) -{ - gl_FragColor = gl_Color; -} diff --git a/lib/Shaders/dart_clip_vs.txt b/lib/Shaders/dart_clip_vs.txt deleted file mode 100644 index e6f91692e73e59e3a48ffeb0af34869600250cd4..0000000000000000000000000000000000000000 --- a/lib/Shaders/dart_clip_vs.txt +++ /dev/null @@ -1,10 +0,0 @@ -//Vertex_Shader for flat rendering - -varying vec3 texCoord; - -void main() -{ - gl_Position = gl_Vertex; - texCoord = gl_MultiTexCoord0.xyz; - gl_FrontColor = gl_Color; -} \ No newline at end of file diff --git a/lib/Shaders/flat_gs.txt b/lib/Shaders/flat_gs.txt deleted file mode 100644 index 90c1170ae2ffa9c6ec0f95c62f89c3f47dabf216..0000000000000000000000000000000000000000 --- a/lib/Shaders/flat_gs.txt +++ /dev/null @@ -1,34 +0,0 @@ -//geometry shader for flat rendering - -#extension GL_EXT_geometry_shader4 : enable - - -uniform float explode; -varying out vec3 normalFS, lightDirFS, eyeVecFS; - -void main(void) -{ - vec3 v1 = gl_PositionIn[1].xyz - gl_PositionIn[0].xyz; - vec3 v2 = gl_PositionIn[2].xyz - gl_PositionIn[0].xyz; - - vec3 centroid = gl_PositionIn[0].xyz + gl_PositionIn[1].xyz + gl_PositionIn[2].xyz; - centroid /= 3.0; - - vec4 newPos = gl_ModelViewMatrix * gl_PositionIn[0]; - vec4 lightPos = gl_LightSource[0].position * gl_ModelViewMatrix; - lightDirFS = lightPos.xyz - newPos.xyz; - - normalFS = cross(v1,v2); - - int i; - for(i=0; i< gl_VerticesIn; i++) - { - vec3 displ = centroid - gl_PositionIn[i].xyz; - displ *= explode ; - gl_Position = gl_PositionIn[i] + vec4(displ.xyz,0.0); - gl_Position = gl_ModelViewProjectionMatrix * gl_Position; - EmitVertex(); - } - - EndPrimitive(); -} diff --git a/lib/Shaders/flat_ps.txt b/lib/Shaders/flat_ps.txt deleted file mode 100644 index fbd9335202ef3cc370cc425072752ce71f8600ef..0000000000000000000000000000000000000000 --- a/lib/Shaders/flat_ps.txt +++ /dev/null @@ -1,27 +0,0 @@ -//Pixel_Shader for flat rendering - - -varying vec3 normalFS, lightDirFS, eyeVecFS; - -void main (void) -{ - - vec4 final_color = - (gl_FrontLightModelProduct.sceneColor * gl_FrontMaterial.ambient) + - (gl_LightSource[0].ambient * gl_FrontMaterial.ambient); - - vec3 N = normalize(normalFS); - vec3 L = normalize(lightDirFS); - - float lambertTerm = dot(N,L); - - if(lambertTerm > 0.0) - { - final_color += gl_LightSource[0].diffuse * - gl_FrontMaterial.diffuse * - lambertTerm; - } - - gl_FragColor = final_color; - - } diff --git a/lib/Shaders/flat_vs.txt b/lib/Shaders/flat_vs.txt deleted file mode 100644 index 00ec33d5468bd4dc8fd80800d52294f6d21c8262..0000000000000000000000000000000000000000 --- a/lib/Shaders/flat_vs.txt +++ /dev/null @@ -1,6 +0,0 @@ -//Vertex_Shader for flat rendering - -void main() -{ - gl_Position = gl_Vertex; -} \ No newline at end of file diff --git a/lib/Shaders/phong_cpv_ps.txt b/lib/Shaders/phong_cpv_ps.txt deleted file mode 100644 index 9b2c34bdf9ca5bbb1bfe3f889df4c61e20eacd44..0000000000000000000000000000000000000000 --- a/lib/Shaders/phong_cpv_ps.txt +++ /dev/null @@ -1,39 +0,0 @@ -//Pixel_Shader - -varying vec3 normal, lightDir, eyeVec; -varying vec4 color; - -void main (void) -{ - vec4 final_color = vec4(0.0,0.0,0.0,0.0); - (gl_FrontLightModelProduct.sceneColor * gl_FrontMaterial.ambient) + - (gl_LightSource[0].ambient * gl_FrontMaterial.ambient); - - vec3 N = normalize(normal); - vec3 L = normalize(lightDir); - - float lambertTerm = dot(N,L); - - if(lambertTerm < 0.0) - { - N = -1.0 *N; - lambertTerm = - lambertTerm; - } - - if(lambertTerm > 0.0) - { - final_color += gl_LightSource[0].diffuse * - gl_Color * - lambertTerm; - - vec3 E = normalize(eyeVec); - vec3 R = reflect(-L, N); - float specular = pow( max(dot(R, E), 0.0), - gl_FrontMaterial.shininess ); - final_color += gl_LightSource[0].specular * - gl_FrontMaterial.specular * - specular; - - gl_FragColor = final_color; - } -} \ No newline at end of file diff --git a/lib/Shaders/phong_gl2.frag b/lib/Shaders/phong_gl2.frag deleted file mode 100644 index 33e829aecb34deafa13b816b45e0defe6e6222eb..0000000000000000000000000000000000000000 --- a/lib/Shaders/phong_gl2.frag +++ /dev/null @@ -1,29 +0,0 @@ -//Pixel_Shader - -varying vec3 normal, lightDir, eyeVec; -varying vec3 vcolor; - -void main (void) -{ - vec4 final_color = vec4(0.0,0.0,0.0,0.0); - - vec3 N = normalize(normal); - vec3 L = normalize(lightDir); - - float lambertTerm = dot(N,L); - - if(lambertTerm > 0.0) - { - final_color += vec4(vcolor,1.0) * lambertTerm; - - vec3 E = normalize(eyeVec); - vec3 R = reflect(-L, N); - float specular = pow( max(dot(R, E), 0.0), - gl_FrontMaterial.shininess ); - final_color += gl_FrontMaterial.specular * - specular; - } - - gl_FragColor = final_color; - -} diff --git a/lib/Shaders/phong_gl2.vert b/lib/Shaders/phong_gl2.vert deleted file mode 100644 index c93d8b2bbaf1065193f0cfc41cf9e6a0d9e2e682..0000000000000000000000000000000000000000 --- a/lib/Shaders/phong_gl2.vert +++ /dev/null @@ -1,20 +0,0 @@ -//Vertex_Shader - -attribute vec3 ColorPerVertex; - -varying vec3 normal, lightDir, eyeVec; -varying vec3 vcolor; - -void main() -{ - normal = gl_NormalMatrix * gl_Normal; - - vec3 vVertex = vec3(gl_ModelViewMatrix * gl_Vertex); - - lightDir = vec3(gl_LightSource[0].position.xyz - vVertex); - eyeVec = -vVertex; - - vcolor = ColorPerVertex; - - gl_Position = ftransform(); -} diff --git a/lib/Shaders/phong_gl3.frag b/lib/Shaders/phong_gl3.frag deleted file mode 100644 index 04220e3190f5b974a6a376c22cffea9efc9b8d81..0000000000000000000000000000000000000000 --- a/lib/Shaders/phong_gl3.frag +++ /dev/null @@ -1,40 +0,0 @@ -#version 330 - -// Precision qualifier (le meme que dans le vert. ou highp par defaut !) -precision highp float; - -// Entrees -smooth in vec3 EyeVector, Normal, LightDir; - -// Uniforms (material) -uniform vec4 materialDiffuse; -uniform vec4 materialSpecular; -uniform vec4 materialAmbient; -uniform float shininess; - - -// Sortie -out vec4 FragColor; - -void main() -{ - vec3 N = normalize (Normal); - vec3 L = normalize (LightDir); - - float lambertTerm = dot(N,L); - - vec4 Color = materialAmbient; - - if(lambertTerm > 0.0) - { - Color += materialDiffuse * lambertTerm; - - vec3 E = normalize(EyeVector); - vec3 R = reflect(-L, N); - float specular = pow( max(dot(R, E), 0.0), shininess ); - Color += materialSpecular * specular; - } - - FragColor = Color; -} - diff --git a/lib/Shaders/phong_gl3.vert b/lib/Shaders/phong_gl3.vert deleted file mode 100644 index 52436e05b90284a5372cc98f1f4a5222323dd562..0000000000000000000000000000000000000000 --- a/lib/Shaders/phong_gl3.vert +++ /dev/null @@ -1,29 +0,0 @@ -#version 330 -// Attributs -in vec3 VertexPosition, VertexNormal; - -// Uniforms -// matrices -uniform mat4 ModelViewProjectionMatrix; -uniform mat4 ModelViewMatrix; -uniform mat4 NormalMatrix; -//light position (lumiere blanche) -uniform vec3 LightPosition; - -// sortie vers le shader suivant (frag) -smooth out vec3 EyeVector, Normal, LightDir; - -// pour invariant (pas vraiment compris ...) -invariant gl_Position; - -void main () -{ - Normal = vec3 (NormalMatrix * vec4 (VertexNormal, 0.0)); - vec3 Position = vec3 (ModelViewMatrix * vec4 (VertexPosition, 1.0)); - - LightDir = LightPosition - Position; - EyeVector = -Position; - - gl_Position = ModelViewProjectionMatrix * vec4 (VertexPosition, 1.0); -} - diff --git a/lib/Shaders/phong_ps.txt b/lib/Shaders/phong_ps.txt deleted file mode 100644 index 0c22624de7595ff599dd9551b649cd213a12ab69..0000000000000000000000000000000000000000 --- a/lib/Shaders/phong_ps.txt +++ /dev/null @@ -1,32 +0,0 @@ -//Pixel_Shader - -varying vec3 normal, lightDir, eyeVec; - -void main (void) -{ - vec4 final_color = - (gl_FrontLightModelProduct.sceneColor * gl_FrontMaterial.ambient) + - (gl_LightSource[0].ambient * gl_FrontMaterial.ambient); - - vec3 N = normalize(normal); - vec3 L = normalize(lightDir); - - float lambertTerm = dot(N,L); - - if(lambertTerm > 0.0) - { - final_color += gl_LightSource[0].diffuse * - gl_FrontMaterial.diffuse * - lambertTerm; - - vec3 E = normalize(eyeVec); - vec3 R = reflect(-L, N); - float specular = pow( max(dot(R, E), 0.0), - gl_FrontMaterial.shininess ); - final_color += gl_LightSource[0].specular * - gl_FrontMaterial.specular * - specular; - } - - gl_FragColor = final_color; -} diff --git a/lib/Shaders/phong_vs.txt b/lib/Shaders/phong_vs.txt deleted file mode 100644 index 11e60c93fa33d80940255451317e0d899385beb2..0000000000000000000000000000000000000000 --- a/lib/Shaders/phong_vs.txt +++ /dev/null @@ -1,15 +0,0 @@ -//Vertex_Shader - -varying vec3 normal, lightDir, eyeVec; - -void main() -{ - normal = gl_NormalMatrix * gl_Normal; - - vec3 vVertex = vec3(gl_ModelViewMatrix * gl_Vertex); - - lightDir = vec3(gl_LightSource[0].position.xyz - vVertex); - eyeVec = -vVertex; - - gl_Position = ftransform(); -} diff --git a/lib/Shaders/texture_ps.txt b/lib/Shaders/texture_ps.txt deleted file mode 100644 index 0cad655805ac09b6f4e4cadbb822c8cc26f42659..0000000000000000000000000000000000000000 --- a/lib/Shaders/texture_ps.txt +++ /dev/null @@ -1,39 +0,0 @@ -//Pixel_Shader - -varying vec3 normal, lightDir, eyeVec; - -uniform sampler2D textureColor; - -void main (void) -{ - - vec4 colorMat = texture2D( textureColor, gl_TexCoord[0].st); - - vec4 final_color = - (gl_FrontLightModelProduct.sceneColor * colorMat) + - (gl_LightSource[0].ambient * colorMat); - - vec3 N = normalize(normal); - vec3 L = normalize(lightDir); - - float lambertTerm = dot(N,L); - - if(lambertTerm < 0.0) - { - lambertTerm = -lambertTerm; - N *= -1.0; - } - - final_color += gl_LightSource[0].diffuse * colorMat * abs(lambertTerm); - - vec3 E = normalize(eyeVec); - vec3 R = reflect(-L, N); - float specular = pow( max(dot(R, E), 0.0), gl_FrontMaterial.shininess ); - - final_color += gl_LightSource[0].specular * - gl_FrontMaterial.specular * - specular; - - gl_FragColor = final_color; - -} \ No newline at end of file diff --git a/lib/Shaders/texture_vs.txt b/lib/Shaders/texture_vs.txt deleted file mode 100644 index 420f522ee54cf8ca39f34da207a7bea2abd5a487..0000000000000000000000000000000000000000 --- a/lib/Shaders/texture_vs.txt +++ /dev/null @@ -1,17 +0,0 @@ -//Vertex_Shader - -varying vec3 normal, lightDir, eyeVec; - -void main() -{ - normal = gl_NormalMatrix * gl_Normal; - - vec3 vVertex = vec3(gl_ModelViewMatrix * gl_Vertex); - - lightDir = vec3(gl_LightSource[0].position.xyz - vVertex); - eyeVec = -vVertex; - - gl_TexCoord[0] = gl_MultiTexCoord0; - - gl_Position = ftransform(); -} diff --git a/lib/Shaders/vol_clip_gs.txt b/lib/Shaders/vol_clip_gs.txt deleted file mode 100644 index 35e842f5152d8bea152e495e365f6c3b693c2cd2..0000000000000000000000000000000000000000 --- a/lib/Shaders/vol_clip_gs.txt +++ /dev/null @@ -1,75 +0,0 @@ -//geometry shader for flat rendering - -#extension GL_EXT_geometry_shader4 : enable - -varying in vec2 texCoord[]; -varying out vec2 texCoordFS; - -varying out vec3 normalFS, lightDirFS, eyeVecFS; - -uniform sampler2D textureColor; -uniform sampler2D textureCenters; - -uniform vec4 Plane; -uniform vec4 Sphere; -uniform float shrink_vol; - - -varying out vec4 toto; - -void main(void) -{ - - // get mask for volume clipping - float mask = texture2D(textureColor, texCoord[0].xy).a; - - // get center of volume - vec3 center = texture2D(textureCenters, texCoord[0].xy).xyz; - - - // compute if volume is clipped by plane - float planeSide = dot(center,Plane.xyz) + Plane.w; - - vec3 v = center - Sphere.xyz; - // compute if volume is clipped by sphere - float distSph = dot(v,v) - (Sphere.w); - - // clipping test - if ((mask >= 0.5) && (planeSide >= 0.0) && (distSph >= 0.0) ) - { - vec4 center4; - center4.xyz = center; - center4.w = 1.0; - - float k = 1.0 - shrink_vol; - - vec4 pos0 = gl_PositionIn[0]*shrink_vol + center4*k; - vec4 pos1 = gl_PositionIn[1]*shrink_vol + center4*k; - vec4 pos2 = gl_PositionIn[2]*shrink_vol + center4*k; - - // compute normal to triangle - vec3 v1 = pos1.xyz - pos0.xyz; - vec3 v2 = pos2.xyz - pos0.xyz; - normalFS = cross(v1,v2); - - // compute new position after modelView Transformation - vec4 newPos = gl_ModelViewMatrix * gl_PositionIn[0]; - // light position & direction - vec4 lightPos = gl_LightSource[0].position * gl_ModelViewMatrix; - lightDirFS = lightPos.xyz - newPos.xyz; - // texture coordinate for color in fragment program - texCoordFS = texCoord[0]; - - // emit the triangle - gl_Position = gl_ModelViewProjectionMatrix * pos0; - EmitVertex(); - gl_Position = gl_ModelViewProjectionMatrix * pos1; - EmitVertex(); - gl_Position = gl_ModelViewProjectionMatrix * pos2; - EmitVertex(); - - - } - EndPrimitive(); - -} diff --git a/lib/Shaders/vol_clip_ps.txt b/lib/Shaders/vol_clip_ps.txt deleted file mode 100644 index db4660c10928ad375bcb5738cd00e16ac7b62847..0000000000000000000000000000000000000000 --- a/lib/Shaders/vol_clip_ps.txt +++ /dev/null @@ -1,37 +0,0 @@ -//Pixel_Shader for flat rendering - -varying vec3 normalFS, lightDirFS, eyeVecFS; - -varying vec2 texCoordFS; -uniform sampler2D textureColor; -uniform sampler2D textureCenters; - - -varying vec4 toto; - - -void main (void) -{ - vec4 volColor; - volColor.rgb = texture2D(textureColor, texCoordFS.xy).rgb; - volColor.a = 1.0; - - vec4 final_color = - (gl_FrontLightModelProduct.sceneColor * gl_FrontMaterial.ambient) + - (gl_LightSource[0].ambient * gl_FrontMaterial.ambient); - - vec3 N = normalize(normalFS); - vec3 L = normalize(lightDirFS); - - float lambertTerm = dot(N,L); - - if(lambertTerm > 0.0) - { - final_color += gl_LightSource[0].diffuse * - volColor * - lambertTerm; - } - - gl_FragColor = final_color; - - } diff --git a/lib/Shaders/vol_clip_vs.txt b/lib/Shaders/vol_clip_vs.txt deleted file mode 100644 index 8cc9349c5b550578250fafde420b5b726dd3f028..0000000000000000000000000000000000000000 --- a/lib/Shaders/vol_clip_vs.txt +++ /dev/null @@ -1,11 +0,0 @@ -//Vertex_Shader for flat rendering - -varying vec2 texCoord; - -varying vec4 toto; - -void main() -{ - gl_Position = gl_Vertex; - texCoord = gl_MultiTexCoord0.xy; -} \ No newline at end of file