[poky] [PATCH 1/1] linux-yocto: hard-code NO_LIBPERL/NO_LIBPYTHON

Tom Zanussi tom.zanussi at intel.com
Fri Jan 14 14:49:50 PST 2011


ExtUtils::Embed ccopts is getting the host's -I/usr/local/include and
using it to compile perf, which results in a compilation error that
started appearing just recently.

This turns the code that makes use of ExtUtils::Embed off and simply
hard-codes NO_LIBPERL.

It does the same for LIBPYTHON while we're at it, since it probably
suffers from a similar underlying problem and just by chance hasn't
broken anything yet.

This will be re-enabled after I familiarize myself with the perf
recipe and am able to create a proper fix.

Signed-off-by: Tom Zanussi <tom.zanussi at intel.com>
---
 .../linux-yocto/tools-perf-no-scripting.patch      |   49 ++++++++++++++++++++
 meta/recipes-kernel/linux/linux-yocto_git.bb       |    5 +-
 2 files changed, 52 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-kernel/linux/linux-yocto/tools-perf-no-scripting.patch

diff --git a/meta/recipes-kernel/linux/linux-yocto/tools-perf-no-scripting.patch b/meta/recipes-kernel/linux/linux-yocto/tools-perf-no-scripting.patch
new file mode 100644
index 0000000..e0ad999
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-yocto/tools-perf-no-scripting.patch
@@ -0,0 +1,49 @@
+Index: tools/perf/Makefile
+===================================================================
+--- a/tools/perf/Makefile	2011-01-14 14:17:33.127008554 -0600
++++ b/tools/perf/Makefile	2011-01-14 14:18:14.227008548 -0600
+@@ -588,42 +588,8 @@
+ 	endif
+ endif
+ 
+-ifdef NO_LIBPERL
+-	BASIC_CFLAGS += -DNO_LIBPERL
+-else
+-       PERL_EMBED_LDOPTS = $(shell perl -MExtUtils::Embed -e ldopts 2>/dev/null)
+-       PERL_EMBED_LDFLAGS = $(call strip-libs,$(PERL_EMBED_LDOPTS))
+-       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)
+-
+-	ifneq ($(call try-cc,$(SOURCE_PERL_EMBED),$(FLAGS_PERL_EMBED)),y)
+-		BASIC_CFLAGS += -DNO_LIBPERL
+-	else
+-               ALL_LDFLAGS += $(PERL_EMBED_LDFLAGS)
+-               EXTLIBS += $(PERL_EMBED_LIBADD)
+-		LIB_OBJS += $(OUTPUT)util/scripting-engines/trace-event-perl.o
+-		LIB_OBJS += $(OUTPUT)scripts/perl/Perf-Trace-Util/Context.o
+-	endif
+-endif
+-
+-ifdef NO_LIBPYTHON
+-	BASIC_CFLAGS += -DNO_LIBPYTHON
+-else
+-       PYTHON_EMBED_LDOPTS = $(shell python-config --ldflags 2>/dev/null)
+-       PYTHON_EMBED_LDFLAGS = $(call strip-libs,$(PYTHON_EMBED_LDOPTS))
+-       PYTHON_EMBED_LIBADD = $(call grep-libs,$(PYTHON_EMBED_LDOPTS))
+-	PYTHON_EMBED_CCOPTS = `python-config --cflags 2>/dev/null`
+-	FLAGS_PYTHON_EMBED=$(PYTHON_EMBED_CCOPTS) $(PYTHON_EMBED_LDOPTS)
+-	ifneq ($(call try-cc,$(SOURCE_PYTHON_EMBED),$(FLAGS_PYTHON_EMBED)),y)
+-		BASIC_CFLAGS += -DNO_LIBPYTHON
+-	else
+-               ALL_LDFLAGS += $(PYTHON_EMBED_LDFLAGS)
+-               EXTLIBS += $(PYTHON_EMBED_LIBADD)
+-		LIB_OBJS += $(OUTPUT)util/scripting-engines/trace-event-python.o
+-		LIB_OBJS += $(OUTPUT)scripts/python/Perf-Trace-Util/Context.o
+-	endif
+-endif
++BASIC_CFLAGS += -DNO_LIBPERL
++BASIC_CFLAGS += -DNO_LIBPYTHON
+ 
+ ifdef NO_DEMANGLE
+ 	BASIC_CFLAGS += -DNO_DEMANGLE
diff --git a/meta/recipes-kernel/linux/linux-yocto_git.bb b/meta/recipes-kernel/linux/linux-yocto_git.bb
index 21023da..7833f65 100644
--- a/meta/recipes-kernel/linux/linux-yocto_git.bb
+++ b/meta/recipes-kernel/linux/linux-yocto_git.bb
@@ -13,12 +13,13 @@ KMACHINE_beagleboard = "yocto/standard/beagleboard"
 
 LINUX_VERSION ?= "2.6.37"
 LINUX_VERSION_EXTENSION ?= "-yocto-${LINUX_KERNEL_TYPE}"
-PR = "r14"
+PR = "r15"
 PV = "${LINUX_VERSION}+git${SRCPV}"
 SRCREV_FORMAT = "meta_machine"
 
 SRC_URI = "git://git.pokylinux.org/linux-yocto-2.6.37;protocol=git;fullclone=1;branch=${KBRANCH};name=machine \
-           git://git.pokylinux.org/linux-yocto-2.6.37;protocol=git;noclone=1;branch=meta;name=meta"
+           git://git.pokylinux.org/linux-yocto-2.6.37;protocol=git;noclone=1;branch=meta;name=meta \
+           file://tools-perf-no-scripting.patch"
 
 COMPATIBLE_MACHINE = "(qemuarm|qemux86|qemuppc|qemumips|qemux86-64|mpc8315e-rdb|routerstationpro)"
 
-- 
1.7.0.4




More information about the poky mailing list