commit:     5215a9545e35780cfb675727fde6594c45851ffc
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 11 13:49:37 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Apr 11 20:02:43 2021 +0000
URL:        https://gitweb.gentoo.org/proj/kde.git/commit/?id=5215a954

dev-libs/kopeninghours: New package

Package-Manager: Portage-3.0.18, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/kopeninghours-21.03.90-boostpython.patch | 79 ++++++++++++++++++++++
 dev-libs/kopeninghours/kopeninghours-9999.ebuild   | 62 +++++++++++++++++
 dev-libs/kopeninghours/metadata.xml                |  8 +++
 3 files changed, 149 insertions(+)

diff --git 
a/dev-libs/kopeninghours/files/kopeninghours-21.03.90-boostpython.patch 
b/dev-libs/kopeninghours/files/kopeninghours-21.03.90-boostpython.patch
new file mode 100644
index 0000000000..939bcbcd9e
--- /dev/null
+++ b/dev-libs/kopeninghours/files/kopeninghours-21.03.90-boostpython.patch
@@ -0,0 +1,79 @@
+From fd7c2e1f3797c1a67dc6346dfcb192f042cb19e8 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <[email protected]>
+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 <[email protected]>
+---
+ 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 <[email protected]>
+ # 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 "21")
+@@ -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 ${PYTHON_INCLUDE_DIRS})
++target_link_libraries(PyKOpeningHours PUBLIC 
Boost::${BOOSTPYTHON_VERSION_MAJOR_MINOR} ${Python3_LIBRARIES} KOpeningHours)
++target_include_directories(PyKOpeningHours PRIVATE ${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
+

diff --git a/dev-libs/kopeninghours/kopeninghours-9999.ebuild 
b/dev-libs/kopeninghours/kopeninghours-9999.ebuild
new file mode 100644
index 0000000000..6a201e1dbc
--- /dev/null
+++ b/dev-libs/kopeninghours/kopeninghours-9999.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+ECM_TEST="true"
+PVCUT=$(ver_cut 1-3)
+KFMIN=5.80.0
+QTMIN=5.15.2
+PYTHON_COMPAT=( python3_{7,8,9} )
+inherit ecm kde.org python-single-r1
+
+DESCRIPTION="Library for parsing and evaluating OSM opening hours expressions"
+HOMEPAGE="https://api.kde.org/kopeninghours/html/index.html
+https://invent.kde.org/libraries/kopeninghours";
+
+LICENSE="LGPL-2+"
+SLOT="5"
+KEYWORDS=""
+IUSE="python"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+BDEPEND="
+       sys-devel/bison
+       sys-devel/flex
+"
+DEPEND="
+       >=dev-qt/qtdeclarative-${QTMIN}:5
+       >=kde-frameworks/kholidays-${KFMIN}:5
+       >=kde-frameworks/ki18n-${KFMIN}:5
+       >=kde-misc/kpublictransport-${PVCUT}:5
+       sys-libs/zlib
+       python? (
+               $(python_gen_cond_dep '
+                       >=dev-libs/boost-1.70:=[python,${PYTHON_MULTI_USEDEP}]
+               ')
+       )
+"
+RDEPEND="${DEPEND}
+       >=dev-qt/qtquickcontrols2-${QTMIN}:5
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-21.03.90-boostpython.patch )
+
+pkg_setup() {
+       ecm_pkg_setup
+       python_setup
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DBOOSTPYTHON_VERSION_MAJOR_MINOR=${EPYTHON}
+               $(cmake_use_find_package python Boost)
+       )
+       ecm_src_configure
+}
+
+src_install() {
+       ecm_src_install
+       python_optimize
+}

diff --git a/dev-libs/kopeninghours/metadata.xml 
b/dev-libs/kopeninghours/metadata.xml
new file mode 100644
index 0000000000..2fdbf33d96
--- /dev/null
+++ b/dev-libs/kopeninghours/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="project">
+               <email>[email protected]</email>
+               <name>Gentoo KDE Project</name>
+       </maintainer>
+</pkgmetadata>

Reply via email to