Hi all,

This is now a conflict between the net and net-next trees.

On Mon, 14 Oct 2019 10:32:32 +1100 Stephen Rothwell <s...@canb.auug.org.au> 
wrote:
>
> Today's linux-next merge of the bpf-next tree got a conflict in:
> 
>   tools/lib/bpf/Makefile
> 
> between commit:
> 
>   1bd63524593b ("libbpf: handle symbol versioning properly for libbpf.a")
> 
> from the net tree and commits:
> 
>   5c26f9a78358 ("libbpf: Don't use cxx to test_libpf target")
>   793a349cd819 ("libbpf: Add C/LDFLAGS to libbpf.so and test_libpf targets")
> 
> from the bpf-next tree.
> 
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging.  You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
> 
> -- 
> Cheers,
> Stephen Rothwell
> 
> diff --cc tools/lib/bpf/Makefile
> index 56ce6292071b,75b538577c17..000000000000
> --- a/tools/lib/bpf/Makefile
> +++ b/tools/lib/bpf/Makefile
> @@@ -143,7 -133,9 +143,9 @@@ LIB_TARGET       := $(addprefix $(OUTPUT),$(L
>   LIB_FILE    := $(addprefix $(OUTPUT),$(LIB_FILE))
>   PC_FILE             := $(addprefix $(OUTPUT),$(PC_FILE))
>   
> + TAGS_PROG := $(if $(shell which etags 2>/dev/null),etags,ctags)
> + 
>  -GLOBAL_SYM_COUNT = $(shell readelf -s --wide $(BPF_IN) | \
>  +GLOBAL_SYM_COUNT = $(shell readelf -s --wide $(BPF_IN_SHARED) | \
>                          cut -d "@" -f1 | sed 's/_v[0-9]_[0-9]_[0-9].*//' | \
>                          awk '/GLOBAL/ && /DEFAULT/ && !/UND/ {print $$8}' | \
>                          sort -u | wc -l)
> @@@ -165,7 -149,7 +159,7 @@@ all: fixde
>   
>   all_cmd: $(CMD_TARGETS) check
>   
> - $(BPF_IN_SHARED): force elfdep bpfdep
>  -$(BPF_IN): force elfdep bpfdep bpf_helper_defs.h
> ++$(BPF_IN_SHARED): force elfdep bpfdep bpf_helper_defs.h
>       @(test -f ../../include/uapi/linux/bpf.h -a -f 
> ../../../include/uapi/linux/bpf.h && ( \
>       (diff -B ../../include/uapi/linux/bpf.h 
> ../../../include/uapi/linux/bpf.h >/dev/null) || \
>       echo "Warning: Kernel ABI header at 'tools/include/uapi/linux/bpf.h' 
> differs from latest version at 'include/uapi/linux/bpf.h'" >&2 )) || true
> @@@ -181,24 -165,26 +175,29 @@@
>       @(test -f ../../include/uapi/linux/if_xdp.h -a -f 
> ../../../include/uapi/linux/if_xdp.h && ( \
>       (diff -B ../../include/uapi/linux/if_xdp.h 
> ../../../include/uapi/linux/if_xdp.h >/dev/null) || \
>       echo "Warning: Kernel ABI header at 'tools/include/uapi/linux/if_xdp.h' 
> differs from latest version at 'include/uapi/linux/if_xdp.h'" >&2 )) || true
>  -    $(Q)$(MAKE) $(build)=libbpf
>  +    $(Q)$(MAKE) $(build)=libbpf OUTPUT=$(SHARED_OBJDIR) CFLAGS="$(CFLAGS) 
> $(SHLIB_FLAGS)"
>  +
>  +$(BPF_IN_STATIC): force elfdep bpfdep
>  +    $(Q)$(MAKE) $(build)=libbpf OUTPUT=$(STATIC_OBJDIR)
>   
> + bpf_helper_defs.h: $(srctree)/include/uapi/linux/bpf.h
> +     $(Q)$(srctree)/scripts/bpf_helpers_doc.py --header              \
> +             --file $(srctree)/include/uapi/linux/bpf.h > bpf_helper_defs.h
> + 
>   $(OUTPUT)libbpf.so: $(OUTPUT)libbpf.so.$(LIBBPF_VERSION)
>   
>  -$(OUTPUT)libbpf.so.$(LIBBPF_VERSION): $(BPF_IN)
>  +$(OUTPUT)libbpf.so.$(LIBBPF_VERSION): $(BPF_IN_SHARED)
> -     $(QUIET_LINK)$(CC) --shared 
> -Wl,-soname,libbpf.so.$(LIBBPF_MAJOR_VERSION) \
> -                                 -Wl,--version-script=$(VERSION_SCRIPT) $^ 
> -lelf -o $@
> +     $(QUIET_LINK)$(CC) $(LDFLAGS) \
> +             --shared -Wl,-soname,libbpf.so.$(LIBBPF_MAJOR_VERSION) \
> +             -Wl,--version-script=$(VERSION_SCRIPT) $^ -lelf -o $@
>       @ln -sf $(@F) $(OUTPUT)libbpf.so
>       @ln -sf $(@F) $(OUTPUT)libbpf.so.$(LIBBPF_MAJOR_VERSION)
>   
>  -$(OUTPUT)libbpf.a: $(BPF_IN)
>  +$(OUTPUT)libbpf.a: $(BPF_IN_STATIC)
>       $(QUIET_LINK)$(RM) $@; $(AR) rcs $@ $^
>   
> - $(OUTPUT)test_libbpf: test_libbpf.cpp $(OUTPUT)libbpf.a
> -     $(QUIET_LINK)$(CXX) $(INCLUDES) $^ -lelf -o $@
> + $(OUTPUT)test_libbpf: test_libbpf.c $(OUTPUT)libbpf.a
> +     $(QUIET_LINK)$(CC) $(CFLAGS) $(LDFLAGS) $(INCLUDES) $^ -lelf -o $@
>   
>   $(OUTPUT)libbpf.pc:
>       $(QUIET_GEN)sed -e "s|@PREFIX@|$(prefix)|" \
> @@@ -268,9 -259,9 +272,10 @@@ config-clean
>       $(Q)$(MAKE) -C $(srctree)/tools/build/feature/ clean >/dev/null
>   
>   clean:
> -     $(call QUIET_CLEAN, libbpf) $(RM) -rf $(TARGETS) $(CXX_TEST_TARGET) \
>  -    $(call QUIET_CLEAN, libbpf) $(RM) $(CMD_TARGETS) \
> ++    $(call QUIET_CLEAN, libbpf) $(RM) -rf $(CMD_TARGETS) \
>               *.o *~ *.a *.so *.so.$(LIBBPF_MAJOR_VERSION) .*.d .*.cmd \
> -             *.pc LIBBPF-CFLAGS $(SHARED_OBJDIR) $(STATIC_OBJDIR)
>  -            *.pc LIBBPF-CFLAGS bpf_helper_defs.h
> ++            *.pc LIBBPF-CFLAGS $(SHARED_OBJDIR) $(STATIC_OBJDIR) \
> ++            bpf_helper_defs.h
>       $(call QUIET_CLEAN, core-gen) $(RM) $(OUTPUT)FEATURE-DUMP.libbpf
>   
>   

-- 
Cheers,
Stephen Rothwell

Attachment: pgpcgCo8FnxVI.pgp
Description: OpenPGP digital signature

Reply via email to