diff options
author | V3n3RiX <venerix@koprulu.sector> | 2021-10-08 23:06:07 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2021-10-08 23:06:07 +0100 |
commit | e23a08d0c97a0cc415aaa165da840b056f93c997 (patch) | |
tree | 4c5f7db60483518201fef36f8cc0712789a08db2 /sci-astronomy/kstars/files | |
parent | 391b5b359a346aff490103da7dddc85047f83830 (diff) |
gentoo resync : 08.10.2021
Diffstat (limited to 'sci-astronomy/kstars/files')
-rw-r--r-- | sci-astronomy/kstars/files/kstars-3.5.5-FindERFA.cmake.patch | 125 |
1 files changed, 125 insertions, 0 deletions
diff --git a/sci-astronomy/kstars/files/kstars-3.5.5-FindERFA.cmake.patch b/sci-astronomy/kstars/files/kstars-3.5.5-FindERFA.cmake.patch new file mode 100644 index 000000000000..920cdf9c72b5 --- /dev/null +++ b/sci-astronomy/kstars/files/kstars-3.5.5-FindERFA.cmake.patch @@ -0,0 +1,125 @@ +From b920b785f8193414fd66fe2a6d69c2e2ebf22023 Mon Sep 17 00:00:00 2001 +From: Heiko Becker <heiko.becker@kde.org> +Date: Tue, 21 Sep 2021 16:56:02 +0200 +Subject: [PATCH] Add FindERFA cmake module + +ERFA doesn't seem to come with a cmake find module or a config file, +so I wrote one, which also provides an imported target. +--- + CMakeLists.txt | 5 +-- + Tests/skyobjects/CMakeLists.txt | 5 ++- + cmake/modules/FindERFA.cmake | 72 +++++++++++++++++++++++++++++++++ + 3 files changed, 77 insertions(+), 5 deletions(-) + create mode 100644 cmake/modules/FindERFA.cmake + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index b7b02258a..052987438 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -229,10 +229,7 @@ if(BUILD_TESTING) + # Find liberfa, which we check our computation against + find_package(ERFA) + MACRO_BOOL_TO_01(ERFA_FOUND HAVE_LIBERFA) +- set_package_properties(ERFA PROPERTIES DESCRIPTION "Essential Routines for Fundamental Astronomy" URL "https://github.com/liberfa/erfa" TYPE OPTIONAL PURPOSE "BSD-compatible version of SOFA, used to test core computations of KStars (only needed by tests)") +- if (ERFA_FOUND) +- include_directories(${ERFA_INCLUDE_DIR}) +- endif() ++ set_package_properties(ERFA PROPERTIES TYPE OPTIONAL PURPOSE "BSD-compatible version of SOFA, used to test core computations of KStars (only needed by tests)") + endif () + + ## Libraw +diff --git a/Tests/skyobjects/CMakeLists.txt b/Tests/skyobjects/CMakeLists.txt +index 7dc9b918c..ca2d06209 100644 +--- a/Tests/skyobjects/CMakeLists.txt ++++ b/Tests/skyobjects/CMakeLists.txt +@@ -5,5 +5,8 @@ ADD_TEST( NAME TestSkyPoint COMMAND test_skypoint ) + endif() + + ADD_EXECUTABLE( test_starobject test_starobject.cpp ) +-TARGET_LINK_LIBRARIES( test_starobject ${TEST_LIBRARIES} ${ERFA_LIBRARIES}) ++TARGET_LINK_LIBRARIES( test_starobject ${TEST_LIBRARIES} ) ++if (TARGET ERFA::ERFA) ++ TARGET_LINK_LIBRARIES( test_starobject ERFA::ERFA ) ++endif() + ADD_TEST( NAME TestStarobject COMMAND test_starobject ) +diff --git a/cmake/modules/FindERFA.cmake b/cmake/modules/FindERFA.cmake +new file mode 100644 +index 000000000..ea6f3e7d8 +--- /dev/null ++++ b/cmake/modules/FindERFA.cmake +@@ -0,0 +1,72 @@ ++# SPDX-FileCopyrightText: 2021 Heiko Becker <heiko.becker@kde.org> ++# ++# SPDX-License-Identifier: BSD-3-Clause ++ ++#[=======================================================================[.rst: ++FindERFA ++---------- ++ ++Try to find the ERFA (Essential Routines for Fundamental Astronomy) library. ++ ++This will define the following variables: ++ ++``ERFA_FOUND`` ++ True if the system has the ERFA library of at least the minimum ++ version specified by the version parameter to find_package() ++``ERFA_INCLUDE_DIRS`` ++ The ERFA include dirs for use with target_include_directories ++``ERFA_LIBRARIES`` ++ The ERFA libraries for use with target_link_libraries() ++``ERFA_VERSION`` ++ The version of ERFA that was found ++ ++If ``ERFA_FOUND` is TRUE, it will also define the following imported ++target: ++ ++``ERFA::ERFA`` ++ The ERFA library ++ ++#]=======================================================================] ++ ++find_package(PkgConfig QUIET) ++ ++pkg_check_modules(PC_ERFA QUIET erfa) ++ ++find_path(ERFA_INCLUDE_DIRS ++ NAMES erfa.h ++ HINTS ${PC_ERFA_INCLUDEDIR} ++) ++ ++find_library(ERFA_LIBRARIES ++ NAMES erfa ++ HINTS ${PC_ERFA_LIBDIR} ++) ++ ++set(ERFA_VERSION ${PC_ERFA_VERSION}) ++ ++include(FindPackageHandleStandardArgs) ++find_package_handle_standard_args(ERFA ++ FOUND_VAR ++ ERFA_FOUND ++ REQUIRED_VARS ++ ERFA_LIBRARIES ++ ERFA_INCLUDE_DIRS ++ VERSION_VAR ++ ERFA_VERSION ++) ++ ++if (ERFA_FOUND AND NOT TARGET ERFA::ERFA) ++ add_library(ERFA::ERFA UNKNOWN IMPORTED) ++ set_target_properties(ERFA::ERFA PROPERTIES ++ IMPORTED_LOCATION "${ERFA_LIBRARIES}" ++ INTERFACE_INCLUDE_DIRECTORIES "${ERFA_INCLUDE_DIRS}" ++ ) ++endif() ++ ++mark_as_advanced(ERFA_LIBRARIES ERFA_INCLUDE_DIRS) ++ ++include(FeatureSummary) ++set_package_properties(ERFA PROPERTIES ++ URL "https://github.com/liberfa/erfa/" ++ DESCRIPTION "Essential Routines for Fundamental Astronomy" ++) +-- +GitLab + |