From 649b5b92509dba021ed47ef4c04f358de83ba36f Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Sun, 14 Mar 2010 18:20:45 +0100 Subject: bootloaders: move bootloader build code to boot/ Signed-off-by: Thomas Petazzoni --- boot/syslinux/syslinux.mk | 70 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 boot/syslinux/syslinux.mk (limited to 'boot/syslinux/syslinux.mk') diff --git a/boot/syslinux/syslinux.mk b/boot/syslinux/syslinux.mk new file mode 100644 index 000000000..df27b6d8f --- /dev/null +++ b/boot/syslinux/syslinux.mk @@ -0,0 +1,70 @@ +SYSLINUX_SUPPORTED_ARCH=n +ifeq ($(ARCH),i386) +SYSLINUX_SUPPORTED_ARCH=y +endif +ifeq ($(ARCH),i486) +SYSLINUX_SUPPORTED_ARCH=y +endif +ifeq ($(ARCH),i586) +SYSLINUX_SUPPORTED_ARCH=y +endif +ifeq ($(ARCH),i686) +SYSLINUX_SUPPORTED_ARCH=y +endif +ifeq ($(ARCH),x86_64) +SYSLINUX_SUPPORTED_ARCH=y +endif +ifeq ($(SYSLINUX_SUPPORTED_ARCH),y) + +############################################################# +# +# syslinux to make target msdos/iso9660 filesystems bootable +# +############################################################# + +SYSLINUX_VERSION:=3.82 +SYSLINUX_DIR=$(BUILD_DIR)/syslinux-$(SYSLINUX_VERSION) +SYSLINUX_DIR2=$(TOOLCHAIN_DIR)/syslinux-$(SYSLINUX_VERSION) +SYSLINUX_SOURCE=syslinux-$(SYSLINUX_VERSION).tar.bz2 +SYSLINUX_CAT:=$(BZCAT) +SYSLINUX_SITE=$(BR2_KERNEL_MIRROR)/linux/utils/boot/syslinux/ +SYSLINUX_BIN=$(SYSLINUX_DIR2)/mtools/syslinux + + +$(DL_DIR)/$(SYSLINUX_SOURCE): + $(call DOWNLOAD,$(SYSLINUX_SITE),$(SYSLINUX_SOURCE)) + +syslinux-source: $(DL_DIR)/$(SYSLINUX_SOURCE) + +$(SYSLINUX_DIR)/Makefile: $(DL_DIR)/$(SYSLINUX_SOURCE) $(SYSLINUX_PATCH) + $(SYSLINUX_CAT) $(DL_DIR)/$(SYSLINUX_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - + toolchain/patch-kernel.sh $(SYSLINUX_DIR) boot/syslinux/ \*.patch + touch -c $@ + +$(SYSLINUX_DIR)/isolinux.bin $(SYSLINUX_DIR)/pxelinux.bin: $(SYSLINUX_DIR)/Makefile + $(MAKE) CC="$(HOSTCC)" AR="$(HOSTAR)" -C $(SYSLINUX_DIR) + touch -c $@ + +syslinux: $(SYSLINUX_DIR)/isolinux.bin +pxelinux: $(SYSLINUX_DIR)/pxelinux.bin + +pxelinux-clean syslinux-clean: + rm -f $(SYSLINUX_DIR)/isolinux.bin $(SYSLINUX_DIR)/pxelinux.bin + -$(MAKE) -C $(SYSLINUX_DIR) clean + +pxelinux-dirclean syslinux-dirclean: + rm -rf $(SYSLINUX_DIR) + +endif + +############################################################# +# +# Toplevel Makefile options +# +############################################################# +ifeq ($(BR2_TARGET_SYSLINUX),y) +TARGETS+=syslinux +endif +ifeq ($(BR2_TARGET_PXELINUX),y) +TARGETS+=pxelinux +endif -- cgit v1.2.3