OPTION( USE_SYSTEM_SQLITE3 "Use system-wide Sqlite3 instead of Wt's version" OFF)

IF(USE_SYSTEM_SQLITE3)
  FIND_PACKAGE( Sqlite3 REQUIRED)
ELSE(USE_SYSTEM_SQLITE3)
  SET(Sqlite3_SRCS amalgamation/sqlite3.c)
ENDIF(USE_SYSTEM_SQLITE3)

ADD_LIBRARY(wtdbosqlite3
  Sqlite3.C
  ${Sqlite3_SRCS}
)

MESSAGE("** Wt::Dbo: building SQLite3 backend.")

TARGET_LINK_LIBRARIES(wtdbosqlite3 wtdbo ${SQLITE3_LIBRARIES} ${BOOST_WT_DT_LIB})

IF(NOT WIN32)
  TARGET_LINK_LIBRARIES(wtdbosqlite3 dl)
ENDIF(NOT WIN32)

INSTALL(TARGETS wtdbosqlite3
    RUNTIME DESTINATION bin
    LIBRARY DESTINATION ${LIB_INSTALL_DIR}
    ARCHIVE DESTINATION ${LIB_INSTALL_DIR})

SET_TARGET_PROPERTIES(
  wtdbosqlite3
PROPERTIES
  VERSION ${VERSION_SERIES}.${VERSION_MAJOR}.${VERSION_MINOR}
  SOVERSION ${WTDBO_SOVERSION}
  DEBUG_POSTFIX "d"
)

INSTALL_FILES(/include/Wt/Dbo/backend "^Sqlite3$")

IF(POSTGRES_FOUND)
  MESSAGE("** Wt::Dbo: building Postgres backend.")
  ADD_LIBRARY(wtdbopostgres
    Postgres.C
    )
  TARGET_LINK_LIBRARIES(wtdbopostgres wtdbo ${POSTGRES_LIBRARIES} ${BOOST_WT_DT_LIB})

  INCLUDE_DIRECTORIES(${POSTGRES_INCLUDE})

  INSTALL(TARGETS wtdbopostgres
    RUNTIME DESTINATION bin
    LIBRARY DESTINATION ${LIB_INSTALL_DIR}
    ARCHIVE DESTINATION ${LIB_INSTALL_DIR})

  SET_TARGET_PROPERTIES(
    wtdbopostgres
  PROPERTIES
    VERSION ${VERSION_SERIES}.${VERSION_MAJOR}.${VERSION_MINOR}
    SOVERSION ${WTDBO_SOVERSION}
    DEBUG_POSTFIX "d"
  )

  INSTALL_FILES(/include/Wt/Dbo/backend "^Postgres$")
ELSE(POSTGRES_FOUND)
  MESSAGE("** Wt::Dbo: could not find libpq development files, not building Postgres backend.")
ENDIF(POSTGRES_FOUND)

