Skip to contentSkip to conversation

tracing: trace-cmd fixes and new kernelshark recipe

PATCH Superseded Darren Hart 3 participants 12 messages Dec 30, 2010 – Dec 31, 2010

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#1 lore raw

PATCH 1/3 trace-cmd: fix cross-compilation

In reply to Darren Hart

The trace-cmd Makefile forces certain variables, such as CC and AR. It was using the host gcc and loader, fix it to use the poky-built cross-compiler and linker.

inherit pkgconfig to ensure we don't use the host pkg-config.

Remove unecessary variables from the oemake commands, such as ARCH and LD which aren't used by the Makefile.

---
 meta/recipes-kernel/trace-cmd/trace-cmd_git.bb |   12 +++++-------
 1 files changed, 5 insertions(+), 7 deletions(-)
meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +5 -7
index e375afc..a7eca5f 100644
@@ -2,18 +2,16 @@ DESCRIPTION = "User interface to Ftrace"
 LICENSE = "GPL"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
 
-PR = r1
+PR = r2
 PV = "1.0.4+git${SRCPV}"
 
+inherit pkgconfig
+
 SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git;protocol=git"
 S = "${WORKDIR}/git"
 
-
-do_compile() { 
-	oe_runmake ARCH="${ARCH}" CC="${CC}" LD="${LD}" prefix=${prefix}
-}
+EXTRA_OEMAKE = "'CC=${CC}' 'AR=${AR}' 'prefix=${prefix}'"
 
 do_install() {
-	oe_runmake ARCH="${ARCH}" CC="${CC}" LD="${LD}" \
-                   prefix=${prefix} DESTDIR=${D} install
+	oe_runmake CC="${CC}" AR="${AR}" prefix="${prefix}" DESTDIR="${D}" install
 }
Signature · 1 line
1.7.1
#7 lore raw

PATCH 2/3 glib-2.0: fix g_once_init_enter compile failure

In reply to Darren Hart

Kernelshark trips over a compile bug in glib-2.0 addressed by Open Embedded back in the 2.22 timeframe. It appears to still be present in 2.27.

http://www.mail-archive.com/[email protected]/msg00529.html

---
 .../glib-2.0-2.27.3/g_once_init_enter.patch        |   13 +++++++++++++
 meta/recipes-core/glib-2.0/glib-2.0_2.27.3.bb      |    6 ++++--
 2 files changed, 17 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-core/glib-2.0/glib-2.0-2.27.3/g_once_init_enter.patch
