Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[PATCH] perf config: ignore generated files in feature-checks

0 views
Skip to first unread message

Chunwei Chen

unread,
Dec 19, 2013, 3:30:02 AM12/19/13
to
Signed-off-by: Chunwei Chen <tux...@gmail.com>
---
tools/perf/config/feature-checks/.gitignore | 2 ++
1 file changed, 2 insertions(+)
create mode 100644 tools/perf/config/feature-checks/.gitignore

diff --git a/tools/perf/config/feature-checks/.gitignore b/tools/perf/config/feature-checks/.gitignore
new file mode 100644
index 0000000..9662c68
--- /dev/null
+++ b/tools/perf/config/feature-checks/.gitignore
@@ -0,0 +1,2 @@
+test-all
+*.d
--
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majo...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

Ingo Molnar

unread,
Dec 19, 2013, 7:30:04 AM12/19/13
to

* Chunwei Chen <tux...@gmail.com> wrote:

> Signed-off-by: Chunwei Chen <tux...@gmail.com>
> ---
> tools/perf/config/feature-checks/.gitignore | 2 ++
> 1 file changed, 2 insertions(+)
> create mode 100644 tools/perf/config/feature-checks/.gitignore
>
> diff --git a/tools/perf/config/feature-checks/.gitignore b/tools/perf/config/feature-checks/.gitignore
> new file mode 100644
> index 0000000..9662c68
> --- /dev/null
> +++ b/tools/perf/config/feature-checks/.gitignore
> @@ -0,0 +1,2 @@
> +test-all
> +*.d

Why? These are cleaned out on 'make clean'.

Thanks,

Ingo

David Chen

unread,
Dec 19, 2013, 8:40:04 AM12/19/13
to
Why not? They're generated files aren't they?

By the way, I just found out that test-* will be built depend on the
detected features.
Should I include them all?

Thanks,
Chunwei Chen

2013/12/19 Ingo Molnar <mi...@kernel.org>:

Ingo Molnar

unread,
Dec 19, 2013, 10:50:01 AM12/19/13
to

* David Chen <tux...@gmail.com> wrote:

> Why not? They're generated files aren't they?

Yes, indeed, you are right, they should be included in the .gitignore.

> By the way, I just found out that test-* will be built depend on the
> detected features.
> Should I include them all?

Yes, that would have been my next observation :-)

I'd suggest that instead of enumerating them all in the .gitignore
file we should change the naming of the feature check binaries to
something like test-<xyz>.bin or so, so that a simple test-*.bin
pattern will ignore all these generated binaries.

David Chen

unread,
Dec 19, 2013, 12:10:02 PM12/19/13
to
How about this:

test-*
!*.c

So that we don't ignore *.c and we don't have to change file name.
Anyway, I'll reupload tomorrow when I have my computer.

Thanks,
Chunwei Chen

Ingo Molnar

unread,
Dec 19, 2013, 12:20:03 PM12/19/13
to

* David Chen <tux...@gmail.com> wrote:

> How about this:
>
> test-*
> !*.c

Still looks a bit too generic to me.

> So that we don't ignore *.c and we don't have to change file name.
> Anyway, I'll reupload tomorrow when I have my computer.

I think we should change the feature test binaries to an easy to match
pattern.

But either way it works for me.

Thanks,

Ingo

Chunwei Chen

unread,
Dec 19, 2013, 11:20:01 PM12/19/13
to
From 362201bf3259cc01c99531766395fdba0c0f3789 Mon Sep 17 00:00:00 2001
From: Chunwei Chen <tux...@gmail.com>
Date: Thu, 19 Dec 2013 15:41:22 +0800
Subject: [PATCH] perf config: ignore generated files in feature-checks

1. Rename the test-* binary files to test-*.bin for easier pattern matching as
suggested by Ingo.
2. Ignore *.bin and *.d files.

Signed-off-by: Chunwei Chen <tux...@gmail.com>
---
tools/perf/config/Makefile | 6 +-
tools/perf/config/feature-checks/.gitignore | 2 +
tools/perf/config/feature-checks/Makefile | 114 ++++++++++++++--------------
3 files changed, 62 insertions(+), 60 deletions(-)
create mode 100644 tools/perf/config/feature-checks/.gitignore

diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
index f7d11a8..40e08d1 100644
--- a/tools/perf/config/Makefile
+++ b/tools/perf/config/Makefile
@@ -102,7 +102,7 @@ endif

