project (AsteroGen CXX C) cmake_minimum_required (VERSION 2.6) set (CMAKE_CXX_STANDARD 11) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/") if(CMAKE_BUILD_TYPE MATCHES DEBUG) set(CMAKE_CXX_FLAGS "-Wall ${CMAKE_CXX_FLAGS}") endif() if(CMAKE_BUILD_TYPE MATCHES RELEASE) set(CMAKE_FIND_LIBRARY_SUFFIXES ".a") set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++") add_definitions(-DOM_STATIC_BUILD) endif() FIND_PACKAGE(OpenMesh REQUIRED) link_directories(${OPENMESH_LIBRARY_DIR}) include_directories(${OPENMESH_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/vendor) # add executable add_executable(asteroidgen src/main.cpp src/Application.cpp src/Polygoniser.cpp src/TextureMapper.cpp # src/TexturePainter.cpp # src/gen.cpp vendor/stb_impl.cpp vendor/mersenne-twister.cpp vendor/OpenNL_psm.c vendor/glad.c vendor/logger.cpp vendor/imgui.cpp vendor/imgui_draw.cpp vendor/imgui_impl_glfw_gl3.cpp ) target_link_libraries(asteroidgen ${OPENMESH_LIBRARIES} dl glfw) if(CMAKE_BUILD_TYPE MATCHES RELEASE) set_target_properties(asteroidgen PROPERTIES LINK_SEARCH_START_STATIC 1) set_target_properties(asteroidgen PROPERTIES LINK_SEARCH_END_STATIC 1) endif()