StrictCompile()

add_library(bongocal SHARED
	bongo-cal-object.c
	bongo-cal-instance.c
	bongo-cal-recur.c
	bongo-cal-time.c
	bongo-cal-timezone.c
	cal-convert.c)

# FIXME: this compile is a bit broken.
#add_executable(bongo-import-tz 
#	bongo-import-tz.c)
#
#target_link_libraries(bongo-import-tz
#	bongomemmgr
#	bongocal
#	)

target_link_libraries(bongocal
	bongoxpl
	bongoutil
	bongojson
	LibIcal::ical
)

install(TARGETS bongocal DESTINATION ${LIB_INSTALL_DIR})

if(BUILD_TESTING)
	add_executable(cal-timezone-lifecycle-test
		tests/timezone-lifecycle-test.c)
	target_link_libraries(cal-timezone-lifecycle-test
		bongocal)
	add_test(NAME cal-timezone-lifecycle
		COMMAND cal-timezone-lifecycle-test)

	add_executable(cal-timezone-cache-rebuild-test
		tests/timezone-cache-rebuild-test.c)
	target_include_directories(cal-timezone-cache-rebuild-test PRIVATE
		${CMAKE_CURRENT_SOURCE_DIR})
	target_compile_definitions(cal-timezone-cache-rebuild-test PRIVATE
		BONGO_TEST_ZONEINFO_DIR="${CMAKE_SOURCE_DIR}/zoneinfo")
	target_link_libraries(cal-timezone-cache-rebuild-test
		bongocal)
	add_test(NAME cal-timezone-cache-rebuild
		COMMAND cal-timezone-cache-rebuild-test)
endif()
