add_pkgconfig_file(libedata-book.pc.in libedata-book-${API_VERSION}.pc)

set(DEPENDENCIES
	camel
	ebackend
	ebook-contacts
	edbus-private
	edataserver
)

set(SOURCES
	e-book-backend-factory.c
	e-book-backend-sexp.c
	e-book-backend-summary.c
	e-book-backend-cache.c
	e-book-backend-sqlitedb.c
	e-book-backend.c
	e-book-cache.c
	e-book-meta-backend.c
	e-book-sqlite.c
	e-data-book.c
	e-data-book-cursor.c
	e-data-book-cursor-cache.c
	e-data-book-cursor-sqlite.c
	e-data-book-direct.c
	e-data-book-factory.c
	e-data-book-view.c
	e-subprocess-book-factory.c
	e-system-locale-watcher.c
	ximian-vcard.h
)

set(HEADERS
	libedata-book.h
	e-book-backend-factory.h
	e-book-backend-sexp.h
	e-book-backend-summary.h
	e-book-backend.h
	e-book-cache.h
	e-book-meta-backend.h
	e-book-sqlite.h
	e-data-book-factory.h
	e-data-book-view.h
	e-data-book.h
	e-data-book-cursor.h
	e-data-book-cursor-cache.h
	e-data-book-cursor-sqlite.h
	e-data-book-direct.h
	e-book-backend-cache.h
	e-book-backend-sqlitedb.h
	e-subprocess-book-factory.h
	e-system-locale-watcher.h
)

if(WITH_LIBDB)
	list(APPEND SOURCES
		e-book-backend-db-cache.c
	)

	list(APPEND HEADERS
		e-book-backend-db-cache.h
	)
endif(WITH_LIBDB)

add_library(edata-book SHARED
	${SOURCES}
	${HEADERS}
)

add_dependencies(edata-book
	${DEPENDENCIES}
)

set_target_properties(edata-book PROPERTIES
	VERSION "${LIBEDATABOOK_CURRENT}.${LIBEDATABOOK_REVISION}.${LIBEDATABOOK_AGE}"
	SOVERSION ${LIBEDATABOOK_CURRENT}
	OUTPUT_NAME edata-book-${API_VERSION}
)

target_compile_definitions(edata-book PRIVATE
	-DG_LOG_DOMAIN=\"libedata-book\"
	-DBACKENDDIR=\"${ebook_backenddir}\"
	-DSUBPROCESS_BOOK_BACKEND_PATH=\"${LIBEXEC_INSTALL_DIR}/evolution-addressbook-factory-subprocess\"
	-DLIBEDATA_BOOK_COMPILATION
)

target_compile_options(edata-book PUBLIC
	${ADDRESSBOOK_CFLAGS}
	${LIBDB_CFLAGS}
	${SQLITE3_CFLAGS}
)

target_include_directories(edata-book PUBLIC
	${CMAKE_BINARY_DIR}
	${CMAKE_BINARY_DIR}/src
	${CMAKE_BINARY_DIR}/src/addressbook
	${CMAKE_BINARY_DIR}/src/private
	${CMAKE_SOURCE_DIR}/src
	${CMAKE_SOURCE_DIR}/src/private
	${CMAKE_SOURCE_DIR}/src/addressbook
	${CMAKE_CURRENT_BINARY_DIR}
	${ADDRESSBOOK_INCLUDE_DIRS}
	${LIBDB_INCLUDE_DIRS}
	${SQLITE3_INCLUDE_DIRS}
)

target_link_libraries(edata-book
	${DEPENDENCIES}
	${ADDRESSBOOK_LDFLAGS}
	${LIBDB_LIBS}
	${SQLITE3_LDFLAGS}
)

install(TARGETS edata-book
	DESTINATION ${LIB_INSTALL_DIR}
)

install(FILES ${HEADERS}
	DESTINATION ${privincludedir}/libedata-book
)

add_executable(e-book-backend-sqlitedb-test EXCLUDE_FROM_ALL e-book-backend-sqlitedb-test.c)

target_compile_definitions(e-book-backend-sqlitedb-test PRIVATE
	-DG_LOG_DOMAIN=\"libedata-book\"
	-DBACKENDDIR=\"${ebook_backenddir}\"
	-DSUBPROCESS_BOOK_BACKEND_PATH=\"${LIBEXEC_INSTALL_DIR}/evolution-addressbook-factory-subprocess\"
	-DLIBEDATA_BOOK_COMPILATION
)

target_compile_options(e-book-backend-sqlitedb-test PUBLIC
	${ADDRESSBOOK_CFLAGS}
	${LIBDB_CFLAGS}
	${SQLITE3_CFLAGS}
)

target_include_directories(e-book-backend-sqlitedb-test PUBLIC
	${CMAKE_BINARY_DIR}
	${CMAKE_BINARY_DIR}/src
	${CMAKE_BINARY_DIR}/src/addressbook
	${CMAKE_BINARY_DIR}/src/private
	${CMAKE_SOURCE_DIR}/src
	${CMAKE_SOURCE_DIR}/src/private
	${CMAKE_SOURCE_DIR}/src/addressbook
	${CMAKE_CURRENT_BINARY_DIR}
	${ADDRESSBOOK_INCLUDE_DIRS}
	${LIBDB_INCLUDE_DIRS}
	${SQLITE3_INCLUDE_DIRS}
)

target_link_libraries(e-book-backend-sqlitedb-test
	edata-book
	${DEPENDENCIES}
	${ADDRESSBOOK_LDFLAGS}
	${LIBDB_LIBS}
	${SQLITE3_LDFLAGS}
)

set(DEPENDENCIES
	ebackend
	edataserver
	edata-book
	edbus-private
)

add_executable(evolution-addressbook-factory-subprocess
	evolution-addressbook-factory-subprocess.c)

target_compile_definitions(evolution-addressbook-factory-subprocess PRIVATE
	-DG_LOG_DOMAIN=\"evolution-addressbook-factory-subprocess\"
	-DLOCALEDIR=\"${LOCALE_INSTALL_DIR}\"
)

target_compile_options(evolution-addressbook-factory-subprocess PUBLIC
	${ADDRESSBOOK_CFLAGS}
	${GTK_CFLAGS}
)

target_include_directories(evolution-addressbook-factory-subprocess PUBLIC
	${CMAKE_BINARY_DIR}
	${CMAKE_BINARY_DIR}/src
	${CMAKE_BINARY_DIR}/src/addressbook
	${CMAKE_BINARY_DIR}/src/private
	${CMAKE_SOURCE_DIR}/src
	${CMAKE_SOURCE_DIR}/src/private
	${CMAKE_SOURCE_DIR}/src/addressbook
	${CMAKE_CURRENT_BINARY_DIR}
	${ADDRESSBOOK_INCLUDE_DIRS}
	${GTK_INCLUDE_DIRS}
)

target_link_libraries(evolution-addressbook-factory-subprocess
	${DEPENDENCIES}
	${ADDRESSBOOK_LDFLAGS}
	${GTK_LDFLAGS}
)

install(TARGETS evolution-addressbook-factory-subprocess
	DESTINATION ${LIBEXEC_INSTALL_DIR}
)
