Warner Losh
2021-04-08 05:26:35 UTC
Greetings,
In preparations for bringing a new vendor driver in, I realized that one of
the promises of svn was that one could store .o files in the repo. We never
did that, preferring to stick with the old CVS trick of storing the .o
files as .o.uu files and converting them as part of the build process.
Well, now that we've moved to git, it's time to retool. I've taken the
liberty of converting two of the hpt* drivers. These drivers are on the
edge of relevance, it is true. However, I'm not here to talk about that
today. I'm also not here to talk about whether or not this is evil. I'm not
changing any defaults, they still won't be in GENERIC and they still won't
be built as modules if you have sourceless turned on. So if you want to
talk about those topics, get your own thread :)
My proposal is to simplify. I propose that we remove the .uu files and just
commit the .o files and adjust the build to simplify it. It turns out that
our config(8) knows that when there's a .o in the kernel files* file, just
to copy that .o file over when the driver is in the tree.
I've done hptnr and hpt27xx rather arbitrarily to get the hang of this and
have uploaded the diffs to phabricator for review. I plan on doing the rest
of these files this way.
https://reviews.freebsd.org/D29632
https://reviews.freebsd.org/D29634
Comments?
Warner
In preparations for bringing a new vendor driver in, I realized that one of
the promises of svn was that one could store .o files in the repo. We never
did that, preferring to stick with the old CVS trick of storing the .o
files as .o.uu files and converting them as part of the build process.
Well, now that we've moved to git, it's time to retool. I've taken the
liberty of converting two of the hpt* drivers. These drivers are on the
edge of relevance, it is true. However, I'm not here to talk about that
today. I'm also not here to talk about whether or not this is evil. I'm not
changing any defaults, they still won't be in GENERIC and they still won't
be built as modules if you have sourceless turned on. So if you want to
talk about those topics, get your own thread :)
My proposal is to simplify. I propose that we remove the .uu files and just
commit the .o files and adjust the build to simplify it. It turns out that
our config(8) knows that when there's a .o in the kernel files* file, just
to copy that .o file over when the driver is in the tree.
I've done hptnr and hpt27xx rather arbitrarily to get the hang of this and
have uploaded the diffs to phabricator for review. I plan on doing the rest
of these files this way.
https://reviews.freebsd.org/D29632
https://reviews.freebsd.org/D29634
Comments?
Warner