Re: Packaging Clang plugins (need rpm-macros-clang / rpm-macros-llvm packages?)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Fabio Valentini <decathorpe@xxxxxxxxx> writes:

> On Mon, May 3, 2021 at 11:48 PM Dan Čermák
> <dan.cermak@xxxxxxxxxxxxxxxxxxx> wrote:
>>
>> FeRD <ferdnyc@xxxxxxxxx> writes:
>>
>> > I'd *like* the spec file to indicate that the existing F34 clazy package
>> > depends on the clang-11.0.0 package, specifically, and that my updated spec
>> > file builds a clazy that "Requires: clang-12.0.0". (Or, really, any
>> > clang-12* package.) That way, the clang11 packages will no longer satisfy
>> > either of them, and clazy will be properly flagged as requiring a rebuild.
>> > ...But without some /usr/lib/rpm/macros.d/ file to provide the necessary
>> > version numbering, I'm not super clear on how to go about doing that.
>>
>> You can query the rpm database during the rpm build, e.g. via:
>>
>> Requires: clang = %(rpm -q --qf '%%{version}' clang)
>>
>> Calling rpm from within rpm used to be frowned upon, because it can lead
>> to really nasty issues if the "inner" rpm is a different than the outer
>> one. But since mock nowadays uses bootstrap mode by default, these
>> issues should no longer exist.
>
> Theoretically, yes. However, this make it necessary to rebuild clazy
> even for minor + patch releases of clang.

Right, forgot about that.

> An RPM macro to indicate the major clang version would be a much
> cleaner solution.

Agreed here.

You could also try to use the symlink in %{_libdir}/clang/$MAJOR_VERSION [1]
to require the major version of clang at build time, but not sure if
that's what you want either.


Cheers,

Dan

Footnotes:
[1]  see: https://src.fedoraproject.org/rpms/clang/c/43b5ca7f2bb9459e3c7cd55fffbf94ab68027a20?branch=rawhide

Attachment: signature.asc
Description: PGP signature

_______________________________________________
packaging mailing list -- packaging@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to packaging-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/packaging@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure

[Index of Archives]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite Forum]     [KDE Users]

  Powered by Linux