cmake_minimum_required(VERSION 3.1) message(STATUS "Using CMake ${CMAKE_VERSION}") include(cmake/add_files.cmake) include(cmake/create_source_groups.cmake) # Project ---------------------------------------------------------------------- project(DotaFactory) set(CMAKE_BUILD_TYPE_INIT "Release") # Qt --------------------------------------------------------------------------- find_package(Qt5 COMPONENTS Widgets Network Multimedia Charts REQUIRED) if(Qt5Widgets_FOUND) message(STATUS "Found Qt ${Qt5Widgets_VERSION_STRING}") # FIX: Qt was built with -reduce-relocations if (Qt5_POSITION_INDEPENDENT_CODE) SET(CMAKE_POSITION_INDEPENDENT_CODE ON) endif() endif() # Setup --------------------------------------------------------------------------- get_filename_component(QT_BINARY_DIR "${QT_MOC_EXECUTABLE}" PATH) set(QT_PLUGINS_DIR "${QT_BINARY_DIR}/../plugins") function(COPY_QT_BINARIES TARGET_DIR IS_DEBUG) set(SUFFIX "") if (IS_DEBUG) set(SUFFIX "d") endif() set(CONFIGURATION "Release") if (IS_DEBUG) set(CONFIGURATION "Debug") endif() if(CMAKE_CL_64) set(BITS "64") else() set(BITS "32") endif() configure_file("${QT_BINARY_DIR}/Qt5Charts${SUFFIX}.dll" "${TARGET_DIR}/Qt5Charts${SUFFIX}.dll" COPYONLY) configure_file("${QT_BINARY_DIR}/Qt5Core${SUFFIX}.dll" "${TARGET_DIR}/Qt5Core${SUFFIX}.dll" COPYONLY) configure_file("${QT_BINARY_DIR}/Qt5Gui${SUFFIX}.dll" "${TARGET_DIR}/Qt5Gui${SUFFIX}.dll" COPYONLY) configure_file("${QT_BINARY_DIR}/Qt5Network${SUFFIX}.dll" "${TARGET_DIR}/Qt5Network${SUFFIX}.dll" COPYONLY) configure_file("${QT_BINARY_DIR}/Qt5Widgets${SUFFIX}.dll" "${TARGET_DIR}/Qt5Widgets${SUFFIX}.dll" COPYONLY) configure_file("${QT_BINARY_DIR}/Qt5Multimedia${SUFFIX}.dll" "${TARGET_DIR}/Qt5Multimedia${SUFFIX}.dll" COPYONLY) endfunction(COPY_QT_BINARIES) # Src ---------------------------------------------------------------------- find_package(OpenGL REQUIRED) set(HEADER_SEARCH_PATHS) set(SYSTEM_HEADER_SEARCH_PATHS) set(LINK_LIBRARIES ${Boost_LIBRARIES} Qt5::Widgets Qt5::Network Qt5::Multimedia Qt5::Charts ${OPENGL_LIBRARIES}) add_subdirectory(src)