You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
80 lines
2.0 KiB
80 lines
2.0 KiB
set(SOURCES
|
|
lace.c
|
|
sha2.c
|
|
sylvan_bdd.c
|
|
sylvan_cache.c
|
|
sylvan_common.c
|
|
sylvan_gmp.c
|
|
sylvan_ldd.c
|
|
sylvan_mt.c
|
|
sylvan_mtbdd.c
|
|
sylvan_obj.cpp
|
|
sylvan_refs.c
|
|
sylvan_sl.c
|
|
sylvan_stats.c
|
|
sylvan_table.c
|
|
storm_wrapper.cpp
|
|
sylvan_storm_rational_function.c
|
|
sylvan_storm_rational_number.c
|
|
)
|
|
|
|
set(HEADERS
|
|
lace.h
|
|
sylvan.h
|
|
sylvan_bdd.h
|
|
sylvan_cache.h
|
|
sylvan_config.h
|
|
sylvan_common.h
|
|
sylvan_gmp.h
|
|
sylvan_int.h
|
|
sylvan_ldd.h
|
|
sylvan_ldd_int.h
|
|
sylvan_mt.h
|
|
sylvan_mtbdd.h
|
|
sylvan_mtbdd_int.h
|
|
sylvan_obj.hpp
|
|
sylvan_stats.h
|
|
sylvan_table.h
|
|
sylvan_tls.h
|
|
storm_wrapper.h
|
|
sylvan_bdd_storm.h
|
|
sylvan_mtbdd_storm.h
|
|
sylvan_storm_rational_function.h
|
|
sylvan_storm_rational_number.h
|
|
)
|
|
|
|
option(BUILD_SHARED_LIBS "Enable/disable creation of shared libraries" ON)
|
|
option(BUILD_STATIC_LIBS "Enable/disable creation of static libraries" ON)
|
|
|
|
add_library(sylvan ${SOURCES})
|
|
|
|
find_package(GMP REQUIRED)
|
|
|
|
include_directories(sylvan ${GMP_INCLUDE_DIR})
|
|
target_link_libraries(sylvan m pthread ${GMP_LIBRARIES})
|
|
|
|
if(UNIX AND NOT APPLE)
|
|
target_link_libraries(sylvan rt)
|
|
endif()
|
|
|
|
option(SYLVAN_STATS "Collect statistics" OFF)
|
|
if(SYLVAN_STATS)
|
|
set_target_properties(sylvan PROPERTIES COMPILE_DEFINITIONS "SYLVAN_STATS")
|
|
endif()
|
|
|
|
install(TARGETS sylvan DESTINATION "${CMAKE_INSTALL_LIBDIR}")
|
|
install(FILES ${HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
|
|
|
|
# MODIFICATIONS NEEDED MADE FOR STORM
|
|
|
|
# We need to make sure that the binary is put into a folder that is independent of the
|
|
# build type. Otherwise -- for example when using Xcode -- the binary might end up in a
|
|
# sub-folder "Debug" or "Release".
|
|
set_target_properties(sylvan PROPERTIES
|
|
ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${CMAKE_CURRENT_BINARY_DIR}
|
|
ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${CMAKE_CURRENT_BINARY_DIR})
|
|
|
|
if(USE_CARL)
|
|
message(STATUS "Sylvan - linking CArL.")
|
|
target_link_libraries(sylvan ${carl_LIBRARIES})
|
|
endif(USE_CARL)
|