aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-bsp/grub
AgeCommit message (Collapse)Author
2019-01-28grub2: Fix passing null to printf formatsKhem Raj
Backport a patch that helps with this error which is found by gcc9 (From OE-Core rev: 93419fb569b827056a422614d3dc29cd41b2b6bb) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com>
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 layerRichard 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>
2016-12-19grub: Fix build with glibc 2.25Khem Raj
Backport relevant patch from grub git Signed-off-by: Khem Raj <raj.khem@gmail.com>
2016-12-16meta: remove True option to getVar callsJoshua Lock
getVar() now defaults to expanding by default, thus remove the True option from getVar() calls with a regex search and replace. Search made with the following regex: getVar ?\(( ?[^,()]*), True\) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-12-13grub2: fix some quirks and div by zeroAwais Belal
Rather than erroring out on a single attempt while terminating EFI services, make a few retries because such quirks are found in a few implementations. Also fix a div by zero issue in the same framework which causes an infinite reboot on the target. Both patches included here are backports. Signed-off-by: Awais Belal <awais_belal@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-12-08grub2: enforce -no-pie if supported by compilerAlexander Kanavin
Recent distros are enabling -pie by default; in case of grub we need to turn it off. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-11-23grub_git: set COMPATIBLE_HOST_armv7ve to nullYi Zhao
When build nxp-ls10xx which enable hard-float, it try to force soft-float: | checking if compiling with clang... no | checking for options to compile assembly... | checking whether -freg-struct-return works... yes | checking for options to get soft-float... no | configure: error: could not force soft-float Set COMPATIBLE_HOST_armv7ve to null to skip the build. Signed-off-by: Yi Zhao <yi.zhao@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-08-23grub: fix load module all_video failedHongxu Jia
While using oe-core toolchain to strip grub module 'all_video.mod', it stripped symbol table: -------------- root@localhost:~# objdump -t all_video.mod all_video.mod: file format elf64-x86-64 SYMBOL TABLE: no symbols -------------- It caused grub to load module all_video failed. (This module will be loaded by defalut which configed in grub.cfg) -------------- grub> insmod all_video error: no symbol table. -------------- Tweak strip option to keep symbol .module_license could workaround the issue. -------------- root@localhost:~# objdump -t all_video.mod all_video.mod: file format elf64-x86-64 SYMBOL TABLE: 0000000000000000 l d .text 0000000000000000 .text 0000000000000000 l d .data 0000000000000000 .data 0000000000000000 l d .module_license 0000000000000000 .module_license 0000000000000000 l d .bss 0000000000000000 .bss 0000000000000000 l d .moddeps 0000000000000000 .moddeps 0000000000000000 l d .modname 0000000000000000 .modname -------------- Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-08-18grub: split grub-editenv into it's own packageAlejandro del Castillo
grub-editenv edits the env block at runtime on a booted system. Other tools can depend on it to configure a live system, for ex. to set next boot mode upon reboot. By splitting grub-editenv, tools don't have to depend on the entire grub package (grub-editenv just edits one file). Signed-off-by: Alejandro del Castillo <alejandro.delcastillo@ni.com> Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-08-04grub2.inc: run autogen.sh before configuremingli.yu@windriver.com
* When adding new source files from upstream the autogen.sh script needs to be run * Rework grub2-remove-sparc64-setup-from-x86-builds.patch to remove the grub-setup helper program grub-sparc64-setup in Makefile.util.def instead of the previous Makefile.util.am to avoid the update for Makefile.util.am in do_patch phase is overwritten by the autogen.sh in do_configure phase Signed-off-by: Catalin Enache <catalin.enache@windriver.com> Signed-off-by: Mingli Yu <mingli.yu@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-07-08meta: update patch metadataRoss Burton
Enforce the correct tag names across all of oe-core for consistency. Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-05-13grub_git: Upgrade to latest tipKhem Raj
Gets past the gcc6 issues seen on aarch64 | make[3]: *** [cmp.mod] Error 1 | build-grub-module-verifier: error: unsupported relocation 0x113. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-13grub: Fix build with gcc-6Khem Raj
Backport patch which silences following '../../grub-2.00/grub-core/'`gfxmenu/model.c ../../grub-2.00/grub-core/gettext/gettext.c:37:36: error: storage size of 'main_context' isn't known static struct grub_gettext_context main_context, secondary_context; ^~~~~~~~~~~~ make[3]: *** [gettext/gettext_module-gettext.o] Error 1 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-13grub2.inc: Use SYSROOT_DIRS_BLACKLIST to exclude dirs from the sysrootPeter Kjellerstedt
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-29grub_git: set COMPATIBLE_HOST_armv7a to nullRobert Yang
It doesn't work with armv7a: | build-grub-module-verifier: error: unsupported relocation 0x2b. | make[3]: *** [reboot.mod] Error 1 | make[3]: *** Waiting for unfinished jobs.... | build-grub-module-verifier: error: unsupported relocation 0x2b. | build-grub-module-verifier: error: unsupported relocation 0x2b. | make[3]: *** [halt.mod] Error 1 | make[3]: *** [cat.mod] Error 1 | build-grub-module-verifier: error: unsupported relocation 0x2b. | build-grub-module-verifier: error: unsupported relocation 0x2b. | build-grub-module-verifier: error: unsupported relocation 0x2b. | make[3]: *** [disk.mod] Error 1 | make[3]: *** [gptsync.mod] Error 1 | make[3]: *** [eval.mod] Error 1 | build-grub-module-verifier: error:build-grub-module-verifier: error: unsupported relocation 0x2bunsupported relocation 0x2b. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-04-11meta: remove redundant ac_cv_sizeof_off_t assignmentsRoss Burton
ac_cv_sizeof_off_t was previously in the site cache files, which was breaking large file support and required a workaround in each recipe that actually wanted to use large files. Now that the entry has been removed from the site cache, we can remove the workarounds. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-06grub: remove unused 0001-Fix-build-with-glibc-2.20.patchRobert Yang
It was used for building with glibc 2.20, now is glibc 2.23, so remove it. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-20grub: add -Wno-error=trampolines to native CFLAGSBill Randle
(Resend as mailer munged previous submission. Also updated comments to indicate problem is not limited to gcc 5.3.0.) Adds -Wno-error=trampolines to native CFLAGS prevent multiple compile errors when using gentoo builf of gcc. [YOCTO #9201] Signed-off-by: Bill Randle <william.c.randle@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-03-20grub: fix documentation rebuildsRoss Burton
If the documentation needs to rebuild then it will fail as the syntax isn't valid with modern texinfo. Backport a patch from git to fix the syntax. [ YOCTO #9306 ] Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-03-02grub2.inc: drop bogus dependency on xzAndre McCurdy
grub contains it's own internal lzma library. Attempting to build grub against the system liblzma shared library or header files is not likely to end well. This change does not cause a floating dependency since all grub2.inc based recipes pass "--enable-liblzma=no" to configure. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>