1
+ # ==================================================================
2
+ # Codac - cmake configuration file
3
+ # ==================================================================
4
+
5
+ list (APPEND CODAC_IBEX_SRC
6
+
7
+ ${CMAKE_CURRENT_SOURCE_DIR} /codac2_ibex.cpp
8
+ ${CMAKE_CURRENT_SOURCE_DIR} /codac2_ibex.h
9
+ )
10
+
11
+ ################################################################################
12
+ # Create the target for libcodac-ibex
13
+ ################################################################################
14
+
15
+ #if(NOT CMAKE_CXX_STANDARD)
16
+ set (CMAKE_CXX_STANDARD 20 )
17
+ set (CMAKE_CXX_STANDARD_REQUIRED ON )
18
+ #endif()
19
+
20
+ add_library (${PROJECT_NAME} -ibex ${CODAC_IBEX_SRC} )
21
+ target_link_libraries (${PROJECT_NAME} -ibex PUBLIC ${PROJECT_NAME} -core Ibex::ibex Eigen3::Eigen Ibex::ibex )
22
+
23
+
24
+ ################################################################################
25
+ # For the generation of the PKG file
26
+ ################################################################################
27
+
28
+ set (CODAC_PKG_CONFIG_CFLAGS "${CODAC_PKG_CONFIG_CFLAGS} -I\$ {includedir}/${PROJECT_NAME} -ibex" PARENT_SCOPE )
29
+ set (CODAC_PKG_CONFIG_LIBS "${CODAC_PKG_CONFIG_LIBS} -l${PROJECT_NAME} -ibex" PARENT_SCOPE )
30
+
31
+
32
+ ################################################################################
33
+ # Installation of libcodac-ibex files
34
+ ################################################################################
35
+
36
+ # Getting header files from sources
37
+
38
+ foreach (srcfile ${CODAC_IBEX_SRC} )
39
+ if (srcfile MATCHES "\\ .h$" OR srcfile MATCHES "\\ .hpp$" )
40
+ list (APPEND CODAC_IBEX_HDR ${srcfile} )
41
+ file (COPY ${srcfile} DESTINATION ${CMAKE_CURRENT_BINARY_DIR} /../../../include )
42
+ endif ()
43
+ endforeach ()
44
+
45
+ # Generating the file codac-ibex.h
46
+
47
+ set (CODAC_IBEX_MAIN_HEADER ${CMAKE_CURRENT_BINARY_DIR} /codac-ibex.h )
48
+ file (WRITE ${CODAC_IBEX_MAIN_HEADER} "/* This file is generated by CMake */\n\n " )
49
+ file (APPEND ${CODAC_IBEX_MAIN_HEADER} "#pragma once\n\n " )
50
+ foreach (header_path ${CODAC_IBEX_HDR} )
51
+ get_filename_component (header_name ${header_path} NAME )
52
+ file (APPEND ${CODAC_IBEX_MAIN_HEADER} "#include <${header_name} >\n " )
53
+ endforeach ()
54
+ file (COPY ${CODAC_IBEX_MAIN_HEADER} DESTINATION ${CMAKE_CURRENT_BINARY_DIR} /../../../include )
55
+
56
+ # Install files in system directories
57
+
58
+ install (TARGETS ${PROJECT_NAME} -ibex DESTINATION ${CMAKE_INSTALL_LIBDIR} )
59
+ install (FILES ${CODAC_IBEX_HDR} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} /${PROJECT_NAME}-ibex )
60
+ install (FILES ${CODAC_IBEX_MAIN_HEADER} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} /${PROJECT_NAME}-ibex )
0 commit comments