Makefile 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. # SPDX-License-Identifier: GPL-2.0
  2. # Makefile for the Linux logos
  3. obj-$(CONFIG_LOGO) += logo.o
  4. obj-$(CONFIG_LOGO_LINUX_MONO) += logo_linux_mono.o
  5. obj-$(CONFIG_LOGO_LINUX_VGA16) += logo_linux_vga16.o
  6. obj-$(CONFIG_LOGO_LINUX_CLUT224) += logo_linux_clut224.o
  7. obj-$(CONFIG_LOGO_DEC_CLUT224) += logo_dec_clut224.o
  8. obj-$(CONFIG_LOGO_MAC_CLUT224) += logo_mac_clut224.o
  9. obj-$(CONFIG_LOGO_PARISC_CLUT224) += logo_parisc_clut224.o
  10. obj-$(CONFIG_LOGO_SGI_CLUT224) += logo_sgi_clut224.o
  11. obj-$(CONFIG_LOGO_SUN_CLUT224) += logo_sun_clut224.o
  12. obj-$(CONFIG_LOGO_SUPERH_MONO) += logo_superh_mono.o
  13. obj-$(CONFIG_LOGO_SUPERH_VGA16) += logo_superh_vga16.o
  14. obj-$(CONFIG_LOGO_SUPERH_CLUT224) += logo_superh_clut224.o
  15. obj-$(CONFIG_SPU_BASE) += logo_spe_clut224.o
  16. # How to generate logo's
  17. # Use logo-cfiles to retrieve list of .c files to be built
  18. logo-cfiles = $(notdir $(patsubst %.$(2), %.c, \
  19. $(wildcard $(srctree)/$(src)/*$(1).$(2))))
  20. # Mono logos
  21. extra-y += $(call logo-cfiles,_mono,pbm)
  22. # VGA16 logos
  23. extra-y += $(call logo-cfiles,_vga16,ppm)
  24. # 224 Logos
  25. extra-y += $(call logo-cfiles,_clut224,ppm)
  26. # Gray 256
  27. extra-y += $(call logo-cfiles,_gray256,pgm)
  28. pnmtologo := scripts/pnmtologo
  29. # Create commands like "pnmtologo -t mono -n logo_mac_mono -o ..."
  30. quiet_cmd_logo = LOGO $@
  31. cmd_logo = $(pnmtologo) \
  32. -t $(patsubst $*_%,%,$(notdir $(basename $<))) \
  33. -n $(notdir $(basename $<)) -o $@ $<
  34. $(obj)/%_mono.c: $(src)/%_mono.pbm $(pnmtologo) FORCE
  35. $(call if_changed,logo)
  36. $(obj)/%_vga16.c: $(src)/%_vga16.ppm $(pnmtologo) FORCE
  37. $(call if_changed,logo)
  38. $(obj)/%_clut224.c: $(src)/%_clut224.ppm $(pnmtologo) FORCE
  39. $(call if_changed,logo)
  40. $(obj)/%_gray256.c: $(src)/%_gray256.pgm $(pnmtologo) FORCE
  41. $(call if_changed,logo)
  42. # Files generated that shall be removed upon make clean
  43. clean-files := *.o *_mono.c *_vga16.c *_clut224.c *_gray256.c