Newer
Older
cmake_minimum_required(VERSION 3.0)
project(NeuronLib)
set (NeuronLib_VERSION_MAJOR 0)
set (NeuronLib_VERSION_MINOR 1)
message ("Before enable language")
message ("cmake for " ${CMAKE_Fortran_COMPILER})
set (CMAKE_FORTRAN_COMPILER ${CMAKE_Fortran_COMPILER})
project(4Neuro FORTRAN)
else ()
project(4Neuro)
message ("Start cmakeList")
#-------------------------------#
# Default installation location #
#-------------------------------#
# Linux: /usr/local
#------------#
# Build type #
#------------#
# Default: Release
# Others: None, Debug
if (NOT CMAKE_BUILD_TYPE)
set (CMAKE_BUILD_TYPE RELEASE CACHE STRING
"Choose the type of build, options are: None Debug Release."
FORCE)
endif (NOT CMAKE_BUILD_TYPE)
#--------------------------------#
# Setting C++ compiler flags #
set(standard "-std=c++17")
#--------------------#
# Automatic settings #
#--------------------#
get_filename_component (Fortran_COMPILER_NAME ${CMAKE_Fortran_COMPILER} NAME)
if (WITH_TIME_PROFILING)
add_definitions(-DTIME_PROFILING)
endif()
if (WIN32)
set (CMAKE_C_COMPILER gcc)
set (CMAKE_CXX_COMPILER g++)
endif()
Martin Beseda
committed
# Write compiler variables to the file - to pass them to test script
file(WRITE compilers.env "export FC=${CMAKE_Fortran_COMPILER}\n")
file(APPEND compilers.env "export CXX=${CMAKE_CXX_COMPILER}\n")
file(APPEND compilers.env "export CC=${CMAKE_C_COMPILER}\n")
# Fortran compiler detection
message ("Fortran compiler name: " ${Fortran_COMPILER_NAME})
message ("CMAKE_Fortran_COMPILER full path: " ${CMAKE_Fortran_COMPILER})
message ("Fortran compiler: " ${Fortran_COMPILER_NAME})
message ("Build type:" ${CMAKE_BUILD_TYPE})
#----------------#
# User variables #
#----------------#
set(SRC_DIR src)
set(BUILD_DIR build)
set(LIB_DIR lib)
#--------------------#
# Building libraries #
#--------------------#
Martin Beseda
committed
#link_directories("${BUILD_DIR}/${LIB_DIR}")
include_directories("${BUILD_DIR}/${LIB_DIR}")
add_subdirectory("${SRC_DIR}" "${LIB_DIR}")
Martin Beseda
committed
message ("Current directory:" ${PWD})
message ("SRC_DIR: " ${SRC_DIR})
message ("BUILD_DIR:" ${BUILD_DIR})
message ("LIB_DIR: " ${LIB_DIR})
message ("Windows")
else ()
message ("Not Windows")