Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1640873 > unrolled thread
| Started by | Mickaël Salaün <mic@digikod.net> |
|---|---|
| First post | 2017-05-13 12:40 +0200 |
| Last post | 2017-05-18 22:10 +0200 |
| Articles | 4 — 3 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH v1] samples/bpf: Add a .gitignore for binaries Mickaël Salaün <mic@digikod.net> - 2017-05-13 12:40 +0200
Re: [PATCH v1] samples/bpf: Add a .gitignore for binaries David Ahern <dsahern@gmail.com> - 2017-05-17 01:30 +0200
Re: [PATCH v1] samples/bpf: Add a .gitignore for binaries Alexander Alemayhu <alexander@alemayhu.com> - 2017-05-17 10:20 +0200
Re: [PATCH v1] samples/bpf: Add a .gitignore for binaries David Ahern <dsahern@gmail.com> - 2017-05-18 22:10 +0200
| From | Mickaël Salaün <mic@digikod.net> |
|---|---|
| Date | 2017-05-13 12:40 +0200 |
| Subject | Re: [PATCH v1] samples/bpf: Add a .gitignore for binaries |
| Message-ID | <tGCCS-2pX-15@gated-at.bofh.it> |
[Multipart message — attachments visible in raw view] — view raw
On 13/02/2017 02:43, David Ahern wrote:
> On 2/12/17 2:23 PM, Mickaël Salaün wrote:
>> diff --git a/samples/bpf/.gitignore b/samples/bpf/.gitignore
>> new file mode 100644
>> index 000000000000..a7562a5ef4c2
>> --- /dev/null
>> +++ b/samples/bpf/.gitignore
>> @@ -0,0 +1,32 @@
>> +fds_example
>> +lathist
>
> ...
>
> Listing each target is going to be a PITA to maintain. It would be
> better to put targets into a build directory (bin?) and ignore the
> directory.
>
It would require a lot of modifications to the Makefile and more
complexity. It seems much more simple for everyone to stick to a simple
gitignore file easily maintainable:
$ awk '$1 == "hostprogs-y" { print $3 }' < Makefile > .gitignore
Alexei, Daniel, what do you think about this? Do you want me to send a
v2 with the new tests?
Mickaël
[toc] | [next] | [standalone]
| From | David Ahern <dsahern@gmail.com> |
|---|---|
| Date | 2017-05-17 01:30 +0200 |
| Message-ID | <tHU4F-3L8-5@gated-at.bofh.it> |
| In reply to | #1640873 |
On 5/13/17 3:30 AM, Mickaël Salaün wrote:
>
> On 13/02/2017 02:43, David Ahern wrote:
>> On 2/12/17 2:23 PM, Mickaël Salaün wrote:
>>> diff --git a/samples/bpf/.gitignore b/samples/bpf/.gitignore
>>> new file mode 100644
>>> index 000000000000..a7562a5ef4c2
>>> --- /dev/null
>>> +++ b/samples/bpf/.gitignore
>>> @@ -0,0 +1,32 @@
>>> +fds_example
>>> +lathist
>>
>> ...
>>
>> Listing each target is going to be a PITA to maintain. It would be
>> better to put targets into a build directory (bin?) and ignore the
>> directory.
>>
>
> It would require a lot of modifications to the Makefile and more
> complexity. It seems much more simple for everyone to stick to a simple
> gitignore file easily maintainable:
> $ awk '$1 == "hostprogs-y" { print $3 }' < Makefile > .gitignore
>
> Alexei, Daniel, what do you think about this? Do you want me to send a
> v2 with the new tests?
>
The problem stems from the fact that bpf samples do not really fall into
the 'hostprogs' category (see "4 Host Program support" in
Documentation/kbuild/makefiles.txt). Fixing samples/bpf to not rely on
it is the better long term solution. Building of tools/ for example does
not rely on it so there is an existing example of leveraging kernel
headers without the overhead.
[toc] | [prev] | [next] | [standalone]
| From | Alexander Alemayhu <alexander@alemayhu.com> |
|---|---|
| Date | 2017-05-17 10:20 +0200 |
| Message-ID | <tI2lA-AO-21@gated-at.bofh.it> |
| In reply to | #1642895 |
On Tue, May 16, 2017 at 04:27:36PM -0700, David Ahern wrote: > > The problem stems from the fact that bpf samples do not really fall into > the 'hostprogs' category (see "4 Host Program support" in > Documentation/kbuild/makefiles.txt). Fixing samples/bpf to not rely on > it is the better long term solution. Building of tools/ for example does > not rely on it so there is an existing example of leveraging kernel > headers without the overhead. +1 I have looked into this but found it to be not easy and all attempts to change the Makefile has resulted in obscure errors :/ Getting clang to output in a different directory was easy[0], but I guess this is not the right approach either. Have you tried making the change? [0]: diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile index 6c7468eb3684..79268d310ba5 100644 --- a/samples/bpf/Makefile +++ b/samples/bpf/Makefile @@ -1,6 +1,13 @@ # kbuild trick to avoid linker error. Can be omitted if a module is built. obj- := dummy.o +ifndef O + OUTPUT := $(shell pwd)/samples/bpf/_build/ +else + OUTPUT := $O/ +endif +$(shell mkdir -p $(OUTPUT)) + # List of programs to build hostprogs-y := test_lru_dist hostprogs-y += sock_example @@ -190,4 +197,4 @@ $(obj)/%.o: $(src)/%.c -Wno-gnu-variable-sized-type-not-at-end \ -Wno-address-of-packed-member -Wno-tautological-compare \ -Wno-unknown-warning-option \ - -O2 -emit-llvm -c $< -o -| $(LLC) -march=bpf -filetype=obj -o $@ + -O2 -emit-llvm -c $< -o -| $(LLC) -march=bpf -filetype=obj -o $(OUTPUT)$(shell basename $@) -- Mit freundlichen Grüßen Alexander Alemayhu
[toc] | [prev] | [next] | [standalone]
| From | David Ahern <dsahern@gmail.com> |
|---|---|
| Date | 2017-05-18 22:10 +0200 |
| Message-ID | <tIzUd-8fL-9@gated-at.bofh.it> |
| In reply to | #1643103 |
On 5/17/17 1:18 AM, Alexander Alemayhu wrote: > I have looked into this but found it to be not easy and all attempts to > change the Makefile has resulted in obscure errors :/ > > Getting clang to output in a different directory was easy[0], but I guess > this is not the right approach either. Have you tried making the change? spent an hour so a few weeks back. It is not trivial, but someone needs to find to fix it now. perf is the example to use: you can build it from both top level kernel directory (e.g, make -C tools/perf O=/tmp/perf) and the perf directory (cd tools/perf; make O=/tmp/perf). Both are wanted for samples/bpf and it would be nice to keep the O= option as well. I don't have the time for the next few weeks. Perhaps mid-June I can take a look.
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web