cmake support for bdd package
This commit is contained in:
parent
e710319c0e
commit
76cd423784
@ -10,6 +10,8 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
|||||||
cmake_policy( NO_POLICY_SCOPE )
|
cmake_policy( NO_POLICY_SCOPE )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
set(configurations Debug)
|
||||||
|
|
||||||
cmake_policy(SET CMP0043 NEW)
|
cmake_policy(SET CMP0043 NEW)
|
||||||
|
|
||||||
project(YAP C CXX)
|
project(YAP C CXX)
|
||||||
@ -543,6 +545,10 @@ macro_optional_add_subdirectory (packages/raptor)
|
|||||||
|
|
||||||
macro_optional_add_subdirectory (packages/jpl)
|
macro_optional_add_subdirectory (packages/jpl)
|
||||||
|
|
||||||
|
macro_optional_add_subdirectory (packages/swig)
|
||||||
|
|
||||||
|
macro_optional_add_subdirectory (packages/bdd)
|
||||||
|
|
||||||
#add_subdirectory (packages/prosqlite)
|
#add_subdirectory (packages/prosqlite)
|
||||||
|
|
||||||
#add_subdirectory (packages/zlib)
|
#add_subdirectory (packages/zlib)
|
||||||
|
62
packages/bdd/CMakeLists.txt
Normal file
62
packages/bdd/CMakeLists.txt
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
CMAKE_MINIMUM_REQUIRED ( VERSION 2.8 )
|
||||||
|
|
||||||
|
PROJECT ( YAP_BDD C )
|
||||||
|
|
||||||
|
SET ( YAP_BDD_VERSION 0.1)
|
||||||
|
|
||||||
|
SET(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
|
||||||
|
|
||||||
|
|
||||||
|
if (NOT YAP_FOUND)
|
||||||
|
FIND_PACKAGE(YAP REQUIRED)
|
||||||
|
ENDIF (NOT YAP_FOUND)
|
||||||
|
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://www.r.org" 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}
|
||||||
|
.
|
||||||
|
)
|
||||||
|
|
||||||
|
SET ( BDD_SOURCES
|
||||||
|
cudd.c
|
||||||
|
)
|
||||||
|
|
||||||
|
ADD_LIBRARY(cudd SHARED ${BDD_SOURCES} )
|
||||||
|
|
||||||
|
if(DEFINED YAP_MAJOR_VERSION)
|
||||||
|
TARGET_LINK_LIBRARIES(cudd
|
||||||
|
${CUDD_LIBRARIES}
|
||||||
|
libYap
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
TARGET_LINK_LIBRARIES(cudd
|
||||||
|
${CUDD_LIBRARIES}
|
||||||
|
${YAP_LIBRARY}
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set_target_properties (cudd PROPERTIES PREFIX "")
|
||||||
|
|
||||||
|
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})
|
||||||
|
|
||||||
|
ENDIF (CUDD_FOUND)
|
169
packages/bdd/cmake/FindCUDD.cmake
Normal file
169
packages/bdd/cmake/FindCUDD.cmake
Normal file
@ -0,0 +1,169 @@
|
|||||||
|
# - Try to find the CUD BDD RDF parsing library (http://librdf.org/CUDD /)
|
||||||
|
# Once done this will define
|
||||||
|
#
|
||||||
|
# CUDD_FOUND - system has CUDD
|
||||||
|
# CUDD_LIBRARIES - Link these to use CUDD
|
||||||
|
# CUDD_INCLUDE_DIR - Include directory for using CUDD
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Based on FindFontconfig Copyright (c) 2006,2007 Laurent Montel, <montel@kde.org>
|
||||||
|
#
|
||||||
|
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||||
|
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||||
|
|
||||||
|
|
||||||
|
MACRO ( FIND_CUDD )
|
||||||
|
|
||||||
|
ENDMACRO ()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Check if we have cached results in case the last round was successful.
|
||||||
|
if ( NOT( CUDD_INCLUDE_DIR AND CUDD_LIBRARIES ) OR NOT CUDD_FOUND )
|
||||||
|
|
||||||
|
set( CUDD_LDFLAGS )
|
||||||
|
|
||||||
|
find_package(PkgConfig)
|
||||||
|
|
||||||
|
|
||||||
|
find_path(CUDD_INCLUDE_DIR
|
||||||
|
NAMES cudd.h
|
||||||
|
PATHS $ENV{CUDD_DIR}/include/cudd
|
||||||
|
$ENV{CUDD_DIR}/include
|
||||||
|
$ENV{CUDD_DIR}
|
||||||
|
~/Library/Frameworks
|
||||||
|
/Library/Frameworks
|
||||||
|
/usr/local/include/cudd
|
||||||
|
/usr/local/include
|
||||||
|
/usr/include/cudd
|
||||||
|
/usr/include/
|
||||||
|
/sw/include # Fink
|
||||||
|
/opt/local/include # MacPorts
|
||||||
|
/opt/csw/include # Blastwave
|
||||||
|
/opt/include
|
||||||
|
/usr/freeware/include
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
find_library(CUDD_INTERFACE_LIBRARY
|
||||||
|
NAMES cudd
|
||||||
|
PATHS
|
||||||
|
$ENV{CUDD_DIR}/lib
|
||||||
|
$ENV{CUDD_DIR}/lib64
|
||||||
|
$ENV{CUDD_DIR}/lib-dbg
|
||||||
|
$ENV{CUDD_DIR}
|
||||||
|
$ENV{CUDD_DIR}/cudd
|
||||||
|
~/Library/Frameworks
|
||||||
|
/Library/Frameworks
|
||||||
|
/usr/local/lib
|
||||||
|
/usr/local/lib64
|
||||||
|
/usr/lib
|
||||||
|
/usr/lib64
|
||||||
|
/usr/local/lib/cudd
|
||||||
|
/usr/local/lib64/cudd
|
||||||
|
/usr/lib/cudd
|
||||||
|
/usr/lib64/cudd
|
||||||
|
/usr/freeware/lib64
|
||||||
|
)
|
||||||
|
|
||||||
|
if ( CUDD_INTERFACE_LIBRARY AND CUDD_INCLUDE_DIR )
|
||||||
|
set( CUDD_FOUND ON )
|
||||||
|
list( APPEND CUDD_LIBRARIES ${CUDD_INTERFACE_LIBRARY} )
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
find_library(CUDD_UTIL_LIBRARY
|
||||||
|
NAMES cuddutil util
|
||||||
|
PATHS
|
||||||
|
$ENV{CUDD_DIR}/lib
|
||||||
|
$ENV{CUDD_DIR}/lib64
|
||||||
|
$ENV{CUDD_DIR}/lib-dbg
|
||||||
|
$ENV{CUDD_DIR}
|
||||||
|
$ENV{CUDD_DIR}/util
|
||||||
|
~/Library/Frameworks
|
||||||
|
/Library/Frameworks
|
||||||
|
/usr/local/lib
|
||||||
|
/usr/local/lib64
|
||||||
|
/usr/lib
|
||||||
|
/usr/lib64
|
||||||
|
/usr/local/lib/util
|
||||||
|
/usr/local/lib64/util
|
||||||
|
/usr/lib/util
|
||||||
|
/usr/lib64/util
|
||||||
|
/usr/freeware/lib64
|
||||||
|
)
|
||||||
|
|
||||||
|
if ( CUDD_UTIL_LIBRARY )
|
||||||
|
list( APPEND CUDD_LIBRARIES ${CUDD_UTIL_LIBRARY} )
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
find_library(CUDD_ST_LIBRARY
|
||||||
|
NAMES cuddst st
|
||||||
|
PATHS
|
||||||
|
$ENV{CUDD_DIR}/lib
|
||||||
|
$ENV{CUDD_DIR}/lib64
|
||||||
|
$ENV{CUDD_DIR}/lib-dbg
|
||||||
|
$ENV{CUDD_DIR}
|
||||||
|
$ENV{CUDD_DIR}/st
|
||||||
|
~/Library/Frameworks
|
||||||
|
/Library/Frameworks
|
||||||
|
/usr/local/lib
|
||||||
|
/usr/local/lib64
|
||||||
|
/usr/lib
|
||||||
|
/usr/lib64
|
||||||
|
/usr/lib/st
|
||||||
|
/usr/lib64/st
|
||||||
|
/usr/freeware/lib64
|
||||||
|
)
|
||||||
|
|
||||||
|
if ( CUDD_ST_LIBRARY )
|
||||||
|
list( APPEND CUDD_LIBRARIES ${CUDD_ST_LIBRARY} )
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
find_library(CUDD_EPD_LIBRARY
|
||||||
|
NAMES epd
|
||||||
|
PATHS
|
||||||
|
$ENV{CUDD_DIR}/lib
|
||||||
|
$ENV{CUDD_DIR}/lib64
|
||||||
|
$ENV{CUDD_DIR}/lib-dbg
|
||||||
|
$ENV{CUDD_DIR}
|
||||||
|
$ENV{CUDD_DIR}/epd
|
||||||
|
~/Library/Frameworks
|
||||||
|
/Library/Frameworks
|
||||||
|
/usr/local/lib
|
||||||
|
/usr/local/lib64
|
||||||
|
/usr/lib
|
||||||
|
/usr/lib64
|
||||||
|
/usr/lib/epd
|
||||||
|
/usr/lib64/epd
|
||||||
|
/usr/freeware/lib64
|
||||||
|
)
|
||||||
|
|
||||||
|
if ( CUDD_MTR_LIBRARY )
|
||||||
|
list( APPEND CUDD_LIBRARIES ${CUDD_MTR_LIBRARY} )
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
find_library(CUDD_MTR_LIBRARY
|
||||||
|
NAMES mtr
|
||||||
|
PATHS
|
||||||
|
$ENV{CUDD_DIR}/lib
|
||||||
|
$ENV{CUDD_DIR}/lib64
|
||||||
|
$ENV{CUDD_DIR}/lib-dbg
|
||||||
|
$ENV{CUDD_DIR}
|
||||||
|
$ENV{CUDD_DIR}/mtr
|
||||||
|
~/Library/Frameworks
|
||||||
|
/Library/Frameworks
|
||||||
|
/usr/local/lib
|
||||||
|
/usr/local/lib64
|
||||||
|
/usr/lib
|
||||||
|
/usr/lib64
|
||||||
|
/usr/lib/mtr
|
||||||
|
/usr/lib64/mtr
|
||||||
|
/usr/freeware/lib64
|
||||||
|
)
|
||||||
|
|
||||||
|
if ( CUDD_MTR_LIBRARY )
|
||||||
|
list( APPEND CUDD_LIBRARIES ${CUDD_MTR_LIBRARY} )
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
|
||||||
|
endif () # Check for cached values
|
76
packages/bdd/cmake/FindYAP.cmake
Normal file
76
packages/bdd/cmake/FindYAP.cmake
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
# CMake module to search for YAP library
|
||||||
|
#
|
||||||
|
# If YAP_INCLUDE_DIR and YAP_PL_LIBRARY_DIR sets YAP_FOUND
|
||||||
|
# Also checks for YAP_LIBRARY
|
||||||
|
|
||||||
|
if (YAP_ROOT)
|
||||||
|
set( YAP_INCLUDE_DIR ../../include )
|
||||||
|
set( YAP_PL_LIBRARY_DIR ${libpl} )
|
||||||
|
set( YAP_LIBRARY libYap )
|
||||||
|
set( YAP_DLLS ${dlls} )
|
||||||
|
|
||||||
|
else()
|
||||||
|
|
||||||
|
FIND_PATH(YAP_INCLUDE_DIR YapInterface.h
|
||||||
|
/usr/local/include/Yap
|
||||||
|
/usr/include/Yap
|
||||||
|
#MSVC
|
||||||
|
"$ENV{LIB_DIR}/include/Yap"
|
||||||
|
#mingw
|
||||||
|
c:/msys/local/include/Yap
|
||||||
|
c:/Yap/include/Yap
|
||||||
|
c:/Yap64/include/Yap
|
||||||
|
"c:/Program Files/Yap/include/Yap"
|
||||||
|
"c:/Program Files (x86)/Yap/include/Yap"
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_PATH(YAP_PL_LIBRARY_DIR terms.yap
|
||||||
|
/usr/local/share/Yap
|
||||||
|
/usr/share/Yap
|
||||||
|
#MSVC
|
||||||
|
"$ENV{LIB_DIR}/share/Yap"
|
||||||
|
#mingw
|
||||||
|
c:/msys/local/share/Yap
|
||||||
|
c:/Yap/share/Yap
|
||||||
|
c:/Yap64/share/Yap
|
||||||
|
"c:/Program Files/Yap/share/Yap"
|
||||||
|
"c:/Program Files (x86)/Yap/share/Yap"
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(YAP_LIBRARY NAMES libYap.a libYap.so libYap.dylib PATHS
|
||||||
|
/usr/local/lib
|
||||||
|
/usr/lib
|
||||||
|
#MSVC
|
||||||
|
"$ENV{LIB_DIR}/lib"
|
||||||
|
#mingw
|
||||||
|
c:/msys/local/lib
|
||||||
|
c:/msys/local/lib
|
||||||
|
c:/Yap/lib
|
||||||
|
c:/Yap64/lib
|
||||||
|
"c:/Program Files/Yap/lib"
|
||||||
|
"c:/Program Files (x86)/Yap/lib"
|
||||||
|
)
|
||||||
|
|
||||||
|
If (YAP_INCLUDE_DIR AND YAP_PL_LIBRARY_DIR)
|
||||||
|
SET(YAP_FOUND TRUE)
|
||||||
|
ENDIF (YAP_INCLUDE_DIR AND YAP_PL_LIBRARY_DIR)
|
||||||
|
|
||||||
|
IF (YAP_FOUND)
|
||||||
|
|
||||||
|
IF (NOT YAP_FIND_QUIETLY)
|
||||||
|
MESSAGE(STATUS "Found YAP: ${YAP_LIBRARY}")
|
||||||
|
ENDIF (NOT YAP_FIND_QUIETLY)
|
||||||
|
|
||||||
|
get_filename_component( YAP_DLLS ${YAP_LIBRARY} PATH )
|
||||||
|
set( dlls ${YAP_DLLS}/Yap )
|
||||||
|
|
||||||
|
ELSE (YAP_FOUND)
|
||||||
|
|
||||||
|
IF (YAP_FIND_REQUIRED)
|
||||||
|
MESSAGE(FATAL_ERROR "Could not find YAP")
|
||||||
|
ENDIF (YAP_FIND_REQUIRED)
|
||||||
|
|
||||||
|
ENDIF (YAP_FOUND)
|
||||||
|
|
||||||
|
endif()
|
||||||
|
|
@ -103,7 +103,7 @@ if (ODBC_FOUND OR MYSQL_FOUND OR SQLITE3_FOUND OR PostgreSQL_FOUND)
|
|||||||
endif (PostgreSQL_FOUND)
|
endif (PostgreSQL_FOUND)
|
||||||
|
|
||||||
add_custom_target (plmyddas ALL DEPENDS ${GENERATED_SOURCES} ) # WORKING_DIRECTORY ${CMAKE_BINARY_DIR} )
|
add_custom_target (plmyddas ALL DEPENDS ${GENERATED_SOURCES} ) # WORKING_DIRECTORY ${CMAKE_BINARY_DIR} )
|
||||||
endif (ODBC_FOUND OR MYSQL_FOUND OR SQLITE3_FOUND)
|
endif (ODBC_FOUND OR MYSQL_FOUND OR SQLITE3_FOUND OR PostgreSQL_FOUND)
|
||||||
|
|
||||||
cmake_dependent_option (WITH_MYDDAS_Stats
|
cmake_dependent_option (WITH_MYDDAS_Stats
|
||||||
"enable the MYDDAS library statistics support" OFF
|
"enable the MYDDAS library statistics support" OFF
|
||||||
|
Reference in New Issue
Block a user