meta/recipes-core/glib-2.0/glib-2.0-2.27.3/g_once_init_enter.patch new file +13 -0
new file mode 100644
index 0000000..1c4ce50
@@ -0,0 +1,13 @@
+Index: glib-2.27.3/glib/gthread.h
+===================================================================
+--- glib-2.27.3.orig/glib/gthread.h
++++ glib-2.27.3/glib/gthread.h
+@@ -344,7 +344,7 @@ void                    g_once_init_leav
+ G_INLINE_FUNC gboolean
+ g_once_init_enter (volatile gsize *value_location)
+ {
+-  if G_LIKELY ((gpointer) g_atomic_pointer_get (value_location) != NULL)
++  if G_LIKELY ((gpointer) g_atomic_pointer_get ((volatile gpointer *)value_location) != NULL)
+     return FALSE;
+   else
+     return g_once_init_enter_impl (value_location);
meta/recipes-core/glib-2.0/glib-2.0_2.27.3.bb +4 -2
index 30e208a..a9ff3ec 100644
@@ -1,10 +1,12 @@
 require glib.inc
 
-PR = "r0"
+PR = "r1"
 
 SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/glib/2.27/glib-${PV}.tar.bz2 \
            file://configure-libtool.patch \
-           file://60_wait-longer-for-threads-to-die.patch"
+           file://60_wait-longer-for-threads-to-die.patch \
+           file://g_once_init_enter.patch \
+          "
 
 SRC_URI[md5sum] = "d3e976ff92b55b6064a0eb3110f36158"
 SRC_URI[sha256sum] = "c44177b635e88639361eb1daf7aaa33315a00aaf46db5accf2f11920c7ff1919"
Signature · 1 line
1.7.1
#9 lore raw

PATCH 3/3 kernelshark: add ftrace gui viewer

In reply to Darren Hart

The trace-cmd source includes a graphical trace viewer, but we don't want to make the trace-cmd recipe depend on gtk+. This patch adds a second recipe in the meta/recipes-kernel/trace-cmd directory which uses the trace-cmd SRCREV and RDEPENDS on trace-cmd to ensure compatibility.

---
 meta/recipes-kernel/trace-cmd/kernelshark_git.bb |   21 +++++++++++++++++++++
 1 files changed, 21 insertions(+), 0 deletions(-)
 create mode 100644 meta/recipes-kernel/trace-cmd/kernelshark_git.bb
meta/recipes-kernel/trace-cmd/kernelshark_git.bb new file +21 -0
new file mode 100644
index 0000000..d2913c9
@@ -0,0 +1,21 @@
+DESCRIPTION = "Graphical trace viewer for Ftrace"
+LICENSE = "GPL"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+
+PR = r0
+PV = "1.0.4+git${SRCPV}"
+
+DEPENDS = "gtk+"
+RDEPENDS = "trace-cmd"
+
+inherit pkgconfig
+
+SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git;protocol=git"
+SRCREV = "${SRCREV_pn-trace-cmd}"
+S = "${WORKDIR}/git"
+
+EXTRA_OEMAKE = "'CC=${CC}' 'AR=${AR}' 'prefix=${prefix}' gui"
+
+do_install() {
+	oe_runmake CC="${CC}" AR="${AR}" prefix="${prefix}" DESTDIR="${D}" install_gui
+}
Signature · 1 line
1.7.1
#0 lore raw

cover tracing: trace-cmd fixes and new kernelshark recipe

This series fixes some issues with the existing trace-cmd recipe and adds a new recipe for kernelshark. The latter catches a bug in glib-2.0 which is also addressed in this series with a patch from Open Embedded.

Pull URL: git://git.pokylinux.org/poky-contrib.git
Branch: dvhart/tracing
Browse: http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=dvhart/tracing

Thanks,
Darren Hart <[email protected]>
---

Darren Hart (3):
trace-cmd: fix cross-compilation
glib-2.0: fix g_once_init_enter compile failure
kernelshark: add ftrace gui viewer

 .../glib-2.0-2.27.3/g_once_init_enter.patch        |   13 ++++++++++++
 meta/recipes-core/glib-2.0/glib-2.0_2.27.3.bb      |    6 +++-
 meta/recipes-kernel/trace-cmd/kernelshark_git.bb   |   21 ++++++++++++++++++++
 meta/recipes-kernel/trace-cmd/trace-cmd_git.bb     |   12 ++++------
 4 files changed, 43 insertions(+), 9 deletions(-)
 create mode 100644 meta/recipes-core/glib-2.0/glib-2.0-2.27.3/g_once_init_enter.patch
 create mode 100644 meta/recipes-kernel/trace-cmd/kernelshark_git.bb
#2 lore raw

Re: [PATCH 1/3] trace-cmd: fix cross-compilation

In reply to Darren Hart
Quoted 11 lines · Darren Hart

The trace-cmd Makefile forces certain variables, such as CC and AR. It was using the host gcc and loader, fix it to use the poky-built cross-compiler and linker.

inherit pkgconfig to ensure we don't use the host pkg-config.

Remove unecessary variables from the oemake commands, such as ARCH and LD which aren't used by the Makefile.

I actually hacked up the original of this one .. ;)

Quoted 21 lines

---
 meta/recipes-kernel/trace-cmd/trace-cmd_git.bb |   12 +++++-------

 1 files changed, 5 insertions(+), 7 deletions(-)
meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +0 -0
index e375afc..a7eca5f 100644
@@ -2,18 +2,16 @@ DESCRIPTION = "User interface to Ftrace"

 LICENSE = "GPL"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"

meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +1 -1
-PR = r1
+PR = r2

 PV = "1.0.4+git${SRCPV}"

meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +2 -0
+inherit pkgconfig
+

 SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git;protocol=git" S = "${WORKDIR}/git"

meta/recipes-kernel/trace-cmd/trace-cmd_git.bb DESCRIPTION = "User interface to Ftrace" · line 13

Quoted 5 lines
meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +1 -4
-
-do_compile() {
-       oe_runmake ARCH="${ARCH}" CC="${CC}" LD="${LD}" prefix=${prefix}
-}
+EXTRA_OEMAKE = "'CC=${CC}' 'AR=${AR}' 'prefix=${prefix}'"

So we've determined that we don't need ARCH anymore ? At one point this did. Or is it coming from the pkgconfig inheritance now ?

Bruce

Quoted 14 lines

 do_install() {
-       oe_runmake ARCH="${ARCH}" CC="${CC}" LD="${LD}" \
-                   prefix=${prefix} DESTDIR=${D} install
+       oe_runmake CC="${CC}" AR="${AR}" prefix="${prefix}" DESTDIR="${D}" install }
--
1.7.1

_______________________________________________
poky mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/poky

Signature · 2 lines
"Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end"
#3 lore raw

Re: [PATCH 1/3] trace-cmd: fix cross-compilation

Quoted 7 lines · Bruce Ashfield
Quoted 6 lines · Darren Hart

The trace-cmd Makefile forces certain variables, such as CC and AR. It was using the host gcc and loader, fix it to use the poky-built cross-compiler and linker.

inherit pkgconfig to ensure we don't use the host pkg-config.

Quoted 7 lines
Quoted 5 lines

Remove unecessary variables from the oemake commands, such as ARCH and LD which aren't used by the Makefile.

I actually hacked up the original of this one .. ;)

Right, sorry, forgot to check git blame on this one.

Quoted 23 lines
Quoted 23 lines

---
  meta/recipes-kernel/trace-cmd/trace-cmd_git.bb |   12 +++++-------
  1 files changed, 5 insertions(+), 7 deletions(-)
meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +3 -1
index e375afc..a7eca5f 100644
@@ -2,18 +2,16 @@ DESCRIPTION = "User interface to Ftrace"
  LICENSE = "GPL"
  LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
 
-PR = r1
+PR = r2
  PV = "1.0.4+git${SRCPV}"
 
+inherit pkgconfig
+
  SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git;protocol=git"
  S = "${WORKDIR}/git"
 
Quoted 8 lines

meta/recipes-kernel/trace-cmd/trace-cmd_git.bb DESCRIPTION = "User interface to Ftrace" · line 13

Quoted 5 lines
meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +1 -4
-
-do_compile() {
-       oe_runmake ARCH="${ARCH}" CC="${CC}" LD="${LD}" prefix=${prefix}
-}
+EXTRA_OEMAKE = "'CC=${CC}' 'AR=${AR}' 'prefix=${prefix}'"

So we've determined that we don't need ARCH anymore ? At one point this did. Or is it coming from the pkgconfig inheritance now ?

Good question. My understanding of setting these variables here was to override whatever the Makefile was using. This makefile doesn't use ARCH at all. Am I missing something about how this is used?

--
Darren

Quoted 20 lines

Bruce

Quoted 14 lines
meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +1 -3
  do_install() {
-       oe_runmake ARCH="${ARCH}" CC="${CC}" LD="${LD}" \
-                   prefix=${prefix} DESTDIR=${D} install
+       oe_runmake CC="${CC}" AR="${AR}" prefix="${prefix}" DESTDIR="${D}" install
  }
--

1.7.1

_______________________________________________
poky mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/poky

Signature · 2 lines
Darren Hart
Yocto Linux Kernel
#4 lore raw

Re: [PATCH 1/3] trace-cmd: fix cross-compilation

Quoted 14 lines · Darren Hart
Quoted 13 lines · Bruce Ashfield
Quoted 10 lines · Darren Hart

