# # GNU GRUB, the GRand Unified Bootloader # # This configuration file configure's, make's and install's GRUB2. # %define grub2_platform_supported = 1 %ifos darwin %undefine grub2_platform_supported %{echo "Darwin does not support Grub2 compilation by default."} %{echo "If you need Grub2 on Darwin, please install objconv"} %{echo "and enable it by removing '%undefine grub2_platform_supported' above"} %endif %if %{defined grub2_platform_supported} %if %{release} == %{nil} %define release 1 %endif Name: grub2-%{grub2_version}-%{_host}-%{release} Summary: GNU GRUB, the GRand Unified Bootloader v%{grub2_version} for target %{_target} on host %{_host} Version: %{grub2_version} Release: %{release} URL: https://www.gnu.org/software/grub/index.html # # Source # %source set grub2 https://ftp.gnu.org/gnu/grub/grub-%{grub2_version}.tar.xz # # Prepare the source code. # %prep build_top=$(pwd) %source setup grub2 -q -n grub-%{grub2_version} cd ${build_top} %build build_top=$(pwd) cd grub-%{grub2_version} %{host_build_flags} ./configure \ --build=%{_build} --host=%{_host} \ --verbose \ --prefix=%{_prefix} --bindir=%{_bindir} \ --exec-prefix=%{_exec_prefix} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} \ --with-platform=%{grub2_platform} \ --target=%{grub2_target} \ --disable-libzfs \ # broken on FreeBSD and not needed at all --disable-werror # fixes compilation by GCC 12 %{__make} %{?_smp_mflags} all cd ${build_top} %install build_top=$(pwd) rm -rf $SB_BUILD_ROOT cd grub-%{grub2_version} %{__make} DESTDIR=$SB_BUILD_ROOT install cd ${build_top} %endif