summaryrefslogtreecommitdiff
path: root/dev-libs/kopeninghours/files/kopeninghours-22.04.0-boostpython.patch
blob: d51fb7d45ff8f426a2c3e859216baf12c777e316 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
From fd7c2e1f3797c1a67dc6346dfcb192f042cb19e8 Mon Sep 17 00:00:00 2001
From: Andreas Sturmlechner <asturm@gentoo.org>
Date: Sun, 11 Apr 2021 14:33:48 +0200
Subject: [PATCH] Use FindPython3 w/ Python3_SITELIB, add
 BOOSTPYTHON_VERSION_MAJOR_MINOR

- Use BOOSTPYTHON_VERSION_MAJOR_MINOR to inject desired python target
- Drop deprecated PythonLibs
- Use FindPython3 with Python3_SITELIB for correct install location

Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
---
 CMakeLists.txt                 | 16 +++++-----------
 PyKOpeningHours/CMakeLists.txt | 10 ++++------
 2 files changed, 9 insertions(+), 17 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7c50b40..a9a9328 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,7 +1,7 @@
 # SPDX-FileCopyrightText: 2020 Volker Krause <vkrause@kde.org>
 # SPDX-License-Identifier: BSD-3-Clause
 
-cmake_minimum_required(VERSION 3.5)
+cmake_minimum_required(VERSION 3.12)
 
 # KDE Application Version, managed by release script
 set (RELEASE_SERVICE_VERSION_MAJOR "22")
@@ -56,22 +56,16 @@ set_package_properties(FLEX PROPERTIES PURPOSE "Lexer generator for parsing open
 find_package(BISON REQUIRED)
 set_package_properties(BISON PROPERTIES PURPOSE "Grammar generator for parsing opening hours expressions")
 
-find_package(PythonLibs 3.6 MODULE)
-if (PythonLibs_FOUND)
-    # Extract major/minor python version
-    string(REPLACE "." ";" VERSION_LIST ${PYTHONLIBS_VERSION_STRING})
-    list(GET VERSION_LIST 0 PYTHONLIBS_VERSION_MAJOR)
-    list(GET VERSION_LIST 1 PYTHONLIBS_VERSION_MINOR)
-
-    # boost-python requires exact version number
-    find_package(Boost COMPONENTS python${PYTHONLIBS_VERSION_MAJOR}${PYTHONLIBS_VERSION_MINOR} MODULE)
-endif()
+set(BOOSTPYTHON_VERSION_MAJOR_MINOR python36 CACHE STRING "Version of BoostPython to feed CMake's FindBoost")
+# boost-python requires exact version number
+find_package(Boost 1.70 COMPONENTS ${BOOSTPYTHON_VERSION_MAJOR_MINOR} MODULE)
 
 add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0x050d00)
 add_definitions(-DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0x054400)
 add_definitions(-DQT_NO_FOREACH)
 add_subdirectory(src)
 if (Boost_FOUND)
+    find_package(Python3 3.6 COMPONENTS Development)
     add_subdirectory(PyKOpeningHours)
 endif()
 
diff --git a/PyKOpeningHours/CMakeLists.txt b/PyKOpeningHours/CMakeLists.txt
index 771cedf..e755ea7 100644
--- a/PyKOpeningHours/CMakeLists.txt
+++ b/PyKOpeningHours/CMakeLists.txt
@@ -21,11 +21,9 @@ kde_target_enable_exceptions(PyKOpeningHours PRIVATE)
 target_compile_definitions(PyKOpeningHours PRIVATE KOPENINGHOURS_VALIDATOR_ONLY)
 
 # Set up the libraries and header search paths for this target
-target_link_libraries(PyKOpeningHours PUBLIC ${Boost_LIBRARIES} ${PYTHON_LIBRARIES} KOpeningHours)
-target_include_directories(PyKOpeningHours PRIVATE ${Boost_INCLUDE_DIR} ${PYTHON_INCLUDE_DIRS})
+target_link_libraries(PyKOpeningHours PUBLIC Boost::${BOOSTPYTHON_VERSION_MAJOR_MINOR} ${Python3_LIBRARIES} KOpeningHours)
+target_include_directories(PyKOpeningHours PRIVATE ${Boost_INCLUDE_DIR} ${Python3_INCLUDE_DIRS})
 
-set(_install_dir lib/python${PYTHONLIBS_VERSION_MAJOR}.${PYTHONLIBS_VERSION_MINOR}/site-packages)
-
-install(TARGETS PyKOpeningHours DESTINATION ${_install_dir}/PyKOpeningHours)
-install(FILES PyKOpeningHours.pyi __init__.py DESTINATION ${_install_dir}/PyKOpeningHours)
+install(TARGETS PyKOpeningHours DESTINATION ${Python3_SITELIB}/PyKOpeningHours)
+install(FILES PyKOpeningHours.pyi __init__.py DESTINATION ${Python3_SITELIB}/PyKOpeningHours)
 
-- 
2.31.1