Files
SAPFOR/projects/SageNewSrc/CMakeLists.txt

56 lines
1.8 KiB
CMake
Raw Permalink Normal View History

2024-10-04 12:02:31 +03:00
cmake_minimum_required(VERSION 3.10)
set(project SageNewSrc)
#set(CMAKE_C_STANDARD 11)
#also named as libSage
if (TARGET ${project})
return()
endif ()
project(${project})
message("processing ${project}")
# Read pathes to external sapfor directories
if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/../paths.txt")
2025-03-13 12:48:07 +03:00
# message("Found paths.txt, using custom paths.")
2024-10-04 12:02:31 +03:00
FILE(STRINGS ../paths.txt SAPFOR_PATHS)
else ()
2025-03-13 12:48:07 +03:00
# message("Not found paths.txt, using default paths.")
2024-10-04 12:02:31 +03:00
FILE(STRINGS ../paths.default.txt SAPFOR_PATHS)
endif ()
foreach (NameAndValue ${SAPFOR_PATHS})
# Strip leading spaces
string(REGEX REPLACE "^[ ]+" "" NameAndValue ${NameAndValue})
# Find variable name
string(REGEX MATCH "^[^=]+" Name ${NameAndValue})
# Find the value
string(REPLACE "${Name}=" "" Value ${NameAndValue})
# Set the variable, note the ../ because we are deeper than the file
set(${Name} "../${Value}")
endforeach ()
# if not default ${sage_sources} must be set in ../paths.txt
2025-03-13 09:52:03 +03:00
file(GLOB SAGE_HEADERS1 ${sage_include_1}/*.h)
file(GLOB SAGE_HEADERS2 ${sage_include_2}/*.h)
2024-10-04 12:02:31 +03:00
set(SOURCE_LIB
${sage_sources}/annotate.tab.c
${sage_sources}/comments.c
${sage_sources}/low_level.c
${sage_sources}/toolsann.c
${sage_sources}/unparse.c
2025-03-13 09:52:03 +03:00
${SAGE_HEADERS1}
${SAGE_HEADERS2})
2024-10-04 12:02:31 +03:00
2025-03-13 09:52:03 +03:00
# if not default ${sage_include_1}, ${sage_include_2} must be set in ../paths.txt
include_directories(${sage_include_1} ${sage_include_2})
2024-10-04 12:02:31 +03:00
add_library(SageNewSrc STATIC ${SOURCE_LIB})
add_subdirectory(../SageOldSrc ${CMAKE_CURRENT_BINARY_DIR}/SageOldSrc)
target_link_libraries(SageNewSrc SageOldSrc)
if (MSVC_IDE)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /MP")
else()
2024-10-04 15:26:19 +03:00
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -O3")
2023-09-14 19:43:13 +03:00
endif()