EAPI=6, maintainer-needed, incorrect LICENSE, fails to compile with clang. package list: net-mail/gnubiff
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1d423fdd8574b2490bc3f008180ec63c6e5d9888 commit 1d423fdd8574b2490bc3f008180ec63c6e5d9888 Author: Arthur Zamarin <arthurzam@gentoo.org> AuthorDate: 2024-05-31 08:44:08 +0000 Commit: Arthur Zamarin <arthurzam@gentoo.org> CommitDate: 2024-05-31 08:44:08 +0000 net-mail/gnubiff: last-rite Bug: https://bugs.gentoo.org/933241 Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org> profiles/package.mask | 6 ++++++ 1 file changed, 6 insertions(+)
I'm looking at this right now. The EAPI and LICENSE are easily resolved. I may need some help with the clang problem.
OK, let me know if you need me
(In reply to Phil Stracchino (Unix Ronin) from comment #2) > I'm looking at this right now. The EAPI and LICENSE are easily resolved. I > may need some help with the clang problem. Hi, 30 days window already passed. I'll give you a week extension.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=14f8c994b08a053132be5ecb2cc754e510da4938 commit 14f8c994b08a053132be5ecb2cc754e510da4938 Author: Arthur Zamarin <arthurzam@gentoo.org> AuthorDate: 2024-07-02 16:18:43 +0000 Commit: Arthur Zamarin <arthurzam@gentoo.org> CommitDate: 2024-07-02 16:18:43 +0000 net-mail/gnubiff: extend by week last-rite Bug: https://bugs.gentoo.org/933241 Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org> profiles/package.mask | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
(In reply to Arthur Zamarin from comment #4) > (In reply to Phil Stracchino (Unix Ronin) from comment #2) > > I'm looking at this right now. The EAPI and LICENSE are easily resolved. I > > may need some help with the clang problem. > > Hi, 30 days window already passed. I'll give you a week extension. Sorry, I've been really busy with other things. Nobody ever contacted me back from maintainers-needed. I have a trivial patch to resolve the LICENSE and EAPI as soon as I have a place to submit it, and I'm unable to reproduce the compilation issue, which APPEARS to be caused by naively substituting clang into CC resulting in gcc options not supported by clang being passed to clang. I have no idea how to work around that.
Created attachment 896809 [details, diff] Trivial patch to resolve LICENSE and EAPI issues
(In reply to Phil Stracchino (Unix Ronin) from comment #6) > I have no idea how to work around > that. And forgot to add, "but I don't think that can fairly be said to be gnubiff's fault."
(In reply to Phil Stracchino (Unix Ronin) from comment #6) > (In reply to Arthur Zamarin from comment #4) > > (In reply to Phil Stracchino (Unix Ronin) from comment #2) > > > I'm looking at this right now. The EAPI and LICENSE are easily resolved. I > > > may need some help with the clang problem. > > > > Hi, 30 days window already passed. I'll give you a week extension. > > > Sorry, I've been really busy with other things. > > Nobody ever contacted me back from maintainers-needed. I don't think anyone looks at the mail for that. We try to look at the proxy-maint@ email but it gets buried. IRC is best.
(In reply to Sam James from comment #9) > (In reply to Phil Stracchino (Unix Ronin) from comment #6) > > Nobody ever contacted me back from maintainers-needed. > > I don't think anyone looks at the mail for that. We try to look at the > proxy-maint@ email but it gets buried. IRC is best. I wish I'd known that. Hod do we best move forward?
I have a clang-only system and can replicate. Clang doesn't understand the option but continues anyway (with a warning). You can just drop -export-dynamic from src/Makefile.am to fix https://bugs.gentoo.org/930500. It doesn't do anything there: Its a linker option in the compile-only phase and is ignored by gcc (clang warns you it has no effect). What the author probably MEANT was: gnubiff_LDFLAGS = -Wl,--export-dynamic in src/Makefile.am, but adding it doesn't make any difference, the program complains about missing -rdynamic at runtime either way, with or without the patch, and with both gcc and clang Also the ebuild is broken in one subtle way: epatch_apply is called AFTER eautoreconf, so user matches to the autoconf machinery have no effect.
(In reply to Christopher Byrne from comment #11) > I have a clang-only system and can replicate. Clang doesn't understand the > option but continues anyway (with a warning). > > You can just drop -export-dynamic from src/Makefile.am to fix > https://bugs.gentoo.org/930500. It doesn't do anything there: Its a linker > option in the compile-only phase and is ignored by gcc (clang warns you it > has no effect). What the author probably MEANT was: > > gnubiff_LDFLAGS = -Wl,--export-dynamic > > in src/Makefile.am, but adding it doesn't make any difference, the program > complains about missing -rdynamic at runtime either way, with or without the > patch, and with both gcc and clang > > Also the ebuild is broken in one subtle way: epatch_apply is called AFTER > eautoreconf, so user matches to the autoconf machinery have no effect. Thank you for these, I will update patches.
(In reply to Christopher Byrne from comment #11) > I have a clang-only system and can replicate. Clang doesn't understand the > option but continues anyway (with a warning). Christopher, can you pull net-mail/gnubiff-2.2.17-r3.ebuild from my unofficial Gentoo overlay at https://github.com/UnixRonin/gentoo-dev-alaric and verify that it builds correctly for you?
No it does not, because src_configure does things in the wrong order. src_configure needs to apply patches first, then eapply_user (or default), then eautoreconf Also, there is no license called GPL-3+-with-openssl-exception in Portage, so that needs to be added to your overlay. Alsp. if its added to portage the "GPL-3+-with-openssl-exception" needs to be added to the appropriate license group (probably @GPL-COMPATIBLE).
(In reply to Christopher Byrne from comment #14) > No it does not, because src_configure does things in the wrong order. > src_configure needs to apply patches first, then eapply_user (or default), > then eautoreconf Doh! I did that backwards. :p That part is fixed, if you want to delete and re-fetch. > Also, there is no license called GPL-3+-with-openssl-exception in Portage, > so that needs to be added to your overlay. > > Alsp. if its added to portage the "GPL-3+-with-openssl-exception" needs to > be added to the appropriate license group (probably @GPL-COMPATIBLE). Oh, I see, I misunderstood, a GPL-3+-with-openssl-exception LICENSE type needs to be CREATED? Not just the license changed to an already existing type? Sam, I'm going to need help on how to correctly handle this one.
After working around the license issue, yes, this version works.
You just add it as a licence into the licences/ directory (in a separate commit) and also update profiles/license_groups appropriately (it should be the same as GPL-3-with-openssl-exception).
(In reply to Sam James from comment #17) > You just add it as a licence into the licences/ directory (in a separate > commit) and also update profiles/license_groups appropriately (it should be > the same as GPL-3-with-openssl-exception). OK, let me see if I can figure that out. And then I'll need to know where to submit everything once it's all confirmed good.
(In reply to Phil Stracchino (Unix Ronin) from comment #18) > (In reply to Sam James from comment #17) > > You just add it as a licence into the licences/ directory (in a separate > > commit) and also update profiles/license_groups appropriately (it should be > > the same as GPL-3-with-openssl-exception). > > OK, let me see if I can figure that out. And then I'll need to know where > to submit everything once it's all confirmed good. The license update ITSELF looks fairly straightforward...
(In reply to Phil Stracchino (Unix Ronin) from comment #19) > (In reply to Phil Stracchino (Unix Ronin) from comment #18) > > (In reply to Sam James from comment #17) > > > You just add it as a licence into the licences/ directory (in a separate > > > commit) and also update profiles/license_groups appropriately (it should be > > > the same as GPL-3-with-openssl-exception). > > > > OK, let me see if I can figure that out. And then I'll need to know where > > to submit everything once it's all confirmed good. > > The license update ITSELF looks fairly straightforward... License created locally and added to my repo I've followed the pattern of GPL-3+ and added the exception from GPL-3-with-openssl-exception
(In reply to Phil Stracchino (Unix Ronin) from comment #20) > License created locally and added to my repo > > I've followed the pattern of GPL-3+ and added the exception from > GPL-3-with-openssl-exception Christopher, could I ask one more re-test please?
Yes, it works if I add "net-mail/gnubiff GPL-3+-with-openssl-exception" to /etc/portage/package.license/gnubiff .
(In reply to Christopher Byrne from comment #22) > Yes, it works if I add "net-mail/gnubiff GPL-3+-with-openssl-exception" to > /etc/portage/package.license/gnubiff . Right, I forgot to update license GROUPS...
(In reply to Phil Stracchino (Unix Ronin) from comment #23) > (In reply to Christopher Byrne from comment #22) > > Yes, it works if I add "net-mail/gnubiff GPL-3+-with-openssl-exception" to > > /etc/portage/package.license/gnubiff . > > Right, I forgot to update license GROUPS... OK, Sam, we have a tested-working updated ebuild and a license update. What's my next step?
Usually the next step submit a pull request: https://wiki.gentoo.org/wiki/Creating_GitHub_Pull_Requests
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b7d84abd5deec50c4d75f0ef66953c394d006e3d commit b7d84abd5deec50c4d75f0ef66953c394d006e3d Author: Arthur Zamarin <arthurzam@gentoo.org> AuthorDate: 2024-07-12 14:22:43 +0000 Commit: Arthur Zamarin <arthurzam@gentoo.org> CommitDate: 2024-07-12 14:24:18 +0000 net-mail/gnubiff: un-last-rite Closes: https://bugs.gentoo.org/933241 Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org> profiles/package.mask | 6 ------ 1 file changed, 6 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a0b6e2a772ca60c1af8c6b49972a13e16b42eb25 commit a0b6e2a772ca60c1af8c6b49972a13e16b42eb25 Author: Phil Stracchino <phils@caerllewys.net> AuthorDate: 2024-07-10 19:26:06 +0000 Commit: Arthur Zamarin <arthurzam@gentoo.org> CommitDate: 2024-07-12 14:24:18 +0000 net-mail/gnubiff: add 2.2.17-r3 - adds a new LICENSE GPL-3+-with-openssl-exception - cleans up all old 2.2.15 patches - fixes compilation errors on clang-only systems by removing '-export-dynamic' from Makefile Closes: https://bugs.gentoo.org/880267 Closes: https://bugs.gentoo.org/930500 Closes: https://bugs.gentoo.org/933241 Signed-off-by: Phil Stracchino <phils@caerllewys.net> Closes: https://github.com/gentoo/gentoo/pull/37513 Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org> licenses/GPL-3+-with-openssl-exception | 16 ++++++ net-mail/gnubiff/files/gnubiff-2.2.15-gold.patch | 17 ------- .../gnubiff/files/gnubiff-2.2.15-underlink.patch | 12 ----- net-mail/gnubiff/files/gnubiff-2.2.17-clang.patch | 15 ++++++ .../gnubiff/files/gnubiff-2.2.17-configure.patch | 18 +++++++ ...-fix-nls.patch => gnubiff-2.2.17-fix-nls.patch} | 8 +-- net-mail/gnubiff/gnubiff-2.2.17-r3.ebuild | 57 ++++++++++++++++++++++ profiles/license_groups | 2 +- 8 files changed, 112 insertions(+), 33 deletions(-)