Page MenuHomeFreeBSD

multimedia/libva-intel-driver: convert HYBRID into flavor
AbandonedPublic

Authored by jbeich on Nov 17 2018, 3:38 PM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 20 2023, 7:52 AM
Unknown Object (File)
Dec 15 2023, 10:04 AM
Unknown Object (File)
Nov 11 2023, 3:37 PM
Unknown Object (File)
Nov 9 2023, 3:37 PM
Unknown Object (File)
Nov 4 2023, 6:16 PM
Unknown Object (File)
Oct 8 2023, 2:34 PM
Unknown Object (File)
Oct 3 2023, 6:12 PM
Unknown Object (File)
Sep 30 2023, 1:42 PM

Details

Reviewers
madpilot
Group Reviewers
portmgr
Summary

Default option isn't feasible due to SandyBridge regression. To keep binary package users happy let's flavorize.

Test Plan

poudriere bulk -t logs:

Diff Detail

Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 20856
Build 20235: arc lint + arc unit

Event Timeline

Apart from the SUFFIX issue I'm ok with this.

multimedia/libva-intel-driver/Makefile
39

While @ is used to differentiate flavors though origin for ports, usually for PKGNAME we're using - as separator.

Personally I'd prefer PKGNAMESUFFIX=-${FLAVOR} which is more in line with what other ports are doing.

jbeich edited the test plan for this revision. (Show Details)
  • Add CONFLICTS_INSTALL (doesn't work for some reason)
  • Adjust pkg-descr to document VP8 encode and VP9 decode target different platforms
  • Pacify "FLAVORS" has to appear earlier from portlint
multimedia/libva-intel-driver/Makefile
39

BTW it could also be an helper:

hybrid_PKGNAMESUFFIX=-hybrid

jbeich added inline comments.
multimedia/libva-intel-driver/Makefile
39

If I switch to - as separator then users may confuse libva-intel-hybrid-driver (different package) with libva-intel-driver-hybrid (flavor). - is probably more common in the ports tree because many slave ports used it, so during slave->flavor conversion maintainers chose to keep package name compatibility. This port never had slaves, so compatibility isn't a concern.

jbeich edited the test plan for this revision. (Show Details)
  • Improve style using flavor helpers

*_CONFLICTS_INSTALL lines appear to be garbage. I've tried in this port and security/openssh-portable but make install isn't interrupted early unlike with slave ports. portmgr, did CONFLICTS* machinery ever work with flavors?

multimedia/libva-intel-driver/Makefile
39

Please understand I'm expressing this not as a comment against you. I don't really care if we use a - or @ here, so I'll approve this review whatever the separator used.

I'm anyway taking the chance to state that we need a consistent way of doing this in the ports tree, also not to confuse users.

My opinion is we need an official way to handle this, which could also be - for migrated slave ports and @ n other cases,
the important thing is it should be clearly documented.

This really looks like you are trying to coerce flavors into producing subpackages. So this is a "no".

multimedia/libva-intel-driver/Makefile
23

This is awful.

37

That is wrong, don't use @, use -. Also, please use a literal value.

portmgr review is too opaque i.e., the reviewer fails to provide rationale for why things have to be done certain way. If this is to be expected to get FLAVORS into ports may as well go back to slave ports.

D18017#385299 is also yet to be answered.

In D18017#388386, @mat wrote:

This really looks like you are trying to coerce flavors into producing subpackages. So this is a "no".

--enable-hybrid-codec can only be implemented as conflicting package i.e., either a slave port or a flavor. During runtime i965_drv_video.so loads hybrid_drv_video.so provided by the dependency i.e., hybrid can only be used through i965 driver. For an alternative see libva-intel-media-driver which also have hybrid mode

multimedia/libva-intel-driver/Makefile
23

Why? @* makes default flavor conflict with any other flavor.

37

Ideally, it should be default_PKGNAMESUFFIX_OFF=@${FLAVOR} but _OFF helper is harder to implement without ugly .if conditionals that break declarative style.

Where is it documented that only - is allowed as a separator for PKGNAMESUFFIX/PKGNAMEPREFIX? Or did you miss that by using - it'd be easy to confuse libva-intel-hybrid-driver with libva-intel-driver-hybrid?

jbeich added inline comments.
multimedia/libva-intel-driver/Makefile
37

-compiled.specifics convention predates flavors but poudriere uses @flavor when building them thus breaking discoverability rationale. If the convention is inconsistent it can be interpreted the same as no convention. Otherwise, PKGNAMESUFFIX=.hybrid can be used instead as -compiled.specifics already defines . (dot) as allowed character.

Removing myself, since submitter is now the maintainer.

Obsolete after 0fe260b63e82. I'd like to avoid flavors for what should work fine together.