Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.
Sign uplibgcrypt: bump to 1.7.2, keep and fix libgcrypt.la, add TEST(). #665
Conversation
|
dumpsexp, hmac256 and mpicalc are meant to be in the devel package, why the change? |
|
OK, I've put back dumpsexp and mpicalc in the devel package, but I left hmac256 in the base package because it has its man page. |
* Bump to version 1.7.2, update HOMEPAGE. * Move hmac256 to the $binDir of the base package. Keep dumpsexp, mpicalc and libgcrypt-config in the _devel package, however. * Keep libgcrypt.la to allow packages that depend on libgcrypt to not have to declare an indirect dependency on libgpg_error. * Fix paths to libgpg_error in libgcrypt.la to make sure they won't become broken if libgpg_error gets upgraded. * Add TEST() with "make check".
|
Imagine we have 3 recipes: one program, say |
|
That makes sense. Is there a way to fix libtool so it generates the right thing directly? (IIRC there is no need for an absolute path in the .la files). This would avoid having to manually fix things in the recipes, at least. |
|
Please open an issue about the problem you want to discuss, or post on the mailing list. -1 for keeping libgcrypt.la. |
|
So, if I read the libtool patch linked by Korli correctly, we can:
|
|
A patch for libtool to make it drop the references to other libs will only make things worse with regards to indirect dependencies. We need to keep the libtool files and fix them using the paths that package-links abstraction provide. See the description of the portPackageLinksDir variable in https://github.com/haikuports/haikuports/wiki/HaikuPorter-BuildRecipes if you want to read about package-links abstraction. If
This will convert e.g. HaikuPorter already has a helper function, If other contributors also agree with @pulkomandy's comment, "That makes sense", refering to my previous comment, then please consider writing in private mail to @korli to convince him we should keep and fix the libtool files, either with sed commands or by calling a helper function. BTW, I can try and write such a helper function for HaikuPorter if I'm given green lights to keep libtool files. And in that case I'll wait until that helper function becomes available in order to simplify this recipe (before merging it) as well as the other recipes that are still WIP. |
|
As far as I know, very few recipes were broken by lack of libtool files, and that number will continue to shrink because libtool seems to be used less and less. So I say we drop them (@pulkomandy's option 1, @korli's stance, and the general procedure since forever.) Also, don't write private mails to korli, or anyone else; rather, start a discussion on the HaikuPorts mailing list (explicitly referencing korli, if you must) about this. Thanks. |
|
Another follow-up: Since this has been procedure since forever, and it's easy enough to change in the future, go ahead and delete the libtool files (and mark the other recipes non-WIP that were waiting on that). If there is another discussion on the ML that reverses that concensus, we can change things rather easily. And just so there aren't any perceived slights: @fbrosson, your work on HaikuPorts is to be commended! Not all of us have as much time for it as we'd like, so your work is greatly appreciated. |
|
Also, in the thread that @korli linked to, the last message in the thread points to https://autotools.io/libtool/lafiles.html, which clearly states at the bottom of the page:
(emphasis mine). |
|
I might be wrong, but the pc files do not have references to external dependencies, so this means that myprog would have to explicitely depend on both libfoo and libbar. With the libtool file we can get rid of all indirect dependencies. |
As I said above: libtool is effectively deprecated and fewer applications are using it. We will always have to explicitly declare REQUIRES/PROVIDES in a recipe; and so the only thing we care about is when the lack of libtool files breaks a build somewhere else. So, unless you know of some piece of software which requires these, remove them. (And re-add them with a comment saying which recipe requires them if you need to, but the number of those are decreasing.) So please drop the libtool files here and elsewhere. |
|
Well let's get things right:
|
fbrosson commentedJun 22, 2016
•
edited
hmac256to the$binDirof the base package. Keepdumpsexp,mpicalcandlibgcrypt-configin the _devel package, however.libgcrypt.lato allow packages that depend on libgcrypt to not have to declare an indirect dependency on libgpg_error.libgcrypt.lato make sure they won't become broken if libgpg_error gets upgraded.TEST()withmake check.