net-misc/dibbler doesn't compile with musl. Attached patch fixes it and doesn't break glibc. Reproducible: Always Steps to Reproduce: 1. emerge -v1 dibbler Actual Results: x86_64-gentoo-linux-musl-gcc -DHAVE_CONFIG_H -I. -I../include -I../Misc -O2 -DLINUX -Wall -pedantic -funsigned-char -DMOD_CLNT_BIND_REUSE -DMOD_CLNT_CONFIRM -std=c99 -Os -pipe -fomit-frame-pointer -mtune=generic -c -o libLowLevel_a-utils.o `test -f 'utils.c' || echo './'`utils.c lowlevel-linux-link-state.c:21:28: fatal error: bits/sigthread.h: No such file or directory #include <bits/sigthread.h> ^ compilation terminated. Makefile:508: recipe for target 'libLowLevel_a-lowlevel-linux-link-state.o' failed make[1]: *** [libLowLevel_a-lowlevel-linux-link-state.o] Error 1 make[1]: *** Waiting for unfinished jobs.... In file included from iproute.c:34:0: utils.h:68:2: error: unknown type name 'u_int32_t' u_int32_t ipx_net; ^ utils.h:69:2: error: unknown type name 'u_int8_t' u_int8_t ipx_node[IPX_NODE_LEN]; ^ In file included from interface.c:40:0: ethtool-local.h:25:1: error: unknown type name '__uint32_t' typedef __uint32_t u32; ^ ethtool-local.h:26:1: error: unknown type name '__uint16_t' typedef __uint16_t u16; ^ ethtool-local.h:27:1: error: unknown type name '__uint8_t' typedef __uint8_t u8; ^ lowlevel-options-linux.c: In function 'prefix_add': lowlevel-options-linux.c:500:5: warning: format '%u' expects argument of type 'unsigned int', but argument 3 has type 'long unsigned int' [-Wformat=] fprintf(f, " AdvPreferredLifetime %u;\n", prefered); ^ Makefile:424: recipe for target 'libLowLevel_a-interface.o' failed make[1]: *** [libLowLevel_a-interface.o] Error 1 In file included from utils.c:35:0: utils.h:68:2: error: unknown type name 'u_int32_t' u_int32_t ipx_net; ^ utils.h:69:2: error: unknown type name 'u_int8_t' u_int8_t ipx_node[IPX_NODE_LEN]; ^ Makefile:536: recipe for target 'libLowLevel_a-utils.o' failed make[1]: *** [libLowLevel_a-utils.o] Error 1 Makefile:438: recipe for target 'libLowLevel_a-iproute.o' failed make[1]: *** [libLowLevel_a-iproute.o] Error 1 make[1]: Leaving directory '/var/tmp/portage/net-misc/dibbler-1.0.0/work/dibbler-1.0.0/Port-linux' Makefile:816: recipe for target 'all-recursive' failed make: *** [all-recursive] Error 1 Expected Results: >>> net-misc/dibbler-1.0.0 merged. Reported to upstream at https://github.com/tomaszmrugalski/dibbler/pull/27
Created attachment 404986 [details, diff] 0001-Compatybility-patch-for-musl.patch
Okay this is in the musl overlay. Please not the overlay's location has moved as per bug #430702 comment #7. Ping us back when upstream has accepted or pushed out a new release with the fix.
By now, the patch has been accepted by upstream but there is not yet a new release. Upstream commit: https://github.com/tomaszmrugalski/dibbler/commit/47576e2320a7c25ec8d201950d74c865271e00a5
*** Bug 712380 has been marked as a duplicate of this bug. ***
@voyageur, would you mind cutting an -r3 release with the patch from ::musl, and we can close the the bug, and remove the ebuild from the overlay. Cheers!
Sure, it is in master upstream so no problem!
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c2688349694c17c401694990e069ab5efeacca0a commit c2688349694c17c401694990e069ab5efeacca0a Author: Bernard Cafarelli <voyageur@gentoo.org> AuthorDate: 2020-04-28 22:44:02 +0000 Commit: Bernard Cafarelli <voyageur@gentoo.org> CommitDate: 2020-04-28 22:44:16 +0000 net-misc/dibbler: move musl patch from overlay to main tree Closes: https://bugs.gentoo.org/551818 Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Bernard Cafarelli <voyageur@gentoo.org> net-misc/dibbler/dibbler-1.0.1-r3.ebuild | 63 ++++++++++++++++ net-misc/dibbler/files/dibbler-1.0.1-gnu-ism.patch | 83 ++++++++++++++++++++++ 2 files changed, 146 insertions(+)