feature_check = $(eval $(feature_check_code))
define feature_check_code
- feature-$(1) := $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS)" LDFLAGS="$(LDFLAGS)" LIBUNWIND_LIBS="$(LIBUNWIND_LIBS)" -C config/feature-checks test-$1 >/dev/null 2>/dev/null && echo 1 || echo 0)
+ feature-$(1) := $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS)" LDFLAGS="$(LDFLAGS)" LIBUNWIND_LIBS="$(LIBUNWIND_LIBS)" -C config/feature-checks test-$1.bin >/dev/null 2>/dev/null && echo 1 || echo 0)
endef

feature_set = $(eval $(feature_set_code))
@@ -150,7 +150,7 @@ CORE_FEATURE_TESTS = \
# to skip the print-out of the long features list if the file
# existed before and after it was built:
#
-ifeq ($(wildcard $(OUTPUT)config/feature-checks/test-all),)
+ifeq ($(wildcard $(OUTPUT)config/feature-checks/test-all.bin),)
test-all-failed := 1
else
test-all-failed := 0
@@ -180,7 +180,7 @@ ifeq ($(feature-all), 1)
#
$(foreach feat,$(CORE_FEATURE_TESTS),$(call feature_set,$(feat)))
else
- $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS)" LDFLAGS=$(LDFLAGS) -i -j -C config/feature-checks $(CORE_FEATURE_TESTS) >/dev/null 2>&1)
+ $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS)" LDFLAGS=$(LDFLAGS) -i -j -C config/feature-checks $(addsuffix .bin,$(CORE_FEATURE_TESTS)) >/dev/null 2>&1)
$(foreach feat,$(CORE_FEATURE_TESTS),$(call feature_check,$(feat)))
endif

diff --git a/tools/perf/config/feature-checks/.gitignore b/tools/perf/config/feature-checks/.gitignore
new file mode 100644
index 0000000..80f3da0
--- /dev/null
+++ b/tools/perf/config/feature-checks/.gitignore
@@ -0,0 +1,2 @@
+*.d
+*.bin
diff --git a/tools/perf/config/feature-checks/Makefile b/tools/perf/config/feature-checks/Makefile
index 87e7900..e2bc0ed 100644
--- a/tools/perf/config/feature-checks/Makefile
+++ b/tools/perf/config/feature-checks/Makefile
@@ -1,94 +1,94 @@

FILES= \
- test-all \
- test-backtrace \
- test-bionic \
- test-dwarf \
- test-fortify-source \
- test-glibc \
- test-gtk2 \
- test-gtk2-infobar \
- test-hello \
- test-libaudit \
- test-libbfd \
- test-liberty \
- test-liberty-z \
- test-cplus-demangle \
- test-libelf \
- test-libelf-getphdrnum \
- test-libelf-mmap \
- test-libnuma \
- test-libperl \
- test-libpython \
- test-libpython-version \
- test-libslang \
- test-libunwind \
- test-libunwind-debug-frame \
- test-on-exit \
- test-stackprotector-all \
- test-stackprotector \
- test-timerfd
+ test-all.bin \
+ test-backtrace.bin \
+ test-bionic.bin \
+ test-dwarf.bin \
+ test-fortify-source.bin \
+ test-glibc.bin \
+ test-gtk2.bin \
+ test-gtk2-infobar.bin \
+ test-hello.bin \
+ test-libaudit.bin \
+ test-libbfd.bin \
+ test-liberty.bin \
+ test-liberty-z.bin \
+ test-cplus-demangle.bin \
+ test-libelf.bin \
+ test-libelf-getphdrnum.bin \
+ test-libelf-mmap.bin \
+ test-libnuma.bin \
+ test-libperl.bin \
+ test-libpython.bin \
+ test-libpython-version.bin \
+ test-libslang.bin \
+ test-libunwind.bin \
+ test-libunwind-debug-frame.bin \
+ test-on-exit.bin \
+ test-stackprotector-all.bin \
+ test-stackprotector.bin \
+ test-timerfd.bin

CC := $(CC) -MD

all: $(FILES)

-BUILD = $(CC) $(CFLAGS) $(LDFLAGS) -o $(OUTPUT)$@ $@.c
+BUILD = $(CC) $(CFLAGS) $(LDFLAGS) -o $(OUTPUT)$@ $(patsubst %.bin,%.c,$@)

###############################

-test-all:
+test-all.bin:
$(BUILD) -Werror -fstack-protector -fstack-protector-all -O2 -Werror -D_FORTIFY_SOURCE=2 -ldw -lelf -lnuma $(LIBUNWIND_LIBS) -lelf -laudit -I/usr/include/slang -lslang $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null) $(FLAGS_PERL_EMBED) $(FLAGS_PYTHON_EMBED) -DPACKAGE='"perf"' -lbfd -ldl