The trace-cmd Makefile forces certain variables, such as CC and AR. It was using the host gcc and loader, fix it to use the poky-built cross-compiler and linker.

inherit pkgconfig to ensure we don't use the host pkg-config.

Remove unecessary variables from the oemake commands, such as ARCH and LD which aren't used by the Makefile.

Quoted 6 lines
Quoted 4 lines
Quoted 2 lines

I actually hacked up the original of this one .. ;)

Right, sorry, forgot to check git blame on this one.

Probably wouldn't have helped, in the recipe re-org it looks like my blame was dropped :)

Quoted 35 lines
Quoted 26 lines
Quoted 26 lines

---
 meta/recipes-kernel/trace-cmd/trace-cmd_git.bb |   12 +++++-------

 1 files changed, 5 insertions(+), 7 deletions(-)
meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +0 -0
index e375afc..a7eca5f 100644
@@ -2,18 +2,16 @@ DESCRIPTION = "User interface to Ftrace"

 LICENSE = "GPL"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"

meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +1 -1
-PR = r1
+PR = r2

 PV = "1.0.4+git${SRCPV}"

meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +2 -0
+inherit pkgconfig
+

 SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git;protocol=git" S = "${WORKDIR}/git"

Quoted 8 lines

meta/recipes-kernel/trace-cmd/trace-cmd_git.bb DESCRIPTION = "User interface to Ftrace" · line 13

Quoted 5 lines
meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +1 -4
-
-do_compile() {
-       oe_runmake ARCH="${ARCH}" CC="${CC}" LD="${LD}" prefix=${prefix}
-}
+EXTRA_OEMAKE = "'CC=${CC}' 'AR=${AR}' 'prefix=${prefix}'"

So we've determined that we don't need ARCH anymore ? At one point this did. Or is it coming from the pkgconfig inheritance now ?

Quoted 2 lines

Good question. My understanding of setting these variables here was to override whatever the Makefile was using. This makefile doesn't use ARCH at

They were initially imported from a non-bitbake build of the tool, so there very well could have been differences introduced simply by the history. But yes, they were passed to override the defaults of the trace-cmd Makefile and prevent the defaults from being used.

At one point, there were arch specific switches in the build to adapt to a different userspace on a per-arch basis. But those changes were circa March 2010 and they never were picked up.

Quoted 1 line

all. Am I missing something about how this is used?

It doesn't look like it, I was more noticing that you dropped ARCH, and was just looking to see if there were more details than just the commit message.

Cheers,

Bruce

Quoted 31 lines

--
Darren

Quoted 21 lines

Bruce

Quoted 15 lines

 do_install() {
-       oe_runmake ARCH="${ARCH}" CC="${CC}" LD="${LD}" \
-                   prefix=${prefix} DESTDIR=${D} install
+       oe_runmake CC="${CC}" AR="${AR}" prefix="${prefix}" DESTDIR="${D}" install
 }
--
1.7.1

_______________________________________________
poky mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/poky

--
Darren Hart
Yocto Linux Kernel

Signature · 2 lines
"Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end"
#5 lore raw

Re: [PATCH 1/3] trace-cmd: fix cross-compilation

Quoted 72 lines · Bruce Ashfield
Quoted 14 lines · Darren Hart
Quoted 13 lines · Bruce Ashfield
Quoted 10 lines · Darren Hart

The trace-cmd Makefile forces certain variables, such as CC and AR. It was using the host gcc and loader, fix it to use the poky-built cross-compiler and linker.

inherit pkgconfig to ensure we don't use the host pkg-config.

Remove unecessary variables from the oemake commands, such as ARCH and LD which aren't used by the Makefile.

Quoted 6 lines
Quoted 4 lines
Quoted 2 lines

I actually hacked up the original of this one .. ;)

Right, sorry, forgot to check git blame on this one.

Probably wouldn't have helped, in the recipe re-org it looks like my blame was dropped :)

Quoted 35 lines
Quoted 26 lines
Quoted 26 lines


---
  meta/recipes-kernel/trace-cmd/trace-cmd_git.bb |   12 +++++-------
  1 files changed, 5 insertions(+), 7 deletions(-)
meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +3 -1
index e375afc..a7eca5f 100644
@@ -2,18 +2,16 @@ DESCRIPTION = "User interface to Ftrace"
  LICENSE = "GPL"
  LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
 
-PR = r1
+PR = r2
  PV = "1.0.4+git${SRCPV}"
 
+inherit pkgconfig
+
  SRC_URI =

"git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git;protocol=git"
S = "${WORKDIR}/git"

Quoted 8 lines

meta/recipes-kernel/trace-cmd/trace-cmd_git.bb DESCRIPTION = "User interface to Ftrace" · line 13

Quoted 5 lines
meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +1 -4
-
-do_compile() {
-       oe_runmake ARCH="${ARCH}" CC="${CC}" LD="${LD}" prefix=${prefix}
-}
+EXTRA_OEMAKE = "'CC=${CC}' 'AR=${AR}' 'prefix=${prefix}'"

So we've determined that we don't need ARCH anymore ? At one point this did. Or is it coming from the pkgconfig inheritance now ?

Quoted 2 lines

Good question. My understanding of setting these variables here was to override whatever the Makefile was using. This makefile doesn't use ARCH at

They were initially imported from a non-bitbake build of the tool, so there very well could have been differences introduced simply by the history. But yes, they were passed to override the defaults of the trace-cmd Makefile and prevent the defaults from being used.

At one point, there were arch specific switches in the build to adapt to a different userspace on a per-arch basis. But those changes were circa March 2010 and they never were picked up.

Quoted 5 lines
Quoted 1 line

all. Am I missing something about how this is used?

It doesn't look like it, I was more noticing that you dropped ARCH, and was just looking to see if there were more details than just the commit message.

Nope, looks like trace-cmd's Makefile has just changed some.

Are you OK with these patches then?

Signature · 2 lines
Darren Hart
Yocto Linux Kernel
#10 lore raw

Re: [PATCH 3/3] kernelshark: add ftrace gui viewer

In reply to Darren Hart
Quoted 19 lines · Darren Hart

The trace-cmd source includes a graphical trace viewer, but we don't want to make the trace-cmd recipe depend on gtk+. This patch adds a second recipe in the meta/recipes-kernel/trace-cmd directory which uses the trace-cmd SRCREV and RDEPENDS on trace-cmd to ensure compatibility.

---
  meta/recipes-kernel/trace-cmd/kernelshark_git.bb |   21 +++++++++++++++++++++
  1 files changed, 21 insertions(+), 0 deletions(-)

create mode 100644 meta/recipes-kernel/trace-cmd/kernelshark_git.bb

meta/recipes-kernel/trace-cmd/kernelshark_git.bb new file +0 -0
new file mode 100644
index 0000000..d2913c9

meta/recipes-kernel/trace-cmd/kernelshark_git.bb line 2

Quoted 2 lines
meta/recipes-kernel/trace-cmd/kernelshark_git.bb new file +2 -0
@@ -0,0 +1,21 @@
+DESCRIPTION = "Graphical trace viewer for Ftrace"
+LICENSE = "GPL"

Can you be more specific to the version of GPL?

Quoted 19 lines
meta/recipes-kernel/trace-cmd/kernelshark_git.bb new file +19 -0
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+
+PR = r0
+PV = "1.0.4+git${SRCPV}"
+
+DEPENDS = "gtk+"
+RDEPENDS = "trace-cmd"
+
+inherit pkgconfig
+
+SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git;protocol=git"
+SRCREV = "${SRCREV_pn-trace-cmd}"
+S = "${WORKDIR}/git"
+
+EXTRA_OEMAKE = "'CC=${CC}' 'AR=${AR}' 'prefix=${prefix}' gui"
+
+do_install() {
+	oe_runmake CC="${CC}" AR="${AR}" prefix="${prefix}" DESTDIR="${D}" install_gui
+}
#8 lore raw

Re: [PATCH 2/3] glib-2.0: fix g_once_init_enter compile failure

