public inbox for passt-dev@passt.top
 help / color / mirror / code / Atom feed
* [PATCH] musl: fix conflict on ethhdr definition
@ 2024-11-27 14:41 Laurent Vivier
  2024-11-27 14:48 ` Stefano Brivio
  0 siblings, 1 reply; 6+ messages in thread
From: Laurent Vivier @ 2024-11-27 14:41 UTC (permalink / raw)
  To: passt-dev; +Cc: Laurent Vivier

there is a conflict between netinet/if_ether.h provided by musl and
linux/if_ether.h provided by the linux headers:

  In file included from passt.h:185,
                   from tcp_vu.c:21:
  /usr/include/netinet/if_ether.h:115:8: error: redefinition of 'struct ethhdr'
    115 | struct ethhdr {
        |        ^~~~~~
  In file included from /usr/include/linux/virtio_net.h:32,
                   from tcp_vu.c:17:
  /usr/include/linux/if_ether.h:173:8: note: originally defined here
    173 | struct ethhdr {
        |        ^~~~~~

The kernel headers provide a flag to disable the definition in this case,
__UAPI_DEF_ETHHDR (see /usr/include/linux/if_ether.h comment).

Signed-off-by: Laurent Vivier <lvivier@redhat.com>
---
 Makefile | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Makefile b/Makefile
index cb7448079de5..2aa56ada65fd 100644
--- a/Makefile
+++ b/Makefile
@@ -33,6 +33,9 @@ FLAGS +=  $(FORTIFY_FLAG) -O2 -pie -fPIE
 FLAGS += -DPAGE_SIZE=$(shell getconf PAGE_SIZE)
 FLAGS += -DVERSION=\"$(VERSION)\"
 FLAGS += -DDUAL_STACK_SOCKETS=$(DUAL_STACK_SOCKETS)
+ifeq (musl, $(word 4,$(subst -, ,$(TARGET))))
+FLAGS += -D__UAPI_DEF_ETHHDR=0
+endif
 
 PASST_SRCS = arch.c arp.c checksum.c conf.c dhcp.c dhcpv6.c flow.c fwd.c \
 	icmp.c igmp.c inany.c iov.c ip.c isolation.c lineread.c log.c mld.c \
-- 
@@ -33,6 +33,9 @@ FLAGS +=  $(FORTIFY_FLAG) -O2 -pie -fPIE
 FLAGS += -DPAGE_SIZE=$(shell getconf PAGE_SIZE)
 FLAGS += -DVERSION=\"$(VERSION)\"
 FLAGS += -DDUAL_STACK_SOCKETS=$(DUAL_STACK_SOCKETS)
+ifeq (musl, $(word 4,$(subst -, ,$(TARGET))))
+FLAGS += -D__UAPI_DEF_ETHHDR=0
+endif
 
 PASST_SRCS = arch.c arp.c checksum.c conf.c dhcp.c dhcpv6.c flow.c fwd.c \
 	icmp.c igmp.c inany.c iov.c ip.c isolation.c lineread.c log.c mld.c \
-- 
2.47.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-11-27 15:45 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-11-27 14:41 [PATCH] musl: fix conflict on ethhdr definition Laurent Vivier
2024-11-27 14:48 ` Stefano Brivio
2024-11-27 14:55   ` Laurent Vivier
2024-11-27 15:05     ` Stefano Brivio
2024-11-27 15:37       ` Laurent Vivier
2024-11-27 15:45         ` Stefano Brivio

Code repositories for project(s) associated with this public inbox

	https://passt.top/passt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for IMAP folder(s).