cmake_policy(SET CMP0043 NEW) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../bin/editor) #brew path if(APPLE) list(APPEND CMAKE_PREFIX_PATH /usr/local/opt/qt5/lib/cmake) endif() set(CMAKE_AUTOMOC ON) set(CMAKE_INCLUDE_CURRENT_DIR ON) find_package(Qt5Core REQUIRED) find_package(Qt5Gui REQUIRED) find_package(Qt5Widgets REQUIRED) find_package(LibArchive REQUIRED) set(SOURCE_FILES src/inspectors/lightinspector.cpp src/inspectors/meshrendererinspector.cpp src/inspectors/transforminspector.cpp src/inspectors/camerainspector.cpp src/inspectors/materialinspector.cpp src/inspectors/inspectorbase.cpp src/inspectors/scriptactorinspector.cpp src/inspectors/playerstartinspector.cpp src/inspectors/boxcolliderinspector.cpp src/inspectors/rigidbodyinspector.cpp src/inspectors/modelinspector.cpp src/inspectors/mapinspector.cpp src/inspectors/cubemapinspector.cpp src/inspectors/envprobeinspector.cpp src/assetbrowser.cpp src/entityitemmodel.cpp src/hierarchy.cpp src/idselector.cpp src/inspector.cpp src/main.cpp src/mainwindow.cpp src/quaternionwidget.cpp src/vector3widget.cpp src/viewport.cpp src/objectselectiondialog.cpp src/colorwidget.cpp src/exportwindow.cpp src/projectwindow.cpp src/gamesettings.cpp src/assimpimporter.cpp src/editorstyle.cpp src/worldsettings.cpp) set(INCLUDE_FILES include/inspectors/inspectorbase.h include/inspectors/lightinspector.h include/inspectors/meshrendererinspector.h include/inspectors/transforminspector.h include/inspectors/camerainspector.h include/inspectors/materialinspector.h include/inspectors/scriptactorinspector.h include/inspectors/playerstartinspector.h include/inspectors/boxcolliderinspector.h include/inspectors/rigidbodyinspector.h include/inspectors/modelinspector.h include/inspectors/mapinspector.h include/inspectors/cubemapinspector.h include/inspectors/envprobeinspector.h include/assetbrowser.h include/hierarchy.h include/idselector.h include/inspector.h include/mainwindow.h include/quaternionwidget.h include/vector3widget.h include/viewport.h include/objectselectiondialog.h include/colorwidget.h include/exportwindow.h include/projectwindow.h include/gamesettings.h include/editorstyle.h include/worldsettings.h) include_directories(include) include_directories( ${ECS_INCLUDE_DIR} ${ASSETS_INCLUDE_DIR} ${RENDERER_INCLUDE_DIR} ${NULLRENDERER_INCLUDE_DIR} ${CORE_INCLUDE_DIR} ${INPUT_INCLUDE_DIR} ${UTILITY_INCLUDE_DIR} ${PLATFORM_INCLUDE_DIR}) include_directories(SYSTEM ${LIBRARY_JSON_INCLUDE_DIR} ${LIBRARY_GLAD_INCLUDE_DIR} ${LIBRARY_GLSLANG_INCLUDE_DIR} ${LIBRARY_SPIRV_INCLUDE_DIR} ${LibArchive_INCLUDE_DIRS} ${LIBRARY_TWM_INCLUDE_DIR}) add_definitions(-DGLFW_INCLUDE_NONE) qt5_wrap_ui(EDITOR_UI forms/mainwindow.ui) qt5_wrap_cpp(EDITOR_SRC ${INCLUDE_FILES}) add_executable(Editor ${SOURCE_FILES} ${EDITOR_UI} ${EDITOR_SRC}) add_dependencies(Editor copydist) target_link_libraries(Editor assimp ToolWindowManager) include_directories(SYSTEM ${LIBRARY_GLAD_INCLUDE_DIR} ${LIBRARY_GLSLANG_INCLUDE_DIR} ${LIBRARY_SPIRV_INCLUDE_DIR}) if(UNIX) target_link_libraries(Editor X11) endif() target_link_libraries(Editor Core Assets ECS Platform Input ${LibArchive_LIBRARIES}) qt5_use_modules(Editor Core Gui Widgets)