On Wed Dec 15, 2021 at 06:51:09PM -0800, Nam Nguyen wrote:
> Rafael Sadowski writes:
> 
> > On Sun Dec 12, 2021 at 03:41:48PM +0100, Rafael Sadowski wrote:
> >> I'll fix calligra.
> >> 
> 
> I propose an inline diff that does the following three things:
> 
> 1.) Removes kcalendarcore and kcontacts from BUILD_DEPENDS and
> RUN_DEPENDS.
> 
> These are listed as optional and only linked in if KF5Akondai is also
> found. I propose removing until KF5Akondai is added.
> 
> CMakeFiles.txt lists purposes:
> KF5CalendarCore:
> PURPOSE "Optionally used by semantic item Event"
> KF5Contacts:
> PURPOSE "Optionally used by semantic item Contact"
> KF5AkonadiCore:
> PURPOSE "Optionally used by semantic items Event and Contact"
> 
> plugins/semanticitems/event/CMakeLists.txt
> 19:if (KF5CalendarCore_FOUND AND KF5Akonadi_FOUND)
> 
> plugins/semanticitems/contact/CMakeLists.txt
> 19:if (KF5Contacts_FOUND AND KF5Akonadi_FOUND)

Thank you for digging deeper, so I think we need something like
-DCMAKE_DISABLE_FIND_PACKAGE_KF5Akonadi=ON

With that OK rsadowski@

> 
> 2.) Add math/imath to LIB_DEPENDS.
> 
> graphics/openexr split off the math/imath library. According to this
> commit, calligra only relies on imath and does not need to link to
> openexr.
> 
> see:
> https://invent.kde.org/office/calligra/-/commit/c52eb33f20a66acb648b725e2eee3ed977eae896
> 
> 3.)  Set OpenEXR_FOUND in CMakeLists.txt patch.
> 
> OpenEXR_FOUND is used for conditional linking in lcms2 and
> libs/pigment. It should be set by either extra-cmake-modules or
> ${WRKSRC}/cmake/modules/FindOpenEXR.cmake, but it does not utilize these
> files because it finds Imath directly:
> 
> macro_optional_find_package(Imath 3.0 CONFIG QUIET)
> 
> OPENEXR_FOUND (all caps) is set in FindOpenEXR.cmake but the other bits
> use OpenEXR_FOUND.
> 
> $ ag OpenEXR_FOUND 
> plugins/colorengines/lcms2/tests/CMakeLists.txt
> 15:if(OpenEXR_FOUND)
> 
> plugins/colorengines/lcms2/CMakeLists.txt
> 34:if (HAVE_LCMS24 AND OpenEXR_FOUND)
> 44:if(OpenEXR_FOUND)
> 83:if (HAVE_LCMS24 AND OpenEXR_FOUND)
> 
> libs/pigment/CMakeLists.txt
> 15:if(OpenEXR_FOUND)

Agree. OK!

> 
> Testing
> =======
> I could not really test runtime as I am not sure how to make use of the
> pigment and lcms2 color management system. #2 and #3 allow linking with
> Imath: -lImath-3_1

Just like me.

