cmake_minimum_required(VERSION 3.18)

# Project documentation 
if(ENABLE_BUILD_DOC)
	find_package(Doxygen REQUIRED)

	set(output_dir "${CMAKE_BINARY_DIR}/share/doxygen")

	set(DOXYGEN_GENERATE_HTML YES)
	set(DOXYGEN_GENERATE_XML NO)
	set(DOXYGEN_PROJECT_LOGO ${CMAKE_CURRENT_SOURCE_DIR}/logo.png)
	set(DOXYGEN_FULL_PATH_NAMES NO)
	set(DOXYGEN_JAVADOC_AUTOBRIEF YES)
	set(DOXYGEN_OPTIMIZE_OUTPUT_FOR_C YES)
	set(DOXYGEN_TYPEDEF_HIDES_STRUCT YES)
	set(DOXYGEN_EXTRACT_ALL YES)
	set(DOXYGEN_WARN_NO_PARAMDOC YES)
	set(DOXYGEN_IGNORE_PREFIX cmpack_ CMPACK_ Cmpack _cmpack_ _CMPACK_ _Cmpack)
	set(DOXYGEN_MACRO_EXPANSION YES)
	set(DOXYGEN_OUTPUT_DIRECTORY ${output_dir} PARENT_SCOPE)

	get_target_property(CORELIB_SOURCES libcmpack SOURCES)
	get_target_property(CORELIB_SOURCE_DIR libcmpack SOURCE_DIR)

	doxygen_add_docs(cmpack_doxygen 
		${CORELIB_SOURCES}
		WORKING_DIRECTORY ${CORELIB_SOURCE_DIR}
		USE_STAMP_FILE 
		ALL
	)
	set_target_properties(cmpack_doxygen PROPERTIES FOLDER doc)

	if(UNIX AND NOT WIN32)
		#install(DIRECTORY "${output_dir}" DESTINATION "${CMAKE_INSTALL_DATADIR}/doxygen")
	else(UNIX AND NOT WIN32)
		#install(DIRECTORY "${output_dir}" DESTINATION "${CMUNIPACK_INSTALL_DATADIR}/doxygen")
	endif(UNIX AND NOT WIN32)

endif(ENABLE_BUILD_DOC)
