view cmake/export/CMakeLists.txt @ 832:1ddf628464a5

irccd: bring back CTCP VERSION support
author David Demelier <markand@malikania.fr>
date Mon, 11 Mar 2019 12:50:06 +0100
parents 06cc2f95f479
children a594bae8669d
line wrap: on
line source

#
# CMakeLists.txt -- CMake build system for irccd
#
# Copyright (c) 2013-2019 David Demelier <markand@malikania.fr>
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#

include(CMakePackageConfigHelpers)

# CMake export files.
write_basic_package_version_file(
	${CMAKE_CURRENT_BINARY_DIR}/irccd-config-version.cmake
	VERSION ${IRCCD_VERSION}
	COMPATIBILITY SameMajorVersion
)

install(
	EXPORT irccd-targets
	FILE irccd-targets.cmake
	NAMESPACE irccd::
	DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/irccd
)

install(
	FILES
		${CMAKE_CURRENT_SOURCE_DIR}/irccd-config.cmake
		${CMAKE_CURRENT_BINARY_DIR}/irccd-config-version.cmake
	DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/irccd
	COMPONENT Devel
)

# pkg-config files.
if (IRCCD_WITH_PKGCONFIG)
	# Since javascript is optional, add it only if required.
	if (IRCCD_HAVE_JS)
		set(IRCCD_EXTRA_REQUIRES libirccd-js)
	endif ()
	if (IRCCD_HAVE_SSL)
		set(IRCCD_EXTRA_LIBS "-lssl -lcrypto")
	endif ()

	foreach (pkg libirccd libirccd-daemon libirccd-ctl libirccd-js libirccd-test)
		configure_file(
			${CMAKE_CURRENT_SOURCE_DIR}/${pkg}.pc
			${CMAKE_CURRENT_BINARY_DIR}/${pkg}.pc
			@ONLY
		)
		install(
			FILES ${CMAKE_CURRENT_BINARY_DIR}/${pkg}.pc
			DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
		)
	endforeach ()
endif ()