Re: [RFC PATCH] perf: add SLANG_INC for slang.h
From: Liang Li
Date: Wed Sep 05 2012 - 22:11:48 EST
On 2012-09-06 06:41, Arnaldo Carvalho de Melo <acme@xxxxxxxxxxxxxxxxxx> 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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/