summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2017-09-17 16:50:17 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2017-09-18 00:40:16 +0200
commit0b43271f3bcb2644c7537c4becff6d50524b7462 (patch)
treee483a039a64883e08696b9713c955d68affa503a /dev-libs/spdlog
parentgames-action/supermariowar: reformat variables. (diff)
downloadgentoo-0b43271f3bcb2644c7537c4becff6d50524b7462.tar.gz
gentoo-0b43271f3bcb2644c7537c4becff6d50524b7462.tar.bz2
gentoo-0b43271f3bcb2644c7537c4becff6d50524b7462.zip
dev-libs/spdlog: Use GNUInstalldirs, fix cmake files location
Fix indentation also. Package-Manager: Portage-2.3.8, Repoman-2.3.3
Diffstat (limited to 'dev-libs/spdlog')
-rw-r--r--dev-libs/spdlog/files/spdlog-0.14.0-CMakeLists.txt116
-rw-r--r--dev-libs/spdlog/spdlog-0.14.0-r1.ebuild40
2 files changed, 156 insertions, 0 deletions
diff --git a/dev-libs/spdlog/files/spdlog-0.14.0-CMakeLists.txt b/dev-libs/spdlog/files/spdlog-0.14.0-CMakeLists.txt
new file mode 100644
index 000000000000..ad8062edda92
--- /dev/null
+++ b/dev-libs/spdlog/files/spdlog-0.14.0-CMakeLists.txt
@@ -0,0 +1,116 @@
+#
+# Copyright(c) 2015 Ruslan Baratov.
+# Distributed under the MIT License (http://opensource.org/licenses/MIT)
+#
+
+cmake_minimum_required(VERSION 3.1)
+project(spdlog VERSION 0.14.0)
+include(CTest)
+include(CMakeDependentOption)
+include(GNUInstallDirs)
+
+#---------------------------------------------------------------------------------------
+# compiler config
+#---------------------------------------------------------------------------------------
+set(CMAKE_CXX_STANDARD 11)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
+if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
+ set(CMAKE_CXX_FLAGS "-Wall ${CMAKE_CXX_FLAGS}")
+endif()
+
+#---------------------------------------------------------------------------------------
+# spdlog target
+#---------------------------------------------------------------------------------------
+add_library(spdlog INTERFACE)
+
+option(SPDLOG_BUILD_EXAMPLES "Build examples" OFF)
+cmake_dependent_option(SPDLOG_BUILD_TESTING
+ "Build spdlog tests" ON
+ "BUILD_TESTING" OFF
+)
+
+target_include_directories(
+ spdlog
+ INTERFACE
+ "$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include>"
+ "$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>"
+)
+
+set(HEADER_BASE "${CMAKE_CURRENT_SOURCE_DIR}/include")
+
+if(SPDLOG_BUILD_EXAMPLES)
+ add_subdirectory(example)
+endif()
+
+if(SPDLOG_BUILD_TESTING)
+ add_subdirectory(tests)
+endif()
+
+#---------------------------------------------------------------------------------------
+# Install/export targets and files
+#---------------------------------------------------------------------------------------
+# set files and directories
+set(config_install_dir "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}")
+set(include_install_dir "${CMAKE_INSTALL_INCLUDEDIR}")
+set(pkgconfig_install_dir "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
+set(version_config "${CMAKE_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake")
+set(project_config "${PROJECT_NAME}Config.cmake")
+set(pkg_config "${CMAKE_BINARY_DIR}/${PROJECT_NAME}.pc")
+set(targets_export_name "${PROJECT_NAME}Targets")
+set(namespace "${PROJECT_NAME}::")
+
+# generate package version file
+include(CMakePackageConfigHelpers)
+write_basic_package_version_file(
+ "${version_config}" COMPATIBILITY SameMajorVersion
+)
+
+# configure pkg config file
+configure_file("cmake/spdlog.pc.in" "${pkg_config}" @ONLY)
+
+# install targets
+install(
+ TARGETS spdlog
+ EXPORT "${targets_export_name}"
+ INCLUDES DESTINATION "${include_install_dir}"
+)
+
+# install headers
+install(
+ DIRECTORY "${HEADER_BASE}/${PROJECT_NAME}"
+ DESTINATION "${include_install_dir}"
+)
+
+# install project version file
+install(
+ FILES "${version_config}"
+ DESTINATION "${config_install_dir}"
+)
+
+# install pkg config file
+install(
+ FILES "${pkg_config}"
+ DESTINATION "${pkgconfig_install_dir}"
+)
+
+# install project config file
+install(
+ EXPORT "${targets_export_name}"
+ NAMESPACE "${namespace}"
+ DESTINATION "${config_install_dir}"
+ FILE ${project_config}
+)
+
+# export build directory config file
+export(
+ EXPORT ${targets_export_name}
+ NAMESPACE "${namespace}"
+ FILE ${project_config}
+)
+
+# register project in CMake user registry
+export(PACKAGE ${PROJECT_NAME})
+
+file(GLOB_RECURSE spdlog_include_SRCS "${HEADER_BASE}/*.h")
+add_custom_target(spdlog_headers_for_ide SOURCES ${spdlog_include_SRCS})
diff --git a/dev-libs/spdlog/spdlog-0.14.0-r1.ebuild b/dev-libs/spdlog/spdlog-0.14.0-r1.ebuild
new file mode 100644
index 000000000000..0118dd39d236
--- /dev/null
+++ b/dev-libs/spdlog/spdlog-0.14.0-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="Very fast, header only, C++ logging library."
+HOMEPAGE="https://github.com/gabime/spdlog"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/gabime/spdlog"
+else
+ SRC_URI="https://github.com/gabime/spdlog/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="test"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # root CMakeLists.txt is CRLF line terminated, so...
+ cp "${FILESDIR}"/${P}-CMakeLists.txt CMakeLists.txt || die
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DSPDLOG_BUILD_EXAMPLES=no
+ -DSPDLOG_BUILD_TESTING=$(usex test)
+ )
+
+ cmake-utils_src_configure
+
+}