multiple inter-dependent drivers onto one image
Sreenivas.Bagalkote at lsil.com
Tue Dec 13 12:09:19 CST 2005
> Hi Sreenivas,
> As in your case A depends on B and you have one diskette, I further
> want to know if you have single makefile for A & B.
Yes, one Makefile. It is like your A & A1 case below.
> For my case I already have A & A1 on single driver diskette ( for
> + UP kernels). A depends on A1. *** But A & A1 have same makefile
> As I described earlier "A" also depends on "B" & "C". "B" & "C"
> different makefiles and they are different from A's makefile.
> All these interdependent drivers are available in open-source. I
> to avoid modifying there makefiles just for the purpose of having a
If you don't want to modify the makefile, you could do this. You have
different DKMS projects A (which builds both A and A1), B and C. You can
the A+A1, B and C separately. They would have their own sub directories
/var/lib/dkms/. (/var/lib/dkms/<A | B | C>
You could have another dummy project called /var/lib/dkms/ABC. After you
the A, B and C modules, some shell script would copy those and populate
/var/lib/dkms/ABC/<ver>/... directory appropriately. Then you can have
make a single driver diskette of ABC project.
Something similar could be done for RPM also. A.rpm, B.rpm, C.rpm could
embedded into ABC.rpm. ABC.rpm would install individual RPMs first and
> -----Original Message-----
> From: Bagalkote, Sreenivas [mailto:Sreenivas.Bagalkote at engenio.com]
> Sent: Saturday, December 10, 2005 1:14 AM
> To: Matt Domsch; Aggarwal, VikasX
> Cc: Kumar, Dinesh; dkms-devel at lists.us.dell.com
> Subject: RE: multiple inter-dependent drivers onto one image
> > -----Original Message-----
> > From: Matt Domsch [mailto:Matt_Domsch at dell.com]
> > Sent: Friday, December 09, 2005 1:01 PM
> > To: Aggarwal, VikasX
> > Cc: Kumar, Dinesh; dkms-devel at lists.us.dell.com
> > Subject: Re: multiple inter-dependent drivers onto one image
> > On Fri, Dec 09, 2005 at 09:33:42AM -0800, Aggarwal, VikasX wrote:
> > > Matt,
> > >
> > > Thanks!!
> > > If I could figure out, I certainly would share the patch with you.
> > > Now to make one "DKMS package", do I have to combine Makefiles for
> A, B
> > > & C. Or do I have to create a wrapper/parent makefile.
> > Either way, whichever works for you. Depends in my mind on how
> > you'll be changing any of A, B, or C. Multiple subdirectories, one
> > each for A, B, and C, and one top-level Makefile that decends into
> > them and calls their Makefiles, may be easier for long-term
> > maintenance. To replace any of A, B, or C, just replace that
> And if you want to build this combined driver-disk for SLES/SUSE
> you should use the most recent DKMS release. The order in which you
> your module names in dkms.conf is the order in which they will be
> when you use the driver disk (C->B->A in your example). The most
> DKMS release has an appropriate patch to take care of this.
> Just for you think further about: you can also combine different
> the same driver disk. E.g., both x86 and x86_64 versions can be in the
> disk. We have a similar A depends upon B situation in megaraid scsi
> I release single disk for all RHEL 4.0 gold, update1, update2 for both
> And 64 bit drivers.
More information about the DKMS-devel