summaryrefslogtreecommitdiffstats
path: root/meta/recipes-bsp/grub
AgeCommit message (Collapse)Author
2019-11-25grub: don't autoreconf twiceRoss Burton
do_configure() essentially calls autogen.sh to generate some sources and then autoreconf, but autogen.sh also calls autoreconf. Pass a magic variable so that autogen.sh doesn't autoreconf for us. Signed-off-by: Ross Burton <ross.burton@intel.com>
2019-11-25grub: inherit pkgconfigRoss Burton
Grub uses pkg-config but is only in the sysroot via dependencies. Be explicit and inherit pkgconfig directly. Signed-off-by: Ross Burton <ross.burton@intel.com>
2019-09-19grub-efi: switch to image-uefi.confDmitry Eremin-Solenikov
Use variables from image-uefi.conf instead of hardcoding them in the recipe. Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin-solenikov@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19grub-bootconf: switch to image-uefi.confDmitry Eremin-Solenikov
Use variables from image-uefi.conf instead of hardcoding them in the recipe. Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin-solenikov@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16grub: remove diffutils and freetype runtime dependenciesYi Zhao
The diffutils runtime dependency was introduced from legacy grub since the script grub-install invokes cmp command which is from diffutils package. But in Grub2 the grub-install has been rewritten with C language. So this package isn't needed anymore. The freetype runtime dependency is for grub-mkfont but we have explicitly disabled grub-mkfont build. It is safe to remove it. Signed-off-by: Yi Zhao <yi.zhao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16meta: add missing descriptions and homepage in bspMaxime Roussin-Bélanger
Signed-off-by: Maxime Roussin-Bélanger <maxime.roussinbelanger@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2019-08-08grub/grub-efi: fix conflict for aach64Changqing Li
MACHINE = qemuarm64 IMAGE_INSTALL_append = ' grub grub-efi' do_rootfs failed with error: file /usr/lib64/grub/arm64-efi/acpi.module conflicts between attempted installs of grub-2.02-r0.aarch64 and grub-efi-2.02-r0.aarch64 file /usr/lib64/grub/arm64-efi/adler32.module conflicts between attempted installs of grub-2.02-r0.aarch64 and grub-efi-2.02-r0.aarch64 ... file /usr/lib64/grub/arm64-efi/zfsinfo.module conflicts between attempted installs of grub-2.02-r0.aarch64 and grub-efi-2.02-r0.aarch64 For arm64, grub and grub-efi both compiled GRUBD2 with platform arm64-efi, arm64 only support platform efi. So both packages have almost same folder and content /usr/lib64/grub/arm64-efi/* if Machine set to qemux86_64, do_rootfs will not have this problem, since for grub, it compiled with platform i386-pc, for grub-efi, compiled with platform x86-64-efi. >From commit: commit 4e9bb03238af48c70075037a77094a8c1bddf284 Author: Hongxu Jia <hongxu.jia@windriver.com> Date: Wed Jan 17 03:25:58 2018 -0500 grub/grub-efi: fix conflict While installing grub and grub-efi, there are conflict files in ${sysconfdir} ${datadir} ${bindir} ${sbindir}. - Since all of the conflicted files are tools which is common for grub and grub-efi, we split them (except grub-editenv) to grub-common in grub. common tools for grub and grub-efi are installed into grub-common, for aarch64, also shipped libdir into this common packages. in this way, for qemuarm64, package grub is empty, and package grub-efi use lib in package grub-common Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07grub: add grub-nativeHongxu Jia
Not only grub-efi-native, but also add grub-native to provide grub utilities on host Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03grub/libmpc/gdb: Use GNU_MIRROR in more recipesAdrian Bunk
Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-29grub: upgrade 2.02 -> 2.04Anuj Mittal
* For changes in this version, see: http://git.savannah.gnu.org/cgit/grub.git/tree/NEWS?h=grub-2.04 * Remove backported patches and refresh others. * Remove the musl patch as it's no longer needed. * Use configure option --disable-werror instead of passing through CFLAGS. Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-15grub: build with python 3Ross Burton
As part of the mission to remove the use of Python 2, explicitly use Python 3 when building grub. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-03grub2: Drop unneeded codeRichard Purdie
We no longer export these variables into the environment so we no longer need this code. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-04grub/grub-efi: fix unrecognized command line option '-pipe-Wno-error' in CFLAGSHongxu Jia
Since commit [330fc83 grub: Use -Wno-error instead of doing this on a per-warning basis] applied in oe-core, it missed a space in append. Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-08grub: Use -Wno-error instead of doing this on a per-warning basisAdrian Bunk
In practice the warnings were disabled individually instead of fixes added, so just make all warnings non-fatal to achieve the same. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-16grub-efi-native: Install grub-editenvJacob Kroon
Having a native version of grub-editenv around can be useful for setting the targets grub environment. Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-11grub: fix build with squashfs support enabledMartin Jansa
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-04grub: Enhance Waddress-of-packed-member patch to cover x86_64 testcaseKhem Raj
This was not compiled for x86_64 when previously testing aarch64 so some tests were missed. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-15grub2: Fix build with gcc9Khem Raj
Disable -Waddress-of-packed-member being treated as error Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-27grub2: Fix passing null to printf formatsKhem Raj
Backport a patch that helps with this error which is found by gcc9 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26grub2.inc: set GRUBPLATFORM_arm to efiMingli Yu
* grub-efi support on arm is enabled as below commit: commit 65f9fb788371a9a08e3b0e6febecb9cc2aaeefe7 Author: Kristian Amlie <kristian.amlie@northern.tech> Date: Tue Jul 10 16:07:12 2018 +0200 grub-efi: Provide target architecture for 32-bit ARM. * But it fails on arm as below: | grub-mkimage: error: cannot open `./grub-core//serial.mod': No such file or directory. Set GRUBPLATFORM_arm = "efi" to fix the above error Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-07-26grub: fix build with new binutilsRoss Burton
2018-07-13grub-efi: Provide target architecture for 32-bit ARM.Kristian Amlie
Signed-off-by: Kristian Amlie <kristian.amlie@northern.tech> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-05-11grub2: fix build with gcc8Martin Jansa
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-04grub-efi: add grub target and image for aarch64Ricardo Salveti
Add missing target and image for aarch64, as the current revision is already fully compatible with ARMv8. Signed-off-by: Ricardo Salveti <ricardo@opensourcefoundries.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-03-09grub: refresh patchesRoss Burton
The patch tool will apply patches by default with "fuzz", which is where if the hunk context isn't present but what is there is close enough, it will force the patch in. Whilst this is useful when there's just whitespace changes, when applied to source it is possible for a patch applied with fuzz to produce broken code which still compiles (see #10450). This is obviously bad. We'd like to eventually have do_patch() rejecting any fuzz on these grounds. For that to be realistic the existing patches with fuzz need to be rebased and reviewed. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-03-06grub-efi: if installed and EFI_PROVIDER, install as bootx64 or bootia32California Sullivan
This way we could theoretically support multiple bootloaders, and we keep the convention of boot(x64|ia32). Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-06grub-efi: install to /boot/California Sullivan
Since /boot/ will be recipe/package controlled now we can't just deploy. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-06grub: create recipe for configurationCalifornia Sullivan
This makes use of the grub-efi-cfg bbclass that was split out to create a grub.cfg file just like the old one. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-02-06grub-efi: add configfile as default built-inRicardo Salveti
The module configfile allows loading a custom grub configuration file from block devices, which can be used to customize the default grub menu when creating images with wic (via configfile argument). Signed-off-by: Ricardo Salveti <ricardo@opensourcefoundries.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-01-25classes/recipes: Convert SkipPackage -> SkipRecipeRichard Purdie
The new name is much more consistent with what this actually means. We put the pieces in place to rename everything a while back but looks like we forgot to actually do it! Fix that now. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-22grub: Fix device mapper dependencyRobert Joslyn
The lvm2 recipe in meta-oe was split, so the libdevmapper library is provided by the libdevmapper recipe rather than lvm2. Signed-off-by: Robert Joslyn <robert_joslyn@selinc.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-01-19grub/grub-efi: fix conflictHongxu Jia
While installing grub and grub-efi, there are conflict files in ${sysconfdir} ${datadir} ${bindir} ${sbindir}. - Since all of the conflicted files are tools which is common for grub and grub-efi, we split them (except grub-editenv) to grub-common in grub. - The package grub-common runtime depends grub-editenv - The package grub-editenv runtime provides grub-efi-editenv - Remove SYSROOT_DIRS_BLACKLIST - The recipe grub-efi does not generate the duplicated files and use runtime depends grub-common to instead Debian and Fedora do the similar thing. Debian use a common package grub-common for both of pc bios and efi, and use package grub-pc-bin for pc bios, grub-efi-amd64-bin for efi. Both of grub-pc-bin and grub-efi-amd64-bin requires grub-common. https://packages.debian.org/sid/grub-common https://packages.debian.org/jessie/grub-pc-bin https://packages.debian.org/jessie/grub-efi-amd64-bin Fedora use a common package grub2-tools for both of pc bios and efi, and use package grub2 for pc bios, grub2-efi-modules for efi. Both of grub2 and grub2-efi-modules requires grub2-tools. https://www.rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/g/grub2-tools-2.02-0.34.fc24.x86_64.html https://www.rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/g/grub2-2.02-0.34.fc24.x86_64.html https://www.rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/g/grub2-efi-modules-2.02-0.34.fc24.x86_64.html [YOCTO #11639] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-11grub-efi: Fix DEPENDSRichard Purdie
We need to append to DEPENDS else the dependencies on bison/flex-native are lost, potentially resulting in build failures. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-12-10grub: Move grub-editenv packaging to grub2.incOtavio Salvador
The editenv utility must be available on grub and grub-efi so we better have it inside the grub2.inc file to avoid the duplication of metadata. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-12-10grub-efi: Add loadenv and test as default built-inOtavio Salvador
To allow scripting and environment changes, the loadenv and test must be enabled. This adds those to the default set. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-12-10grub-efi: Rework GRUB_BUILTIN variable as it is too longOtavio Salvador
As we will add new values here, it is better to split it in multiple lines. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-11-29grub-efi_2.02.bb: improve reproducibilityJuro Bystricky
Remove several build host references from modinfo.sh files. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-11-08grub_2.02.bb: improve reproducibilityJuro Bystricky
Remove several build host references from modinfo.sh files. Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-08-23grub2: fix build on gcc where _FORTIFY_SOURCE is definedMartin Jansa
* e.g. with gentoo gcc-7.1 they define _FORTIFY_SOURCE by default with: https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo/src/patchsets/gcc/7.1.0/gentoo/10_all_default-fortify-source.patch?view=markup which results in following error while building grub-efi-native: ./config-util.h:1504:48: error: this use of "defined" may not be portable [-Werror=expansion-to-defined] || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \ ^~~~~~~~~~~~~~~ this part comes from gnulib and it's used only for Apple and BSD, so we can ignore it, but we cannot add -Wno-error=expansion-to-defined because this warning was introduced only in gcc-7 and older gcc will fail with: cc1: error: -Werror=expansion-to-defined: no option -Wexpansion-to-defined use #pragma to work around this Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-08grub-efi: Support musl-x32sweeaun
To build 64-bit binaries for musl-x32. Signed-off-by: sweeaun <swee.aun.khor@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-06-28grub: fix 0001-grub.d-10_linux.in-add-oe-s-kernel-name.patch missingHongxu Jia
Since grub upgraded to 2.02, it forgot to aplly 0001-grub.d-10_linux.in-add-oe-s-kernel-name.patch. ... commit 4f27e4042dfb39caa71c7c6eb0a327de6af4d563 Author: Khem Raj <raj.khem@gmail.com> Date: Fri Apr 21 20:36:06 2017 +0000 grub: Update to 2.02 ... The missing caused grub-mkconfig could not detect kernel bzImage. Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-06-28grub2: remove autogen dependencyAlexander Kanavin
Hasn't been required by grub for quite a while. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
2017-06-14grub: switch from ftp to httpsMaxin B. John
For the same reasons as Debian: https://www.debian.org/News/2017/20170425 Signed-off-by: Maxin B. John <maxin.john@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-23grub: Update to 2.02Khem Raj
Drop git recipe, add arm bits to 2.02 itself Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-07meta: start to ignore the largefile distro featureAndre McCurdy
The largefile distro feature has been enabled by default in oe-core for a long time and, more recently, also in poky-tiny. Building without the largefile distro feature receives little or no testing. Many packages now enable LFS without exposing a configure option, so there should be very little expectation that disabling the distro feature will result in a distro which globally disables LFS. Respecting the distro feature adds a maintenance over-head and may be the source of configurations oddities (e.g. dbus-native currently builds with LFS disabled for no clear reason - fixed by this commit). Ignore the largefile distro feature more widely, as a first step towards deprecating and eventually removing it. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-07recipes: Move out stale GPLv2 versions to a seperate layeruninative-1.5Richard Purdie
These are recipes where the upstream has moved to GPLv3 and these old versions are the last ones under the GPLv2 license. There are several reasons for making this move. There is a different quality of service with these recipes in that they don't get security fixes and upstream no longer care about them, in fact they're actively hostile against people using old versions. The recipes tend to need a different kind of maintenance to work with changes in the wider ecosystem and there needs to be isolation between changes made in the v3 versions and those in the v2 versions. There are probably better ways to handle a "non-GPLv3" system but right now having these in OE-Core makes them look like a first class citizen when I believe they have potential for a variety of undesireable issues. Moving them into a separate layer makes their different needs clearer, it also makes it clear how many of these there are. Some are probably not needed (e.g. mc), I also wonder whether some are useful (e.g. gmp) since most things that use them are GPLv3 only already. Someone could now more clearly see how to streamline the list of recipes here. I'm proposing we mmove to this separate layer for 2.3 with its future maintinership and testing to be determined in 2.4 and beyond. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-01-31grub-efi: Deploy grub named efi binariesSaul Wold
This allows both grub and systemd-boot efi bootloaders to co-exisit Signed-off-by: Saul Wold <sgw@linux.intel.com>
2017-01-16grub_git: remove redundant inheritsRoss Burton
These are already inherited by grub2.inc. Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-01-16grub-git: Upgrade to tip of master and fix with glibc 2.25Khem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-01-09grub-efi: ignore arch mismatch for x32Christopher Larson
Ordinary 64-bit binaries are expected for the bootloader. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>