project(QtScenePlayer) set(CMAKE_PACKAGE_QTGUI TRUE) # 这样可直接调试,不用添加 Custom Executable 了调试 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/Release-x64) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/Debug-x64) set(QtScenePlayer_hdrs ./RenderWindow.h ../Common/PeGlobal.h ../Common/PeSingleton.h ../Common/PeVsView.h ../Common/PeRenderView.h ../Common/PeAppContext.h ../Common/QtUtils.h ../Common/QtAppContext.h ) set(QtScenePlayer_srcs ./RenderWindow.cpp ./main.cpp ../Common/PeVsView.cpp ../Common/PeRenderView.cpp ../Common/PeAppContext.cpp ../Common/QtUtils.cpp ../Common/QtAppContext.cpp ) set(MOC_SRCS2 ./RenderWindow.h ) qt5_wrap_cpp(MOC_SRCS ${MOC_SRCS2} OPTIONS "") qt5_wrap_ui(UI_SRCS ${UI_FILES}) source_group("Moc Files" FILES ${MOC_SRCS}) source_group("Ui Files" FILES ${UI_FILES}) source_group("Qrc Files" FILES ${RESOURCE_SRCS}) set(SRCS ${QtScenePlayer_hdrs} ${QtScenePlayer_srcs}) if(UNIX) add_executable(${PROJECT_NAME} ${SRCS} ${MOC_SRCS} ${UI_FILES} ${RESOURCE_SRCS}) endif() if(WIN32) add_executable(${PROJECT_NAME} WIN32 ${SRCS} ${MOC_SRCS} ${UI_FILES}) endif() set(QtScenePlayer_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}") set(Common_SOURCE_DIRS "${PEExamples-Qt_SOURCE_DIRS}/Common") include_directories(${QtScenePlayer_INCLUDE_DIRS}) include_directories(${Common_SOURCE_DIRS}) include_directories(${Vs3D_INCLUDE_DIRS}) include_directories(${VsMVO_INCLUDE_DIRS}) # if we don't include this CMake will not include UI headers properly: include_directories(${CMAKE_CURRENT_BINARY_DIR}) target_link_libraries(${PROJECT_NAME} ${QT_QTMAIN_LIBRARY} ${QT_LIBRARIES}) target_link_libraries(${PROJECT_NAME} Vs3D VsMVO) target_link_libraries(${PROJECT_NAME} Qt5::Widgets) if(WIN32) set_target_properties(${PROJECT_NAME} PROPERTIES DEBUG_POSTFIX d) set_property(TARGET ${PROJECT_NAME} PROPERTY WIN32_EXECUTABLE 1) target_link_libraries(${PROJECT_NAME} Qt5::WinMain) endif(WIN32) ########################## # install ########################## if(UNIX AND NOT APPLE) install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION bin CONFIGURATIONS Debug Release) endif(UNIX AND NOT APPLE)