Skip to content
Snippets Groups Projects
CMakeLists.txt 3.05 KiB
Newer Older
  • Learn to ignore specific revisions
  • cmake_minimum_required(VERSION 3.2)
    
    
    #set(CMAKE_VERBOSE_MAKEFILE on)
    
    Martin Rusek's avatar
    Martin Rusek committed
    include_directories(
    ../unit/
    ${CMAKE_CURRENT_SOURCE_DIR}/
    
    Martin Rusek's avatar
    Martin Rusek committed
    set (SOURCE_exe 
    	../SCwin/main.cpp
    )
    
    Martin Rusek's avatar
    Martin Rusek committed
    set (SOURCE_unit 
    	../unit/unitmain.cpp
    	../unit/ut_dtw.cpp
    	../unit/ut_op.cpp
    	../unit/ut_help.cpp
    )
    
    Martin Rusek's avatar
    Martin Rusek committed
    #set (destination
    #"${CMAKE_CURRENT_SOURCE_DIR}/"
    #)
    #
    #file(COPY ${source} DESTINATION	${destination})
    #
    #add_custom_target(dumy)
    #
    #add_custom_command(
    # TARGET dumy PRE_BUILD
    # #COMMAND ${CMAKE_COMMAND} -E create_symlink ${source} ${destination} 
    # COMMAND COPY ${source} DESTINATION ${destination}
    # DEPENDS ${destination}
    # COMMENT "symbolic link resources folder from ${source} => ${destination}"
    #)
    #
    ##add_custom_command(TARGET ${PROJECT_NAME} PRE_BUILD
    ##				   COMMAND ${CMAKE_COMMAND} COPY 
    ##					  ${CMAKE_CURRENT_SOURCE_DIR}/../SCwin/main.cpp $<TARGET_FILE_DIR:antsdll>)
    
    Martin Rusek's avatar
    Martin Rusek committed
    project(ants)
    
    if(NOT CMAKE_BUILD_TYPE)
    	set(CMAKE_BUILD_TYPE Release)
    endif()
    
    
    set(CMAKE_CXX_FLAGS "-std=c++14 -Wall -Wextra -Weffc++ -Wshadow -pedantic -lstdc++fs -lX11 -m64")
    
    set(CMAKE_CXX_FLAGS_RELEASE "-O3")
    set(CMAKE_CXX_FLAGS_DEBUG "-g")
    
    find_package(OpenMP)
    if(OPENMP_FOUND)
    
    	message(STATUS "STATUS: Openmp found")
    
    	set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
    endif()
    
    if(MPI_FOUND)
    
    	message(STATUS "STATUS: MPI found")
    
    	message(STATUS "STATUS: MPI not found")
    
    if(X11_FOUND)
    	message(STATUS "STATUS: X11 found")
    else()
    	message(STATUS "STATUS: X11 not found")
    endif()
    
    
    #if libX11.so lib is in different location on your system -> add path here. 
    find_library(LIB_X11 NAME libX11.so PATHS
    	/usr/lib
    	/usr/lib64
    	/usr/local/lib
    	/usr/local/lib64
    )
    
    if(NOT LIB_X11)
    	message(STATUS "ERROR: libX11.so not found")
    else()
    
    	message("OK: libX11.so found: " ${LIB_X11})
    
    #if libstdc++fs.a lib is in different location on your system then add path here. 
    
    find_library(LIB_FS NAME libstdc++fs.a PATHS
    	/usr/lib/gcc/x86_64-linux-gnu/7.2.0
    	/usr/lib/gcc/x86_64-linux-gnu/7.1.0
    	/usr/lib/gcc/x86_64-linux-gnu/6.4.0
    	/usr/lib/gcc/x86_64-linux-gnu/6.3.0
    
    	/usr/lib/gcc/x86_64-linux-gnu/5.4.0
    	/usr/lib
    	/usr/lib64
    	/usr/local/lib
    	/usr/local/lib64
    )
    
    if(NOT LIB_FS)
    	message(STATUS "ERROR: libstdc++fs not found")
    else()
    
    	message("OK: libstdc++fs found: " ${LIB_FS})
    
    	parameter.cpp
    	calcul.cpp
    	help.cpp
    	parser.cpp
    	operation.cpp
    	dtw.cpp
    	lcss.cpp
    
    Martin Rusek's avatar
    Martin Rusek committed
    add_library(antsdll SHARED
    
    	parameter.cpp
    	calcul.cpp
    	help.cpp
    	parser.cpp
    	operation.cpp
    	dtw.cpp
    	lcss.cpp
    	pdtw.cpp
    	print.cpp
    	preprocess.cpp
    	draw.cpp
    	veTree.cpp
    	veSegment.cpp
    )
    set_property(TARGET antsdll PROPERTY POSITION_INDEPENDENT_CODE ON)
    
    Martin Rusek's avatar
    Martin Rusek committed
    target_link_libraries(antsdll ${DEPEND_EXT})
    
    
    Martin Rusek's avatar
    Martin Rusek committed
    	${SOURCE_exe}
    
    target_link_libraries(ants antsl ${DEPEND_EXT})
    
    add_executable(unit	
    
    Martin Rusek's avatar
    Martin Rusek committed
    	${SOURCE_unit}
    
    target_link_libraries(unit antsl ${DEPEND_EXT} )
    
    #set_target_properties(msa PROPERTIES PREFIX "")