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!"