[CentOS-devel] kmod packaging guideline
Farkas Levente
lfarkas at lfarkas.org
Sun Dec 21 21:10:31 UTC 2008
Ned Slider wrote:
> Farkas Levente wrote:
>> hi,
>> it'd be nice to write some kind of docs about how to write kmod packages
>> for centos. as i wrote in one of my earlier post there are two problems
>> currently with the weak-updates kmods:
>>
>> kmodtool shouldn't have to add to all packages rather use the
>> /usr/lib/rpm/redhat/kmodtool from redhat-rpm-config ie:
>> ----------------------------------------------
>> @@ -1,7 +1,6 @@
>> -Source10: kmodtool
>> Source11: find-requires
>> Source12: find-requires.ksyms
>> -%define kmodtool bash %{SOURCE10}
>> +%define kmodtool bash /usr/lib/rpm/redhat/kmodtool
>> ----------------------------------------------
>> and add:
>> BuildRequires: redhat-rpm-config
>>
>
> Hi Farkas,
>
> There is some information on building kABI tracking kmod packages in the
> BuildingKernelModules page on the Wiki:
>
> http://wiki.centos.org/HowTos/BuildingKernelModules#head-b86b6eec08d5719cf1838929f26a64af88e2b7f0
the only problem it's outdated.
> Unless I misunderstand your proposal above, one reason I have found for
> including a custom kmodtool-foo source script with your kmod is for
> satisfying Requires. For example, putting:
>
> Requires: foo-bar >= 1.2.3
>
> in the SPEC file for a kmod doesn't work. The Require needs to be added
> to the kmodtool script:
>
> Requires(post): /sbin/depmod
> Requires(postun): /sbin/depmod
> *Requires: foo-bar >= 1.2.3*
> EOF
no it can be use with both kmodtool (redhat and included), the problem
comes from the weak-updates style of kmod and the:
%global _use_internal_dependency_generator 0
anyway it's another problem how to solve.
> I came across this problem building some kmods that required a later
> version of lm_sensors. An example can be seen in this kmod package for
> the coretemp module:
>
> http://www.pperry.f2s.com/linux/coretemp/
>
> I'll admit I'm not an expert kmod packager, but placing the Requires in
> the kmodtool script was the only solution I found (actually either
> Johnny or Karanbir suggested it on IRC IIRC). In my case kmodtool-foo
> was simply a copy of /usr/lib/rpm/redhat/kmodtool with the necessary
> Requires added. If there's a simpler or more elegant solution then
> please do enlighten me :)
>
> My next question would be if Requires: doesn't work in a kmod SPEC file,
> will
>
> BuildRequires: redhat-rpm-config
>
> work?
i hope so.
--
Levente "Si vis pacem para bellum!"
More information about the CentOS-devel
mailing list