Hi Olivier,

Olivier LAHAYE wrote:
> Trying to minimize the number of includes to put in the dkms build tree I'm 
> trying to create, I've found that there are 2 hgfs.h , 2 block.h and 2 
> stubs.h 
> includes that are identical except for the top comment (tipicaly the 
> license). 
> Is it normal?
> 
> modules/linux/vmhgfs/hgfs.h is GPL v2
> lib/include/hgfs.h is LGPL v2.1
> 
> modules/linux/vmblock/linux/block.h is GPL v2
> vmblock-fuse/block.h is LGPL v2.1
> 
> modules/linux/vmblock/linux/stubs.h is GPL v2
> vmblock-fuse/stubs.h is LGPL v2.1
> 
> Aside that, they are strictly identical...

Yes, the files are identical except for the license. This is one of the things 
I 
worked on the past couple of months and, in the next code refresh (sometime 
this 
week) most of these duplications should be gone. (In fact, the only one I see 
now is hgfs.h, which apparently I missed.)

So at least it should be easier to choose which file to package since there 
should be only one from now on. :-) (The files will be licensed under LGPL and, 
where needed, CDDL and / or BSD; I'm assuming that LGPL is fine for use in the 
kernel module code which is licensed under the GPL - all these licenses make my 
head spin sometimes).

About your other question about what files to package, after all this cleanup 
it 
does become a little bit trickier to package modules for use with dkms; 
basically, what you'll have to do is:

. place all shared headers either on the module's dir directly, or under a 
"shared" directory under the module's source dir
. place all the "autoconf" stuff under "shared/autoconf" under the module's 
source dir
. copy any shared sources to the module's source dir (for example, 
lib/misc/dbllnklst.c which is used by a few modules).

Also, you shouldn't define OVT_SOURCE_DIR when building through dkms (in case 
you're wondering why that's used in modules/Makefile.am). That variable changes 
the behavior of the makefiles to use the shared stuff in the open-vm-tools 
package, which is not what you want for dkms.

We do something similar when we package these modules with the Tools we ship 
with Workstation or other VMware products, so if you want more information 
about 
what the directory structure for building different modules "stand alone" looks 
like, feel free to ask.

-- 
- Marcelo

------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensing option that enables 
unlimited royalty-free distribution of the report engine 
for externally facing server and web deployment. 
http://p.sf.net/sfu/businessobjects
_______________________________________________
open-vm-tools-devel mailing list
open-vm-tools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open-vm-tools-devel

Reply via email to