In reply to Darren Hart
Quoted 5 lines · Darren Hart

Kernelshark trips over a compile bug in glib-2.0 addressed by Open Embedded back in the 2.22 timeframe. It appears to still be present in 2.27.

http://www.mail-archive.com/[email protected]/msg00529.html

Can you add this attribution as well as Signed-off-by in the header of the patch file directly, this will help understand with out having to dig into the git info.

Thanks

Sau!

Quoted 46 lines
---
  .../glib-2.0-2.27.3/g_once_init_enter.patch        |   13 +++++++++++++
  meta/recipes-core/glib-2.0/glib-2.0_2.27.3.bb      |    6 ++++--
  2 files changed, 17 insertions(+), 2 deletions(-)

create mode 100644 meta/recipes-core/glib-2.0/glib-2.0-2.27.3/g_once_init_enter.patch

meta/recipes-core/glib-2.0/glib-2.0-2.27.3/g_once_init_enter.patch new file +13 -0
new file mode 100644
index 0000000..1c4ce50
@@ -0,0 +1,13 @@
+Index: glib-2.27.3/glib/gthread.h
+===================================================================
+--- glib-2.27.3.orig/glib/gthread.h
++++ glib-2.27.3/glib/gthread.h
+@@ -344,7 +344,7 @@ void                    g_once_init_leav
+ G_INLINE_FUNC gboolean
+ g_once_init_enter (volatile gsize *value_location)
+ {
+-  if G_LIKELY ((gpointer) g_atomic_pointer_get (value_location) != NULL)
++  if G_LIKELY ((gpointer) g_atomic_pointer_get ((volatile gpointer *)value_location) != NULL)
+     return FALSE;
+   else
+     return g_once_init_enter_impl (value_location);
meta/recipes-core/glib-2.0/glib-2.0_2.27.3.bb +4 -2
index 30e208a..a9ff3ec 100644
@@ -1,10 +1,12 @@
  require glib.inc
 
-PR = "r0"
+PR = "r1"
 
  SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/glib/2.27/glib-${PV}.tar.bz2 \
             file://configure-libtool.patch \
-           file://60_wait-longer-for-threads-to-die.patch"
+           file://60_wait-longer-for-threads-to-die.patch \
+           file://g_once_init_enter.patch \
+          "
 
  SRC_URI[md5sum] = "d3e976ff92b55b6064a0eb3110f36158"
  SRC_URI[sha256sum] = "c44177b635e88639361eb1daf7aaa33315a00aaf46db5accf2f11920c7ff1919"
#6 lore raw

Re: [PATCH 1/3] trace-cmd: fix cross-compilation

In reply to Darren Hart
Quoted 84 lines · Darren Hart
Quoted 83 lines · Bruce Ashfield
Quoted 15 lines · Darren Hart
Quoted 13 lines · Bruce Ashfield
Quoted 10 lines · Darren Hart

The trace-cmd Makefile forces certain variables, such as CC and AR. It was using the host gcc and loader, fix it to use the poky-built cross-compiler and linker.

inherit pkgconfig to ensure we don't use the host pkg-config.

Remove unecessary variables from the oemake commands, such as ARCH and LD which aren't used by the Makefile.

Quoted 6 lines
Quoted 4 lines
Quoted 2 lines

I actually hacked up the original of this one .. ;)

Right, sorry, forgot to check git blame on this one.

Probably wouldn't have helped, in the recipe re-org it looks like my blame was dropped :)

Quoted 38 lines
Quoted 28 lines
Quoted 28 lines

---
 meta/recipes-kernel/trace-cmd/trace-cmd_git.bb |   12 +++++-------

 1 files changed, 5 insertions(+), 7 deletions(-)
meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +0 -0
index e375afc..a7eca5f 100644
@@ -2,18 +2,16 @@ DESCRIPTION = "User interface to Ftrace"

 LICENSE = "GPL"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"

meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +1 -1
-PR = r1
+PR = r2

 PV = "1.0.4+git${SRCPV}"

meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +2 -0
+inherit pkgconfig
+

 SRC_URI =

