From a761bd752c720ef10de27ba5a174c2f74ed54872 Mon Sep 17 00:00:00 2001 From: Vitor Santos Costa Date: Thu, 14 Apr 2016 23:24:07 +0100 Subject: [PATCH] fix cmake for CUDD --- CMakeLists.txt | 10 + packages/bdd/CMakeLists.txt | 18 +- packages/cplint/CMakeLists.txt | 247 ++++++++---------- .../approx/simplecuddLPADs/CMakeLists.txt | 4 +- 4 files changed, 128 insertions(+), 151 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 892d650db..8f8a467a8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -121,7 +121,17 @@ else() set(YAP_STARTUP startup.yss) endif() +set(WITH_CUDD YES CACHE FILEPATH "Try to use Cudd (currently Cudd 3)") + +if (WITH_CUDD) + include(cudd) +endif(WITH_CUDD) + +set(WITH_JAVA YES CACHE FILEPATH "Try to use Java (currently Java 6,7,8)") + +if (WITH_JAVA) include(java) +endif(WITH_JAVA) set(WITH_PYTHON YES CACHE FILEPATH "Try to use Python (currently Python 3)") diff --git a/packages/bdd/CMakeLists.txt b/packages/bdd/CMakeLists.txt index dc8678e7b..388bef694 100644 --- a/packages/bdd/CMakeLists.txt +++ b/packages/bdd/CMakeLists.txt @@ -16,16 +16,12 @@ IF (NOT YAP_FOUND) MESSAGE (SEND_ERROR "YAP was not found!") ENDIF (NOT YAP_FOUND) -macro_optional_find_package (CUDD ON) -macro_log_feature (CUDD_FOUND "CUDD" - "Use CUDD Library" - "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 - SET ( BDD_SOURCES + SET ( BDD_SOURCES cudd.c ) @@ -36,18 +32,11 @@ IF (CUDD_FOUND) ${CMAKE_CURRENT_BINARY_DIR} ) - check_include_files( "stdio.h;cuddInt.h" HAVE_CUDDINT_H ) - check_include_files( "stdio.h;cudd/cuddInt.h" HAVE_CUDD_CUDDINT_H ) - check_include_files( "stdio.h;dddmpInt.h" HAVE_DDDMPINT_H ) - check_include_files( "stdio.h;dddmp/dddmpInt.h" HAVE_DDDMP_DDDMPINT_H ) - check_include_files( "stdio.h;cuddObj.hh" HAVE_CUDDOBJ_HH ) - check_include_files( "stdio.h;cudd/cuddObj.hh" HAVE_CUDD_CUDDOBJ_HH ) - configure_file ("${PROJECT_SOURCE_DIR}/cudd_config.h.cmake" "${CMAKE_CURRENT_BINARY_DIR}/cudd_config.h" ) - if(DEFINED YAP_MAJOR_VERSION) + if(DEFINED YAP_MAJOR_VERSION) TARGET_LINK_LIBRARIES(cudd ${CUDD_LIBRARIES} libYap @@ -78,6 +67,3 @@ IF (CUDD_FOUND) ENDIF (CUDD_FOUND) -SET (CUDD_FOUND_EXPORT ${CUDD_FOUND} PARENT_SCOPE) -SET (CUDD_LIBRARIES_EXPORT ${CUDD_LIBRARIES} PARENT_SCOPE) -SET (CUDD_INCLUDE_DIR_EXPORT ${CUDD_INCLUDE_DIR} ${CMAKE_CURRENT_BINARY_DIR} PARENT_SCOPE) diff --git a/packages/cplint/CMakeLists.txt b/packages/cplint/CMakeLists.txt index 02d5d82b4..951e4cff9 100644 --- a/packages/cplint/CMakeLists.txt +++ b/packages/cplint/CMakeLists.txt @@ -1,149 +1,131 @@ -SET( CMAKE_FIND_FRAMEWORK LAST) -SET( CMAKE_FIND_APPBUNDLE LAST) - # Be sure to also update these in Makefile! set(SO_MAJOR 1) set(SO_MINOR 0) set(SO_PATCH 0) -find_package (CUDD) -macro_log_feature (CUDD_FOUND "CUDD" -"Use CUDD Library" -"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( -${CUDD_INCLUDE_DIR} -${CMAKE_CURRENT_BINARY_DIR} -) + INCLUDE_DIRECTORIES( + ${CMAKE_CURRENT_BINARY_DIR} + ${CUDD_INCLUDE_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 ) - - -set( CPLINT_SOURCES - cplint.h - cplint_yap.c - cplint_Prob.c ) - -set( BDDEM_SOURCES - slipcase/bddem.c + set( CPLINT_SOURCES cplint.h -) + cplint_yap.c + cplint_Prob.c ) -set (CPLINT_PROGRAMS - lpadvel.pl - lpadclpbn.pl - lpadsld.pl - lpad.pl - cpl.pl - approx/bestfirst.pl - approx/bestk.pl - approx/deepdyn.pl - approx/deepit.pl - approx/exact.pl - approx/exact_mem.pl - approx/montecarlo.pl - approx/params.pl - approx/parsing.pl - approx/utility.pl - approx/tptree_lpad.pl - ) + set( BDDEM_SOURCES + slipcase/bddem.c + cplint.h + ) -set (CPLINT_SEMANTICS_PROGRAMS - semlpadsld.pl - semlpad.pl - semcpl.pl - slg.pl - ) + set (CPLINT_PROGRAMS + lpadvel.pl + lpadclpbn.pl + lpadsld.pl + lpad.pl + cpl.pl + approx/bestfirst.pl + approx/bestk.pl + approx/deepdyn.pl + approx/deepit.pl + approx/exact.pl + approx/exact_mem.pl + approx/montecarlo.pl + approx/params.pl + approx/parsing.pl + approx/utility.pl + approx/tptree_lpad.pl + ) -set (CPLINT_LEARNING_PROGRAMS - em/em.pl - em/inference.pl - lemur/dv_lemur.pl - lemur/inference_lemur.pl - lemur/lemur.pl - lemur/revise_lemur.pl - lemur/slipcover_lemur.pl - rib/inference_ib.pl - rib/rib.pl - slipcase/inference_sl.pl - slipcase/revise.pl - slipcase/slipcase.pl - slipcover/revise_sl.pl - slipcover/slipcover.pl - ) + set (CPLINT_SEMANTICS_PROGRAMS + semlpadsld.pl + semlpad.pl + semcpl.pl + slg.pl + ) -set (CPLINT_TEST_PROGRAMS - testcpl.pl -testlpad.pl -testlpadclpbn.pl -testlpadsld_gbfalse.pl -testlpadsld_gbtrue.pl -testlpadsldit.pl -testlpadslditc.pl -testlpadslditr.pl -testlpadvel.pl -testsemcpl.pl -testsemlpad.pl -testsemlpadsld.pl - ) + set (CPLINT_LEARNING_PROGRAMS + em/em.pl + em/inference.pl + lemur/dv_lemur.pl + lemur/inference_lemur.pl + lemur/lemur.pl + lemur/revise_lemur.pl + lemur/slipcover_lemur.pl + rib/inference_ib.pl + rib/rib.pl + slipcase/inference_sl.pl + slipcase/revise.pl + slipcase/slipcase.pl + slipcover/revise_sl.pl + slipcover/slipcover.pl + ) + + set (CPLINT_TEST_PROGRAMS + testcpl.pl + testlpad.pl + testlpadclpbn.pl + testlpadsld_gbfalse.pl + testlpadsld_gbtrue.pl + testlpadsldit.pl + testlpadslditc.pl + testlpadslditr.pl + testlpadvel.pl + testsemcpl.pl + testsemlpad.pl + testsemlpadsld.pl + ) -set (CPLINT_EXAMPLE_PROGRAMS -examples/alarm.cpl -examples/coin.cpl -examples/coin.uni -examples/coin2.cpl -examples/coin2.uni -examples/dice.cpl -examples/dice.uni -examples/ex.cpl -examples/ex.uni -examples/exapprox.cpl -examples/exapprox.uni -examples/exist.cpl -examples/exist.uni -examples/exist1.cpl -examples/exist1.uni -examples/exrange.cpl -examples/exrange.uni -examples/female.cpl -examples/hiv.cpl -examples/hiv.uni -examples/invalid.cpl -examples/invalid.uni -examples/light.cpl -examples/light.uni -examples/mendel.cpl -examples/mendel.uni -examples/mendels.cpl -examples/mendels.uni -examples/paper_ref.cpl -examples/paper_ref_not.cpl -examples/paper_ref_simple.cpl -examples/school.cpl -examples/school_simple.cpl -examples/school_simple.uni -examples/student.cpl -examples/student.uni -examples/threesideddice.cpl -examples/threesideddice.uni -examples/throws.cpl -examples/throws.uni -examples/trigger.cpl -examples/trigger.uni -examples/twosideddice.cpl -examples/win.cpl -examples/win.uni - ) + set (CPLINT_EXAMPLE_PROGRAMS + examples/alarm.cpl + examples/coin.cpl + examples/coin.uni + examples/coin2.cpl + examples/coin2.uni + examples/dice.cpl + examples/dice.uni + examples/ex.cpl + examples/ex.uni + examples/exapprox.cpl + examples/exapprox.uni + examples/exist.cpl + examples/exist.uni + examples/exist1.cpl + examples/exist1.uni + examples/exrange.cpl + examples/exrange.uni + examples/female.cpl + examples/hiv.cpl + examples/hiv.uni + examples/invalid.cpl + examples/invalid.uni + examples/light.cpl + examples/light.uni + examples/mendel.cpl + examples/mendel.uni + examples/mendels.cpl + examples/mendels.uni + examples/paper_ref.cpl + examples/paper_ref_not.cpl + examples/paper_ref_simple.cpl + examples/school.cpl + examples/school_simple.cpl + examples/school_simple.uni + examples/student.cpl + examples/student.uni + examples/threesideddice.cpl + examples/threesideddice.uni + examples/throws.cpl + examples/throws.uni + examples/trigger.cpl + examples/trigger.uni + examples/twosideddice.cpl + examples/win.cpl + examples/win.uni + ) INCLUDE_DIRECTORIES( ${CUDD_INCLUDE_DIR_EXPORTS} @@ -155,7 +137,7 @@ examples/win.uni ) TARGET_LINK_LIBRARIES(bddem - ${CUDD_LIBRARIES_EXPORT} + ${CUDD_LIBRARIES} libYap ) @@ -181,7 +163,6 @@ examples/win.uni TARGET_LINK_LIBRARIES(cplint ${CUDD_LIBRARIES} libYap - bddem ) add_subDIRECTORY ( approx/simplecuddLPADs ) diff --git a/packages/cplint/approx/simplecuddLPADs/CMakeLists.txt b/packages/cplint/approx/simplecuddLPADs/CMakeLists.txt index a6784506d..293033f5a 100644 --- a/packages/cplint/approx/simplecuddLPADs/CMakeLists.txt +++ b/packages/cplint/approx/simplecuddLPADs/CMakeLists.txt @@ -15,12 +15,12 @@ set_target_properties (LPADbdd PROPERTIES ) target_link_libraries(LPADbdd - ${CUDD_LIBRARIES_EXPORT} + ${CUDD_LIBRARIES} libYap ) INCLUDE_DIRECTORIES( - ${CUDD_INCLUDE_DIR_EXPORT} + ${CUDD_INCLUDE_DIR} ${CMAKE_CURRENT_BINARY_DIR} )