From: Andrii Nakryiko <andrii.nakryiko@gmail.com>
To: Yauheni Kaliuta <yauheni.kaliuta@redhat.com>
Cc: bpf <bpf@vger.kernel.org>, Jiri Benc <jbenc@redhat.com>,
Jiri Olsa <jolsa@redhat.com>, Andrii Nakryiko <andriin@fb.com>,
Daniel Borkmann <daniel@iogearbox.net>
Subject: Re: [PATCH] selftests/bpf: split -extras target to -static and -gen
Date: Tue, 26 May 2020 17:19:18 -0700 [thread overview]
Message-ID: <CAEf4BzZaCTDT6DcLYvyFr4RUUm4fFbyb743e1JrEp2DS69cbug@mail.gmail.com> (raw)
In-Reply-To: <20200522081901.238516-1-yauheni.kaliuta@redhat.com>
On Fri, May 22, 2020 at 1:19 AM Yauheni Kaliuta
<yauheni.kaliuta@redhat.com> wrote:
>
> There is difference in depoying static and generated extra resource
> files between in/out of tree build and flavors:
>
> - in case of unflavored out-of-tree build static files are not
> available and must be copied as well as both static and generated
> files for flavored build.
>
> So split the rules and variables. The name TRUNNER_EXTRA_GEN_FILES
> is chosen in analogy to TEST_GEN_* variants.
>
Can we keep them together but be smarter about what needs to be copied
based on source/target directories? I would really like to not blow up
all these rules.
> Signed-off-by: Yauheni Kaliuta <yauheni.kaliuta@redhat.com>
> ---
> tools/testing/selftests/bpf/Makefile | 26 ++++++++++++++++++++++----
> 1 file changed, 22 insertions(+), 4 deletions(-)
>
> diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests/bpf/Makefile
> index 26497d8869ea..c80c06272759 100644
> --- a/tools/testing/selftests/bpf/Makefile
> +++ b/tools/testing/selftests/bpf/Makefile
> @@ -363,12 +363,28 @@ $(TRUNNER_EXTRA_OBJS): $(TRUNNER_OUTPUT)/%.o: \
> $$(call msg,EXT-OBJ,$(TRUNNER_BINARY),$$@)
> $$(CC) $$(CFLAGS) -c $$< $$(LDLIBS) -o $$@
>
> -# only copy extra resources if in flavored build
> -$(TRUNNER_BINARY)-extras: $(TRUNNER_EXTRA_FILES) | $(TRUNNER_OUTPUT)
> -ifneq ($2,)
> +# copy extra resources when needed.
> +# Static files for both out of tree and flavored (so, not current dir).
> +# Generated files for flavored only.
> +$(TRUNNER_BINARY)-extras: $(TRUNNER_BINARY)-extras-static \
> + $(TRUNNER_BINARY)-extras-gen
> +
> +$(TRUNNER_BINARY)-extras-static: $(TRUNNER_EXTRA_FILES) | $(TRUNNER_OUTPUT)
> +ifneq ($(CURDIR)),$(realpath $(TRUNNER_OUTPUT)))
> $$(call msg,EXT-COPY,$(TRUNNER_BINARY),$(TRUNNER_EXTRA_FILES))
> +ifneq ($(TRUNNER_EXTRA_FILES),)
> cp -a $$^ $(TRUNNER_OUTPUT)/
> endif
> +endif
> +
> +$(TRUNNER_BINARY)-extras-gen: $(addprefix $(OUTPUT)/,$(TRUNNER_EXTRA_GEN_FILES)) \
> + | $(TRUNNER_OUTPUT)
> +ifneq ($2,)
> + $$(call msg,EXT-COPY,$(TRUNNER_BINARY),$(TRUNNER_EXTRA_GEN_FILES))
> +ifneq ($(TRUNNER_EXTRA_GEN_FILES),)
> + cp -a $$^ $(TRUNNER_OUTPUT)/
> +endif
> +endif
>
> $(OUTPUT)/$(TRUNNER_BINARY): $(TRUNNER_TEST_OBJS) \
> $(TRUNNER_EXTRA_OBJS) $$(BPFOBJ) \
> @@ -384,7 +400,8 @@ TRUNNER_BPF_PROGS_DIR := progs
> TRUNNER_EXTRA_SOURCES := test_progs.c cgroup_helpers.c trace_helpers.c \
> network_helpers.c testing_helpers.c \
> flow_dissector_load.h
> -TRUNNER_EXTRA_FILES := $(OUTPUT)/urandom_read $(BTF_C_FILES)
> +TRUNNER_EXTRA_FILES := $(BTF_C_FILES)
> +TRUNNER_EXTRA_GEN_FILES := urandom_read
> TRUNNER_BPF_BUILD_RULE := CLANG_BPF_BUILD_RULE
> TRUNNER_BPF_CFLAGS := $(BPF_CFLAGS) $(CLANG_CFLAGS)
> TRUNNER_BPF_LDFLAGS := -mattr=+alu32
> @@ -408,6 +425,7 @@ TRUNNER_TESTS_DIR := map_tests
> TRUNNER_BPF_PROGS_DIR := progs
> TRUNNER_EXTRA_SOURCES := test_maps.c
> TRUNNER_EXTRA_FILES :=
> +TRUNNER_EXTRA_GEN_FILES :=
> TRUNNER_BPF_BUILD_RULE := $$(error no BPF objects should be built)
> TRUNNER_BPF_CFLAGS :=
> TRUNNER_BPF_LDFLAGS :=
> --
> 2.26.2
>
next prev parent reply other threads:[~2020-05-27 0:19 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-22 4:13 [PATCH 0/8] selftests/bpf: installation and out of tree build fixes Yauheni Kaliuta
2020-05-22 4:13 ` [PATCH 1/8] selftests/bpf: remove test_align from Makefile Yauheni Kaliuta
2020-05-26 22:13 ` Andrii Nakryiko
2020-05-22 4:13 ` [PATCH 2/8] selftests/bpf: build bench.o for any $(OUTPUT) Yauheni Kaliuta
2020-05-26 22:13 ` Andrii Nakryiko
2020-05-27 4:54 ` Yauheni Kaliuta
2020-05-22 4:13 ` [PATCH 3/8] selftests/bpf: install btf .c files Yauheni Kaliuta
2020-05-22 4:13 ` [PATCH 4/8] selftests/bpf: fix object files installation Yauheni Kaliuta
2020-05-26 22:30 ` Andrii Nakryiko
2020-05-27 5:17 ` Yauheni Kaliuta
2020-05-28 18:39 ` Andrii Nakryiko
2020-05-28 18:46 ` Yauheni Kaliuta
2020-05-22 4:13 ` [PATCH 5/8] selftests/bpf: add output dir to include list Yauheni Kaliuta
2020-05-26 22:13 ` Andrii Nakryiko
2020-05-22 4:13 ` [PATCH 6/8] selftests/bpf: fix urandom_read installation Yauheni Kaliuta
2020-05-26 22:13 ` Andrii Nakryiko
2020-05-22 4:13 ` [PATCH 7/8] selftests/bpf: fix test.h placing for out of tree build Yauheni Kaliuta
2020-05-26 22:26 ` Andrii Nakryiko
2020-05-27 5:06 ` Yauheni Kaliuta
2020-05-22 4:13 ` [PATCH 8/8] selftests/bpf: factor out MKDIR rule Yauheni Kaliuta
2020-05-26 22:29 ` Andrii Nakryiko
2020-05-27 5:07 ` Yauheni Kaliuta
2020-05-22 6:40 ` [PATCH 0/8] selftests/bpf: installation and out of tree build fixes Yauheni Kaliuta
2020-05-22 8:19 ` [PATCH] selftests/bpf: split -extras target to -static and -gen Yauheni Kaliuta
2020-05-27 0:19 ` Andrii Nakryiko [this message]
2020-05-27 5:21 ` Yauheni Kaliuta
2020-05-27 5:37 ` Alexei Starovoitov
2020-05-27 7:19 ` Yauheni Kaliuta
2020-05-27 16:48 ` Alexei Starovoitov
2020-05-27 17:02 ` Yauheni Kaliuta
2020-05-27 17:05 ` Alexei Starovoitov
2020-05-27 22:01 ` shuah
2020-05-27 22:23 ` Alexei Starovoitov
2020-05-28 8:05 ` Jiri Benc
2020-05-28 10:56 ` Greg KH
2020-05-28 16:14 ` Alexei Starovoitov
2020-05-28 17:07 ` Shuah Khan
2020-05-28 18:15 ` Alexei Starovoitov
2020-05-28 18:29 ` Yauheni Kaliuta
2020-05-28 18:34 ` Alexei Starovoitov
2020-05-28 19:05 ` Shuah Khan
2020-05-28 18:59 ` Shuah Khan
2020-05-28 19:18 ` Alexei Starovoitov
2020-05-28 20:09 ` Shuah Khan
2020-05-28 22:47 ` Shuah Khan
2020-05-28 17:10 ` Yauheni Kaliuta
2020-05-28 18:17 ` Alexei Starovoitov
2020-05-28 19:09 ` Shuah Khan
2020-05-28 19:20 ` Yauheni Kaliuta
2020-05-28 19:34 ` Shuah Khan
2020-05-26 21:48 ` [PATCH 0/8] selftests/bpf: installation and out of tree build fixes Daniel Borkmann
2020-05-27 4:45 ` Yauheni Kaliuta
2020-05-26 22:32 ` Andrii Nakryiko
2020-05-27 4:52 ` Yauheni Kaliuta
2020-05-27 5:04 ` Andrii Nakryiko
2020-05-27 7:25 ` Yauheni Kaliuta
2020-05-27 8:05 ` Yauheni Kaliuta
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAEf4BzZaCTDT6DcLYvyFr4RUUm4fFbyb743e1JrEp2DS69cbug@mail.gmail.com \
--to=andrii.nakryiko@gmail.com \
--cc=andriin@fb.com \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=jbenc@redhat.com \
--cc=jolsa@redhat.com \
--cc=yauheni.kaliuta@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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 NNTP newsgroup(s).