From 1b8cd916183c00626be6525f22cca5f189b12907 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADtor=20Santos=20Costa?= Date: Fri, 19 Jun 2015 01:20:49 +0100 Subject: [PATCH] cudd integration --- packages/bdd/CMakeLists.txt | 62 ++++++++++++++++--------------- packages/bdd/cmake/FindCUDD.cmake | 23 ++++++++---- 2 files changed, 48 insertions(+), 37 deletions(-) diff --git a/packages/bdd/CMakeLists.txt b/packages/bdd/CMakeLists.txt index 43320318f..3f769bfbc 100644 --- a/packages/bdd/CMakeLists.txt +++ b/packages/bdd/CMakeLists.txt @@ -19,56 +19,58 @@ ENDIF (NOT YAP_FOUND) macro_optional_find_package (CUDD ON) macro_log_feature (CUDD_FOUND "CUDD" "Use CUDD Library" - "http://www.r.org" FALSE) + "http://vlsi.colorado.edu/~fabio/CUDD/" FALSE) IF (CUDD_FOUND) # CUDD_FOUND - system has Cudd # CUDD_LIBRARIES - Link these to use Cudd # CUDD_INCLUDE_DIR - Include directory for using Cudd - - INCLUDE_DIRECTORIES( - ${YAP_INCLUDE_DIR} - ${CUDD_INCLUDE_DIR} - ${CMAKE_CURRENT_BINARY_DIR} - . - ) - check_include_file( util.h HAVE_UTIL_H ) - check_include_file( cudd/util.h HAVE_CUDD_UTIL_H ) - check_include_file( cudd.h HAVE_CUDD_H ) - check_include_file( cudd/cudd.h HAVE_CUDD_CUDD_H ) - check_include_file( cuddInt.h HAVE_CUDDINT_H ) - check_include_file( cudd/cuddInt.h HAVE_CUDD_CUDDINT_H ) - - configure_file ("${PROJECT_SOURCE_DIR}/cudd_config.h.cmake" - "${PROJECT_BINARY_DIR}/cudd_config.h" ) - - SET ( BDD_SOURCES - cudd.c + SET ( BDD_SOURCES + cudd.c ) ADD_LIBRARY(cudd SHARED ${BDD_SOURCES} ) - if(DEFINED YAP_MAJOR_VERSION) + INCLUDE_DIRECTORIES( + ${CUDD_INCLUDE_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ) + + check_include_files( util.h HAVE_UTIL_H ) + check_include_files( cudd/util.h HAVE_CUDD_UTIL_H ) + check_include_files( cudd.h HAVE_CUDD_H ) + check_include_files( "stdio.h;cudd/cudd.h" HAVE_CUDD_CUDD_H ) + check_include_files( cuddInt.h HAVE_CUDDINT_H ) + check_include_files( "stdio.h;cudd/cudd.h;cudd/cuddInt.h" HAVE_CUDD_CUDDINT_H ) + + configure_file ("${PROJECT_SOURCE_DIR}/cudd_config.h.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/cudd_config.h" ) + + + if(DEFINED YAP_MAJOR_VERSION) TARGET_LINK_LIBRARIES(cudd - ${CUDD_LIBRARIES} - libYap + ${CUDD_LIBRARIES} + libYap ) else() TARGET_LINK_LIBRARIES(cudd - ${CUDD_LIBRARIES} - ${YAP_LIBRARY} + ${CUDD_LIBRARIES} + ${YAP_LIBRARY} ) endif() - + set_target_properties (cudd PROPERTIES PREFIX "") - + + add_subdirectory(simplecudd) + add_subdirectory(simplecudd_lfi) + install(TARGETS cudd LIBRARY DESTINATION ${dlls} ) INSTALL(FILES bdd.yap DESTINATION ${libpl}) - INSTALL(FILES ddnnf.yap DESTINATION ${libpl}) - INSTALL(FILES simpbool.yap DESTINATION ${libpl}) - INSTALL(FILES trie_sp.yap DESTINATION ${libpl}) + INSTALL(FILES ddnnf.yap DESTINATION ${libpl}) + INSTALL(FILES simpbool.yap DESTINATION ${libpl}) + INSTALL(FILES trie_sp.yap DESTINATION ${libpl}) ENDIF (CUDD_FOUND) diff --git a/packages/bdd/cmake/FindCUDD.cmake b/packages/bdd/cmake/FindCUDD.cmake index fe8127f16..99fe30be4 100644 --- a/packages/bdd/cmake/FindCUDD.cmake +++ b/packages/bdd/cmake/FindCUDD.cmake @@ -27,15 +27,14 @@ if ( NOT( CUDD_INCLUDE_DIR AND CUDD_LIBRARIES ) OR NOT CUDD_FOUND ) find_path(CUDD_INCLUDE_DIR - NAMES cudd.h - PATHS $ENV{CUDD_DIR}/include/cudd + NAMES cudd.h cudd.cudd.h $ENV{CUDD_DIR}/include $ENV{CUDD_DIR} + /usr/local/yap/include + /usr/local/Yap/include ~/Library/Frameworks /Library/Frameworks - /usr/local/include/cudd /usr/local/include - /usr/include/cudd /usr/include/ /sw/include # Fink /opt/local/include # MacPorts @@ -58,6 +57,8 @@ if ( NOT( CUDD_INCLUDE_DIR AND CUDD_LIBRARIES ) OR NOT CUDD_FOUND ) $ENV{CUDD_DIR}/lib-dbg $ENV{CUDD_DIR} $ENV{CUDD_DIR}/cudd + /usr/local/yap/lib + /usr/local/Yap/lib ~/Library/Frameworks /Library/Frameworks /usr/local/lib @@ -84,7 +85,9 @@ if ( NOT( CUDD_INCLUDE_DIR AND CUDD_LIBRARIES ) OR NOT CUDD_FOUND ) $ENV{CUDD_DIR}/lib-dbg $ENV{CUDD_DIR} $ENV{CUDD_DIR}/util - ~/Library/Frameworks + /usr/local/yap/lib + /usr/local/Yap/lib + ~/Library/Frameworks /Library/Frameworks /usr/local/lib /usr/local/lib64 @@ -109,7 +112,9 @@ if ( NOT( CUDD_INCLUDE_DIR AND CUDD_LIBRARIES ) OR NOT CUDD_FOUND ) $ENV{CUDD_DIR}/lib-dbg $ENV{CUDD_DIR} $ENV{CUDD_DIR}/st - ~/Library/Frameworks + /usr/local/yap/lib + /usr/local/Yap/lib + ~/Library/Frameworks /Library/Frameworks /usr/local/lib /usr/local/lib64 @@ -132,6 +137,8 @@ if ( NOT( CUDD_INCLUDE_DIR AND CUDD_LIBRARIES ) OR NOT CUDD_FOUND ) $ENV{CUDD_DIR}/lib-dbg $ENV{CUDD_DIR} $ENV{CUDD_DIR}/epd + /usr/local/yap/lib + /usr/local/Yap/lib ~/Library/Frameworks /Library/Frameworks /usr/local/lib @@ -155,7 +162,9 @@ if ( NOT( CUDD_INCLUDE_DIR AND CUDD_LIBRARIES ) OR NOT CUDD_FOUND ) $ENV{CUDD_DIR}/lib-dbg $ENV{CUDD_DIR} $ENV{CUDD_DIR}/mtr - ~/Library/Frameworks + /usr/local/yap/lib + /usr/local/Yap/lib + ~/Library/Frameworks /Library/Frameworks /usr/local/lib /usr/local/lib64