[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+5PVA7LcDe5Y2RePTFbLdSHd85WhHcHHnFw2mBycfFRJ2m-FQ@mail.gmail.com>
Date: Tue, 21 Jan 2014 15:02:43 -0500
From: Josh Boyer <jwboyer@...oraproject.org>
To: Jiri Olsa <jolsa@...hat.com>, Ingo Molnar <mingo@...e.hu>,
Steven Rostedt <rostedt@...dmis.org>,
Arnaldo Carvalho de Melo <acme@...hat.com>
Cc: "Linux-Kernel@...r. Kernel. Org" <linux-kernel@...r.kernel.org>
Subject: Weird plugin paths in perf and perf.so binaries with 3.14 merge window
Hi All,
I went to build Linux v3.13-737-g7fe67a1 in Fedora this morning and it
resulted in RPM complaining that the perf and perf.so binaries had
strings in them that matched the RPM_BUILD_ROOT string. That fails
the RPM build.
Looking over the logs, I see that the traceevent plugins are getting a
rather weird -DPLUGIN_DIR define passed to them. E.g.:
gcc -c -g -Wall -I. -I
/home/jwboyer/kernel/kernel-3.13.fc21/linux-3.14.0-0.rc0.git1.1.fc21.x86_64/tools/lib/traceevent/../../include
'-DPLUGIN_DIR="/home/jwboyer/rpmbuild/BUILDROOT/kernel-3.14.0-0.rc0.git1.1.fc21.x86_64//usr//usr/lib64/traceevent/plugins"'
-D_GNU_SOURCE -std=gnu99 -fPIC
/home/jwboyer/kernel/kernel-3.13.fc21/linux-3.14.0-0.rc0.git1.1.fc21.x86_64/tools/lib/traceevent/parse-filter.c
-o parse-filter.o
We're building perf like so:
make -s -j8 -C tools/perf V=1 WERROR=0 NO_LIBUNWIND=1
HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_LIBNUMA=1 NO_STRLCPY=1 NO_BIONIC=1
prefix=/usr DESTDIR=/home/jwboyer/rpmbuild/BUILDROOT/kernel-3.14.0-0.rc0.git1.1.fc21.x86_64
all
and installing it via:
make -s -j8 -C tools/perf V=1 WERROR=0 NO_LIBUNWIND=1
HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_LIBNUMA=1 NO_STRLCPY=1 NO_BIONIC=1
prefix=/usr DESTDIR=/home/jwboyer/rpmbuild/BUILDROOT/kernel-3.14.0-0.rc0.git1.1.fc21.x86_64
install-bin
make -s -j8 -C tools/perf V=1 WERROR=0 NO_LIBUNWIND=1
HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_LIBNUMA=1 NO_STRLCPY=1 NO_BIONIC=1
prefix=/usr DESTDIR=/home/jwboyer/rpmbuild/BUILDROOT/kernel-3.14.0-0.rc0.git1.1.fc21.x86_64
install-python_ext
This has worked for all the builds up until this point.
Somehow the perf and perf.so binaries are getting the string being
passed via -DPLUGIN_DIR into them, likely through the libtraceevent.a
link. I'm pretty sure that (1) the string being passed is totally
broken and should be "/usr/lib64/traceevent/plugins" and (2) that I
haven't come close to deciphering how to fix this.
So, could you please look this over and see where the define is
getting messed up?
josh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists