CMAKE_MINIMUM_REQUIRED(VERSION 3.0) PROJECT(demolib) SET(output_dir "${CMAKE_BINARY_DIR}/compiled") # single-conf prostredi (GCC, ..) SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${output_dir}") SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${output_dir}") SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${output_dir}") # multi-conf prostredi (MSVS, ..) FOREACH(OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES}) SET(ORIG_OUT_CONFIG ${OUTPUTCONFIG}) STRING(TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG) SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${output_dir}/${ORIG_OUT_CONFIG}") SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${output_dir}/${ORIG_OUT_CONFIG}") SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${output_dir}/${ORIG_OUT_CONFIG}") ENDFOREACH(OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES) SET(LIBRARY_TYPE "STATIC" CACHE STRING "Zvoleny typ knihovny") SET_PROPERTY(CACHE LIBRARY_TYPE PROPERTY STRINGS "STATIC" "SHARED" "SHARED_RUNTIME") # v budoucich verzich CMake to bude ADD_COMPILER_DEFINITIONS a bez "-D" ADD_DEFINITIONS("-DLIBTYPE_${LIBRARY_TYPE}") ADD_SUBDIRECTORY(custommath) ADD_SUBDIRECTORY(demo)