Bug 234334 - audio/sratom and audio/lilv need lv2 as run dependacy
Summary: audio/sratom and audio/lilv need lv2 as run dependacy
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Koop Mast
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-12-24 10:19 UTC by Koop Mast
Modified: 2018-12-31 05:33 UTC (History)
3 users (show)

See Also:
beerml: maintainer-feedback+


Attachments
Add lv2 as run dependacy (1.17 KB, patch)
2018-12-24 10:19 UTC, Koop Mast
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Koop Mast freebsd_committer freebsd_triage 2018-12-24 10:19:02 UTC
Created attachment 200432 [details]
Add lv2 as run dependacy

While trying to add the lv2 gstreamer1 plugins we found the following issue:

configure:43027: checking for LILV
configure:43035: $PKG_CONFIG --exists --print-errors "lilv-0 >= 0.22"
Package lv2 was not found in the pkg-config search path.
Perhaps you should add the directory containing `lv2.pc'
to the PKG_CONFIG_PATH environment variable
Package 'lv2', required by 'lilv-0', not found
Package 'lv2', required by 'sratom-0', not found
configure:43038: $? = 1
configure:43053: $PKG_CONFIG --exists --print-errors "lilv-0 >= 0.22"

The plain version is that both sratom and lilv require lv2 via there pkg-config files. So both ports should require lv2 also at run time.
Comment 1 Michael Beer 2018-12-27 20:56:21 UTC
(In reply to Koop Mast from comment #0)

Sorry, 
from your report I miss to see what the actual problem is which you are facing.
The pkgconfig file is in the usual location: /usr/local/libdata/pkgconfig/lv2.pc
Furthermore the lv2 package is basically header files only.
Thus there is no run time dependency!

Regards,
Michael
Comment 2 Koop Mast freebsd_committer freebsd_triage 2018-12-28 13:33:18 UTC
The pkg-config files: sratom-0.pc and lilv-0.pc. Both have "lv2" in the "Requires:" line.

This means that if a port, like the gstreamer lv2 plugin does, wants to use the pkg-config file the lv2 port needs to be installed too. While gstreamer could pull in lv2, the correct fix is to have run dependancies on lv2 in sratom and lilv because they are speficying the lv2 requirement.
Comment 3 Michael Beer 2018-12-28 21:13:18 UTC
(In reply to Koop Mast from comment #2)

OK, I guess, I understand the problem now.
So something like
RUN_DEPENDS=	lv2>=1.14.0:audio/lv2
should fix the issue, right?

I have to check which of my other ports are
also affected.
Comment 4 Koop Mast freebsd_committer freebsd_triage 2018-12-30 11:07:37 UTC
Yes, see the patch I have added to this bug report. If you approve I will commit it. Please note that the order is BUILD_DEPENDS, LIB_DEPENDS, RUN_DEPENDS.
Comment 5 Michael Beer 2018-12-30 14:53:06 UTC
(In reply to Koop Mast from comment #4)

Sure, looks good, approved! 
I didn't recognize the attached patch when reading you bug report, sorry!
Comment 6 commit-hook freebsd_committer freebsd_triage 2018-12-30 20:57:54 UTC
A commit references this bug:

Author: kwm
Date: Sun Dec 30 20:56:51 UTC 2018
New revision: 488738
URL: https://svnweb.freebsd.org/changeset/ports/488738

Log:
  Add lv2 to RUN_DEPENDS.

  sratom and lilv both have lv2 in the Required filed of there pkg-config file.

  PR:		234334
  Approved by:	maintainer

Changes:
  head/audio/lilv/Makefile
  head/audio/sratom/Makefile
Comment 7 Koop Mast freebsd_committer freebsd_triage 2018-12-30 20:59:26 UTC
No worries about the missed patch. Thanks for the approval.
Comment 8 Yuri Victorovich freebsd_committer freebsd_triage 2018-12-30 21:39:40 UTC
lv2 should be in BUILD_DEPENDS of all LV2-based ports, and never in RUN_DEPENDS.
There's nothing in the lv2 package that is beyond a regular header-only library.

It seems that the right solution in this case is to add lv2 to BUILD_DEPENDS of gstreamer1.

You can also verify with most sratom dependent ports. Most of them have BUILD_DEPENDS=lv2.
Comment 9 Yuri Victorovich freebsd_committer freebsd_triage 2018-12-30 21:41:43 UTC
(In reply to Yuri Victorovich from comment #8)

Actually, sorry, I take it back!

sratom headers do depend on lv2, so it should be in RUN_DEPENDS in this case.


Never mind!