Vendor code grouping

Stanisław Kardach kda at semihalf.com
Mon May 25 14:37:52 UTC 2015


Hi,

I'm currently working on a device driver port and given its architecture I
would need to add some vendor maintained code to vendor-sys. In this
particular case I know that there is some code from this vendor (Cavium)
already present in vendor-sys (namely octeon-sdk). It deals with the same
hardware as my driver but from a different perspective. The octeon-sdk
works with Octeon processor as a FreeBSD host whereas the code I have to
put into vendor-sys (let's call it cnnic-sdk) works from a device
perspective (Octeon is a PCIe target). Normally I would assume that the
correct place to put the new vendor code would be a new directory (i.e.
vendor-sys/cnnic-sdk/dist), however in this case I was thinking whether it
would make sense (and/or is allowed) to group those two pieces of software
as sub-directories of a single vendor directory: "cavium"?
If I'm not mistaken there is already something similar done with
vendor/NetBSD but each "sub-project" lives inside the same repository (in
dist). In my case I would like to have the two Octeon related projects in
separate repositories as they are developed and updated separately. At the
same time I don't want to re-invent the wheel or do something not in
FreeBSD spirit of work.
So to sum things up what would make the most sense:

1. Put my vendor code into a new directory in vendor-sys (i.e.
vendor-sys/cnnic-sdk/dist),
2. Create vendor-sys/cavium and put octeon-sdk into
vendor-sys/cavium/octeon-sdk/dist and my code into
vendor-sys/cavium/cnnic-sdk/dist,
3. Create vendor-sys/cavium/dist and put octeon-sdk into
vendor-sys/cavium/dist/octeon-sdk and my code into
vendor-sys/cavium/dist/cnnic-sdk?

Thanks in advance for Your help!

--
Best Regards,
Stanisław Kardach


More information about the freebsd-current mailing list