[meta-intel] [PATCH] turbostat: add the recipe of turbostat

Bruce, Henry henry.bruce at intel.com
Wed May 16 11:40:46 PDT 2018


On Wed, 2018-05-16 at 10:54 +0100, Burton, Ross wrote:
> Shouldn't the kernel recipe be building this?

I don't think the kernel recipe builds any tools in the kernel source
tree (e.g. perf) so I don't see a precedent here.

However the recipe could be simplified by inheriting kernelsrc.


> 
> On 16 May 2018 at 09:05, Hongzhi.Song <hongzhi.song at windriver.com>
> wrote:
> > From: Hongzhi Song <hsong at ala-blade48.wrs.com>
> > 
> > It is an efficient tool to reflect the status of X86 processors.
> > Turbostat reports processor topology, frequency, idle power-state
> > statistics, temperature and power on X86 processors.
> > 
> > Signed-off-by: Hongzhi Song <hsong at ala-blade48.wrs.com>
> > ---
> >  recipes-kernel/turbostat/turbostat_3.4.bb | 56
> > +++++++++++++++++++++++++++++++
> >  1 file changed, 56 insertions(+)
> >  create mode 100644 recipes-kernel/turbostat/turbostat_3.4.bb
> > 
> > diff --git a/recipes-kernel/turbostat/turbostat_3.4.bb b/recipes-
> > kernel/turbostat/turbostat_3.4.bb
> > new file mode 100644
> > index 0000000..ec789c1
> > --- /dev/null
> > +++ b/recipes-kernel/turbostat/turbostat_3.4.bb
> > @@ -0,0 +1,56 @@
> > +#
> > +# Copyright (C) 2013 Wind River Systems, Inc.
> > +#
> > +SUMMARY = "Frequency and Idle power monitoring tools for Linux"
> > +
> > +DESCRIPTION = "The turbostat tool allows you to determine the
> > actual \
> > +processor frequency and idle power saving state residency on
> > supported \
> > +processors."
> > +
> > +LICENSE = "GPLv2"
> > +LIC_FILES_CHKSUM =
> > "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
> > +
> > +
> > +PR = "r7"
> > +
> > +COMPATIBLE_HOST = '(x86_64.*|i.86.*)-linux'
> > +
> > +DEPENDS = "virtual/kernel"
> > +
> > +do_fetch[noexec] = "1"
> > +do_unpack[noexec] = "1"
> > +do_patch[noexec] = "1"
> > +
> > +# This looks in S, so we better make sure there's
> > +# something in the directory.
> > +#
> > +do_populate_lic[depends] = "${PN}:do_configure"
> > +
> > +
> > +EXTRA_OEMAKE = '\
> > +                CC="${CC}" \
> > +               'CFLAGS=-Wall
> > -I${STAGING_KERNEL_DIR}/arch/x86/include/uapi ${LDFLAGS}' \
> > +               '
> > +
> > +# If we build under STAGING_KERNEL_DIR, source will not be put
> > +# into the dbg rpm.  STAGING_KERNEL_DIR will exist by the time
> > +# do_configure() is invoked so we can safely copy from it.
> > +#
> > +do_configure_prepend() {
> > +       mkdir -p ${S}
> > +       cp -r ${STAGING_KERNEL_DIR}/arch/x86/include/asm/msr-
> > index.h ${S}
> > +       cp -r ${STAGING_KERNEL_DIR}/arch/x86/include/asm/intel-
> > family.h ${S}
> > +       cp -r ${STAGING_KERNEL_DIR}/tools/power/x86/turbostat/*
> > ${S}
> > +       cp -r ${STAGING_KERNEL_DIR}/COPYING ${S}
> > +}
> > +
> > +do_compile() {
> > +       sed -i 's#MSRHEADER#"msr-index.h"#' turbostat.c
> > +       sed -i 's#INTEL_FAMILY_HEADER#"intel-family.h"#'
> > turbostat.c
> > +       sed -i 's#\$(CC) \$(CFLAGS) \$< -o
> > \$(BUILD_OUTPUT)/\$@#\$(CC) \$(CFLAGS) \$(LDFLAGS) \$< -o
> > \$(BUILD_OUTPUT)/\$@#' Makefile
> > +       oe_runmake STAGING_KERNEL_DIR=${STAGING_KERNEL_DIR}
> > +}
> > +
> > +do_install() {
> > +       oe_runmake DESTDIR="${D}" install
> > +}
> > --
> > 2.11.0
> > 
> > --
> > _______________________________________________
> > meta-intel mailing list
> > meta-intel at yoctoproject.org
> > https://lists.yoctoproject.org/listinfo/meta-intel


More information about the meta-intel mailing list