-test-hello:
+test-hello.bin:
$(BUILD)

-test-stackprotector-all:
+test-stackprotector-all.bin:
$(BUILD) -Werror -fstack-protector-all

-test-stackprotector:
+test-stackprotector.bin:
$(BUILD) -Werror -fstack-protector -Wstack-protector

-test-fortify-source:
+test-fortify-source.bin:
$(BUILD) -O2 -Werror -D_FORTIFY_SOURCE=2

-test-bionic:
+test-bionic.bin:
$(BUILD)

-test-libelf:
+test-libelf.bin:
$(BUILD) -lelf

-test-glibc:
+test-glibc.bin:
$(BUILD)

-test-dwarf:
+test-dwarf.bin:
$(BUILD) -ldw

-test-libelf-mmap:
+test-libelf-mmap.bin:
$(BUILD) -lelf

-test-libelf-getphdrnum:
+test-libelf-getphdrnum.bin:
$(BUILD) -lelf

-test-libnuma:
+test-libnuma.bin:
$(BUILD) -lnuma

-test-libunwind:
+test-libunwind.bin:
$(BUILD) $(LIBUNWIND_LIBS) -lelf

-test-libunwind-debug-frame:
+test-libunwind-debug-frame.bin:
$(BUILD) $(LIBUNWIND_LIBS) -lelf

-test-libaudit:
+test-libaudit.bin:
$(BUILD) -laudit

-test-libslang:
+test-libslang.bin:
$(BUILD) -I/usr/include/slang -lslang

-test-gtk2:
+test-gtk2.bin:
$(BUILD) $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null)

-test-gtk2-infobar:
+test-gtk2-infobar.bin:
$(BUILD) $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null)

grep-libs = $(filter -l%,$(1))
@@ -100,7 +100,7 @@ PERL_EMBED_LIBADD = $(call grep-libs,$(PERL_EMBED_LDOPTS))
PERL_EMBED_CCOPTS = `perl -MExtUtils::Embed -e ccopts 2>/dev/null`
FLAGS_PERL_EMBED=$(PERL_EMBED_CCOPTS) $(PERL_EMBED_LDOPTS)

-test-libperl:
+test-libperl.bin:
$(BUILD) $(FLAGS_PERL_EMBED)

override PYTHON := python
@@ -117,31 +117,31 @@ PYTHON_EMBED_LIBADD = $(call grep-libs,$(PYTHON_EMBED_LDOPTS))
PYTHON_EMBED_CCOPTS = $(shell $(PYTHON_CONFIG_SQ) --cflags 2>/dev/null)
FLAGS_PYTHON_EMBED = $(PYTHON_EMBED_CCOPTS) $(PYTHON_EMBED_LDOPTS)

-test-libpython:
+test-libpython.bin:
$(BUILD) $(FLAGS_PYTHON_EMBED)

-test-libpython-version:
+test-libpython-version.bin:
$(BUILD) $(FLAGS_PYTHON_EMBED)

-test-libbfd:
+test-libbfd.bin:
$(BUILD) -DPACKAGE='"perf"' -lbfd -ldl

-test-liberty:
+test-liberty.bin:
$(CC) -o $(OUTPUT)$@ test-libbfd.c -DPACKAGE='"perf"' -lbfd -ldl -liberty

-test-liberty-z:
+test-liberty-z.bin:
$(CC) -o $(OUTPUT)$@ test-libbfd.c -DPACKAGE='"perf"' -lbfd -ldl -liberty -lz

-test-cplus-demangle:
+test-cplus-demangle.bin:
$(BUILD) -liberty

-test-on-exit:
+test-on-exit.bin:
$(BUILD)

-test-backtrace:
+test-backtrace.bin:
$(BUILD)

-test-timerfd:
+test-timerfd.bin:
$(BUILD)

-include *.d
--
1.8.5.2

Ingo Molnar

unread,
Dec 20, 2013, 3:50:02 AM12/20/13
to

* Chunwei Chen <tux...@gmail.com> wrote:

> From 362201bf3259cc01c99531766395fdba0c0f3789 Mon Sep 17 00:00:00 2001
> From: Chunwei Chen <tux...@gmail.com>
> Date: Thu, 19 Dec 2013 15:41:22 +0800
> Subject: [PATCH] perf config: ignore generated files in feature-checks
>
> 1. Rename the test-* binary files to test-*.bin for easier pattern matching as
> suggested by Ingo.
> 2. Ignore *.bin and *.d files.
>
> Signed-off-by: Chunwei Chen <tux...@gmail.com>

