* [RFC PATCH] perf: add SLANG_INC for slang.h @ 2012-08-24 3:10 Liang Li 2012-09-05 20:54 ` Arnaldo Carvalho de Melo 0 siblings, 1 reply; 6+ messages in thread From: Liang Li @ 2012-08-24 3:10 UTC (permalink / raw) To: a.p.zijlstra, paulus, mingo, acme; +Cc: linux-kernel, richard.purdie CFLAGS was previously hard coded to contain "-I/usr/include/slang" to work with hosts that have "/usr/include/slang/slang.h" as well as hosts that have "/usr/include/slang.h". This path can cause compile warnings like: cc1: warning: '/usr/include/slang' doesn't exists. or cc1: warning: include location "/usr/include/slang" is unsafe for cross-compilation [-Wpoison-system-directories] Then in some cases warnings become errors if WERROR is enabled hence build errors. To fix this issue, we can use -idirafter to downgrade the priority of the default hard coded path. We can also make the slang include directory a variable, to allow the user to specify SLANG_INC and set their own include location. And add a '=' prefix to indicate better compatibility with sysroot/cross compile cases. Signed-off-by: Liang Li <liang.li@windriver.com> --- tools/perf/Makefile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tools/perf/Makefile b/tools/perf/Makefile index b7a7a87..e403c36 100644 --- a/tools/perf/Makefile +++ b/tools/perf/Makefile @@ -496,8 +496,10 @@ else msg := $(warning newt not found, disables TUI support. Please install newt-devel or libnewt-dev); BASIC_CFLAGS += -DNO_NEWT_SUPPORT else - # Fedora has /usr/include/slang/slang.h, but ubuntu /usr/include/slang.h - BASIC_CFLAGS += -I/usr/include/slang + # Some releases like Fedora has /usr/include/slang/slang.h other than /usr/include/slang.h + SLANG_INC ?= -idirafter =/usr/include/slang + BASIC_CFLAGS += $(SLANG_INC) + EXTLIBS += -lnewt -lslang LIB_OBJS += $(OUTPUT)ui/setup.o LIB_OBJS += $(OUTPUT)ui/browser.o -- 1.7.11.4 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [RFC PATCH] perf: add SLANG_INC for slang.h 2012-08-24 3:10 [RFC PATCH] perf: add SLANG_INC for slang.h Liang Li @ 2012-09-05 20:54 ` Arnaldo Carvalho de Melo 2012-09-05 21:23 ` Richard Purdie 0 siblings, 1 reply; 6+ messages in thread From: Arnaldo Carvalho de Melo @ 2012-09-05 20:54 UTC (permalink / raw) To: Liang Li; +Cc: a.p.zijlstra, paulus, mingo, linux-kernel, richard.purdie Em Fri, Aug 24, 2012 at 11:10:39AM +0800, Liang Li escreveu: > CFLAGS was previously hard coded to contain "-I/usr/include/slang" to > work with hosts that have "/usr/include/slang/slang.h" as well as hosts > that have "/usr/include/slang.h". This path can cause compile warnings > like: > > cc1: warning: '/usr/include/slang' doesn't exists. > > or > > cc1: warning: include location "/usr/include/slang" is unsafe for > cross-compilation [-Wpoison-system-directories] > > Then in some cases warnings become errors if WERROR is enabled hence > build errors. > > To fix this issue, we can use -idirafter to downgrade the priority of the > default hard coded path. We can also make the slang include directory > a variable, to allow the user to specify SLANG_INC and set their own > include location. And add a '=' prefix to indicate better > compatibility with sysroot/cross compile cases. CC /home/acme/git/build/perf/builtin-diff.o In file included from util/../ui/keysyms.h:4, from util/hist.h:142, from builtin-diff.c:11: util/../ui/libslang.h:12:19: error: slang.h: No such file or directory util/../ui/libslang.h:14:5: error: "SLANG_VERSION" is not defined In file included from util/../ui/keysyms.h:4, from util/hist.h:142, from util/evsel.h:10, from util/evlist.h:8, from builtin-annotate.c:20: util/../ui/libslang.h:12:19: error: slang.h: No such file or directory util/../ui/libslang.h:14:5: error: "SLANG_VERSION" is not defined builtin-annotate.c: In function ‘hists__find_annotations’: builtin-annotate.c:122: error: ‘SL_KEY_RIGHT’ undeclared (first use in this function) builtin-annotate.c:122: error: (Each undeclared identifier is reported only once builtin-annotate.c:122: error: for each function it appears in.) builtin-annotate.c:134: error: ‘SL_KEY_LEFT’ undeclared (first use in this function) make: *** [/home/acme/git/build/perf/builtin-annotate.o] Error 1 make: *** Waiting for unfinished jobs.... make: *** [/home/acme/git/build/perf/builtin-diff.o] Error 1 make: Leaving directory `/home/git/linux/tools/perf' [acme@sandy linux]$ cat /etc/redhat-release Red Hat Enterprise Linux Server release 6.3 (Santiago) [acme@sandy linux]$ ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC PATCH] perf: add SLANG_INC for slang.h 2012-09-05 20:54 ` Arnaldo Carvalho de Melo @ 2012-09-05 21:23 ` Richard Purdie 2012-09-05 22:41 ` Arnaldo Carvalho de Melo 0 siblings, 1 reply; 6+ messages in thread From: Richard Purdie @ 2012-09-05 21:23 UTC (permalink / raw) To: Arnaldo Carvalho de Melo Cc: Liang Li, a.p.zijlstra, paulus, mingo, linux-kernel On Wed, 2012-09-05 at 13:54 -0700, Arnaldo Carvalho de Melo wrote: > Em Fri, Aug 24, 2012 at 11:10:39AM +0800, Liang Li escreveu: > > CFLAGS was previously hard coded to contain "-I/usr/include/slang" to > > work with hosts that have "/usr/include/slang/slang.h" as well as hosts > > that have "/usr/include/slang.h". This path can cause compile warnings > > like: > > > > cc1: warning: '/usr/include/slang' doesn't exists. > > > > or > > > > cc1: warning: include location "/usr/include/slang" is unsafe for > > cross-compilation [-Wpoison-system-directories] > > > > Then in some cases warnings become errors if WERROR is enabled hence > > build errors. > > > > To fix this issue, we can use -idirafter to downgrade the priority of the > > default hard coded path. We can also make the slang include directory > > a variable, to allow the user to specify SLANG_INC and set their own > > include location. And add a '=' prefix to indicate better > > compatibility with sysroot/cross compile cases. > > CC /home/acme/git/build/perf/builtin-diff.o > In file included from util/../ui/keysyms.h:4, > from util/hist.h:142, > from builtin-diff.c:11: > util/../ui/libslang.h:12:19: error: slang.h: No such file or directory > util/../ui/libslang.h:14:5: error: "SLANG_VERSION" is not defined > In file included from util/../ui/keysyms.h:4, > from util/hist.h:142, > from util/evsel.h:10, > from util/evlist.h:8, > from builtin-annotate.c:20: > util/../ui/libslang.h:12:19: error: slang.h: No such file or directory > util/../ui/libslang.h:14:5: error: "SLANG_VERSION" is not defined > builtin-annotate.c: In function ‘hists__find_annotations’: > builtin-annotate.c:122: error: ‘SL_KEY_RIGHT’ undeclared (first use in > this function) > builtin-annotate.c:122: error: (Each undeclared identifier is reported > only once > builtin-annotate.c:122: error: for each function it appears in.) > builtin-annotate.c:134: error: ‘SL_KEY_LEFT’ undeclared (first use in > this function) > make: *** [/home/acme/git/build/perf/builtin-annotate.o] Error 1 > make: *** Waiting for unfinished jobs.... > make: *** [/home/acme/git/build/perf/builtin-diff.o] Error 1 > make: Leaving directory `/home/git/linux/tools/perf' > [acme@sandy linux]$ cat /etc/redhat-release > Red Hat Enterprise Linux Server release 6.3 (Santiago) > [acme@sandy linux]$ Does: SLANG_INC ?= -I=/usr/include/slang work any better? Its hard to tell from the above error which bit of the syntax is failing. Which gcc version is it? Cheers, Richard ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC PATCH] perf: add SLANG_INC for slang.h 2012-09-05 21:23 ` Richard Purdie @ 2012-09-05 22:41 ` Arnaldo Carvalho de Melo 2012-09-06 2:11 ` Liang Li 0 siblings, 1 reply; 6+ messages in thread From: Arnaldo Carvalho de Melo @ 2012-09-05 22:41 UTC (permalink / raw) To: Richard Purdie; +Cc: Liang Li, a.p.zijlstra, paulus, mingo, linux-kernel Em Wed, Sep 05, 2012 at 10:23:03PM +0100, Richard Purdie escreveu: > On Wed, 2012-09-05 at 13:54 -0700, Arnaldo Carvalho de Melo wrote: > > Em Fri, Aug 24, 2012 at 11:10:39AM +0800, Liang Li escreveu: > > > CFLAGS was previously hard coded to contain "-I/usr/include/slang" to > > > work with hosts that have "/usr/include/slang/slang.h" as well as hosts > > > that have "/usr/include/slang.h". This path can cause compile warnings > > > like: > > > > > > cc1: warning: '/usr/include/slang' doesn't exists. > > > > > > or > > > > > > cc1: warning: include location "/usr/include/slang" is unsafe for > > > cross-compilation [-Wpoison-system-directories] > > > > > > Then in some cases warnings become errors if WERROR is enabled hence > > > build errors. > > > > > > To fix this issue, we can use -idirafter to downgrade the priority of the > > > default hard coded path. We can also make the slang include directory > > > a variable, to allow the user to specify SLANG_INC and set their own > > > include location. And add a '=' prefix to indicate better > > > compatibility with sysroot/cross compile cases. > > > > CC /home/acme/git/build/perf/builtin-diff.o > > In file included from util/../ui/keysyms.h:4, > > from util/hist.h:142, > > from builtin-diff.c:11: > > util/../ui/libslang.h:12:19: error: slang.h: No such file or directory > > util/../ui/libslang.h:14:5: error: "SLANG_VERSION" is not defined > > In file included from util/../ui/keysyms.h:4, > > from util/hist.h:142, > > from util/evsel.h:10, > > from util/evlist.h:8, > > from builtin-annotate.c:20: > > util/../ui/libslang.h:12:19: error: slang.h: No such file or directory > > util/../ui/libslang.h:14:5: error: "SLANG_VERSION" is not defined > > builtin-annotate.c: In function ‘hists__find_annotations’: > > builtin-annotate.c:122: error: ‘SL_KEY_RIGHT’ undeclared (first use in > > this function) > > builtin-annotate.c:122: error: (Each undeclared identifier is reported > > only once > > builtin-annotate.c:122: error: for each function it appears in.) > > builtin-annotate.c:134: error: ‘SL_KEY_LEFT’ undeclared (first use in > > this function) > > make: *** [/home/acme/git/build/perf/builtin-annotate.o] Error 1 > > make: *** Waiting for unfinished jobs.... > > make: *** [/home/acme/git/build/perf/builtin-diff.o] Error 1 > > make: Leaving directory `/home/git/linux/tools/perf' > > [acme@sandy linux]$ cat /etc/redhat-release > > Red Hat Enterprise Linux Server release 6.3 (Santiago) > > [acme@sandy linux]$ > > Does: > > SLANG_INC ?= -I=/usr/include/slang > > work any better? Its hard to tell from the above error which bit of the I'll try later > syntax is failing. Which gcc version is it? [acme@sandy linux]$ gcc -v Using built-in specs. Target: x86_64-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux Thread model: posix gcc version 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC) [acme@sandy linux]$ ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC PATCH] perf: add SLANG_INC for slang.h 2012-09-05 22:41 ` Arnaldo Carvalho de Melo @ 2012-09-06 2:11 ` Liang Li 2012-09-06 13:55 ` Arnaldo Carvalho de Melo 0 siblings, 1 reply; 6+ messages in thread From: Liang Li @ 2012-09-06 2:11 UTC (permalink / raw) To: Arnaldo Carvalho de Melo Cc: Richard Purdie, a.p.zijlstra, paulus, mingo, linux-kernel On 2012-09-06 06:41, Arnaldo Carvalho de Melo <acme@ghostprotocols.net> wrote: > Em Wed, Sep 05, 2012 at 10:23:03PM +0100, Richard Purdie escreveu: > > On Wed, 2012-09-05 at 13:54 -0700, Arnaldo Carvalho de Melo wrote: > > > Em Fri, Aug 24, 2012 at 11:10:39AM +0800, Liang Li escreveu: > > > > CFLAGS was previously hard coded to contain "-I/usr/include/slang" to > > > > work with hosts that have "/usr/include/slang/slang.h" as well as hosts > > > > that have "/usr/include/slang.h". This path can cause compile warnings > > > > like: > > > > > > > > cc1: warning: '/usr/include/slang' doesn't exists. > > > > > > > > or > > > > > > > > cc1: warning: include location "/usr/include/slang" is unsafe for > > > > cross-compilation [-Wpoison-system-directories] > > > > > > > > Then in some cases warnings become errors if WERROR is enabled hence > > > > build errors. > > > > > > > > To fix this issue, we can use -idirafter to downgrade the priority of the > > > > default hard coded path. We can also make the slang include directory > > > > a variable, to allow the user to specify SLANG_INC and set their own > > > > include location. And add a '=' prefix to indicate better > > > > compatibility with sysroot/cross compile cases. > > > > > > CC /home/acme/git/build/perf/builtin-diff.o > > > In file included from util/../ui/keysyms.h:4, > > > from util/hist.h:142, > > > from builtin-diff.c:11: > > > util/../ui/libslang.h:12:19: error: slang.h: No such file or directory > > > util/../ui/libslang.h:14:5: error: "SLANG_VERSION" is not defined > > > In file included from util/../ui/keysyms.h:4, > > > from util/hist.h:142, > > > from util/evsel.h:10, > > > from util/evlist.h:8, > > > from builtin-annotate.c:20: > > > util/../ui/libslang.h:12:19: error: slang.h: No such file or directory > > > util/../ui/libslang.h:14:5: error: "SLANG_VERSION" is not defined > > > builtin-annotate.c: In function ‘hists__find_annotations’: > > > builtin-annotate.c:122: error: ‘SL_KEY_RIGHT’ undeclared (first use in > > > this function) > > > builtin-annotate.c:122: error: (Each undeclared identifier is reported > > > only once > > > builtin-annotate.c:122: error: for each function it appears in.) > > > builtin-annotate.c:134: error: ‘SL_KEY_LEFT’ undeclared (first use in > > > this function) > > > make: *** [/home/acme/git/build/perf/builtin-annotate.o] Error 1 > > > make: *** Waiting for unfinished jobs.... > > > make: *** [/home/acme/git/build/perf/builtin-diff.o] Error 1 > > > make: Leaving directory `/home/git/linux/tools/perf' > > > [acme@sandy linux]$ cat /etc/redhat-release > > > Red Hat Enterprise Linux Server release 6.3 (Santiago) > > > [acme@sandy linux]$ > > > > Does: > > > > SLANG_INC ?= -I=/usr/include/slang > > > > work any better? Its hard to tell from the above error which bit of the > > I'll try later > > > syntax is failing. Which gcc version is it? > > [acme@sandy linux]$ gcc -v > Using built-in specs. > Target: x86_64-redhat-linux > Configured with: ../configure --prefix=/usr --mandir=/usr/share/man > --infodir=/usr/share/info > --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap > --enable-shared --enable-threads=posix --enable-checking=release > --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions > --enable-gnu-unique-object > --enable-languages=c,c++,objc,obj-c++,java,fortran,ada > --enable-java-awt=gtk --disable-dssi > --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre > --enable-libgcj-multifile --enable-java-maintainer-mode > --with-ecj-jar=/usr/share/java/eclipse-ecj.jar > --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic > --with-arch_32=i686 --build=x86_64-redhat-linux > Thread model: posix > gcc version 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC) > [acme@sandy linux]$ Seems like there is no slang.h installed. Could you please check: $ find /usr/include/ -name slang.h On my FC17: $ find /usr/include/ -name slang.h /usr/include/slang/slang.h /usr/include/slang.h $ rpm -qf /usr/include/slang.h slang-devel-2.2.4-3.fc17.x86_64 $ rpm -qf /usr/include/slang/slang.h slang-devel-2.2.4-3.fc17.x86_64 --- And does 'export SLANG_INC=<to location of the slang.h>' works any better? :) Cheers, Liang Li ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC PATCH] perf: add SLANG_INC for slang.h 2012-09-06 2:11 ` Liang Li @ 2012-09-06 13:55 ` Arnaldo Carvalho de Melo 0 siblings, 0 replies; 6+ messages in thread From: Arnaldo Carvalho de Melo @ 2012-09-06 13:55 UTC (permalink / raw) To: Liang Li; +Cc: Richard Purdie, a.p.zijlstra, paulus, mingo, linux-kernel Em Thu, Sep 06, 2012 at 10:11:22AM +0800, Liang Li escreveu: > On 2012-09-06 06:41, Arnaldo Carvalho de Melo <acme@ghostprotocols.net> wrote: > > > Does: > > > > > > SLANG_INC ?= -I=/usr/include/slang > > > > > > work any better? Its hard to tell from the above error which bit of the > > > > I'll try later > > > > > syntax is failing. Which gcc version is it? > > > > [acme@sandy linux]$ gcc -v > > Using built-in specs. > > Target: x86_64-redhat-linux > > Configured with: ../configure --prefix=/usr --mandir=/usr/share/man > > --infodir=/usr/share/info > > --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap > > --enable-shared --enable-threads=posix --enable-checking=release > > --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions > > --enable-gnu-unique-object > > --enable-languages=c,c++,objc,obj-c++,java,fortran,ada > > --enable-java-awt=gtk --disable-dssi > > --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre > > --enable-libgcj-multifile --enable-java-maintainer-mode > > --with-ecj-jar=/usr/share/java/eclipse-ecj.jar > > --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic > > --with-arch_32=i686 --build=x86_64-redhat-linux > > Thread model: posix > > gcc version 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC) > > [acme@sandy linux]$ > > Seems like there is no slang.h installed. Could you please check: > > $ find /usr/include/ -name slang.h > > On my FC17: > > $ find /usr/include/ -name slang.h > /usr/include/slang/slang.h > /usr/include/slang.h > $ rpm -qf /usr/include/slang.h > slang-devel-2.2.4-3.fc17.x86_64 > $ rpm -qf /usr/include/slang/slang.h > slang-devel-2.2.4-3.fc17.x86_64 [root@sandy ~]# find /usr/include/ -name slang.h /usr/include/slang/slang.h [root@sandy ~]# [root@sandy ~]# rpm -qf /usr/include/slang/slang.h slang-devel-2.2.1-1.el6.x86_64 > --- > > And does 'export SLANG_INC=<to location of the slang.h>' works any > better? :) Lemme process the other patches first, will try. - arnaldo ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-09-06 13:55 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-08-24 3:10 [RFC PATCH] perf: add SLANG_INC for slang.h Liang Li 2012-09-05 20:54 ` Arnaldo Carvalho de Melo 2012-09-05 21:23 ` Richard Purdie 2012-09-05 22:41 ` Arnaldo Carvalho de Melo 2012-09-06 2:11 ` Liang Li 2012-09-06 13:55 ` Arnaldo Carvalho de Melo
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).