aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2019-04-08kernel-devicetree.bbclass: Fix and simplify instalation of DTB filesMartin Jansa
* add 2 new variables: KERNEL_DTB_BASE_NAME KERNEL_DTB_SYMLINK_NAME instead of reusing KERNEL_IMAGE_SYMLINK_NAME and than expecting that default value ${MACHINE} was being used in e.g.: DTB_SYMLINK_NAME=`echo ${symlink_name} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"` * install normal DTB files only once even if there is multiple entries in KERNEL_IMAGETYPE_FOR_MAKE and don't prefix them with the type of the kernel image, use the KERNEL_IMAGETYPE_FOR_MAKE as a prefix only when installing them bundled with kernel or initramfs image. * deploy the files from ${D}/${KERNEL_IMAGEDEST}/ instead of kernel build directory, so that we don't need to call DTB_PATH=`get_real_dtb_path_in_kernel "${DTB}"` again in do_deploy * create all links in do_deploy task, because default KERNEL_DTB_BASE_NAME like KERNEL_IMAGE_BASE_NAME contains PKGR and PKGR is different in do_install and do_deploy, because kernel.bbclass calls meta/classes/kernel.bbclass:do_install[prefuncs] += "package_get_auto_pr" meta/classes/kernel.bbclass:do_deploy[prefuncs] += "package_get_auto_pr" * the filenames are a bit different, but with separate variable it should be easier for other bbclasses which use these DTB files to find them correctly, just use either the cannonical name $dtb_base_name.$dtb_ext or $dtb_base_name-${KERNEL_DTB_SYMLINK_NAME}.$dtb_ext because PKGR (and other PKG* variables) might be different in your task and kernel.do_deploy task. * fix DTB files being deployed with incorrect filenames when KERNEL_IMAGE_SYMLINK_NAME isn't set to ${MACHINE}, e.g. instead of the default: -rw-r--r-- 2 bitbake bitbake 1.4K Nov 20 07:41 deploy/images/raspberrypi3-64/Image-1-4.9.59+git0+e7976b2aff-r0.2-lirc-rpi-20171120043031.dtbo lrwxrwxrwx 2 bitbake bitbake 64 Nov 20 07:41 deploy/images/raspberrypi3-64/Image-lirc-rpi.dtbo -> Image-1-4.9.59+git0+e7976b2aff-r0.2-lirc-rpi-20171120043031.dtbo lrwxrwxrwx 2 bitbake bitbake 64 Nov 20 07:41 deploy/images/raspberrypi3-64/lirc-rpi.dtbo -> Image-1-4.9.59+git0+e7976b2aff-r0.2-lirc-rpi-20171120043031.dtbo I was getting: -rw-r--r-- 2 bitbake bitbake 1348 Nov 20 10:28 deploy/images/raspberrypi3-64/Image-linux-raspberrypi-lirc-rpi.dtbo lrwxrwxrwx 2 bitbake bitbake 37 Nov 20 10:28 deploy/images/raspberrypi3-64/Image-linux-raspberrypi-lirc-rpi-master-20171120102653.dtbo -> Image-linux-raspberrypi-lirc-rpi.dtbo lrwxrwxrwx 2 bitbake bitbake 37 Nov 20 10:28 deploy/images/raspberrypi3-64/lirc-rpi.dtbo -> Image-linux-raspberrypi-lirc-rpi.dtbo and e.g. sdcard_image-rpi.bbclass from meta-raspberrypi: https://github.com/agherzan/meta-raspberrypi/blob/37e4e18f4a745ce8dc11f7e40a29da0859ff13c6/classes/sdcard_image-rpi.bbclass was failing in: mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${DTB_BASE_NAME}.dtb ::${DTB_BASE_NAME}.dtb because ${KERNEL_IMAGETYPE}-${DTB_BASE_NAME}.dtb doesn't exist in my build, due to DTB_SYMLINK_NAME=`echo ${symlink_name} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"` not replacing whole "${KERNEL_IMAGE_SYMLINK_NAME}" (read ${MACHINE}) with just ${DTB_BASE_NAME} * with this change applied the deploy dir looks like this: -rw-r--r-- 2 bitbake bitbake 1.4K Nov 20 15:49 deploy/images/raspberrypi3-64/lirc-rpi-1-4.9.59+git0+e7976b2aff-r0.8-raspberrypi3-64-20171120154716.dtbo lrwxrwxrwx 2 bitbake bitbake 74 Nov 20 15:49 deploy/images/raspberrypi3-64/lirc-rpi.dtbo -> lirc-rpi-1-4.9.59+git0+e7976b2aff-r0.8-raspberrypi3-64-20171120154716.dtbo lrwxrwxrwx 2 bitbake bitbake 74 Nov 20 15:49 deploy/images/raspberrypi3-64/lirc-rpi-raspberrypi3-64.dtbo -> lirc-rpi-1-4.9.59+git0+e7976b2aff-r0.8-raspberrypi3-64-20171120154716.dtbo and works correctly even with DISTRO using different naming scheme * the sdcard_image-rpi.bbclass still needs to be modified, I've provided updated version here: https://github.com/agherzan/meta-raspberrypi/pull/159 Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> (cherry picked from commit 7e0e6c976396c1bc46ef3382d1d272c0ff2c765a) Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08kernel-devicetree.bbclass: Use lowercase names for shell variablesMartin Jansa
* just to make it more clear what is local shell variable and what is replaced by bitbake from the metadata and also to prevent the variable to be incorrectly expanded by bitbake if someone happens to define e.g. DTB_BASE_NAME Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> (cherry picked from commit 47dc3bd11b0fac9b50b6784aab3f3828d4ea957b) Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08kernel-devicetree.bbclass: Add support to generate append to kernelOtavio Salvador
The are use cases where the Device Tree appended to the kernel is convinient, so we generate the bundle concatenating the kernel (and potentionally the initramfs) and the Device Tree binaries. To enable it, set KERNEL_DEVICETREE_BUNDLE variable to '1' Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com> (cherry picked from commit f044567326988e84e5d72040e9387c3240836ddb) Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08kernel: Move Device Tree support to kernel.bbclassOtavio Salvador
The Device Tree is commonly used but it is still kept as a .inc file instead of a proper class. Instead now we move the Device Tree code to a kernel-devicetree class and automatically enable it when the KERNEL_DEVICETREE variable is set. To avoid breakage in existing layers, we kept a linux-dtb.inc file which raises a warning telling the user about the change so in next release this can be removed. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit 03a00be7f2062aefef0e51ef20a4c9737f6685e7) Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08kernel: Stop using update-alternativesOtavio Salvador
The update-alternatives where using relative links so not being really in use since December 2016 (see OE-Core:c7bc46b9 "kernel: Fix symlinks") so instead we now generate the relative symlinks during the do_install task and drop the update-alternatives use at all. Acked-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com> (cherry picked from commit 10a1b293191268e6792ac8e27bd6427f1974c7ce) Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08Revert "linux-dtb.inc: search dtb in all subdirectories of arch/*/boot"Andreas Oberritter
This reverts commit f296e05812b13483c3452054f3aa48cab43194d5.
2019-04-08Revert "Revert "kernel: Fix symlinks""Andreas Oberritter
This reverts commit 11880ea22d59f747d231bb50cbdd70b611867a77.
2019-04-08nfs-utils: fix dependency on libdevmapper after recipe split from lvm2Andreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08package.bbclass: Store required variables for custom metadata fieldsAndreas Oberritter
Previously these variables could only be set from inside do_package_write_{deb,ipk,rpm}. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08Revert "kernel: Fix symlinks"Andreas Oberritter
This reverts commit c7bc46b9bc29dd0953ab8d63b50fa105bb66892e. It broke dpkg's update-alternatives, which requires absolute paths. | update-alternatives: error: alternative path is not absolute as it should be Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08kernel-fitimage.bbclass: fix arm64 targetAndreas Oberritter
On arm64, possible targets are Image (with or without compression) and vmlinux. Use vmlinux, because that's what uboot_prep_kimage expects. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08kernel-fitimage.bbclass: search dtb in all subdirectories of arch/*/bootAndreas Oberritter
Some architectures, like arm64, organize dts files in vendor subdirectories. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08linux-dtb.inc: search dtb in all subdirectories of arch/*/bootAndreas Oberritter
Some architectures, like arm64, organize dts files in vendor subdirectories. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08gnupg: create a package for gpgvAndreas Oberritter
It is a small version of gpg which can only verify signatures. It should be installable on its own. This matches the behaviour of the gnupg 1.4 recipe, which was removed recently. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08ffmpeg: Build libpostproc even if global gpl flag is unsetAndreas Oberritter
The libpostproc package has an explicit GPLv2+ license tag. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08dpkg: disable logging in update-alternativesAndreas Oberritter
It caused problems during do_rootfs. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08python3-pycairo: use waf.bbclassAndreas Oberritter
Fixes compilation with PARALLEL_MAKE = "-j N -l N". Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08bluez5: disable parallel makeAndreas Oberritter
| cp ../bluez-5.43/tools/hid2hci.rules tools/97-hid2hci.rules | cp: cannot create regular file 'tools/97-hid2hci.rules': No such file or directory Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08openssl: use version script from jessie-backportsAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08dpkg: enable nativesdkAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08libtimedate-perl: enable nativesdkAndreas Oberritter
nativesdk-dpkg depends on it. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08{insane,package{,_deb,_ipk}}.bbclass: support 'Breaks' control field by ↵Andreas Oberritter
introducing RBREAKS Required by Debian Policy section 7.3. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08apt: optionally build and install manpagesAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2019-04-08apt: Introduce apt-opkgAndreas Oberritter
'apt-opkg' provides a stripped-down opkg frontend with an apt backend. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt: dselect depends on perlAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt: fix rpath error during configureAndreas Oberritter
| checking for shared library run path origin... /bin/sh: ../apt-1.0.10.1/buildlib/config.rpath: No such file or directory Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07package_deb.bbclass: compress control.tar with the same algorithm as data.tarAndreas Oberritter
Yields better compression with xz and fixes a problem invoking gzip. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07dpkg: always install dpkg-configure.serviceAndreas Oberritter
systemd.bbclass handles everything based on DISTRO_FEATURES. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07dpkg: update packages and files to match Debian more closelyAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07dpkg: simplify replacing perl interpreter in scriptsAndreas Oberritter
Target scripts already contain the correct value. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07dpkg: clean-up packaging of start-stop-daemonAndreas Oberritter
Dpkg-start-stop is not an intuitive name. Just call the package start-stop-daemon. Don't rdepend on it, because it might be empty. Install start-stop-daemon to /sbin to match Debian and busybox. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07dpkg: set license field to more common "GPLv2+"Andreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07dpkg: use PACKAGECONFIGAndreas Oberritter
Keep default dependencies as before. Set default compressor to xz if selected, gzip otherwise. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07package_manager/deb: implement BAD_RECOMMENDATIONSAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07package_manager/deb: create Packages.xzAndreas Oberritter
apt-get prefers it over Packages.gz. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07package_manager/deb: let apt-get handle postinst scriptsAndreas Oberritter
With all required environment variables and configuration options in apt.conf in place, apt-get is able to install packages offline, i.e. when creating the rootfs, including the execution of postinst scripts and updating the package database. This is new behaviour. At the time the deleted code would have executed, its work was already done by apt-get. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt: recommend gnupgAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt: more fine-grained packagingAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt: group variables (license, configuration, packaging)Andreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt: merge apt.inc into .bbAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt: merge with apt-nativeAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt-native: drop obsolete patchesAndreas Oberritter
0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch and noconfigure.patch are obsolete due to dpkg's new --force-script-chrootless option. db_linking_hack.patch and environment.patch are marked as backports from 2007. no-curl.patch: curl-native is already a prerequisite. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt: rewrite do_installAndreas Oberritter
Install missing files and directories (apt, apt-ftparchive, apt-helper, apt-mark, trusted.gpg.d). Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt: use default packaging rules for -dev packageAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt: use default packaging rules for base package, prepend apt-utilsAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt: use default packaging rules for manpagesAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt-native: use sed to prepare apt.conf.sampleAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt: merge apt-package.inc into .bbAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07apt-native: merge apt-native.inc into .bbAndreas Oberritter
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
2018-05-07package_manager/deb: pass option --force-script-chrootless to dpkgAndreas Oberritter
Fixes removal of packages with new dpkg version. Signed-off-by: Andreas Oberritter <obi@opendreambox.org>