"git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git;protocol=git" S = "${WORKDIR}/git"

Quoted 9 lines

meta/recipes-kernel/trace-cmd/trace-cmd_git.bb DESCRIPTION = "User interface to Ftrace" · line 13

Quoted 6 lines
meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +0 -3
-
-do_compile() {
-       oe_runmake ARCH="${ARCH}" CC="${CC}" LD="${LD}"

prefix=${prefix}

meta/recipes-kernel/trace-cmd/trace-cmd_git.bb +1 -1
-}
+EXTRA_OEMAKE = "'CC=${CC}' 'AR=${AR}' 'prefix=${prefix}'"

So we've determined that we don't need ARCH anymore ? At one point this did. Or is it coming from the pkgconfig inheritance now ?

Quoted 3 lines

Good question. My understanding of setting these variables here was to override whatever the Makefile was using. This makefile doesn't use ARCH at

They were initially imported from a non-bitbake build of the tool, so there
very well could have been differences introduced simply by the history. But
yes, they were passed to override the defaults of the trace-cmd Makefile and prevent the defaults from being used.

At one point, there were arch specific switches in the build to adapt to a different userspace on a per-arch basis. But those changes were circa March 2010 and they never were picked up.

Quoted 1 line

all. Am I missing something about how this is used?

Quoted 7 lines
Quoted 3 lines

It doesn't look like it, I was more noticing that you dropped ARCH, and was just looking to see if there were more details than just the commit message.

Nope, looks like trace-cmd's Makefile has just changed some.

Are you OK with these patches then?

I am. Acked/Reviewed-by: Bruce Ashfield <[email protected]>

Bruce

Quoted 5 lines

--
Darren Hart
Yocto Linux Kernel

Signature · 2 lines
"Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end"
#11 lore raw

Re: [PATCH 3/3] kernelshark: add ftrace gui viewer

In reply to Saul Wold
Quoted 15 lines · Saul Wold
Quoted 14 lines · Darren Hart

The trace-cmd source includes a graphical trace viewer, but we don't want to make the trace-cmd recipe depend on gtk+. This patch adds a second recipe in the meta/recipes-kernel/trace-cmd directory which uses the trace-cmd SRCREV and RDEPENDS on trace-cmd to ensure compatibility.

---
meta/recipes-kernel/trace-cmd/kernelshark_git.bb | 21
+++++++++++++++++++++

1 files changed, 21 insertions(+), 0 deletions(-)

create mode 100644 meta/recipes-kernel/trace-cmd/kernelshark_git.bb

Quoted 10 lines

meta/recipes-kernel/trace-cmd/kernelshark_git.bb line 2

Quoted 9 lines
meta/recipes-kernel/trace-cmd/kernelshark_git.bb new file +2 -0
new file mode 100644
index 0000000..d2913c9
@@ -0,0 +1,21 @@
+DESCRIPTION = "Graphical trace viewer for Ftrace"
+LICENSE = "GPL"

Can you be more specific to the version of GPL?

Right, will fix and resend - for both ftrace and kernelshark.

Quoted 24 lines
Quoted 23 lines
meta/recipes-kernel/trace-cmd/kernelshark_git.bb new file +11 -0
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+
+PR = r0
+PV = "1.0.4+git${SRCPV}"
+
+DEPENDS = "gtk+"
+RDEPENDS = "trace-cmd"
+
+inherit pkgconfig
+
+SRC_URI =

"git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/trace-cmd.git;protocol=git"

meta/recipes-kernel/trace-cmd/kernelshark_git.bb new file +7 -0
+SRCREV = "${SRCREV_pn-trace-cmd}"
+S = "${WORKDIR}/git"
+
+EXTRA_OEMAKE = "'CC=${CC}' 'AR=${AR}' 'prefix=${prefix}' gui"
+
+do_install() {
+ oe_runmake CC="${CC}" AR="${AR}" prefix="${prefix}" DESTDIR="${D}"

install_gui
+}

Signature · 2 lines
Darren Hart
Yocto Linux Kernel