Reviewed-by: Ingo Molnar <mi...@kernel.org>

Thanks!

Ingo

Arnaldo Carvalho de Melo

unread,
Dec 20, 2013, 11:40:02 AM12/20/13
to
Em Fri, Dec 20, 2013 at 12:16:40PM +0800, Chunwei Chen escreveu:
> >From 362201bf3259cc01c99531766395fdba0c0f3789 Mon Sep 17 00:00:00 2001
> From: Chunwei Chen <tux...@gmail.com>
> Date: Thu, 19 Dec 2013 15:41:22 +0800
> Subject: [PATCH] perf config: ignore generated files in feature-checks
>
> 1. Rename the test-* binary files to test-*.bin for easier pattern matching as
> suggested by Ingo.
> 2. Ignore *.bin and *.d files.
>
> Signed-off-by: Chunwei Chen <tux...@gmail.com>

Please make sure it applies to the perf/core branch in:

git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git

Just tried and it didn't applies.

- Arnaldo

Chunwei Chen

unread,
Dec 21, 2013, 12:50:01 AM12/21/13
to
From ce62a386df25ec50e13487c7b56e09c71c2abf4c Mon Sep 17 00:00:00 2001
From: Chunwei Chen <tux...@gmail.com>
Date: Sat, 21 Dec 2013 13:15:07 +0800
Subject: [PATCH] perf config: ignore generated files in feature-checks

1. Rename the test-* binary files to test-*.bin for easier pattern matching as
suggested by Ingo.
2. Ignore *.bin and *.d files.

Signed-off-by: Chunwei Chen <tux...@gmail.com>
---
tools/perf/config/Makefile | 6 +-
tools/perf/config/feature-checks/.gitignore | 2 +
tools/perf/config/feature-checks/Makefile | 110 ++++++++++++++--------------
3 files changed, 60 insertions(+), 58 deletions(-)
create mode 100644 tools/perf/config/feature-checks/.gitignore

diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
index 5a1f4df..14faeeb 100644
--- a/tools/perf/config/Makefile
+++ b/tools/perf/config/Makefile
@@ -126,7 +126,7 @@ endif

feature_check = $(eval $(feature_check_code))
define feature_check_code
- feature-$(1) := $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS) $(FEATURE_CHECK_CFLAGS-$(1))" LDFLAGS="$(LDFLAGS) $(FEATURE_CHECK_LDFLAGS-$(1))" -C config/feature-checks test-$1 >/dev/null 2>/dev/null && echo 1 || echo 0)
+ feature-$(1) := $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS) $(FEATURE_CHECK_CFLAGS-$(1))" LDFLAGS="$(LDFLAGS) $(FEATURE_CHECK_LDFLAGS-$(1))" -C config/feature-checks test-$1.bin >/dev/null 2>/dev/null && echo 1 || echo 0)
endef

feature_set = $(eval $(feature_set_code))
@@ -173,7 +173,7 @@ CORE_FEATURE_TESTS = \
# to skip the print-out of the long features list if the file
# existed before and after it was built:
#
-ifeq ($(wildcard $(OUTPUT)config/feature-checks/test-all),)
+ifeq ($(wildcard $(OUTPUT)config/feature-checks/test-all.bin),)
test-all-failed := 1
else
test-all-failed := 0
@@ -203,7 +203,7 @@ ifeq ($(feature-all), 1)
#
$(foreach feat,$(CORE_FEATURE_TESTS),$(call feature_set,$(feat)))
else
- $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS)" LDFLAGS=$(LDFLAGS) -i -j -C config/feature-checks $(CORE_FEATURE_TESTS) >/dev/null 2>&1)
+ $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS)" LDFLAGS=$(LDFLAGS) -i -j -C config/feature-checks $(addsuffix .bin,$(CORE_FEATURE_TESTS)) >/dev/null 2>&1)
$(foreach feat,$(CORE_FEATURE_TESTS),$(call feature_check,$(feat)))
endif

diff --git a/tools/perf/config/feature-checks/.gitignore b/tools/perf/config/feature-checks/.gitignore
new file mode 100644
index 0000000..80f3da0
--- /dev/null
+++ b/tools/perf/config/feature-checks/.gitignore
@@ -0,0 +1,2 @@
+*.d
+*.bin
diff --git a/tools/perf/config/feature-checks/Makefile b/tools/perf/config/feature-checks/Makefile
index bc86462..7cf6fcd 100644
--- a/tools/perf/config/feature-checks/Makefile
+++ b/tools/perf/config/feature-checks/Makefile
@@ -1,90 +1,90 @@
+ test-timerfd.bin

