On 8/30/19 1:00 PM, Quentin Monnet wrote:
Hi, This set attempts to make it easier to build bpftool, in particular when passing a specific output directory. This is a follow-up to the conversation held last month by Lorenz, Ilya and Jakub [0]. The first patch is a minor fix to bpftool's Makefile, regarding the retrieval of kernel version (which currently prints a non-relevant make warning on some invocations). Second patch improves the Makefile commands to support more "make" invocations, or to fix building with custom output directory. On Jakub's suggestion, a script is also added to BPF selftests in order to keep track of the supported build variants. Building bpftool with "make tools/bpf" from the top of the repository generates files in "libbpf/" and "feature/" directories under tools/bpf/ and tools/bpf/bpftool/. The third patch ensures such directories are taken care of on "make clean", and add them to the relevant .gitignore files. At last, fourth patch is a sligthly modified version of Ilya's fix regarding libbpf.a appearing twice on the linking command for bpftool. [0] https://lore.kernel.org/bpf/CACAyw9-CWRHVH3TJ=Tke2x8YiLsH47sLCijdp=V+5M836R9aAA@xxxxxxxxxxxxxx/ v2: - Return error from check script if one of the make invocations returns non-zero (even if binary is successfully produced). - Run "make clean" from bpf/ and not only bpf/bpftool/ in that same script, when relevant. - Add a patch to clean up generated "feature/" and "libbpf/" directories. Cc: Lorenz Bauer <lmb@xxxxxxxxxxxxxx> Cc: Ilya Leoshkevich <iii@xxxxxxxxxxxxx> Cc: Jakub Kicinski <jakub.kicinski@xxxxxxxxxxxxx> Quentin Monnet (4): tools: bpftool: ignore make built-in rules for getting kernel version tools: bpftool: improve and check builds for different make invocations tools: bpf: account for generated feature/ and libbpf/ directories tools: bpftool: do not link twice against libbpf.a in Makefile tools/bpf/.gitignore | 1 + tools/bpf/Makefile | 5 +- tools/bpf/bpftool/.gitignore | 2 + tools/bpf/bpftool/Makefile | 28 ++-- tools/testing/selftests/bpf/Makefile | 3 +- .../selftests/bpf/test_bpftool_build.sh | 143 ++++++++++++++++++ 6 files changed, 167 insertions(+), 15 deletions(-) create mode 100755 tools/testing/selftests/bpf/test_bpftool_build.sh
Applied, thanks!