# NGLDB
FIND_PACKAGE(PostgreSQL REQUIRED)

OPTION(ENABLE_DB_TRACING "Enable trace output for NGLDB library" OFF)
IF(ENABLE_DB_TRACING)
  add_compile_definitions(NGLDB_ENABLE_TRACE)
ENDIF(ENABLE_DB_TRACING)

#
# NGL Database Library
#
SET(ngldb_SRCS
  dbcommon.h
  dbconnection.cpp
  dbconnection.h
  db_service_handler.h
  dbtransaction.cpp
  dbtransaction.h
  ngldb_export.h
  ngldb_logger.cpp
  ngldb_logger.h
  nsqlquery.cpp
  nsqlquery.h
  sql_query_janitor.cpp
  sql_query_janitor.h
)

NGL_ADD_LIBRARY(AAR SV HLA WS ngldb SHARED ${ngldb_SRCS})
NGL_TARGET_LINK_LIBRARIES(ngldb
  PRIVATE
    NGLLogger
    nglsettings
    ${PostgreSQL_LIBRARIES}
  PUBLIC
    Qt5::Core
    Qt5::Sql
)
NGL_TARGET_INCLUDE_DIRECTORIES(ngldb
  PRIVATE
    ${PostgreSQL_INCLUDE_DIR}
  INTERFACE
    ${CMAKE_CURRENT_SOURCE_DIR}/../
)

NGL_INSTALL_TARGET(ngldb)