> 
> `make test' has a similar amounts of tests pass.
> before:
> 26% tests passed, 106 tests failed out of 143
> after:
> 26% tests passed, 105 tests failed out of 142
> 
> Test #103: libs-pigment-TestKoColorSpaceMaths is the only test that uses
> half.h and imath, and that still passes.
> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/editors/calligra/Makefile,v
> retrieving revision 1.48
> diff -u -p -u -p -r1.48 Makefile
> --- Makefile  13 Dec 2021 18:21:35 -0000      1.48
> +++ Makefile  16 Dec 2021 00:55:10 -0000
> @@ -5,7 +5,7 @@ HOMEPAGE =    https://www.calligra.org
>  VERSION =    3.2.1
>  DISTNAME =   calligra-${VERSION}
>  CATEGORIES = editors
> -REVISION =   4
> +REVISION =   5
>  
>  SHARED_LIBS =   RtfReader                 51.0 # 0.0
>  SHARED_LIBS +=  basicflakes               50.0 # 0.0
> @@ -50,7 +50,8 @@ MAINTAINER =        Rafael Sadowski <rsadowski@
>  PERMIT_PACKAGE =     Yes
>  DPB_PROPERTIES =     parallel
>  
> -WANTLIB += ${COMPILER_LIBCXX} ICE KChart KF5Activities KF5Archive
> +WANTLIB += ${COMPILER_LIBCXX} ICE Imath-3_1
> +WANTLIB += KChart KF5Activities KF5Archive
>  WANTLIB += KF5Auth KF5AuthCore KF5Bookmarks KF5Codecs KF5Completion
>  WANTLIB += KF5ConfigCore KF5ConfigGui KF5ConfigWidgets KF5CoreAddons
>  WANTLIB += KF5Crash KF5DBusAddons KF5GuiAddons KF5I18n KF5IconThemes
> @@ -73,8 +74,6 @@ COMPILER =  base-clang ports-gcc
>  
>  BUILD_DEPENDS =      devel/boost \
>               devel/gettext,-tools \
> -             devel/kf5/kcalendarcore \
> -             devel/kf5/kcontacts \
>               devel/kf5/kdoctools \
>               devel/kf5/kinit \
>               devel/kf5/kross \
> @@ -84,8 +83,6 @@ BUILD_DEPENDS =     devel/boost \
>  
>  RUN_DEPENDS =        devel/desktop-file-utils \
>               devel/gettext,-runtime \
> -             devel/kf5/kcalendarcore \
> -             devel/kf5/kcontacts \
>               devel/kf5/kinit \
>               devel/kf5/ktexteditor \
>               misc/shared-mime-info \
> @@ -121,6 +118,7 @@ LIB_DEPENDS =     converters/libiconv \
>               devel/kf5/sonnet \
>               graphics/kdiagram \
>               graphics/lcms2 \
> +             math/imath \
>               multimedia/phonon \
>               print/poppler,-qt5 \
>               security/qca-qt5 \
> Index: patches/patch-CMakeLists_txt
> ===================================================================
> RCS file: /cvs/ports/editors/calligra/patches/patch-CMakeLists_txt,v
> retrieving revision 1.3
> diff -u -p -u -p -r1.3 patch-CMakeLists_txt
> --- patches/patch-CMakeLists_txt      31 Aug 2021 07:31:43 -0000      1.3
> +++ patches/patch-CMakeLists_txt      16 Dec 2021 00:55:10 -0000
> @@ -13,7 +13,7 @@ From sthen@
>  Index: CMakeLists.txt
>  --- CMakeLists.txt.orig
>  +++ CMakeLists.txt
> -@@ -391,8 +391,13 @@ endif ()
> +@@ -391,8 +391,14 @@ endif ()
>   ## Check for OpenEXR
>   ##
>   
> @@ -22,6 +22,7 @@ Index: CMakeLists.txt
>  +macro_optional_find_package(Imath 3.0 CONFIG QUIET)
>  +if(TARGET Imath::Imath)
>  +    set(OPENEXR_LIBRARIES Imath::Imath)
> ++    set(OpenEXR_FOUND TRUE)
>  +else()
>  +    macro_optional_find_package(OpenEXR)
>  +endif()
> @@ -29,7 +30,7 @@ Index: CMakeLists.txt
>   
>   ##
>   ## Test for GNU Scientific Library
> -@@ -641,8 +646,8 @@ if(NOT WIN32 AND NOT APPLE)
> +@@ -641,8 +647,8 @@ if(NOT WIN32 AND NOT APPLE)
>       )
>   endif()
>   
> @@ -40,7 +41,7 @@ Index: CMakeLists.txt
>       set(FREETYPE_INCLUDE_DIRS "")
>   else()
>       add_definitions( -DSHOULD_BUILD_FONT_CONVERSION )
> -@@ -912,6 +917,9 @@ set(KOPAGEAPP_INCLUDES ${TEXTLAYOUT_INCLUDES}
> +@@ -912,6 +918,9 @@ set(KOPAGEAPP_INCLUDES ${TEXTLAYOUT_INCLUDES}
>       ${CMAKE_SOURCE_DIR}/libs/pageapp
>       ${CMAKE_SOURCE_DIR}/libs/pageapp/commands
>       ${CMAKE_BINARY_DIR}/libs/pageapp )
> 

Reply via email to