diff options
Diffstat (limited to 'meta/recipes-support/libical')
5 files changed, 88 insertions, 100 deletions
diff --git a/meta/recipes-support/libical/libical/0001-CMakeLists.txt-libical.pc.in-fix-iculibs-remove-full.patch b/meta/recipes-support/libical/libical/0001-CMakeLists.txt-libical.pc.in-fix-iculibs-remove-full.patch deleted file mode 100644 index 6db75f5086..0000000000 --- a/meta/recipes-support/libical/libical/0001-CMakeLists.txt-libical.pc.in-fix-iculibs-remove-full.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 1a41069c0dc054e59cd76fc3d8cf7cc2a78b5e8d Mon Sep 17 00:00:00 2001 -From: Allen Winter <allen.winter@kdab.com> -Date: Sat, 3 Sep 2016 16:56:29 -0400 -Subject: [PATCH] CMakeLists.txt, libical.pc.in - fix iculibs (remove full path) ISSUE: 227 - -Upstream-Status: Backport - -Signed-off-by: Maxin B. John <maxin.john@intel.com> ----- -diff -Naur libical-2.0.0-orig/CMakeLists.txt libical-2.0.0/CMakeLists.txt ---- libical-2.0.0-orig/CMakeLists.txt 2016-09-08 18:05:06.166049345 +0300 -+++ libical-2.0.0/CMakeLists.txt 2016-09-08 18:05:45.201561334 +0300 -@@ -128,6 +128,7 @@ - # RSCALE info at http://tools.ietf.org/html/rfc7529 - find_package(ICU) - if(ICU_FOUND) -+ set(ICUUC_LIBS "-licuuc") #for libical.pc - set(HAVE_LIBICU 1) - if(ICU_MAJOR_VERSION VERSION_GREATER 50) - set(HAVE_ICU_DANGI TRUE) -@@ -137,6 +138,7 @@ - endif() - if(ICU_I18N_FOUND) - set(HAVE_LIBICU_I18N 1) -+ set(ICUI18N_LIBS "-licui18n") #for libical.pc - endif() - - # MSVC specific definitions -diff -Naur libical-2.0.0-orig/libical.pc.in libical-2.0.0/libical.pc.in ---- libical-2.0.0-orig/libical.pc.in 2015-12-28 23:44:53.000000000 +0200 -+++ libical-2.0.0/libical.pc.in 2016-09-08 18:09:12.991963597 +0300 -@@ -3,10 +3,10 @@ - libdir=@libdir@ - includedir=@includedir@ - threadslib=@PTHREAD_LIBS@ --iculib=@ICU_LIBRARIES@ @ICU_I18N_LIBRARIES@ -+iculibs=@ICUUC_LIBS@ @ICUI18N_LIBS@ - - Name: libical - Description: An implementation of basic iCAL protocols - Version: @VERSION@ --Libs: -L${libdir} -lical -licalss -licalvcal ${threadslib} ${iculib} -+Libs: -L${libdir} -lical -licalss -licalvcal ${threadslib} ${iculibs} - Cflags: -I${includedir} diff --git a/meta/recipes-support/libical/libical/0001-cmake-Do-not-export-CC-into-gir-compiler.patch b/meta/recipes-support/libical/libical/0001-cmake-Do-not-export-CC-into-gir-compiler.patch new file mode 100644 index 0000000000..3841c060ee --- /dev/null +++ b/meta/recipes-support/libical/libical/0001-cmake-Do-not-export-CC-into-gir-compiler.patch @@ -0,0 +1,33 @@ +From c06d8a8990c996cbb854508a944202ba70ba7a7c Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Thu, 3 Mar 2022 20:10:04 -0800 +Subject: [PATCH] cmake: Do not export CC into gir compiler + +this helps cross compilers where full compiler commandline defines the +compiler rather than just CC variable, therefore let it use the default +values from environment and not synthesize it from CMAKE_C_COMPILER just +for this case. + +Upstream-Status: Submitted [https://github.com/libical/libical/pull/552] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + cmake/modules/GObjectIntrospectionMacros.cmake | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/cmake/modules/GObjectIntrospectionMacros.cmake b/cmake/modules/GObjectIntrospectionMacros.cmake +index 83aff931..d7d3f898 100644 +--- a/cmake/modules/GObjectIntrospectionMacros.cmake ++++ b/cmake/modules/GObjectIntrospectionMacros.cmake +@@ -50,8 +50,7 @@ macro(gir_add_introspections introspections_girs) + set(_gir_libtool "--no-libtool") + + add_custom_command( +- COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'" +- ${GObjectIntrospection_SCANNER} ++ COMMAND ${GObjectIntrospection_SCANNER} + ${GObjectIntrospection_SCANNER_ARGS} + --namespace=${_gir_namespace} + --nsversion=${_gir_version} +-- +2.35.1 + diff --git a/meta/recipes-support/libical/libical/Remove-cmake-check-for-Perl.patch b/meta/recipes-support/libical/libical/Remove-cmake-check-for-Perl.patch deleted file mode 100644 index b50f50e701..0000000000 --- a/meta/recipes-support/libical/libical/Remove-cmake-check-for-Perl.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 918cd8764a845a9d25918a444fbaa5070d2be609 Mon Sep 17 00:00:00 2001 -From: Jussi Kukkonen <jussi.kukkonen@intel.com> -Date: Fri, 21 Aug 2015 16:38:05 +0300 -Subject: [PATCH] Remove cmake check for Perl - -We set "CMAKE_FIND_ROOT_PATH_MODE_PROGRAM ONLY" in cmake bbclass to -make sure cmake does not find host programs. In this case we actually -are fine with host perl: remove the check. - -Upstream-Status: Inappropriate [workaround] - -Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> ---- - CMakeLists.txt | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -Index: libical-2.0.0/CMakeLists.txt -=================================================================== ---- libical-2.0.0.orig/CMakeLists.txt -+++ libical-2.0.0/CMakeLists.txt -@@ -116,8 +116,7 @@ if(SHARED_ONLY) - set(LIBRARY_TYPE SHARED) - endif() - --# must have Perl to create the derived stuff --find_package(Perl REQUIRED) -+set(PERL_EXECUTABLE perl) - - # Ensure finding 64bit libs when using 64-bit compilers - if(CMAKE_CL_64) diff --git a/meta/recipes-support/libical/libical_2.0.0.bb b/meta/recipes-support/libical/libical_2.0.0.bb deleted file mode 100644 index daa47abcbc..0000000000 --- a/meta/recipes-support/libical/libical_2.0.0.bb +++ /dev/null @@ -1,26 +0,0 @@ -SUMMARY = "iCal and scheduling (RFC 2445, 2446, 2447) library" -HOMEPAGE = "https://github.com/libical/libical" -BUGTRACKER = "https://github.com/libical/libical/issues" -LICENSE = "LGPLv2.1 | MPL-1" -LIC_FILES_CHKSUM = "file://COPYING;md5=d4fc58309d8ed46587ac63bb449d82f8 \ - file://LICENSE;md5=d1a0891cd3e582b3e2ec8fe63badbbb6" -SECTION = "libs" - -SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.gz \ - file://Remove-cmake-check-for-Perl.patch \ - file://0001-CMakeLists.txt-libical.pc.in-fix-iculibs-remove-full.patch \ - " -DEPENDS = "icu" - -SRC_URI[md5sum] = "6bf8e5f5a3ba88baf390d0134e05d76e" -SRC_URI[sha256sum] = "654c11f759c19237be39f6ad401d917e5a05f36f1736385ed958e60cf21456da" -UPSTREAM_CHECK_URI = "https://github.com/libical/libical/releases" - -inherit cmake pkgconfig - -do_install_append_class-target () { - # Remove build host references - sed -i \ - -e 's,${STAGING_LIBDIR},${libdir},g' \ - ${D}${libdir}/cmake/LibIcal/LibIcalTargets-noconfig.cmake -} diff --git a/meta/recipes-support/libical/libical_3.0.18.bb b/meta/recipes-support/libical/libical_3.0.18.bb new file mode 100644 index 0000000000..052ca57cfb --- /dev/null +++ b/meta/recipes-support/libical/libical_3.0.18.bb @@ -0,0 +1,55 @@ +SUMMARY = "iCal and scheduling (RFC 2445, 2446, 2447) library" +DESCRIPTION = "An Open Source implementation of the iCalendar protocols \ +and protocol data units. The iCalendar specification describes how \ +calendar clients can communicate with calendar servers so users can store \ +their calendar data and arrange meetings with other users. " +HOMEPAGE = "https://github.com/libical/libical" +BUGTRACKER = "https://github.com/libical/libical/issues" +LICENSE = "LGPL-2.1-only | MPL-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=1910a2a76ddf6a9ba369182494170d87 \ + file://LICENSE.LGPL21.txt;md5=8f690bb538f4b301d931374a6eb864d0 \ + file://LICENSE.MPL2.txt;md5=f75d2927d3c1ed2414ef72048f5ad640 \ + " +SECTION = "libs" + +SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \ + file://0001-cmake-Do-not-export-CC-into-gir-compiler.patch \ + " +SRC_URI[sha256sum] = "72b7dc1a5937533aee5a2baefc990983b66b141dd80d43b51f80aced4aae219c" + +inherit cmake pkgconfig gobject-introspection vala github-releases + +DEPENDS += "libical-native" + +PACKAGECONFIG ??= "icu glib" +PACKAGECONFIG[bdb] = ",-DCMAKE_DISABLE_FIND_PACKAGE_BDB=True,db" +PACKAGECONFIG[glib] = "-DICAL_GLIB=True,-DICAL_GLIB=False,glib-2.0-native libxml2-native glib-2.0 libxml2" +# ICU is used for RSCALE (RFC7529) support +PACKAGECONFIG[icu] = ",-DCMAKE_DISABLE_FIND_PACKAGE_ICU=True,icu" + +# No need to use perl-native, the host perl is sufficient. +EXTRA_OECMAKE += "-DPERL_EXECUTABLE=${HOSTTOOLS_DIR}/perl" +# Disable the test suite as we can't install it +EXTRA_OECMAKE += "-DLIBICAL_BUILD_TESTING=false" +# doc build fails with linker error (??) for libical-glib so disable it +EXTRA_OECMAKE += "-DICAL_BUILD_DOCS=false" +# gobject-introspection +EXTRA_OECMAKE:append:class-target = " -DGObjectIntrospection_COMPILER=${STAGING_BINDIR}/g-ir-compiler-wrapper" +EXTRA_OECMAKE:append:class-target = " -DGObjectIntrospection_SCANNER=${STAGING_BINDIR}/g-ir-scanner-wrapper" +EXTRA_OECMAKE += "-DVAPIGEN=${STAGING_BINDIR_NATIVE}/vapigen" +EXTRA_OECMAKE += "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DGOBJECT_INTROSPECTION=ON -DICAL_GLIB_VAPI=ON', '-DGOBJECT_INTROSPECTION=OFF -DICAL_GLIB_VAPI=OFF', d)}" +EXTRA_OECMAKE:append:class-native = " -DGOBJECT_INTROSPECTION=OFF -DICAL_GLIB_VAPI=OFF" + +# Tell the cross-libical where the tool it needs to build is +EXTRA_OECMAKE:append:class-target = " -DIMPORT_ICAL_GLIB_SRC_GENERATOR=${STAGING_LIBDIR_NATIVE}/cmake/LibIcal/IcalGlibSrcGenerator.cmake" + +do_install:append () { + # Remove build host references (https://github.com/libical/libical/issues/532) + sed -i \ + -e 's,${STAGING_LIBDIR},${libdir},g' \ + -e 's,${STAGING_INCDIR},${includedir},g' \ + ${D}${libdir}/cmake/LibIcal/LibIcal*.cmake \ + ${D}${libdir}/cmake/LibIcal/Ical*.cmake +} + +BBCLASSEXTEND = "native" |