summaryrefslogtreecommitdiff
path: root/dev-libs/libical
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-04 05:48:38 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-04 05:48:38 -0500
commitbfd9c39e4712ebdb442d4ca0673061faed1e70e1 (patch)
tree0d7a74b4463ee387f9cf9368ceb1b757f694f72a /dev-libs/libical
parentf716a9fe6455d39eef01e718aae68dae61c19704 (diff)
downloadbaldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.gz
baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.xz
baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.zip
Revert "Adding metadata"
This reverts commit f716a9fe6455d39eef01e718aae68dae61c19704.
Diffstat (limited to 'dev-libs/libical')
-rw-r--r--dev-libs/libical/Manifest1
-rw-r--r--dev-libs/libical/files/libical-3.0.11-pkgconfig-libdir.patch22
-rw-r--r--dev-libs/libical/files/libical-3.0.20-cmake-minreqver-3.20.patch68
-rw-r--r--dev-libs/libical/libical-3.0.20-r2.ebuild170
-rw-r--r--dev-libs/libical/metadata.xml14
5 files changed, 275 insertions, 0 deletions
diff --git a/dev-libs/libical/Manifest b/dev-libs/libical/Manifest
new file mode 100644
index 000000000000..76838d3b6465
--- /dev/null
+++ b/dev-libs/libical/Manifest
@@ -0,0 +1 @@
+DIST libical-3.0.20.tar.gz 973928 BLAKE2B 3492efc8ace54b254a7079aa863394da0555a4c342b7c83a47991ecdf31fe06035bb8c196700ec6804bde2b1c074e5e3a2118c948fec26bdff90b92b9c5042e8 SHA512 2506320240ba0e4287b6ef1b90b653eacd51105d392b91f8c772f3b0745fecbf55eecfe81f89413cc56106b71ccca780754df31f5190ffce6c372126e27bf1da
diff --git a/dev-libs/libical/files/libical-3.0.11-pkgconfig-libdir.patch b/dev-libs/libical/files/libical-3.0.11-pkgconfig-libdir.patch
new file mode 100644
index 000000000000..40d7de320ecd
--- /dev/null
+++ b/dev-libs/libical/files/libical-3.0.11-pkgconfig-libdir.patch
@@ -0,0 +1,22 @@
+Fix pkgconfig libdir paths.
+
+--- a/libical.pc.in
++++ b/libical.pc.in
+@@ -8,7 +8,7 @@
+ Name: libical
+ Description: An implementation of basic iCAL protocols
+ Version: @LIBICAL_LIB_VERSION_STRING@
+-Libs: -L${libdir} -lical -licalss -licalvcal
++Libs: -lical -licalss -licalvcal
+ Libs.private: @PTHREAD_LIBS@
+ @REQUIRES_PRIVATE_ICU@
+ Cflags: -I${includedir}
+--- a/src/libical-glib/libical-glib.pc.in
++++ b/src/libical-glib/libical-glib.pc.in
+@@ -8,4 +8,4 @@
+ Version: @LIBICAL_LIB_VERSION_STRING@
+ Requires: glib-2.0, gobject-2.0, libical
+ Cflags: -I${includedir}
+-Libs: -L${libdir} -lical-glib
++Libs: -lical-glib
+
diff --git a/dev-libs/libical/files/libical-3.0.20-cmake-minreqver-3.20.patch b/dev-libs/libical/files/libical-3.0.20-cmake-minreqver-3.20.patch
new file mode 100644
index 000000000000..27c91eba2ad0
--- /dev/null
+++ b/dev-libs/libical/files/libical-3.0.20-cmake-minreqver-3.20.patch
@@ -0,0 +1,68 @@
+From 63eefc63eb3637dfd246509b28a67e1a6f1fd158 Mon Sep 17 00:00:00 2001
+From: Allen Winter <winter@kde.org>
+Date: Thu, 19 Sep 2024 11:20:10 -0400
+Subject: [PATCH 1/2] Require CMake version 3.20 or higher
+
+CMake v3.20 adds the cmake_path() commands
+
+(cherry picked from commit 49149c02007a19ed143423724041ee02440add96)
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3c61570e..0cc03472 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -88,7 +88,7 @@
+ # Build with the thread sanitizer (requires gcc or clang)
+ #
+
+-cmake_minimum_required(VERSION 3.5.0) #first line, to shutup a cygwin warning
++cmake_minimum_required(VERSION 3.20.0)
+ project(libical C) #CXX is optional for the bindings
+
+ cmake_policy(SET CMP0003 NEW)
+--
+2.51.0
+
+
+From 9ea2ab20c3caffe782b7852777de4c25c9c20521 Mon Sep 17 00:00:00 2001
+From: Yegor Yefremov <yegorslists@googlemail.com>
+Date: Mon, 5 May 2025 16:04:15 +0200
+Subject: [PATCH 2/2] CMakeLists.txt: clean up policies
+
+All these policies are already enabled due to the following call:
+
+cmake_minimum_required(VERSION 3.20.0)
+
+(cherry picked from commit bd8c3d384f4fb6528f28da8681f39dbb6ca14118)
+---
+ CMakeLists.txt | 11 -----------
+ 1 file changed, 11 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0cc03472..80178fb9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -91,17 +91,6 @@
+ cmake_minimum_required(VERSION 3.20.0)
+ project(libical C) #CXX is optional for the bindings
+
+-cmake_policy(SET CMP0003 NEW)
+-if(POLICY CMP0042)
+- cmake_policy(SET CMP0042 NEW)
+-endif()
+-if(POLICY CMP0054)
+- cmake_policy(SET CMP0054 NEW)
+-endif()
+-if(POLICY CMP0074)
+- cmake_policy(SET CMP0074 NEW) #don't warn about ICU_ROOT envvar
+-endif()
+-
+ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules")
+ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Kitware/modules")
+
+--
+2.51.0
+
diff --git a/dev-libs/libical/libical-3.0.20-r2.ebuild b/dev-libs/libical/libical-3.0.20-r2.ebuild
new file mode 100644
index 000000000000..5c9b33bdf969
--- /dev/null
+++ b/dev-libs/libical/libical-3.0.20-r2.ebuild
@@ -0,0 +1,170 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+VALA_USE_DEPEND="vapigen"
+inherit cmake dot-a python-any-r1 toolchain-funcs vala
+
+DESCRIPTION="Implementation of basic iCAL protocols"
+HOMEPAGE="https://github.com/libical/libical"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="|| ( MPL-2.0 LGPL-2.1 )"
+SLOT="0/3"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86"
+IUSE="doc examples +glib +introspection static-libs test vala"
+
+REQUIRED_USE="introspection? ( glib ) vala? ( introspection )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-libs/icu:=
+ glib? (
+ dev-libs/glib:2
+ dev-libs/libxml2:2=
+ )
+"
+RDEPEND="${DEPEND}
+ sys-libs/timezone-data
+"
+BDEPEND="
+ dev-lang/perl
+ virtual/pkgconfig
+ doc? (
+ app-text/doxygen[dot]
+ glib? ( dev-util/gtk-doc )
+ )
+ introspection? ( >=dev-libs/gobject-introspection-1.82.0-r2 )
+ test? (
+ ${PYTHON_DEPS}
+ glib? ( $(python_gen_any_dep 'dev-python/pygobject:3[${PYTHON_USEDEP}]') )
+ )
+ vala? ( $(vala_depend) )
+"
+# to build native ical-glib-src-generator w/ cross-compile
+BDEPEND+="
+ glib? (
+ dev-libs/glib:2
+ dev-libs/libxml2:2
+ )
+"
+
+DOCS=(
+ AUTHORS README.md ReleaseNotes.txt TEST THANKS TODO
+ doc/{AddingOrModifyingComponents.txt,UsingLibical.md}
+)
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.0.11-pkgconfig-libdir.patch"
+ "${FILESDIR}/${P}-cmake-minreqver-3.20.patch" # bug 964491
+)
+
+python_check_deps() {
+ python_has_version "dev-python/pygobject:3[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ cmake_src_prepare
+ use vala && vala_setup
+}
+
+src_configure() {
+ if tc-is-cross-compiler && use glib; then
+ einfo "Building the native ical-glib-src-generator..."
+
+ BUILD_NATIVE="${WORKDIR}/${P}_build_native"
+ GENERATOR_BIN_DIR="${BUILD_NATIVE}/src/libical-glib/libexec/libical"
+
+ local mycmakeargs=(
+ -DCMAKE_DISABLE_FIND_PACKAGE_BerkeleyDB=ON
+ -DICAL_BUILD_DOCS=OFF
+ -DLIBICAL_BUILD_EXAMPLES=OFF
+ -DGOBJECT_INTROSPECTION=OFF
+ -DLIBICAL_BUILD_TESTING=OFF
+ -DICAL_GLIB_VAPI=OFF
+ -DICAL_GLIB=ON
+ )
+
+ BUILD_DIR="${BUILD_NATIVE}" tc-env_build cmake_src_configure
+
+ # configure for CHOST requires a cmake...
+ local native_gen=$(
+ find "${BUILD_NATIVE}" -type f -name IcalGlibSrcGenerator.cmake -print
+ )
+ # ... and a valid path. This empty file is fine for now.
+ mkdir -p "${GENERATOR_BIN_DIR}" || die
+ touch "${GENERATOR_BIN_DIR}"/ical-glib-src-generator || die
+ fi
+
+ use static-libs && lto-guarantee-fat
+
+ # fix gtk-doc, see https://bugs.gentoo.org/777090
+ # to check w/ 4.0 and migration to gi-docgen
+ export LD="$(tc-getCC)"
+
+ local mycmakeargs=(
+ -DCMAKE_DISABLE_FIND_PACKAGE_BerkeleyDB=ON
+ -DICAL_BUILD_DOCS=$(usex doc)
+ -DLIBICAL_BUILD_EXAMPLES=$(use examples)
+ -DICAL_GLIB=$(usex glib)
+ -DGOBJECT_INTROSPECTION=$(usex introspection)
+ -DSHARED_ONLY=$(usex !static-libs)
+ -DLIBICAL_BUILD_TESTING=$(usex test)
+ -DICAL_GLIB_VAPI=$(usex vala)
+ )
+
+ if tc-is-cross-compiler && use glib; then
+ mycmakeargs+=(
+ -DIMPORT_ICAL_GLIB_SRC_GENERATOR="${native_gen}"
+ )
+ fi
+
+ if use vala; then
+ mycmakeargs+=(
+ -DVALAC="${VALAC}"
+ -DVAPIGEN="${VAPIGEN}"
+ )
+ fi
+ cmake_src_configure
+}
+
+src_compile() {
+ # build the native ical-glib-src-generator and place it where it's expected
+ if tc-is-cross-compiler && use glib; then
+ BUILD_DIR="${BUILD_NATIVE}" tc-env_build cmake_build ical-glib-src-generator
+ ln -sfT "${BUILD_NATIVE}"/bin/ical-glib-src-generator "${GENERATOR_BIN_DIR}"/ical-glib-src-generator || die
+ fi
+
+ cmake_src_compile
+
+ if use doc; then
+ cmake_src_compile docs
+
+ HTML_DOCS=( "${BUILD_DIR}"/apidocs/html/. )
+ fi
+}
+
+src_test() {
+ local myctestargs=(
+ -E "(icalrecurtest|icalrecurtest-r)" # bug 660282
+ )
+
+ cmake_src_test
+}
+
+src_install() {
+ cmake_src_install
+
+ if use examples; then
+ rm examples/CMakeLists.txt || die
+ dodoc -r examples
+ fi
+
+ use static-libs && strip-lto-bytecode
+}
diff --git a/dev-libs/libical/metadata.xml b/dev-libs/libical/metadata.xml
new file mode 100644
index 000000000000..1bf758400523
--- /dev/null
+++ b/dev-libs/libical/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>asturm@gentoo.org</email>
+ <name>Andreas Sturmlechner</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">libical/libical</remote-id>
+ </upstream>
+ <use>
+ <flag name="glib">Enable <pkg>dev-libs/glib</pkg> interface support</flag>
+ </use>
+</pkgmetadata>