#
# arch/ppc/boot/Makefile
#
# This file is subject to the terms and conditions of the GNU General Public
# License.  See the file "COPYING" in the main directory of this archive
# for more details.
#
# Copyright (C) 1994 by Linus Torvalds
# Adapted for PowerPC by Gary Thomas
# modified by Cort (cort@cs.nmt.edu)
#

CFLAGS	 	+= -fno-builtin -D__BOOTER__ -Iarch/$(ARCH)/boot/include
HOSTCFLAGS	+= -Iarch/$(ARCH)/boot/include

BOOT_TARGETS	= zImage zImage.initrd znetboot znetboot.initrd

bootdir-y			:= simple
bootdir-$(CONFIG_PPC_OF)	+= openfirmware
subdir-y			:= lib common images
subdir-$(CONFIG_PPC_OF)		+= of1275

# for cleaning
subdir-				+= simple openfirmware

hostprogs-y := $(addprefix utils/, addnote mknote hack-coff mkprep mkbugboot mktree)

.PHONY: $(BOOT_TARGETS) $(bootdir-y)

$(BOOT_TARGETS): $(bootdir-y)

$(bootdir-y): $(addprefix $(obj)/,$(subdir-y)) \
		$(addprefix $(obj)/,$(hostprogs-y))
	$(Q)$(MAKE) $(build)=$(obj)/$@ $(MAKECMDGOALS)

mkvmlinuz_support_install:
	# mkvmlinuz support, based on work done originally by Jens Schmalzing <jensen@debian.org>
	mkdir -p $(INSTALL_MKVMLINUZ)/boot
	install -m 644 -o root -g root ld.script openfirmware/note $(INSTALL_MKVMLINUZ)/boot

	mkdir -p $(INSTALL_MKVMLINUZ)/lib
	install -m 644 -o root -g root ../../../lib/lib.a $(INSTALL_MKVMLINUZ)/lib
	install -m 644 -o root -g root lib/lib.a $(INSTALL_MKVMLINUZ)/lib/ppc.a
	install -m 644 -o root -g root common/lib.a $(INSTALL_MKVMLINUZ)/lib/common.a
	install -m 644 -o root -g root of1275/lib.a $(INSTALL_MKVMLINUZ)/lib/of.a

	mkdir -p $(INSTALL_MKVMLINUZ)/obj/openfirmware
	install -m 644 -o root -g root openfirmware/*.o $(INSTALL_MKVMLINUZ)/obj/openfirmware
	rm -f $(INSTALL_MKVMLINUZ)/obj/openfirmware/image*

	mkdir -p $(INSTALL_MKVMLINUZ)/obj/simple
	install -m 644 -o root -g root simple/*.o $(INSTALL_MKVMLINUZ)/obj/simple
	rm -f $(INSTALL_MKVMLINUZ)/obj/simple/image*.o

	mkdir -p $(INSTALL_MKVMLINUZ)/utils
	install -m 755 -o root -g root utils/addnote $(INSTALL_MKVMLINUZ)/utils
	install -m 755 -o root -g root utils/hack-coff $(INSTALL_MKVMLINUZ)/utils
	install -m 755 -o root -g root utils/mkbugboot $(INSTALL_MKVMLINUZ)/utils
	install -m 755 -o root -g root utils/mknote $(INSTALL_MKVMLINUZ)/utils
	install -m 755 -o root -g root utils/mkprep $(INSTALL_MKVMLINUZ)/utils
	install -m 755 -o root -g root utils/mktree $(INSTALL_MKVMLINUZ)/utils

