Bug 222969

Summary: graphics/okular: cmake can't find Exiv2
Product: Ports & Packages Reporter: Mikhail T. <freebsd-2024>
Component: Individual Port(s)Assignee: freebsd-kde (group) <kde>
Status: Closed Overcome By Events    
Severity: Affects Only Me CC: adridg, tcberner
Priority: --- Flags: tcberner: maintainer-feedback+
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
Out of make clean configure in graphics/okular
none
Output of "make clean configure" after adding the suggested setting to USES none

Description Mikhail T. 2017-10-13 03:32:55 UTC
Created attachment 187122 [details]
Out of make clean configure in graphics/okular

At configure-time the port fails to find exiv2:

-- Check Kexiv2 library in local sub-folder...
-- Check Kexiv2 library using pkg-config...
-- Checking for module 'libkexiv2-kde4>=0.2.0'
--   Package 'libkexiv2-kde4', required by 'virtual:world', not found
CMake Deprecation Warning at /opt/share/cmake/Modules/FeatureSummary.cmake:671 (message):
  SET_PACKAGE_INFO is deprecated.  Use SET_PACKAGE_PROPERTIES instead.
Call Stack (most recent call first):
  /opt/share/apps/cmake/modules/MacroLogFeature.cmake:96 (SET_PACKAGE_INFO)
  generators/CMakeLists.txt:12 (macro_log_feature)

I've forcibly reinstalled cmake, pkg-config, and libkexiv2 itself, but the problem persists...

Annoyingly, the port proceeds to build and fails at the install-time, when some of the expected files can not be found in STAGEDIR.
Comment 1 Tobias C. Berner freebsd_committer freebsd_triage 2017-10-13 09:04:54 UTC
Do you have a custom install prefix set?
Comment 2 Mikhail T. 2017-10-13 13:21:32 UTC
Yes, I’ve been using /opt for both LOCALBASE and X11BASE since long before the latter was retired.
Comment 3 Tobias C. Berner freebsd_committer freebsd_triage 2017-10-13 22:00:46 UTC
I'll have to set up an environment with non-standard prefix to see exactly where it fails.

You might want to try adding 'localbase:ldflags' to graphics/okular USES= list; perhaps that is enough...
Comment 4 Mikhail T. 2017-10-14 18:51:09 UTC
Created attachment 187171 [details]
Output of "make clean configure" after adding the suggested setting to USES

> You might want to try adding 'localbase:ldflags' to graphics/okular USES= list

No obvious difference:

-USES=          cmake:outsource jpeg kde:4 pkgconfig tar:xz
+USES=          cmake:outsource jpeg localbase:ldflags kde:4 pkgconfig tar:xz

See updated configure-log...
Comment 5 Tobias C. Berner freebsd_committer freebsd_triage 2017-10-14 19:53:43 UTC
Shame, was a shot in the dark :)

How did you even get that far? Trying to install with PREFIX=/opt stops way earlier than okular.
Comment 6 Mikhail T. 2017-10-14 22:53:43 UTC
> How did you even get that far?

I have a symlink: /usr/local -> ../opt

Maybe, that's what gets me through?
Comment 7 Adriaan de Groot freebsd_committer freebsd_triage 2019-03-09 22:52:10 UTC
 - Without the link /usr/local -> /opt, the build of gettext-tools fails already. This might be a PATH thing, though, since /opt/bin isn't in there by default (while /usr/local/bin is).
 - With the link, current graphics/okular (the KF5-based one) does build and install into /opt. Problem has gone away with other updates.