CC := $(CC) -MD

all: $(FILES)

-BUILD = $(CC) $(CFLAGS) -o $(OUTPUT)$@ $@.c $(LDFLAGS)
+BUILD = $(CC) $(CFLAGS) -o $(OUTPUT)$@ $(patsubst %.bin,%.c,$@) $(LDFLAGS)

###############################

-test-all:
+test-all.bin:
$(BUILD) -Werror -fstack-protector-all -O2 -Werror -D_FORTIFY_SOURCE=2 -ldw -lelf -lnuma -lelf -laudit -I/usr/include/slang -lslang $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null) $(FLAGS_PERL_EMBED) $(FLAGS_PYTHON_EMBED) -DPACKAGE='"perf"' -lbfd -ldl

-test-hello:
+test-hello.bin:
$(BUILD)

-test-stackprotector-all:
+test-stackprotector-all.bin:
$(BUILD) -Werror -fstack-protector-all

$(BUILD) -lelf

-test-libunwind-debug-frame:
+test-libunwind-debug-frame.bin:
$(BUILD) -lelf

-test-libaudit:
+test-libaudit.bin:
$(BUILD) -laudit

-test-libslang:
+test-libslang.bin:
$(BUILD) -I/usr/include/slang -lslang

-test-gtk2:
+test-gtk2.bin:
$(BUILD) $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null)

-test-gtk2-infobar:
+test-gtk2-infobar.bin:
$(BUILD) $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null)

grep-libs = $(filter -l%,$(1))
@@ -96,7 +96,7 @@ PERL_EMBED_LIBADD = $(call grep-libs,$(PERL_EMBED_LDOPTS))
PERL_EMBED_CCOPTS = `perl -MExtUtils::Embed -e ccopts 2>/dev/null`
FLAGS_PERL_EMBED=$(PERL_EMBED_CCOPTS) $(PERL_EMBED_LDOPTS)

-test-libperl:
+test-libperl.bin:
$(BUILD) $(FLAGS_PERL_EMBED)

override PYTHON := python
@@ -113,31 +113,31 @@ PYTHON_EMBED_LIBADD = $(call grep-libs,$(PYTHON_EMBED_LDOPTS))
1.8.1.2

Jiri Olsa

unread,
Dec 23, 2013, 7:20:02 AM12/23/13
to
On Sat, Dec 21, 2013 at 01:48:11PM +0800, Chunwei Chen wrote:
> From ce62a386df25ec50e13487c7b56e09c71c2abf4c Mon Sep 17 00:00:00 2001
> From: Chunwei Chen <tux...@gmail.com>
> Date: Sat, 21 Dec 2013 13:15:07 +0800
> Subject: [PATCH] perf config: ignore generated files in feature-checks

seems superfluous ^^^

>
> 1. Rename the test-* binary files to test-*.bin for easier pattern matching as
> suggested by Ingo.
> 2. Ignore *.bin and *.d files.
>
> Signed-off-by: Chunwei Chen <tux...@gmail.com>

Acked-by: Jiri Olsa <jo...@redhat.com>

jirka

tip-bot for Chunwei Chen

unread,
Jan 12, 2014, 1:40:02 PM1/12/14
to
Commit-ID: 56560ec692c142bb9ee404764e3b67999031ad19
Gitweb: http://git.kernel.org/tip/56560ec692c142bb9ee404764e3b67999031ad19
Author: Chunwei Chen <tux...@gmail.com>
AuthorDate: Sat, 21 Dec 2013 13:48:11 +0800
Committer: Arnaldo Carvalho de Melo <ac...@redhat.com>
CommitDate: Mon, 23 Dec 2013 16:49:51 -0300

perf config: Ignore generated files in feature-checks

1. Rename the test-* binary files to test-*.bin for easier pattern matching as
suggested by Ingo.
2. Ignore *.bin and *.d files.

Signed-off-by: Chunwei Chen <tux...@gmail.com>
Reviewed-by: Ingo Molnar <mi...@kernel.org>
Acked-by: Jiri Olsa <jo...@redhat.com>
Cc: Ingo Molnar <mi...@kernel.org>
Cc: Jiri Olsa <jo...@redhat.com>
Link: http://lkml.kernel.org/r/52B52B9...@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <ac...@redhat.com>
---
tools/perf/config/Makefile | 6 +-
tools/perf/config/feature-checks/.gitignore | 2 +
tools/perf/config/feature-checks/Makefile | 110 ++++++++++++++--------------
3 files changed, 60 insertions(+), 58 deletions(-)

0 new messages