Makefile
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:2k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. #
  2. # arch/ppc/boot/Makefile
  3. #
  4. # This file is subject to the terms and conditions of the GNU General Public
  5. # License.  See the file "COPYING" in the main directory of this archive
  6. # for more details.
  7. #
  8. # Copyright (C) 1994 by Linus Torvalds
  9. # Adapted for PowerPC by Gary Thomas
  10. # modified by Cort (cort@cs.nmt.edu)
  11. #
  12. GZIP_FLAGS = -v9f
  13. CFLAGS += -fno-builtin -D__BOOTER__ -I$(TOPDIR)/arch/$(ARCH)/boot/include
  14. AFLAGS += -D__BOOTER__
  15. OBJCOPY_ARGS = -O elf32-powerpc
  16. MKIMAGE := ./utils/mkimage.wrapper
  17. lib/zlib.a: lib/zlib.c
  18. $(MAKE) -C lib
  19. images/vmlinux.gz: $(TOPDIR)/vmlinux
  20. $(MAKE) -C images vmlinux.gz
  21. # Subdirs and tools needed for each.  Assume we always need to go into
  22. # 'simple' unless told otherwise.
  23. subdir-y := lib common simple
  24. subdir-$(CONFIG_ALL_PPC) := chrp pmac prep
  25. tools-$(CONFIG_ALL_PPC) := addnote mknote hack-coff mkprep
  26. tools-$(CONFIG_4xx) := mktree
  27. tools-$(CONFIG_SPRUCE) := mktree
  28. # These are dirs we don't want to go into on BOOT_TARGETS.  We have them for
  29. # the 'depend' stage.
  30. NONBOOT := lib common
  31. # These are the subdirs we want to use
  32. BOOTDIRS = $(filter-out $(NONBOOT), $(subdir-y))
  33. # This will make the tools we need.  We do it like this to ensure that we use
  34. # HOSTCC. -- Tom
  35. maketools:
  36. $(MAKE) -C utils $(tools-y)
  37. # The targets all boards support for boot images.
  38. BOOT_TARGETS = zImage zImage.initrd znetboot znetboot.initrd
  39. $(BOOT_TARGETS): vmapus lib/zlib.a images/vmlinux.gz maketools
  40. ifneq ($(BOOTDIRS),)
  41. for d in $(BOOTDIRS); do $(MAKE) -C $$d $@; done
  42. endif
  43. vmapus: $(TOPDIR)/vmlinux
  44. ifdef CONFIG_APUS
  45. $(STRIP) $(TOPDIR)/vmlinux -o images/vmapus
  46. gzip $(GZIP_FLAGS) images/vmapus
  47. endif
  48. # Make an image for PPCBoot
  49. pImage: images/vmlinux.gz
  50. $(MKIMAGE) -A ppc -O linux -T kernel -C gzip -a 00000000 -e 00000000 
  51. -n 'Linux-$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)' 
  52. -d $< images/vmlinux.PPCBoot
  53. ln -sf vmlinux.PPCBoot images/pImage
  54. # These are subdirs with files not normally rm'ed. -- Tom
  55. clean:
  56. $(MAKE) -C images clean
  57. $(MAKE) -C utils clean
  58. include $(TOPDIR)/Rules.make