Files
bpfire/lfs/grub
Michael Tremer 6cf219c427 Drop support for i586
This patch removes support for i586 according to the decision being
taken over a year ago.

It removes the architecture from the build system and removes all
required hacks and other quirks that have been necessary before.

There is no need to ship any changed files to the remaining
architectures as the removed code branches have not been used.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-12-04 23:27:26 +01:00

137 lines
4.7 KiB
Plaintext

###############################################################################
# #
# IPFire.org - A linux based firewall #
# Copyright (C) 2007-2021 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
# the Free Software Foundation, either version 3 of the License, or #
# (at your option) any later version. #
# #
# This program is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# GNU General Public License for more details. #
# #
# You should have received a copy of the GNU General Public License #
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
# #
###############################################################################
###############################################################################
# Definitions
###############################################################################
include Config
VER = 2.06
THISAPP = grub-$(VER)
DL_FILE = $(THISAPP).tar.xz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
SUP_ARCH = aarch64 x86_64
ifeq "$(BUILD_ARCH)" "x86_64"
BUILD_PC = 1
endif
BUILD_EFI = $(EFI)
DIR_APP_PC = $(DIR_APP)-pc
DIR_APP_EFI = $(DIR_APP)-efi
# Don't use our CFLAGS for boot code
export HOST_CFLAGS = $(CFLAGS)
export HOST_LDFLAGS = $(LDFLAGS)
CONFIGURE_ARGS = \
--prefix=/usr \
--sysconfdir=/etc \
--disable-werror
###############################################################################
# Top-level Rules
###############################################################################
objects = $(DL_FILE) \
unifont-7.0.03.pcf.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
unifont-7.0.03.pcf.gz = $(DL_FROM)/unifont-7.0.03.pcf.gz
$(DL_FILE)_MD5 = cf0fd928b1e5479c8108ee52cb114363
unifont-7.0.03.pcf.gz_MD5 = f6903ac8c1caeeb30c1e9a2975028401
install : $(TARGET)
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
download :$(patsubst %,$(DIR_DL)/%,$(objects))
md5 : $(subst %,%_MD5,$(objects))
###############################################################################
# Downloading, checking, md5sum
###############################################################################
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
@$(CHECK)
$(patsubst %,$(DIR_DL)/%,$(objects)) :
@$(LOAD)
$(subst %,%_MD5,$(objects)) :
@$(MD5)
###############################################################################
# Installation Details
###############################################################################
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) $(DIR_APP_EFI) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub/grub-2.06-remove_os_prober_disabled_warning.patch
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub/grub-2.02_disable_vga_fallback.patch
cd $(DIR_APP) && autoreconf -vfi
# Install unifont
cp -v $(DIR_DL)/unifont-7.0.03.pcf.gz $(DIR_APP)/unifont.pcf.gz
ifeq "$(BUILD_EFI)" "1"
cp -r $(DIR_APP) $(DIR_APP_EFI)
cd $(DIR_APP_EFI) && ./configure $(CONFIGURE_ARGS) \
--with-platform=efi CFLAGS= LDFLAGS=
cd $(DIR_APP_EFI) && make $(MAKETUNING)
cd $(DIR_APP_EFI) && make install
endif
ifeq "$(BUILD_PC)" "1"
cp -r $(DIR_APP) $(DIR_APP_PC)
cd $(DIR_APP_PC) && ./configure $(CONFIGURE_ARGS) \
--with-platform=pc --disable-efiemu CFLAGS= LDFLAGS=
cd $(DIR_APP_PC) && make $(MAKETUNING)
cd $(DIR_APP_PC) && make install
# Install empty configuration file
-mkdir -pv /boot/grub
touch /boot/grub/grub.cfg
endif
# Install our own helpers
install -v -m 755 $(DIR_SRC)/config/grub2/00_cloud \
/etc/grub.d
# Install background image
-mkdir -pv /boot/grub
install -m 644 $(DIR_SRC)/config/grub2/splash.png /boot/grub/splash.png
# Install default configuration
-mkdir -pv /etc/default
install -m 644 $(DIR_SRC)/config/grub2/default /etc/default/grub
@rm -rf $(DIR_APP) $(DIR_APP_PC) $(DIR_APP_EFI)
@$(POSTBUILD)