Openembedded Core Discussions
 help / color / mirror / Atom feed
* [meta-oe][PATCH v3] devtools: Add recipe for Chromium Embedded Controller utilities
From: Moritz Fischer @ 2017-01-04  6:45 UTC (permalink / raw)
  To: openembedded-core; +Cc: koen, mdf

Add a recipe to build 'ectool' a utility to interact with the embedded
controller on Google's chromebooks (and other platforms using it).

Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
---
Changes from v1:

- Replaced DESCRIPTION with SUMMARY (Martin)
- Use EXTRA_OEMAKE (Martin)
- Removed FILESEXTRAPATHS (Martin)
- Changed PV (Martin / Khem)
- Removed FILES_PN (Khem)

Changes from v2:

- Changed PV (Martin)

---
 .../chromium-utils/chromium-utils.bb               | 24 ++++++++++++++++++++
 .../files/0001-build-Add-HOST_LDFLAGS.patch        | 26 ++++++++++++++++++++++
 2 files changed, 50 insertions(+)
 create mode 100644 meta/recipes-devtools/chromium-utils/chromium-utils.bb
 create mode 100644 meta/recipes-devtools/chromium-utils/files/0001-build-Add-HOST_LDFLAGS.patch

diff --git a/meta/recipes-devtools/chromium-utils/chromium-utils.bb b/meta/recipes-devtools/chromium-utils/chromium-utils.bb
new file mode 100644
index 0000000..f2216fe
--- /dev/null
+++ b/meta/recipes-devtools/chromium-utils/chromium-utils.bb
@@ -0,0 +1,24 @@
+SUMMARY = "Chromium EC utilities"
+DEPENDS = "libftdi"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=562c740877935f40b262db8af30bca36"
+
+SRCREV = "b19bb1f22a3fd0102030485d324c0321a18827e8"
+SRC_URI = "git://chromium.googlesource.com/chromiumos/platform/ec;protocol=https \
+           file://0001-build-Add-HOST_LDFLAGS.patch \
+          "
+
+PV = "1.1.9999+gitr${SRCPV}"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OEMAKE = "'HOSTCC=${CC}' 'HOSTCFLAGS=${CFLAGS}' 'HOST_LDFLAGS=${LDFLAGS}'"
+
+do_compile() {
+    oe_runmake utils
+}
+
+do_install() {
+    install -m 0755 -d ${D}${bindir}
+    install -m 0755 ${S}/build/bds/util/ectool ${D}${bindir}/ectool
+}
diff --git a/meta/recipes-devtools/chromium-utils/files/0001-build-Add-HOST_LDFLAGS.patch b/meta/recipes-devtools/chromium-utils/files/0001-build-Add-HOST_LDFLAGS.patch
new file mode 100644
index 0000000..46e8cad
--- /dev/null
+++ b/meta/recipes-devtools/chromium-utils/files/0001-build-Add-HOST_LDFLAGS.patch
@@ -0,0 +1,26 @@
+From 56ffeeffea735a6a8f69fc111278ebabe3c7e2d8 Mon Sep 17 00:00:00 2001
+From: Moritz Fischer <moritz.fischer@ettus.com>
+Date: Tue, 27 Dec 2016 22:24:07 -0800
+Subject: [PATCH] build Add HOST_LDFLAGS
+
+Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
+---
+ Makefile.rules | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.rules b/Makefile.rules
+index 404454d..0057ba9 100644
+--- a/Makefile.rules
++++ b/Makefile.rules
+@@ -60,7 +60,7 @@ cmd_c_to_build = $(BUILDCC) $(BUILD_CFLAGS) \
+ 	         $(sort $(foreach c,$($(*F)-objs),util/$(c:%.o=%.c)) $*.c) \
+ 	         $(BUILD_LDFLAGS) \
+ 	         -MMD -MF $@.d -o $@
+-cmd_c_to_host = $(HOSTCC) $(HOST_CFLAGS) -MMD -MF $@.d  -o $@ \
++cmd_c_to_host = $(HOSTCC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -MMD -MF $@.d  -o $@ \
+ 	         $(sort $(foreach c,$($(*F)-objs),util/$(c:%.o=%.c)) $*.c)
+ cmd_cxx_to_host = $(HOSTCXX) -std=c++0x $(COMMON_WARN) $(HOST_CXXFLAGS)\
+ 	-I ./$($(notdir $@)_ROOT) -o $@ $(filter %.cc,$^) $($(notdir $@)_LIBS)
+-- 
+2.4.11
+
-- 
2.7.4



^ permalink raw reply related

* Re: [PATCH 8/9] runqemu: support UEFI with OVMF firmware
From: Patrick Ohly @ 2017-01-04  9:43 UTC (permalink / raw)
  To: Ricardo Neri; +Cc: openembedded-core
In-Reply-To: <1482968017.106950.76.camel@ranerica-desktop>

On Wed, 2016-12-28 at 15:33 -0800, Ricardo Neri wrote:
> On Wed, 2016-12-21 at 14:11 +0100, Patrick Ohly wrote:
> > +        # File name of a OVMF BIOS file, to be added with -drive
> > if=pflash.
> > +        # Found in the same places as the rootfs, with or without one
> > of
> > +        # these suffices: qcow2, bin.
> > +        # Setting one also adds "-vga std" because that is all that
> > +        # OVMF supports.
> > +        self.ovmf_bios = ''
> 
> runqemu has the options biosdir and biosfilename. Although the log for
> these options was lost when the script was migrated to python,

You probably mean this:
http://git.openembedded.org/openembedded-core/commit/?id=d302f5683dd736ac4cd4b601a046d22000d41e68
http://git.openembedded.org/openembedded-core/commit/?id=29c9e6f44541b7f8731e21e9d1a0adca9da28e37

>  the
> motivation of adding these options was to use OVMF. It uses the -L and
> -bios options of qemu. To my knowledge, the only custom bios at the
> moment is OVMF. Thus, you would ponder either removing or tweaking these
> options with your approach; which makes more sense to me.

I have no personal opinion about the usefulness of the "biosdir" and
"biosfilename" options. Just looking at what they do, they might have
value also when not using OVMF (for example, the "VGA BIOS" that is
mentioned in the first commit). But if no-one is actually using these
options, then they should indeed be removed to simplify runqemu.

The problem just is to determine whether they are used :-/ As I don't
know, I'd prefer to keep them for now and remove them separately.

Regarding the approach that I proposed for the "ovmf" file(s): what's
your opinion about that? I was a bit worried that too much "magic" is
involved here (special keyword that expands to files and sets -vga), but
it is convenient and quite naturally supports additional use cases
(explicitly selecting files at non-standard locations, separate code and
variable files).

Regarding that last argument: in the current patch series, only the
combined ovmf.fd gets deployed and I argued that this is sufficient. To
test that supporting separate code and variables also works, I've
implemented that locally so that ovmf.fd ovmf_secboot.fd, ovmf_code.fd,
ovmf_secboot_code.fd and ovmf_vars.fd get deployed and runqemu supports
more than one "ovmf" parameter - this worked nicely. Full change below.

Now that I've implemented it, I wonder whether it would be worth
submitting that as part of rev2 of this patch series. Any opinions?

diff --git a/meta/recipes-core/ovmf/ovmf_git.bb b/meta/recipes-core/ovmf/ovmf_git.bb
index ef61b16..391274b 100644
--- a/meta/recipes-core/ovmf/ovmf_git.bb
+++ b/meta/recipes-core/ovmf/ovmf_git.bb
@@ -125,6 +125,8 @@ do_compile_class-target() {
     rm -rf ${S}/Build/Ovmf$OVMF_DIR_SUFFIX
     ${S}/OvmfPkg/build.sh $PARALLEL_JOBS -a $OVMF_ARCH -b RELEASE -t ${FIXED_GCCVER}
     ln ${build_dir}/FV/OVMF.fd ${WORKDIR}/ovmf/OVMF.fd
+    ln ${build_dir}/FV/OVMF_CODE.fd ${WORKDIR}/ovmf/OVMF.code.fd
+    ln ${build_dir}/FV/OVMF_VARS.fd ${WORKDIR}/ovmf/OVMF.vars.fd
 
     # See CryptoPkg/Library/OpensslLib/Patch-HOWTO.txt and
     # https://src.fedoraproject.org/cgit/rpms/edk2.git/tree/ for
@@ -137,6 +139,7 @@ do_compile_class-target() {
     ( cd ${S}/CryptoPkg/Library/OpensslLib/ && ./Install.sh )
     ${S}/OvmfPkg/build.sh $PARALLEL_JOBS -a $OVMF_ARCH -b RELEASE -t ${FIXED_GCCVER} ${OVMF_SECURE_BOOT_FLAGS}
     ln ${build_dir}/FV/OVMF.fd ${WORKDIR}/ovmf/OVMF.secboot.fd
+    ln ${build_dir}/FV/OVMF_CODE.fd ${WORKDIR}/ovmf/OVMF.code.secboot.fd
     for i in Shell.efi EnrollDefaultKeys.efi; do
         ln ${build_dir}/${OVMF_ARCH}/$i ${WORKDIR}/ovmf/$i
     done
@@ -170,8 +173,9 @@ do_deploy() {
 }
 do_deploy_class-target() {
     # For use with "runqemu ovmf".
-    qemu-img convert -f raw -O qcow2 ${WORKDIR}/ovmf/OVMF.fd ${DEPLOYDIR}/ovmf.qcow2
-    qemu-img convert -f raw -O qcow2 ${WORKDIR}/ovmf/OVMF.secboot.fd ${DEPLOYDIR}/ovmf.secboot.qcow2
+    for i in OVMF OVMF.secboot OVMF.code OVMF.vars OVMF.code.secboot; do
+        qemu-img convert -f raw -O qcow2 ${WORKDIR}/ovmf/$i.fd ${DEPLOYDIR}/`echo $i | tr A-Z a-z`.qcow2
+    done
 }
 addtask do_deploy after do_compile before do_build
 
diff --git a/scripts/runqemu b/scripts/runqemu
index c8b7c8a..c3fed89 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -163,12 +163,12 @@ class BaseConfig(object):
         self.clean_nfs_dir = False
         self.nfs_server = ''
         self.rootfs = ''
-        # File name of a OVMF BIOS file, to be added with -drive if=pflash.
+        # File name(s) of a OVMF BIOS file or variable store, to be added with -drive if=pflash.
         # Found in the same places as the rootfs, with or without one of
         # these suffices: qcow2, bin.
         # Setting one also adds "-vga std" because that is all that
         # OVMF supports.
-        self.ovmf_bios = ''
+        self.ovmf_bios = []
         self.qemuboot = ''
         self.qbconfload = False
         self.kernel = ''
@@ -376,13 +376,13 @@ class BaseConfig(object):
                 self.qemu_opt_script += ' %s' % arg[len('qemuparams='):]
             elif arg.startswith('bootparams='):
                 self.kernel_cmdline_script += ' %s' % arg[len('bootparams='):]
-            elif os.path.basename(arg).startswith('ovmf'):
-                self.ovmf_bios = arg
             elif os.path.exists(arg) or (re.search(':', arg) and re.search('/', arg)):
                 self.check_arg_path(os.path.abspath(arg))
-            elif re.search('-image-', arg):
+            elif re.search('-image-', arg) or arg.endswith('-image'):
                 # Lazy rootfs
                 self.rootfs = arg
+            elif os.path.basename(arg).startswith('ovmf'):
+                self.ovmf_bios.append(arg)
             else:
                 # At last, assume is it the MACHINE
                 if (not unknown_arg) or unknown_arg == arg:
@@ -482,18 +482,18 @@ class BaseConfig(object):
             raise Exception("Can't find rootfs: %s" % self.rootfs)
 
     def check_ovmf(self):
-        """Check and set full path for OVMF BIOS file."""
+        """Check and set full path for OVMF BIOS file(s)."""
 
-        if self.ovmf_bios is None or os.path.exists(self.ovmf_bios):
-            return
-
-        for suffix in ('qcow2', 'bin'):
-            ovmf_bios = '%s/%s.%s' % (self.get('DEPLOY_DIR_IMAGE'), self.ovmf_bios, suffix)
-            if os.path.exists(ovmf_bios):
-                self.ovmf_bios = ovmf_bios
-                return
-
-        raise Exception("Can't find OVMF BIOS: %s" % self.ovmf_bios)
+        for index, ovmf in enumerate(self.ovmf_bios):
+            if os.path.exists(ovmf):
+                continue
+            for suffix in ('qcow2', 'bin'):
+                path = '%s/%s.%s' % (self.get('DEPLOY_DIR_IMAGE'), ovmf, suffix)
+                if os.path.exists(path):
+                    self.ovmf_bios[index] = path
+                    break
+            else:
+                raise Exception("Can't find OVMF BIOS: %s" % ovmf)
 
     def check_kernel(self):
         """Check and set kernel, dtb"""
@@ -695,7 +695,7 @@ class BaseConfig(object):
         else:
             print('ROOTFS: [%s]' % self.rootfs)
         if self.ovmf_bios:
-            print('OVMF: [%s]' % self.ovmf_bios)
+            print('OVMF: %s' % self.ovmf_bios)
         print('CONFFILE: [%s]' % self.qemuboot)
         print('')
 
@@ -939,9 +939,10 @@ class BaseConfig(object):
 
         self.qemu_opt = "%s %s %s %s" % (qemu_bin, self.get('NETWORK_CMD'), self.get('ROOTFS_OPTIONS'), self.get('QB_OPT_APPEND'))
 
+        for ovmf in self.ovmf_bios:
+            format = ovmf.rsplit('.', 1)[-1]
+            self.qemu_opt += ' -drive if=pflash,format=%s,file=%s' % (format, ovmf)
         if self.ovmf_bios:
-            format = self.ovmf_bios.rsplit('.', 1)[-1]
-            self.qemu_opt += ' -drive if=pflash,format=%s,file=%s' % (format, self.ovmf_bios)
             # OVMF only supports normal VGA, i.e. we need to override a -vga vmware
             # that gets added for example for normal qemux86.
             self.qemu_opt += ' -vga std'



-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.





^ permalink raw reply related

* Re: [PATCH 4/9] ovmf: deploy firmware in image directory
From: Patrick Ohly @ 2017-01-04 10:01 UTC (permalink / raw)
  To: Ricardo Neri; +Cc: openembedded-core
In-Reply-To: <1482961124.106950.55.camel@ranerica-desktop>

On Wed, 2016-12-28 at 13:38 -0800, Ricardo Neri wrote:
> >  do_install_class-target() {
> > -    OVMF_DIR_SUFFIX="X64"
> > -    if [ "${TARGET_ARCH}" != "x86_64" ] ; then
> > -        OVMF_DIR_SUFFIX="Ia32" # Note the different capitalization
> > -    fi
> > +    # Traditional location.
> >      install -d ${D}${datadir}/ovmf
> > +    install -m 0755 ${WORKDIR}/ovmf/OVMF.fd ${D}${datadir}/ovmf/bios.bin
> 
> Now that I think about it. Installing here does not sever any purpose.
> Thus, I think this can be removed by perhaps doing do_install[noexec] =
> "1"

I was trying not to break traditional usage patterns. If we keep the
"bios" runqemu parameters, then we should also keep the bios.bin file.

> > +}
> >  
> > -    FIXED_GCCVER=$(fixup_target_tools ${GCC_VER})
> > -    build_dir="${S}/Build/Ovmf$OVMF_DIR_SUFFIX/RELEASE_${FIXED_GCCVER}"
> > -    install -m 0755 ${build_dir}/FV/OVMF.fd \
> > -	${D}${datadir}/ovmf/bios.bin
> > +inherit deploy
> 
> I am not sure if there is a right way for inheriting in bitbake.
> However, a quick grep -n inherit reveals that the majority of the
> recipes put their inheritances towards the top of the recipe.

Agreed, that seems to be more common, although there are also examples
where "inherit deploy" is directly in front of "do_deploy". I chose the
latter because it was a more localized change, but will change it in
rev2.

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.





^ permalink raw reply

* Re: [PATCH 6/9] ovmf_git.bb: enable Secure Boot
From: Patrick Ohly @ 2017-01-04 10:10 UTC (permalink / raw)
  To: Ricardo Neri; +Cc: openembedded-core
In-Reply-To: <1482965680.106950.67.camel@ranerica-desktop>

On Wed, 2016-12-28 at 14:54 -0800, Ricardo Neri wrote:
> On Wed, 2016-12-21 at 14:11 +0100, Patrick Ohly wrote:
> > The recipe now compiles OVMF twice, once without Secure Boot, once
> > with. This is the same approach as in
> > https://src.fedoraproject.org/cgit/rpms/edk2.git/tree/edk2.spec
> 
> Besides the fact that Fedora does it, is there a particular reason to
> build twice?

The ${build_dir}/FV/OVMF.fd file changes depending on the configuration.
There's only one such file after a build.

>  On my side, I am able to build with secure boot with a
> single build. Also, the Ubuntu documentation does not mention that two
> builds are needed [1].

Can you build with and without secure boot in a single build? I wasn't
sure how to achieve that, so I just copied what Fedora does.

> Also, I think it would be nice if we could choose between to not have
> secure boot at all for OVMF. Maybe this could be achieved by having a
> common ovmf.inc and two ovmf_git.bb and ovmf_sb_git.bb with the
> different the specific things to support secure boot or not. Maybe all
> that is needed in the secure boot recipe are the extra variables for
> OpenSSL and a prepend to do_compile_class-target with the OpenSSL
> patching. Something to ponder.

I think I would prefer to have a single recipe with a PACKAGECONFIG for
secure boot. Having different recipes doesn't scale when adding more
such options. If you agree, then I'll add that.

> > +    ( cd ${S}/CryptoPkg/Library/OpensslLib/ && ./Install.sh )
> > +    ${S}/OvmfPkg/build.sh $PARALLEL_JOBS -a $OVMF_ARCH -b RELEASE -t ${FIXED_GCCVER} ${OVMF_SECURE_BOOT_FLAGS}
> > +    ln ${build_dir}/FV/OVMF.fd ${WORKDIR}/ovmf/OVMF.secboot.fd
> 
> At this point both ${WORKDIR}/ovmf/OVMF.secboot.fd and
> ${WORKDIR}/ovmf/OVMF.fd will be linked to the same OVMF.fd with secure
> boot support. Maybe this could be fixed by copying the files rather than
> creating a symbolic link.

This is intentionally a hardlink, not a symbolic link, exactly because
of the problem you mentioned ;-)

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.





^ permalink raw reply

* [PATCH 1/2] kernel: Modify kernel modules installation path.
From: Amarnath Valluri @ 2017-01-04 11:58 UTC (permalink / raw)
  To: openembedded-core

Use ${base_libdir}/modules inplace of /lib/modules for kernel modules installation path.

Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
---
 meta/classes/kernel-module-split.bbclass |  2 +-
 meta/classes/kernel.bbclass              | 12 ++++++------
 2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/meta/classes/kernel-module-split.bbclass b/meta/classes/kernel-module-split.bbclass
index efe1b42..0e4e110 100644
--- a/meta/classes/kernel-module-split.bbclass
+++ b/meta/classes/kernel-module-split.bbclass
@@ -127,7 +127,7 @@ python split_kernel_module_packages () {
     postinst = d.getVar('pkg_postinst_modules')
     postrm = d.getVar('pkg_postrm_modules')
 
-    modules = do_split_packages(d, root='/lib/modules', file_regex=module_regex, output_pattern=module_pattern, description='%s kernel module', postinst=postinst, postrm=postrm, recursive=True, hook=frob_metadata, extra_depends='kernel-%s' % (d.getVar("KERNEL_VERSION")))
+    modules = do_split_packages(d, root='${base_libdir}/modules', file_regex=module_regex, output_pattern=module_pattern, description='%s kernel module', postinst=postinst, postrm=postrm, recursive=True, hook=frob_metadata, extra_depends='kernel-%s' % (d.getVar("KERNEL_VERSION")))
     if modules:
         metapkg = d.getVar('KERNEL_MODULES_META_PACKAGE')
         d.appendVar('RDEPENDS_' + metapkg, ' '+' '.join(modules))
diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
index 3630042..74517e8 100644
--- a/meta/classes/kernel.bbclass
+++ b/meta/classes/kernel.bbclass
@@ -296,11 +296,11 @@ kernel_do_install() {
 	#
 	unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE
 	if (grep -q -i -e '^CONFIG_MODULES=y$' .config); then
-		oe_runmake DEPMOD=echo INSTALL_MOD_PATH="${D}" modules_install
-		rm "${D}/lib/modules/${KERNEL_VERSION}/build"
-		rm "${D}/lib/modules/${KERNEL_VERSION}/source"
+		oe_runmake DEPMOD=echo MODLIB=${D}${base_libdir}/modules/${KERNEL_VERSION} INSTALL_FW_PATH=${D}${base_libdir}/firmware modules_install
+		rm "${D}${base_libdir}/modules/${KERNEL_VERSION}/build"
+		rm "${D}${base_libdir}/modules/${KERNEL_VERSION}/source"
 		# If the kernel/ directory is empty remove it to prevent QA issues
-		rmdir --ignore-fail-on-non-empty "${D}/lib/modules/${KERNEL_VERSION}/kernel"
+		rmdir --ignore-fail-on-non-empty "${D}${base_libdir}/modules/${KERNEL_VERSION}/kernel"
 	else
 		bbnote "no modules to install"
 	fi
@@ -478,7 +478,7 @@ EXPORT_FUNCTIONS do_compile do_install do_configure
 # kernel-image becomes kernel-image-${KERNEL_VERSION}
 PACKAGES = "kernel kernel-base kernel-vmlinux kernel-image kernel-dev kernel-modules"
 FILES_${PN} = ""
-FILES_kernel-base = "/lib/modules/${KERNEL_VERSION}/modules.order /lib/modules/${KERNEL_VERSION}/modules.builtin"
+FILES_kernel-base = "${base_libdir}/modules/${KERNEL_VERSION}/modules.order ${base_libdir}/modules/${KERNEL_VERSION}/modules.builtin"
 FILES_kernel-image = ""
 FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config* ${KERNEL_SRC_PATH} /lib/modules/${KERNEL_VERSION}/build"
 FILES_kernel-vmlinux = "/boot/vmlinux-${KERNEL_VERSION_NAME}"
@@ -511,7 +511,7 @@ pkg_postinst_kernel-base () {
 PACKAGESPLITFUNCS_prepend = "split_kernel_packages "
 
 python split_kernel_packages () {
-    do_split_packages(d, root='/lib/firmware', file_regex='^(.*)\.(bin|fw|cis|csp|dsp)$', output_pattern='kernel-firmware-%s', description='Firmware for %s', recursive=True, extra_depends='')
+    do_split_packages(d, root='${base_libdir}/firmware', file_regex='^(.*)\.(bin|fw|cis|csp|dsp)$', output_pattern='kernel-firmware-%s', description='Firmware for %s', recursive=True, extra_depends='')
 }
 
 # Many scripts want to look in arch/$arch/boot for the bootable
-- 
2.7.4

---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.



^ permalink raw reply related

* [PATCH 2/2] linux-firmware: Modify firmware installation path
From: Amarnath Valluri @ 2017-01-04 11:58 UTC (permalink / raw)
  To: openembedded-core
In-Reply-To: <1483531104-32135-1-git-send-email-amarnath.valluri@intel.com>

Install firmware files under ${base_libdir}/firmware instead of hardcoded
/lib/firmare.

Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
---
 .../linux-firmware/linux-firmware_git.bb           | 180 ++++++++++-----------
 1 file changed, 90 insertions(+), 90 deletions(-)

diff --git a/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb b/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb
index 1d881d7..6f915b4 100644
--- a/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb
+++ b/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb
@@ -195,27 +195,27 @@ do_compile() {
 }
 
 do_install() {
-	install -d  ${D}/lib/firmware/
-	cp -r * ${D}/lib/firmware/
+	install -d  ${D}${base_libdir}/firmware/
+	cp -r * ${D}${base_libdir}/firmware/
 
 	# Avoid Makefile to be deployed
-	rm ${D}/lib/firmware/Makefile
+	rm ${D}${base_libdir}/firmware/Makefile
 
 	# Remove unbuild firmware which needs cmake and bash
-	rm ${D}/lib/firmware/carl9170fw -rf
+	rm ${D}${base_libdir}/firmware/carl9170fw -rf
 
 	# Remove pointless bash script
-	rm ${D}/lib/firmware/configure
+	rm ${D}${base_libdir}/firmware/configure
 
 	# Libertas sd8686
-	ln -sf libertas/sd8686_v9.bin ${D}/lib/firmware/sd8686.bin
-	ln -sf libertas/sd8686_v9_helper.bin ${D}/lib/firmware/sd8686_helper.bin
+	ln -sf libertas/sd8686_v9.bin ${D}${base_libdir}/firmware/sd8686.bin
+	ln -sf libertas/sd8686_v9_helper.bin ${D}${base_libdir}/firmware/sd8686_helper.bin
 
 	# fixup wl12xx location, after 2.6.37 the kernel searches a different location for it
-	( cd ${D}/lib/firmware ; ln -sf ti-connectivity/* . )
+	( cd ${D}${base_libdir}/firmware ; ln -sf ti-connectivity/* . )
 
         # Copy the iwlwifi ucode
-        cp ${WORKDIR}/iwlwifi-8000C-19.ucode ${D}/lib/firmware/
+        cp ${WORKDIR}/iwlwifi-8000C-19.ucode ${D}${base_libdir}/firmware/
 }
 
 
@@ -252,21 +252,21 @@ LICENSE_${PN}-ath6k = "Firmware-atheros_firmware"
 LICENSE_${PN}-ath9k = "Firmware-atheros_firmware"
 LICENSE_${PN}-atheros-license = "Firmware-atheros_firmware"
 
-FILES_${PN}-atheros-license = "/lib/firmware/LICENCE.atheros_firmware"
+FILES_${PN}-atheros-license = "${base_libdir}/firmware/LICENCE.atheros_firmware"
 FILES_${PN}-ar9170 = " \
-  /lib/firmware/ar9170*.fw \
+  ${base_libdir}/firmware/ar9170*.fw \
 "
 FILES_${PN}-carl9170 = " \
-  /lib/firmware/carl9170*.fw \
+  ${base_libdir}/firmware/carl9170*.fw \
 "
 FILES_${PN}-ath6k = " \
-  /lib/firmware/ath6k \
+  ${base_libdir}/firmware/ath6k \
 "
 FILES_${PN}-ath9k = " \
-  /lib/firmware/ar9271.fw \
-  /lib/firmware/ar7010*.fw \
-  /lib/firmware/htc_9271.fw \
-  /lib/firmware/htc_7010.fw \
+  ${base_libdir}/firmware/ar9271.fw \
+  ${base_libdir}/firmware/ar7010*.fw \
+  ${base_libdir}/firmware/htc_9271.fw \
+  ${base_libdir}/firmware/htc_7010.fw \
 "
 
 RDEPENDS_${PN}-ar9170 += "${PN}-atheros-license"
@@ -280,14 +280,14 @@ LICENSE_${PN}-ar3k-license = "Firmware-qualcommAthos_ar3k"
 LICENSE_${PN}-ath10k = "Firmware-qualcommAthos_ath10k"
 LICENSE_${PN}-ath10k-license = "Firmware-qualcommAthos_ath10k"
 
-FILES_${PN}-ar3k-license = "/lib/firmware/LICENSE.QualcommAtheros_ar3k"
+FILES_${PN}-ar3k-license = "${base_libdir}/firmware/LICENSE.QualcommAtheros_ar3k"
 FILES_${PN}-ar3k = " \
-  /lib/firmware/ar3k \
+  ${base_libdir}/firmware/ar3k \
 "
 
-FILES_${PN}-ath10k-license = "/lib/firmware/LICENSE.QualcommAtheros_ath10k"
+FILES_${PN}-ath10k-license = "${base_libdir}/firmware/LICENSE.QualcommAtheros_ath10k"
 FILES_${PN}-ath10k = " \
-  /lib/firmware/ath10k \
+  ${base_libdir}/firmware/ath10k \
 "
 
 RDEPENDS_${PN}-ar3k += "${PN}-ar3k-license"
@@ -297,9 +297,9 @@ RDEPENDS_${PN}-ath10k += "${PN}-ath10k-license"
 LICENSE_${PN}-ralink = "Firmware-ralink-firmware"
 LICENSE_${PN}-ralink-license = "Firmware-ralink-firmware"
 
-FILES_${PN}-ralink-license = "/lib/firmware/LICENCE.ralink-firmware.txt"
+FILES_${PN}-ralink-license = "${base_libdir}/firmware/LICENCE.ralink-firmware.txt"
 FILES_${PN}-ralink = " \
-  /lib/firmware/rt*.bin \
+  ${base_libdir}/firmware/rt*.bin \
 "
 
 RDEPENDS_${PN}-ralink += "${PN}-ralink-license"
@@ -308,9 +308,9 @@ RDEPENDS_${PN}-ralink += "${PN}-ralink-license"
 LICENSE_${PN}-radeon = "Firmware-radeon"
 LICENSE_${PN}-radeon-license = "Firmware-radeon"
 
-FILES_${PN}-radeon-license = "/lib/firmware/LICENSE.radeon"
+FILES_${PN}-radeon-license = "${base_libdir}/firmware/LICENSE.radeon"
 FILES_${PN}-radeon = " \
-  /lib/firmware/radeon \
+  ${base_libdir}/firmware/radeon \
 "
 
 RDEPENDS_${PN}-radeon += "${PN}-radeon-license"
@@ -322,20 +322,20 @@ LICENSE_${PN}-sd8787 = "Firmware-Marvell"
 LICENSE_${PN}-sd8797 = "Firmware-Marvell"
 LICENSE_${PN}-marvell-license = "Firmware-Marvell"
 
-FILES_${PN}-marvell-license = "/lib/firmware/LICENCE.Marvell"
+FILES_${PN}-marvell-license = "${base_libdir}/firmware/LICENCE.Marvell"
 FILES_${PN}-sd8686 = " \
-  /lib/firmware/libertas/sd8686_v9* \
-  /lib/firmware/sd8686* \
+  ${base_libdir}/firmware/libertas/sd8686_v9* \
+  ${base_libdir}/firmware/sd8686* \
 "
 FILES_${PN}-sd8688 = " \
-  /lib/firmware/libertas/sd8688* \
-  /lib/firmware/mrvl/sd8688* \
+  ${base_libdir}/firmware/libertas/sd8688* \
+  ${base_libdir}/firmware/mrvl/sd8688* \
 "
 FILES_${PN}-sd8787 = " \
-  /lib/firmware/mrvl/sd8787_uapsta.bin \
+  ${base_libdir}/firmware/mrvl/sd8787_uapsta.bin \
 "
 FILES_${PN}-sd8797 = " \
-  /lib/firmware/mrvl/sd8797_uapsta.bin \
+  ${base_libdir}/firmware/mrvl/sd8797_uapsta.bin \
 "
 
 RDEPENDS_${PN}-sd8686 += "${PN}-marvell-license"
@@ -353,25 +353,25 @@ LICENSE_${PN}-rtl8821 = "Firmware-rtlwifi_firmware"
 LICENSE_${PN}-rtl-license = "Firmware-rtlwifi_firmware"
 
 FILES_${PN}-rtl-license = " \
-  /lib/firmware/LICENCE.rtlwifi_firmware.txt \
+  ${base_libdir}/firmware/LICENCE.rtlwifi_firmware.txt \
 "
 FILES_${PN}-rtl8188 = " \
-  /lib/firmware/rtlwifi/rtl8188*.bin \
+  ${base_libdir}/firmware/rtlwifi/rtl8188*.bin \
 "
 FILES_${PN}-rtl8192cu = " \
-  /lib/firmware/rtlwifi/rtl8192cufw*.bin \
+  ${base_libdir}/firmware/rtlwifi/rtl8192cufw*.bin \
 "
 FILES_${PN}-rtl8192ce = " \
-  /lib/firmware/rtlwifi/rtl8192cfw*.bin \
+  ${base_libdir}/firmware/rtlwifi/rtl8192cfw*.bin \
 "
 FILES_${PN}-rtl8192su = " \
-  /lib/firmware/rtlwifi/rtl8712u.bin \
+  ${base_libdir}/firmware/rtlwifi/rtl8712u.bin \
 "
 FILES_${PN}-rtl8723 = " \
-  /lib/firmware/rtlwifi/rtl8723*.bin \
+  ${base_libdir}/firmware/rtlwifi/rtl8723*.bin \
 "
 FILES_${PN}-rtl8821 = " \
-  /lib/firmware/rtlwifi/rtl8821*.bin \
+  ${base_libdir}/firmware/rtlwifi/rtl8821*.bin \
 "
 
 RDEPENDS_${PN}-rtl8188 += "${PN}-rtl-license"
@@ -386,16 +386,16 @@ LICENSE_${PN}-wl12xx = "Firmware-ti-connectivity"
 LICENSE_${PN}-wl18xx = "Firmware-ti-connectivity"
 LICENSE_${PN}-ti-connectivity-license = "Firmware-ti-connectivity"
 
-FILES_${PN}-ti-connectivity-license = "/lib/firmware/LICENCE.ti-connectivity"
+FILES_${PN}-ti-connectivity-license = "${base_libdir}/firmware/LICENCE.ti-connectivity"
 FILES_${PN}-wl12xx = " \
-  /lib/firmware/wl12* \
-  /lib/firmware/TI* \
-  /lib/firmware/ti-connectivity \
+  ${base_libdir}/firmware/wl12* \
+  ${base_libdir}/firmware/TI* \
+  ${base_libdir}/firmware/ti-connectivity \
 "
 FILES_${PN}-wl18xx = " \
-  /lib/firmware/wl18* \
-  /lib/firmware/TI* \
-  /lib/firmware/ti-connectivity \
+  ${base_libdir}/firmware/wl18* \
+  ${base_libdir}/firmware/TI* \
+  ${base_libdir}/firmware/ti-connectivity \
 "
 
 RDEPENDS_${PN}-wl12xx = "${PN}-ti-connectivity-license"
@@ -405,9 +405,9 @@ RDEPENDS_${PN}-wl18xx = "${PN}-ti-connectivity-license"
 LICENSE_${PN}-vt6656 = "Firmware-via_vt6656"
 LICENSE_${PN}-vt6656-license = "Firmware-via_vt6656"
 
-FILES_${PN}-vt6656-license = "/lib/firmware/LICENCE.via_vt6656"
+FILES_${PN}-vt6656-license = "${base_libdir}/firmware/LICENCE.via_vt6656"
 FILES_${PN}-vt6656 = " \
-  /lib/firmware/vntwusb.fw \
+  ${base_libdir}/firmware/vntwusb.fw \
 "
 
 RDEPENDS_${PN}-vt6656 = "${PN}-vt6656-license"
@@ -428,47 +428,47 @@ LICENSE_${PN}-bcm4354 = "Firmware-broadcom_bcm43xx"
 LICENSE_${PN}-broadcom-license = "Firmware-broadcom_bcm43xx"
 
 FILES_${PN}-broadcom-license = " \
-  /lib/firmware/LICENCE.broadcom_bcm43xx \
+  ${base_libdir}/firmware/LICENCE.broadcom_bcm43xx \
 "
 FILES_${PN}-bcm4329 = " \
-  /lib/firmware/brcm/brcmfmac4329-sdio.bin \
+  ${base_libdir}/firmware/brcm/brcmfmac4329-sdio.bin \
 "
 FILES_${PN}-bcm4330 = " \
-  /lib/firmware/brcm/brcmfmac4330-sdio.bin \
+  ${base_libdir}/firmware/brcm/brcmfmac4330-sdio.bin \
 "
 FILES_${PN}-bcm4334 = " \
-  /lib/firmware/brcm/brcmfmac4334-sdio.bin \
+  ${base_libdir}/firmware/brcm/brcmfmac4334-sdio.bin \
 "
 FILES_${PN}-bcm43340 = " \
-  /lib/firmware/brcm/brcmfmac43340-sdio.bin \
+  ${base_libdir}/firmware/brcm/brcmfmac43340-sdio.bin \
 "
 FILES_${PN}-bcm4339 = " \
-  /lib/firmware/brcm/brcmfmac4339-sdio.bin \
+  ${base_libdir}/firmware/brcm/brcmfmac4339-sdio.bin \
 "
 FILES_${PN}-bcm43430 = " \
-  /lib/firmware/brcm/brcmfmac43430-sdio.bin \
+  ${base_libdir}/firmware/brcm/brcmfmac43430-sdio.bin \
 "
 FILES_${PN}-bcm4354 = " \
-  /lib/firmware/brcm/brcmfmac4354-sdio.bin \
+  ${base_libdir}/firmware/brcm/brcmfmac4354-sdio.bin \
 "
 
-ALTERNATIVE_LINK_NAME[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac-sdio.bin"
+ALTERNATIVE_LINK_NAME[brcmfmac-sdio.bin] = "${base_libdir}/firmware/brcm/brcmfmac-sdio.bin"
 
 ALTERNATIVE_linux-firmware-bcm4334 = "brcmfmac-sdio.bin"
-ALTERNATIVE_TARGET_linux-firmware-bcm4334[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac4334-sdio.bin"
+ALTERNATIVE_TARGET_linux-firmware-bcm4334[brcmfmac-sdio.bin] = "${base_libdir}/firmware/brcm/brcmfmac4334-sdio.bin"
 ALTERNATIVE_linux-firmware-bcm43340 = "brcmfmac-sdio.bin"
-ALTERNATIVE_TARGET_linux-firmware-bcm43340[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac43340-sdio.bin"
+ALTERNATIVE_TARGET_linux-firmware-bcm43340[brcmfmac-sdio.bin] = "${base_libdir}/firmware/brcm/brcmfmac43340-sdio.bin"
 ALTERNATIVE_linux_firmware-bcm4354 = "brcmfmac-sdio.bin"
-ALTERNATIVE_TARGET_linux-firmware-bcm4354[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac4354-sdio.bin"
+ALTERNATIVE_TARGET_linux-firmware-bcm4354[brcmfmac-sdio.bin] = "${base_libdir}/firmware/brcm/brcmfmac4354-sdio.bin"
 ALTERNATIVE_linux-firmware-bcm4329 = "brcmfmac-sdio.bin"
-ALTERNATIVE_TARGET_linux-firmware-bcm4329[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac4329-sdio.bin"
+ALTERNATIVE_TARGET_linux-firmware-bcm4329[brcmfmac-sdio.bin] = "${base_libdir}/firmware/brcm/brcmfmac4329-sdio.bin"
 ALTERNATIVE_linux-firmware-bcm4330 = "brcmfmac-sdio.bin"
-ALTERNATIVE_TARGET_linux-firmware-bcm4330[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac4330-sdio.bin"
+ALTERNATIVE_TARGET_linux-firmware-bcm4330[brcmfmac-sdio.bin] = "${base_libdir}/firmware/brcm/brcmfmac4330-sdio.bin"
 ALTERNATIVE_linux-firmware-bcm4339 = "brcmfmac-sdio.bin"
-ALTERNATIVE_TARGET_linux-firmware-bcm4339[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac4339-sdio.bin"
+ALTERNATIVE_TARGET_linux-firmware-bcm4339[brcmfmac-sdio.bin] = "${base_libdir}/firmware/brcm/brcmfmac4339-sdio.bin"
 ALTERNATIVE_PRIORITY_linux-firmware-bcm4339[brcmfmac-sdio.bin] = "20"
 ALTERNATIVE_linux-firmware-bcm43430 = "brcmfmac-sdio.bin"
-ALTERNATIVE_TARGET_linux-firmware-bcm43430[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac43430-sdio.bin"
+ALTERNATIVE_TARGET_linux-firmware-bcm43430[brcmfmac-sdio.bin] = "${base_libdir}/firmware/brcm/brcmfmac43430-sdio.bin"
 
 RDEPENDS_${PN}-bcm4329 += "${PN}-broadcom-license"
 RDEPENDS_${PN}-bcm4330 += "${PN}-broadcom-license"
@@ -486,8 +486,8 @@ RDEPENDS_${PN}-bcm4354 += "${PN}-broadcom-license"
 LICENSE_${PN}-bnx2-mips = "WHENCE"
 LICENSE_${PN}-whence-license = "WHENCE"
 
-FILES_${PN}-bnx2-mips = "/lib/firmware/bnx2/bnx2-mips-09-6.2.1b.fw"
-FILES_${PN}-whence-license = "/lib/firmware/WHENCE"
+FILES_${PN}-bnx2-mips = "${base_libdir}/firmware/bnx2/bnx2-mips-09-6.2.1b.fw"
+FILES_${PN}-whence-license = "${base_libdir}/firmware/WHENCE"
 
 RDEPENDS_${PN}-bnx2-mips += "${PN}-whence-license"
 
@@ -513,24 +513,24 @@ LICENSE_${PN}-iwlwifi-misc      = "Firmware-iwlwifi_firmware"
 LICENSE_${PN}-iwlwifi-license   = "Firmware-iwlwifi_firmware"
 
 
-FILES_${PN}-iwlwifi-license = "/lib/firmware/LICENCE.iwlwifi_firmware"
-FILES_${PN}-iwlwifi-135-6 = "/lib/firmware/iwlwifi-135-6.ucode"
-FILES_${PN}-iwlwifi-3160-7 = "/lib/firmware/iwlwifi-3160-7.ucode"
-FILES_${PN}-iwlwifi-3160-8 = "/lib/firmware/iwlwifi-3160-8.ucode"
-FILES_${PN}-iwlwifi-3160-9 = "/lib/firmware/iwlwifi-3160-9.ucode"
-FILES_${PN}-iwlwifi-6000-4 = "/lib/firmware/iwlwifi-6000-4.ucode"
-FILES_${PN}-iwlwifi-6000g2a-5 = "/lib/firmware/iwlwifi-6000g2a-5.ucode"
-FILES_${PN}-iwlwifi-6000g2a-6 = "/lib/firmware/iwlwifi-6000g2a-6.ucode"
-FILES_${PN}-iwlwifi-6000g2b-5 = "/lib/firmware/iwlwifi-6000g2b-5.ucode"
-FILES_${PN}-iwlwifi-6000g2b-6 = "/lib/firmware/iwlwifi-6000g2b-6.ucode"
-FILES_${PN}-iwlwifi-6050-4 = "/lib/firmware/iwlwifi-6050-4.ucode"
-FILES_${PN}-iwlwifi-6050-5 = "/lib/firmware/iwlwifi-6050-5.ucode"
-FILES_${PN}-iwlwifi-7260   = "/lib/firmware/iwlwifi-7260-*.ucode"
-FILES_${PN}-iwlwifi-7265   = "/lib/firmware/iwlwifi-7265-*.ucode"
-FILES_${PN}-iwlwifi-7265d   = "/lib/firmware/iwlwifi-7265D-*.ucode"
-FILES_${PN}-iwlwifi-8000c   = "/lib/firmware/iwlwifi-8000C-*.ucode"
-FILES_${PN}-iwlwifi-8265   = "/lib/firmware/iwlwifi-8265-*.ucode"
-FILES_${PN}-iwlwifi-misc   = "/lib/firmware/iwlwifi-*.ucode"
+FILES_${PN}-iwlwifi-license = "${base_libdir}/firmware/LICENCE.iwlwifi_firmware"
+FILES_${PN}-iwlwifi-135-6 = "${base_libdir}/firmware/iwlwifi-135-6.ucode"
+FILES_${PN}-iwlwifi-3160-7 = "${base_libdir}/firmware/iwlwifi-3160-7.ucode"
+FILES_${PN}-iwlwifi-3160-8 = "${base_libdir}/firmware/iwlwifi-3160-8.ucode"
+FILES_${PN}-iwlwifi-3160-9 = "${base_libdir}/firmware/iwlwifi-3160-9.ucode"
+FILES_${PN}-iwlwifi-6000-4 = "${base_libdir}/firmware/iwlwifi-6000-4.ucode"
+FILES_${PN}-iwlwifi-6000g2a-5 = "${base_libdir}/firmware/iwlwifi-6000g2a-5.ucode"
+FILES_${PN}-iwlwifi-6000g2a-6 = "${base_libdir}/firmware/iwlwifi-6000g2a-6.ucode"
+FILES_${PN}-iwlwifi-6000g2b-5 = "${base_libdir}/firmware/iwlwifi-6000g2b-5.ucode"
+FILES_${PN}-iwlwifi-6000g2b-6 = "${base_libdir}/firmware/iwlwifi-6000g2b-6.ucode"
+FILES_${PN}-iwlwifi-6050-4 = "${base_libdir}/firmware/iwlwifi-6050-4.ucode"
+FILES_${PN}-iwlwifi-6050-5 = "${base_libdir}/firmware/iwlwifi-6050-5.ucode"
+FILES_${PN}-iwlwifi-7260   = "${base_libdir}/firmware/iwlwifi-7260-*.ucode"
+FILES_${PN}-iwlwifi-7265   = "${base_libdir}/firmware/iwlwifi-7265-*.ucode"
+FILES_${PN}-iwlwifi-7265d   = "${base_libdir}/firmware/iwlwifi-7265D-*.ucode"
+FILES_${PN}-iwlwifi-8000c   = "${base_libdir}/firmware/iwlwifi-8000C-*.ucode"
+FILES_${PN}-iwlwifi-8265   = "${base_libdir}/firmware/iwlwifi-8265-*.ucode"
+FILES_${PN}-iwlwifi-misc   = "${base_libdir}/firmware/iwlwifi-*.ucode"
 
 RDEPENDS_${PN}-iwlwifi-135-6     = "${PN}-iwlwifi-license"
 RDEPENDS_${PN}-iwlwifi-3160-7    = "${PN}-iwlwifi-license"
@@ -569,14 +569,14 @@ RCONFLICTS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}
 
 LICENSE_${PN}-i915       = "Firmware-i915"
 LICENSE_${PN}-i915-license = "Firmware-i915"
-FILES_${PN}-i915-license = "/lib/firmware/LICENSE.i915"
-FILES_${PN}-i915         = "/lib/firmware/i915"
+FILES_${PN}-i915-license = "${base_libdir}/firmware/LICENSE.i915"
+FILES_${PN}-i915         = "${base_libdir}/firmware/i915"
 RDEPENDS_${PN}-i915      = "${PN}-i915-license"
 
-FILES_${PN}-adsp-sst-license      = "/lib/firmware/LICENCE.adsp_sst"
+FILES_${PN}-adsp-sst-license      = "${base_libdir}/firmware/LICENCE.adsp_sst"
 LICENSE_${PN}-adsp-sst            = "Firmware-adsp_sst"
 LICENSE_${PN}-adsp-sst-license    = "Firmware-adsp_sst"
-FILES_${PN}-adsp-sst              = "/lib/firmware/intel/dsp_fw*"
+FILES_${PN}-adsp-sst              = "${base_libdir}/firmware/intel/dsp_fw*"
 RDEPENDS_${PN}-adsp-sst           = "${PN}-adsp-sst-license"
 
 # For other firmwares
@@ -628,8 +628,8 @@ LICENSE_${PN} = "\
     & WHENCE \
 "
 
-FILES_${PN}-license += "/lib/firmware/LICEN*"
-FILES_${PN} += "/lib/firmware/*"
+FILES_${PN}-license += "${base_libdir}/firmware/LICEN*"
+FILES_${PN} += "${base_libdir}/firmware/*"
 RDEPENDS_${PN} += "${PN}-license"
 RDEPENDS_${PN} += "${PN}-whence-license"
 
-- 
2.7.4

---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.



^ permalink raw reply related

* Re: [PATCH 3/9] ovmf: explicitly depend on nasm-native
From: Patrick Ohly @ 2017-01-04 12:56 UTC (permalink / raw)
  To: Neri, Ricardo; +Cc: openembedded-core@lists.openembedded.org
In-Reply-To: <1482893989.106950.45.camel@ranerica-desktop>

On Wed, 2016-12-28 at 02:59 +0000, Neri, Ricardo wrote:
> On Wed, 2016-12-21 at 14:11 +0100, Patrick Ohly wrote:
> > +DEPENDS_append = " nasm-native"
> > +
> Is this dependency needed for both native and target builds? If not, it
> can be done with DEPENDS_class...

I'm not sure anymore. As it doesn't matter in practice because ovmf
depends on ovmf-native and thys nasm-native is built either way, I'd
prefer to keep it as-is.

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.





^ permalink raw reply

* Re: [PATCH 3/3] classes/buildstats: don't expand variable pointing to SystemStats
From: Patrick Ohly @ 2017-01-04 13:05 UTC (permalink / raw)
  To: Paul Eggleton; +Cc: openembedded-core
In-Reply-To: <af03426da1f2d00149a2021b8d681b2dcef3a1ea.1482376395.git.paul.eggleton@linux.intel.com>

On Thu, 2016-12-22 at 16:13 +1300, Paul Eggleton wrote:
> We're placing an object into the datastore - it's very definitely not
> something we want to be expanding.

Why does it matter? Is it faster to tell getVar() that expansion isn't
necessary?

I'm fine with the change, I'm just trying to understand whether this
merely cosmetic or has some real impact.

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.





^ permalink raw reply

* Re: [PATCH] kexec: ARM: fix align issue of add_buffer_phys_virt() for LPAE kernel.
From: Burton, Ross @ 2017-01-04 14:31 UTC (permalink / raw)
  To: Haiqing Bai; +Cc: OE-core
In-Reply-To: <1483434305-15926-1-git-send-email-Haiqing.Bai@windriver.com>

[-- Attachment #1: Type: text/plain, Size: 4446 bytes --]

An upgrade to 2.0.14 was recently posted on the list (and is now in
poky-contrib:ross/mut), can you verify that this patch is still required
with that release and rebase?

Ross

On 3 January 2017 at 09:05, Haiqing Bai <Haiqing.Bai@windriver.com> wrote:

> If LPAE is enabled, 3 level page table is used and the 'SECTION_SIZE'
> is (1<<21), so add_buffer_phys_virt() should align to (1 << 21).
>
> Signed-off-by: Haiqing Bai <Haiqing.Bai@windriver.com>
> ---
>  ...-ARM-fix-add_buffer_phys_virt-align-issue.patch | 52
> ++++++++++++++++++++++
>  meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb    |  1 +
>  2 files changed, 53 insertions(+)
>  create mode 100644 meta/recipes-kernel/kexec/
> kexec-tools/kexec-ARM-fix-add_buffer_phys_virt-align-issue.patch
>
> diff --git a/meta/recipes-kernel/kexec/kexec-tools/kexec-ARM-fix-add_
> buffer_phys_virt-align-issue.patch b/meta/recipes-kernel/kexec/
> kexec-tools/kexec-ARM-fix-add_buffer_phys_virt-align-issue.patch
> new file mode 100644
> index 0000000..7d1f95e
> --- /dev/null
> +++ b/meta/recipes-kernel/kexec/kexec-tools/kexec-ARM-fix-add_
> buffer_phys_virt-align-issue.patch
> @@ -0,0 +1,52 @@
> +From 380019f68e19ac863cf32dc7ff6784e8fe1d751f Mon Sep 17 00:00:00 2001
> +From: Haiqing Bai <Haiqing.Bai@windriver.com>
> +Date: Mon, 19 Dec 2016 14:52:02 +0800
> +Subject: [PATCH] kexec: ARM: Fix add_buffer_phys_virt() align issue.
> +
> +When "CONFIG_ARM_LPAE" is enabled,3 level page table
> +is used by MMU, the "SECTION_SIZE" is defined with
> +(1 << 21), but 'add_buffer_phys_virt()' hardcode this
> +to (1 << 20).
> +
> +Upstream-Status: Pending
> +
> +Suggested-By:fredrik.markstrom@gmail.com
> +Signed-off-by: Haiqing Bai <Haiqing.Bai@windriver.com>
> +---
> + kexec/arch/arm/crashdump-arm.c | 5 ++++-
> + 1 file changed, 4 insertions(+), 1 deletion(-)
> +
> +diff --git a/kexec/arch/arm/crashdump-arm.c b/kexec/arch/arm/crashdump-
> arm.c
> +index 38a1401..e41b7fb 100644
> +--- a/kexec/arch/arm/crashdump-arm.c
> ++++ b/kexec/arch/arm/crashdump-arm.c
> +@@ -271,6 +271,7 @@ int load_crashdump_segments(struct kexec_info *info,
> char *mod_cmdline)
> +       void *buf;
> +       int err;
> +       int last_ranges;
> ++      unsigned short align_bit_shift = 20;
> +
> +       /*
> +        * First fetch all the memory (RAM) ranges that we are going to
> pass to
> +@@ -295,6 +296,7 @@ int load_crashdump_segments(struct kexec_info *info,
> char *mod_cmdline)
> +
> +               /* for support LPAE enabled kernel*/
> +               elf_info.class = ELFCLASS64;
> ++              align_bit_shift = 21;
> +
> +               err = crash_create_elf64_headers(info, &elf_info,
> +                                        usablemem_rgns.ranges,
> +@@ -315,8 +317,9 @@ int load_crashdump_segments(struct kexec_info *info,
> char *mod_cmdline)
> +        * 1MB) so that available memory passed in kernel command line
> will be
> +        * aligned to 1MB. This is because kernel create_mapping() wants
> memory
> +        * regions to be aligned to SECTION_SIZE.
> ++         * The SECTION_SIZE of LPAE kernel is '1UL << 21' defined in
> pgtable-3level.h
> +        */
> +-      elfcorehdr = add_buffer_phys_virt(info, buf, bufsz, bufsz, 1 << 20,
> ++      elfcorehdr = add_buffer_phys_virt(info, buf, bufsz, bufsz, 1 <<
> align_bit_shift,
> +                                         crash_reserved_mem.start,
> +                                         crash_reserved_mem.end, -1, 0);
> +
> +--
> +1.9.1
> +
> diff --git a/meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb
> b/meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb
> index 59376c8..3e38923 100644
> --- a/meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb
> +++ b/meta/recipes-kernel/kexec/kexec-tools_2.0.12.bb
> @@ -8,6 +8,7 @@ SRC_URI += " \
>              file://0002-powerpc-change-the-memory-size-limit.patch \
>              file://0001-purgatory-Pass-r-directly-to-linker.patch \
>              file://0001-vmcore-dmesg-Define-_GNU_SOURCE.patch \
> +            file://kexec-ARM-fix-add_buffer_phys_virt-align-issue.patch \
>           "
>
>  SRC_URI[md5sum] = "10ddaae0e86af54407b164a1f5a39cc3"
> --
> 1.9.1
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>

[-- Attachment #2: Type: text/html, Size: 6196 bytes --]

^ permalink raw reply

* Re: [PATCH 3/3] alsa-utils-scripts: update 1.1.2 -> 1.1.3
From: Burton, Ross @ 2017-01-04 15:27 UTC (permalink / raw)
  To: Andreas Müller; +Cc: OE-core
In-Reply-To: <1483300393-10174-3-git-send-email-schnitzeltony@googlemail.com>

[-- Attachment #1: Type: text/plain, Size: 1841 bytes --]

This fails to build:

| Making all in alsaucm
| make[1]: Entering directory
'/data/poky-master/tmp-glibc/work/corei7-64-poky-linux/alsa-utils-scripts/1.1.3-r0/build/alsaucm'
| x86_64-poky-linux-gcc  -m64 -march=corei7 -mtune=corei7 -mfpmath=sse
-msse4.2 --sysroot=/data/poky-master/tmp-glibc/sysroots/intel-corei7-64
-DHAVE_CONFIG_H -I. -I../../alsa-utils-1.1.3/alsaucm -I../include  -Wall
-I../../alsa-utils-1.1.3/include   -O2 -pipe -g
-feliminate-unused-debug-types
-fdebug-prefix-map=/data/poky-master/tmp-glibc/work/corei7-64-poky-linux/alsa-utils-scripts/1.1.3-r0=/usr/src/debug/alsa-utils-scripts/1.1.3-r0
-fdebug-prefix-map=/data/poky-master/tmp-glibc/sysroots/x86_64-linux=
-fdebug-prefix-map=/data/poky-master/tmp-glibc/sysroots/intel-corei7-64=
 -c -o usecase.o ../../alsa-utils-1.1.3/alsaucm/usecase.c
| make[1]: *** No rule to make target 'alsaucm.1', needed by 'all-am'.
Stop.

On 1 January 2017 at 19:53, Andreas Müller <schnitzeltony@googlemail.com>
wrote:

> Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
> ---
>  .../alsa/{alsa-utils-scripts_1.1.2.bb => alsa-utils-scripts_1.1.3.bb}
>  | 0
>  1 file changed, 0 insertions(+), 0 deletions(-)
>  rename meta/recipes-multimedia/alsa/{alsa-utils-scripts_1.1.2.bb =>
> alsa-utils-scripts_1.1.3.bb} (100%)
>
> diff --git a/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.2.bb
> b/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.3.bb
> similarity index 100%
> rename from meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.2.bb
> rename to meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.3.bb
> --
> 2.5.5
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>

[-- Attachment #2: Type: text/html, Size: 3252 bytes --]

^ permalink raw reply

* Re: [PATCH 3/8] oeqa.utils.metadata: drop 'unknown' git data elements
From: Mariano Lopez @ 2017-01-04 15:30 UTC (permalink / raw)
  To: Markus Lehtonen, openembedded-core
In-Reply-To: <1482930164-15721-4-git-send-email-markus.lehtonen@linux.intel.com>



On 28/12/16 07:02, Markus Lehtonen wrote:
> It's better just to not have the xml elements than to have elements with
> faux data. One could have git branch named 'unknown', for example.
>
>

I don't think is a good idea to completely remove the layer from the
metadata when such layer is not a repository, it would remove valuable
information for later analysis. And if you ask would do such a thing, I
would, I have my own debug layers that can mess with testing.


^ permalink raw reply

* Re: [PATCH 7/8] oeqa.utils.metadata: have layer name as an attribute in xml
From: Mariano Lopez @ 2017-01-04 15:43 UTC (permalink / raw)
  To: Markus Lehtonen, openembedded-core
In-Reply-To: <1482930164-15721-8-git-send-email-markus.lehtonen@linux.intel.com>



On 28/12/16 07:02, Markus Lehtonen wrote:
> -def dict_to_XML(tag, dictionary):
> +def dict_to_XML(tag, dictionary, **kwargs):
>      """ Return XML element converting dicts recursively. """
>  
> -    elem = Element(tag)
> +    elem = Element(tag, **kwargs)
>      for key, val in dictionary.items():
> -        if isinstance(val, MutableMapping):
> +        if tag == 'layers':
> +            child = (dict_to_XML('layer', val, name=key))
> +        elif isinstance(val, MutableMapping):
>              child = (dict_to_XML(key, val))
>          else:
>              child = Element(key)

I was thinking that this function would be more generic, adding a
comparison to a tag name surely won't keep the function generic, is
there another way to implement this keeping this function generic enough?


^ permalink raw reply

* Re: [PATCH 8/8] oeqa.utils.metadata: add bitbake revision information
From: Mariano Lopez @ 2017-01-04 15:45 UTC (permalink / raw)
  To: Markus Lehtonen, openembedded-core
In-Reply-To: <1482930164-15721-9-git-send-email-markus.lehtonen@linux.intel.com>



On 28/12/16 07:02, Markus Lehtonen wrote:
> [YOCTO #10590]
>
> Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
> ---
>  meta/lib/oeqa/utils/metadata.py | 32 +++++++++++++++++++-------------
>  1 file changed, 19 insertions(+), 13 deletions(-)
>
> diff --git a/meta/lib/oeqa/utils/metadata.py b/meta/lib/oeqa/utils/metadata.py
> index 6331c21..23449fc 100644
> --- a/meta/lib/oeqa/utils/metadata.py
> +++ b/meta/lib/oeqa/utils/metadata.py
> @@ -10,6 +10,8 @@ from collections.abc import MutableMapping
>  from xml.dom.minidom import parseString
>  from xml.etree.ElementTree import Element, tostring
>  
> +from git import Repo, InvalidGitRepositoryError, NoSuchPathError
> +

It seems not every user running selftest appreciated the requirement of
gitpython, so there was a patch to keep this dependency out. This will
introduce the need of gitpython again.


^ permalink raw reply

* Re: [PATCH 3/3] alsa-utils-scripts: update 1.1.2 -> 1.1.3
From: Andreas Müller @ 2017-01-04 16:00 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core
In-Reply-To: <CAJTo0Lagj=bO9_n46JJ38JWwF9UFVLAtBzW8F+njMv7CpkjLhQ@mail.gmail.com>

On Wed, Jan 4, 2017 at 4:27 PM, Burton, Ross <ross.burton@intel.com> wrote:
> This fails to build:
>
> | Making all in alsaucm
> | make[1]: Entering directory
> '/data/poky-master/tmp-glibc/work/corei7-64-poky-linux/alsa-utils-scripts/1.1.3-r0/build/alsaucm'
> | x86_64-poky-linux-gcc  -m64 -march=corei7 -mtune=corei7 -mfpmath=sse
> -msse4.2 --sysroot=/data/poky-master/tmp-glibc/sysroots/intel-corei7-64
> -DHAVE_CONFIG_H -I. -I../../alsa-utils-1.1.3/alsaucm -I../include  -Wall
> -I../../alsa-utils-1.1.3/include   -O2 -pipe -g
> -feliminate-unused-debug-types
> -fdebug-prefix-map=/data/poky-master/tmp-glibc/work/corei7-64-poky-linux/alsa-utils-scripts/1.1.3-r0=/usr/src/debug/alsa-utils-scripts/1.1.3-r0
> -fdebug-prefix-map=/data/poky-master/tmp-glibc/sysroots/x86_64-linux=
> -fdebug-prefix-map=/data/poky-master/tmp-glibc/sysroots/intel-corei7-64=  -c
> -o usecase.o ../../alsa-utils-1.1.3/alsaucm/usecase.c
> | make[1]: *** No rule to make target 'alsaucm.1', needed by 'all-am'.
> Stop.
>
> On 1 January 2017 at 19:53, Andreas Müller <schnitzeltony@googlemail.com>
> wrote:
>>
>> Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
>> ---
>>  .../alsa/{alsa-utils-scripts_1.1.2.bb => alsa-utils-scripts_1.1.3.bb}
>> | 0
>>  1 file changed, 0 insertions(+), 0 deletions(-)
>>  rename meta/recipes-multimedia/alsa/{alsa-utils-scripts_1.1.2.bb =>
>> alsa-utils-scripts_1.1.3.bb} (100%)
>>
>> diff --git a/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.2.bb
>> b/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.3.bb
>> similarity index 100%
>> rename from meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.2.bb
>> rename to meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.3.bb
>> --
>> 2.5.5
>>
Checked: If I am not mistaken target alsaucm.1 builds man-files.

* Native rst2man missing?
* Can you provide full log.do_compile?

Andreas


^ permalink raw reply

* Re: [PATCH 3/3] alsa-utils-scripts: update 1.1.2 -> 1.1.3
From: Andreas Müller @ 2017-01-04 16:09 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core
In-Reply-To: <CALbNGRSk37UCcv+DNSOkLO+8i93Vj4j9P+5-gf-_FCv1W-ahUQ@mail.gmail.com>

On Wed, Jan 4, 2017 at 5:00 PM, Andreas Müller
<schnitzeltony@googlemail.com> wrote:
> On Wed, Jan 4, 2017 at 4:27 PM, Burton, Ross <ross.burton@intel.com> wrote:
>> This fails to build:
>>
>> | Making all in alsaucm
>> | make[1]: Entering directory
>> '/data/poky-master/tmp-glibc/work/corei7-64-poky-linux/alsa-utils-scripts/1.1.3-r0/build/alsaucm'
>> | x86_64-poky-linux-gcc  -m64 -march=corei7 -mtune=corei7 -mfpmath=sse
>> -msse4.2 --sysroot=/data/poky-master/tmp-glibc/sysroots/intel-corei7-64
>> -DHAVE_CONFIG_H -I. -I../../alsa-utils-1.1.3/alsaucm -I../include  -Wall
>> -I../../alsa-utils-1.1.3/include   -O2 -pipe -g
>> -feliminate-unused-debug-types
>> -fdebug-prefix-map=/data/poky-master/tmp-glibc/work/corei7-64-poky-linux/alsa-utils-scripts/1.1.3-r0=/usr/src/debug/alsa-utils-scripts/1.1.3-r0
>> -fdebug-prefix-map=/data/poky-master/tmp-glibc/sysroots/x86_64-linux=
>> -fdebug-prefix-map=/data/poky-master/tmp-glibc/sysroots/intel-corei7-64=  -c
>> -o usecase.o ../../alsa-utils-1.1.3/alsaucm/usecase.c
>> | make[1]: *** No rule to make target 'alsaucm.1', needed by 'all-am'.
>> Stop.
>>
>> On 1 January 2017 at 19:53, Andreas Müller <schnitzeltony@googlemail.com>
>> wrote:
>>>
>>> Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
>>> ---
>>>  .../alsa/{alsa-utils-scripts_1.1.2.bb => alsa-utils-scripts_1.1.3.bb}
>>> | 0
>>>  1 file changed, 0 insertions(+), 0 deletions(-)
>>>  rename meta/recipes-multimedia/alsa/{alsa-utils-scripts_1.1.2.bb =>
>>> alsa-utils-scripts_1.1.3.bb} (100%)
>>>
>>> diff --git a/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.2.bb
>>> b/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.3.bb
>>> similarity index 100%
>>> rename from meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.2.bb
>>> rename to meta/recipes-multimedia/alsa/alsa-utils-scripts_1.1.3.bb
>>> --
>>> 2.5.5
>>>
> Checked: If I am not mistaken target alsaucm.1 builds man-files.
>
> * Native rst2man missing?
> * Can you provide full log.do_compile?
>
Forget the logs. V2 is close

Andreas


^ permalink raw reply

* [PATCH] nss: Fix postinstall script
From: David Vincent @ 2017-01-04 16:43 UTC (permalink / raw)
  To: openembedded-core

When installing NSS on a read-only rootfs, the current postinstall
scriptlet exits after having run the signing part. This causes an error
when appending the task because the rest of the script is simply ignored
and therefore never run.

Signed-off-by: David Vincent <freesilicon@gmail.com>
---
 meta/recipes-support/nss/nss_3.27.1.bb | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/meta/recipes-support/nss/nss_3.27.1.bb b/meta/recipes-support/nss/nss_3.27.1.bb
index 091793899f..a69672b3d8 100644
--- a/meta/recipes-support/nss/nss_3.27.1.bb
+++ b/meta/recipes-support/nss/nss_3.27.1.bb
@@ -208,18 +208,18 @@ do_install_append_class-target() {
 
 pkg_postinst_${PN} () {
     if [ -n "$D" ]; then
-        for I in $D/${libdir}/lib*.chk; do
+        for I in $D${libdir}/lib*.chk; do
             DN=`dirname $I`
             BN=`basename $I .chk`
             FN=$DN/$BN.so
             shlibsign -i $FN
-	    if [ $? -ne 0 ]; then
-	       exit 1
-	    fi
+            if [ $? -ne 0 ]; then
+                exit 1
+            fi
         done
-        exit 0
+    else
+        signlibs.sh
     fi
-    signlibs.sh
 }
 
 PACKAGES =+ "${PN}-smime"
-- 
2.11.0



^ permalink raw reply related

* is there a current recipe to support pptpd?
From: Robert P. J. Day @ 2017-01-04 17:49 UTC (permalink / raw)
  To: OE Core mailing list


  a colleague wants to add a pptpd server to his build image, and was
using "poptop" on a red hat system previously. i see a fairly old
poptop recipe for OE here:

https://github.com/openembedded/openembedded/tree/master/recipes/poptop

and newer source here:

https://sourceforge.net/p/poptop/git/ci/master/tree/

is there some other recipe that supplies the same functionality?

rday

-- 

========================================================================
Robert P. J. Day                                 Ottawa, Ontario, CANADA
                        http://crashcourse.ca

Twitter:                                       http://twitter.com/rpjday
LinkedIn:                               http://ca.linkedin.com/in/rpjday
========================================================================



^ permalink raw reply

* [PATCH 0/1] follow-up for alsa-utils update
From: Andreas Müller @ 2017-01-04 17:55 UTC (permalink / raw)
  To: openembedded-core

This should fix build as reported by Ross [1]

[1] http://lists.openembedded.org/pipermail/openembedded-core/2017-January/130726.html

Andreas Müller (1):
  alsa-utils(-scripts): fix compile on build machines with
    python-docutils installed

 meta/recipes-multimedia/alsa/alsa-utils_1.1.3.bb | 6 ++++++
 1 file changed, 6 insertions(+)

-- 
2.5.5



^ permalink raw reply

* [PATCH 1/1] alsa-utils(-scripts): fix compile on build machines with python-docutils installed
From: Andreas Müller @ 2017-01-04 17:55 UTC (permalink / raw)
  To: openembedded-core
In-Reply-To: <1483552554-25685-1-git-send-email-schnitzeltony@googlemail.com>

Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
 meta/recipes-multimedia/alsa/alsa-utils_1.1.3.bb | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/meta/recipes-multimedia/alsa/alsa-utils_1.1.3.bb b/meta/recipes-multimedia/alsa/alsa-utils_1.1.3.bb
index 07c25c4..e6dd5b0 100644
--- a/meta/recipes-multimedia/alsa/alsa-utils_1.1.3.bb
+++ b/meta/recipes-multimedia/alsa/alsa-utils_1.1.3.bb
@@ -26,6 +26,12 @@ SRC_URI = "ftp://ftp.alsa-project.org/pub/utils/alsa-utils-${PV}.tar.bz2 \
 SRC_URI[md5sum] = "2bf94d3e3410dcc74bb0dae10d46a979"
 SRC_URI[sha256sum] = "127217a54eea0f9a49700a2f239a2d4f5384aa094d68df04a8eb80132eb6167c"
 
+# On build machines with python-docutils (not python3-docutils !!) installed
+# rst2man (not rst2man.py) is detected and compile fails with
+# | make[1]: *** No rule to make target 'alsaucm.1', needed by 'all-am'.  Stop.
+# Avoid this by disabling expicitly
+EXTRA_OECONF = "--disable-rst2man"
+
 # lazy hack. needs proper fixing in gettext.m4, see
 # http://bugs.openembedded.org/show_bug.cgi?id=2348
 # please close bug and remove this comment when properly fixed
-- 
2.5.5



^ permalink raw reply related

* [PATCH] Changed order of lines to prevent use of unset variable BUILDSTATS_BASE
From: Jochen Jaegers @ 2017-01-04 18:00 UTC (permalink / raw)
  To: openembedded-core; +Cc: Jochen Jaegers

---
 meta/classes/toaster.bbclass | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/classes/toaster.bbclass b/meta/classes/toaster.bbclass
index 4ea2056..a685578 100644
--- a/meta/classes/toaster.bbclass
+++ b/meta/classes/toaster.bbclass
@@ -157,11 +157,11 @@ python toaster_collect_task_stats() {
     import bb.utils
     import os
 
-    toaster_statlist_file = os.path.join(e.data.getVar('BUILDSTATS_BASE'), "toasterstatlist")
-
     if not e.data.getVar('BUILDSTATS_BASE'):
         return  # if we don't have buildstats, we cannot collect stats
 
+    toaster_statlist_file = os.path.join(e.data.getVar('BUILDSTATS_BASE'), "toasterstatlist")
+
     def stat_to_float(value):
         return float(value.strip('% \n\r'))
 
@@ -361,4 +361,4 @@ do_populate_sdk[postfuncs] += "toaster_artifact_dumpdata "
 do_populate_sdk[vardepsexclude] += "toaster_artifact_dumpdata "
 
 do_populate_sdk_ext[postfuncs] += "toaster_artifact_dumpdata "
-do_populate_sdk_ext[vardepsexclude] += "toaster_artifact_dumpdata "
\ No newline at end of file
+do_populate_sdk_ext[vardepsexclude] += "toaster_artifact_dumpdata "
-- 
1.9.1



^ permalink raw reply related

* Re: [PATCH v2] Append KERNEL_VERSION string to kernel module package names
From: Leonardo Sandoval @ 2017-01-04 18:23 UTC (permalink / raw)
  To: ola.redell, openembedded-core
In-Reply-To: <1483453287-32323-1-git-send-email-ola.redell@retotech.se>

Ola, please follow the commit short log guidelines when submitting 
patches. Basically you need to prefix the target where this change is 
applying then a brief description, for example

kernel-module-split: Append KERNEL_VERSION string to kernel module

More info at 
http://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines


On 01/03/2017 08:21 AM, ola.redell@gmail.com wrote:
> From: Ola Redell <ola.redell@retotech.se>
>
> The KERNEL_VERSION string is added to kernel module package names in order to
> make the kernel modules for different kernel versions distinct packages instead
> of different versions of the same package. With this change, when a new kernel
> is installed together with its kernel modules (e.g. by upgrade of the packages
> kernel and kernel-modules) using some package manager such as apt-get or rpm,
> the kernel modules for the older kernel will not be removed. This enables a
> fall back to the older kernel if the new one fails.
>
> Signed-off-by: Ola Redell <ola.redell@retotech.se>
> ---
>   meta/classes/kernel-module-split.bbclass | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/classes/kernel-module-split.bbclass b/meta/classes/kernel-module-split.bbclass
> index efe1b42..13cff51 100644
> --- a/meta/classes/kernel-module-split.bbclass
> +++ b/meta/classes/kernel-module-split.bbclass
> @@ -122,7 +122,7 @@ python split_kernel_module_packages () {
>       module_regex = '^(.*)\.k?o$'
>   
>       module_pattern_prefix = d.getVar('KERNEL_MODULE_PACKAGE_PREFIX')
> -    module_pattern = module_pattern_prefix + 'kernel-module-%s'
> +    module_pattern = module_pattern_prefix + 'kernel-module-%s-' + d.getVar("KERNEL_VERSION", True)
>   
>       postinst = d.getVar('pkg_postinst_modules')
>       postrm = d.getVar('pkg_postrm_modules')



^ permalink raw reply

* Re: [PATCH 3/6] ksize.py: Python 3 fixes
From: Alejandro Hernandez @ 2017-01-04 18:21 UTC (permalink / raw)
  To: Khem Raj; +Cc: Patches and discussions about the oe-core layer
In-Reply-To: <CAMKF1soP7afwicknqti_muFYwGrMgNZE+n3rfnVQ8Hg8NeU2aw@mail.gmail.com>

Hey Khem,


Its an old script fro Tom, but as far as I remember it worked fine on 
python3, although thanks for checking and sending the patch!

Cheers

Alejandro


On 01/04/2017 12:39 AM, Khem Raj wrote:
> On Tue, Jan 3, 2017 at 2:30 PM, Alejandro Hernandez
> <alejandro.hernandez@linux.intel.com> wrote:
>> From: Tom Zanussi <tom.zanussi@linux.intel.com>
>>
>> String errors and partial __cmp__ fix.
> may be fold it into previous patch.
>
>> Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
>> ---
>>   scripts/tiny/ksize.py | 17 ++++++++++++-----
>>   1 file changed, 12 insertions(+), 5 deletions(-)
>>
>> diff --git a/scripts/tiny/ksize.py b/scripts/tiny/ksize.py
>> index b9d2b19..ea1ca7f 100755
>> --- a/scripts/tiny/ksize.py
>> +++ b/scripts/tiny/ksize.py
>> @@ -41,7 +41,7 @@ def usage():
>>   class Sizes:
>>       def __init__(self, glob):
>>           self.title = glob
>> -        p = Popen("size -t " + glob, shell=True, stdout=PIPE, stderr=PIPE)
>> +        p = Popen("size -t " + str(glob), shell=True, stdout=PIPE, stderr=PIPE)
>>           output = p.communicate()[0].splitlines()
>>           if len(output) > 2:
>>               sizes = output[-1].split()[0:4]
>> @@ -62,18 +62,18 @@ class Report:
>>           r = Report(filename, title)
>>           path = os.path.dirname(filename)
>>
>> -        p = Popen("ls " + path + "/*.o | grep -v built-in.o",
>> +        p = Popen("ls " + str(path) + "/*.o | grep -v built-in.o",
>>                     shell=True, stdout=PIPE, stderr=PIPE)
>>           glob = ' '.join(p.communicate()[0].splitlines())
>> -        oreport = Report(glob, path + "/*.o")
>> -        oreport.sizes.title = path + "/*.o"
>> +        oreport = Report(glob, str(path) + "/*.o")
>> +        oreport.sizes.title = str(path) + "/*.o"
>>           r.parts.append(oreport)
>>
>>           if subglob:
>>               p = Popen("ls " + subglob, shell=True, stdout=PIPE, stderr=PIPE)
>>               for f in p.communicate()[0].splitlines():
>>                   path = os.path.dirname(f)
>> -                r.parts.append(Report.create(f, path, path + "/*/built-in.o"))
>> +                r.parts.append(Report.create(f, path, str(path) + "/*/built-in.o"))
>>               r.parts.sort(reverse=True)
>>
>>           for b in r.parts:
>> @@ -116,6 +116,13 @@ class Report:
>>                  self.deltas["data"], self.deltas["bss"]))
>>           print("\n")
>>
>> +    def __lt__(this, that):
>> +        if that is None:
>> +            return 1
>> +        if not isinstance(that, Report):
>> +            raise TypeError
>> +        return this.sizes.total < that.sizes.total
>> +
>>       def __cmp__(this, that):
>>           if that is None:
>>               return 1
>> --
>> 2.6.6
>>
>> --
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core



^ permalink raw reply

* Re: [PATCH 2/6] core-image-tiny-initramfs: Add and image creating image artifacts only
From: Leonardo Sandoval @ 2017-01-04 18:29 UTC (permalink / raw)
  To: Alejandro Hernandez, openembedded-core
In-Reply-To: <3c231bd33344c04a46cd146c411a039913399ee9.1482363237.git.alejandro.hernandez@linux.intel.com>

Alex, the patch requires to be signed off.


On 01/03/2017 04:30 PM, Alejandro Hernandez wrote:
> From: Tom Zanussi <tom.zanussi@linux.intel.com>
>
> Add an image that simply creates image artifacts using
> image-live-artifacts support instead of creating an actual image.
>
> The image artifacts can then be subsequently assembled by an external
> tool such as wic to create an actual image.
>
> This eliminates redundant image creation when using such tools.
> ---
>   .../images/core-image-tiny-initramfs.bb            | 31 ++++++++++++++++++++++
>   1 file changed, 31 insertions(+)
>   create mode 100644 meta/recipes-core/images/core-image-tiny-initramfs.bb
>
> diff --git a/meta/recipes-core/images/core-image-tiny-initramfs.bb b/meta/recipes-core/images/core-image-tiny-initramfs.bb
> new file mode 100644
> index 0000000..216f3e0
> --- /dev/null
> +++ b/meta/recipes-core/images/core-image-tiny-initramfs.bb
> @@ -0,0 +1,31 @@
> +# Simple initramfs image artifact generation for tiny images.
> +DESCRIPTION = "Tiny image capable of booting a device. The kernel includes \
> +the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the \
> +first 'init' program more efficiently.  core-image-tiny-initramfs doesn't \
> +actually generate an image but rather generates boot and rootfs artifacts \
> +into a common location that can subsequently be picked up by external image \
> +generation tools such as wic."
> +
> +PACKAGE_INSTALL = "initramfs-live-boot packagegroup-core-boot dropbear ${VIRTUAL-RUNTIME_base-utils} udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}"
> +
> +# Do not pollute the initrd image with rootfs features
> +IMAGE_FEATURES = ""
> +
> +export IMAGE_BASENAME = "core-image-tiny-initramfs"
> +IMAGE_LINGUAS = ""
> +
> +LICENSE = "MIT"
> +
> +# don't actually generate an image, just the artifacts needed for one
> +ARTIFACTS_ONLY ?= "1"
> +
> +IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}"
> +inherit core-image
> +
> +IMAGE_ROOTFS_SIZE = "8192"
> +IMAGE_ROOTFS_EXTRA_SPACE = "0"
> +
> +BAD_RECOMMENDATIONS += "busybox-syslog"
> +
> +# Use the same restriction as initramfs-live-install
> +COMPATIBLE_HOST = "(i.86|x86_64).*-linux"



^ permalink raw reply

* Re: [meta-oe][PATCH v3] devtools: Add recipe for Chromium Embedded Controller utilities
From: Leonardo Sandoval @ 2017-01-04 18:36 UTC (permalink / raw)
  To: Moritz Fischer, openembedded-core; +Cc: koen, mdf
In-Reply-To: <1483512355-27961-1-git-send-email-moritz.fischer@ettus.com>


> +}
> diff --git a/meta/recipes-devtools/chromium-utils/files/0001-build-Add-HOST_LDFLAGS.patch b/meta/recipes-devtools/chromium-utils/files/0001-build-Add-HOST_LDFLAGS.patch
> new file mode 100644
> index 0000000..46e8cad
> --- /dev/null
> +++ b/meta/recipes-devtools/chromium-utils/files/0001-build-Add-HOST_LDFLAGS.patch
> @@ -0,0 +1,26 @@
> +From 56ffeeffea735a6a8f69fc111278ebabe3c7e2d8 Mon Sep 17 00:00:00 2001
> +From: Moritz Fischer <moritz.fischer@ettus.com>
> +Date: Tue, 27 Dec 2016 22:24:07 -0800
> +Subject: [PATCH] build Add HOST_LDFLAGS
> +

what is the Upstream Status of this patch? At least for oe-core, you 
need to provide it. More info at 
http://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines



> +Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
> +---
> + Makefile.rules | 2 +-
>



^ permalink raw reply

* [PATCH] wic/isoimage-isohybrid: check for grub-mkimage
From: Ioan-Adrian Ratiu @ 2017-01-04 18:34 UTC (permalink / raw)
  To: openembedded-core; +Cc: ken.sharp

The isohybrid plugin uses grub-mkimage but doesn't make sure it gets built.
Add a check to avoid the following error:

Error: A native program grub-mkimage required to build the image was not found (see details above).

Wic failed to find a recipe to build native grub-mkimage. Please file a bug against wic.

Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
---
 scripts/lib/wic/plugins/source/isoimage-isohybrid.py | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
index 3858fd439b..9c408d046f 100644
--- a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
+++ b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
@@ -242,6 +242,11 @@ class IsoImagePlugin(SourcePlugin):
             msger.info("Building mtools-native...\n")
             exec_cmd("bitbake mtools-native")
 
+        # Make sure grub-mkconfig is available in native sysroot
+        if not os.path.isfile("%s/usr/bin/grub-mkimage" % native_sysroot):
+            msger.info("Building grub-native...\n")
+            exec_cmd("bitbake grub-native")
+
     @classmethod
     def do_configure_partition(cls, part, source_params, creator, cr_workdir,
                                oe_builddir, bootimg_dir, kernel_dir,
-- 
2.11.0



^ permalink raw reply related


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox