39 lines
1.1 KiB
CMake
39 lines
1.1 KiB
CMake
cmake_minimum_required(VERSION 3.20)
|
|
|
|
set(func_name "")
|
|
|
|
file(GLOB src_files "*.f")
|
|
|
|
foreach(ff IN LISTS src_files)
|
|
get_filename_component(sn ${ff} NAME_WE)
|
|
list(APPEND func_name ${sn})
|
|
endforeach()
|
|
|
|
# message(STATUS "${func_name}")
|
|
|
|
string(REPLACE ";" " " func_str "${func_name}")
|
|
|
|
# message(STATUS ${func_str})
|
|
|
|
enable_language(Fortran CXX)
|
|
|
|
include(FortranCInterface)
|
|
FortranCInterface_HEADER(FortranCInterface.h
|
|
MACRO_NAMESPACE "FC_"
|
|
# SYMBOL_NAMESPACE "fp_"
|
|
SYMBOL_NAMESPACE ""
|
|
# SYMBOLS ${func_str}
|
|
SYMBOLS ${func_name}
|
|
)
|
|
FortranCInterface_VERIFY(CXX)
|
|
|
|
# set(FITPACK_INCLUDE_DIR ${CMAKE_CURRENT_BINARY_DIR} PARENT_SCOPE)
|
|
# include_directories(${BSPLINES_INCLUDE_DIR})
|
|
|
|
add_library(fitpack_project STATIC EXCLUDE_FROM_ALL ${src_files} mcc_bsplines.h)
|
|
|
|
add_library(fitpack STATIC IMPORTED GLOBAL)
|
|
set_target_properties(fitpack PROPERTIES IMPORTED_LOCATION ${CMAKE_BINARY_DIR}/fitpack/libfitpack_project.a)
|
|
set_target_properties(fitpack PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR};${CMAKE_CURRENT_BINARY_DIR}")
|
|
add_dependencies(fitpack fitpack_project)
|