Makefile 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. ############################################################################
  2. # graphics/Makefile
  3. #
  4. # Copyright (C) 2008-2009, 2011-2012 Gregory Nutt. All rights reserved.
  5. # Author: Gregory Nutt <gnutt@nuttx.org>
  6. #
  7. # Redistribution and use in source and binary forms, with or without
  8. # modification, are permitted provided that the following conditions
  9. # are met:
  10. #
  11. # 1. Redistributions of source code must retain the above copyright
  12. # notice, this list of conditions and the following disclaimer.
  13. # 2. Redistributions in binary form must reproduce the above copyright
  14. # notice, this list of conditions and the following disclaimer in
  15. # the documentation and/or other materials provided with the
  16. # distribution.
  17. # 3. Neither the name NuttX nor the names of its contributors may be
  18. # used to endorse or promote products derived from this software
  19. # without specific prior written permission.
  20. #
  21. # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  22. # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  23. # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
  24. # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
  25. # COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
  26. # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
  27. # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
  28. # OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
  29. # AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  30. # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
  31. # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  32. # POSSIBILITY OF SUCH DAMAGE.
  33. #
  34. ############################################################################
  35. -include $(TOPDIR)/Make.defs
  36. DEPPATH = --dep-path .
  37. ifeq ($(WINTOOL),y)
  38. INCDIROPT = -w
  39. endif
  40. include nxglib/Make.defs
  41. DEPPATH += --dep-path nxglib
  42. CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)/graphics/nxglib}
  43. include nxbe/Make.defs
  44. DEPPATH += --dep-path nxbe
  45. CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)/graphics/nxbe}
  46. ifeq ($(CONFIG_NX_MULTIUSER),y)
  47. include nxmu/Make.defs
  48. DEPPATH += --dep-path nxmu
  49. CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)/graphics/nxmu}
  50. else
  51. include nxsu/Make.defs
  52. DEPPATH += --dep-path nxsu
  53. CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)/graphics/nxsu}
  54. endif
  55. include nxtk/Make.defs
  56. DEPPATH += --dep-path nxtk
  57. CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)/graphics/nxtk}
  58. include nxfonts/Make.defs
  59. DEPPATH += --dep-path nxfonts
  60. CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)/graphics/nxfonts}
  61. ifeq ($(CONFIG_NXCONSOLE),y)
  62. include nxconsole/Make.defs
  63. DEPPATH += --dep-path nxconsole
  64. CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)/graphics/nxconsole}
  65. endif
  66. ASRCS = $(NXGLIB_ASRCS) $(NXBE_ASRCS) $(NX_ASRCS) $(NXTK_ASRCS) $(NXFONTS_ASRCS) $(NXCON_ASRCS)
  67. AOBJS = $(ASRCS:.S=$(OBJEXT))
  68. CSRCS = $(NXGLIB_CSRCS) $(NXBE_CSRCS) $(NX_CSRCS) $(NXTK_CSRCS) $(NXFONTS_CSRCS) $(NXCON_CSRCS)
  69. COBJS = $(CSRCS:.c=$(OBJEXT))
  70. SRCS = $(ASRCS) $(CSRCS)
  71. OBJS = $(AOBJS) $(COBJS)
  72. BIN = libgraphics$(LIBEXT)
  73. ifeq ($(CONFIG_NX_MULTIUSER),y)
  74. VPATH = nxglib:nxbe:nxmu:nxtk:nxfonts:nxconsole
  75. else
  76. VPATH = nxglib:nxbe:nxsu:nxtk:nxfonts:nxconsole
  77. endif
  78. all: mklibgraphics
  79. .PHONY : context depend clean distclean mklibgraphics gensources gen1bppsources \
  80. gen2bppsource gen4bppsource gen8bppsource gen16bppsource gen24bppsource \
  81. gen32bppsources genfontsources
  82. gen1bppsources:
  83. $(Q) $(MAKE) -C nxglib -f Makefile.sources TOPDIR=$(TOPDIR) NXGLIB_BITSPERPIXEL=1 EXTRADEFINES=$(EXTRADEFINES)
  84. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_BITSPERPIXEL=1 EXTRADEFINES=$(EXTRADEFINES)
  85. gen2bppsource:
  86. $(Q) $(MAKE) -C nxglib -f Makefile.sources TOPDIR=$(TOPDIR) NXGLIB_BITSPERPIXEL=2 EXTRADEFINES=$(EXTRADEFINES)
  87. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_BITSPERPIXEL=2 EXTRADEFINES=$(EXTRADEFINES)
  88. gen4bppsource:
  89. $(Q) $(MAKE) -C nxglib -f Makefile.sources TOPDIR=$(TOPDIR) NXGLIB_BITSPERPIXEL=4 EXTRADEFINES=$(EXTRADEFINES)
  90. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_BITSPERPIXEL=4 EXTRADEFINES=$(EXTRADEFINES)
  91. gen8bppsource:
  92. $(Q) $(MAKE) -C nxglib -f Makefile.sources TOPDIR=$(TOPDIR) NXGLIB_BITSPERPIXEL=8 EXTRADEFINES=$(EXTRADEFINES)
  93. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_BITSPERPIXEL=8 EXTRADEFINES=$(EXTRADEFINES)
  94. gen16bppsource:
  95. $(Q) $(MAKE) -C nxglib -f Makefile.sources TOPDIR=$(TOPDIR) NXGLIB_BITSPERPIXEL=16 EXTRADEFINES=$(EXTRADEFINES)
  96. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_BITSPERPIXEL=16 EXTRADEFINES=$(EXTRADEFINES)
  97. gen24bppsource:
  98. $(Q) $(MAKE) -C nxglib -f Makefile.sources TOPDIR=$(TOPDIR) NXGLIB_BITSPERPIXEL=24 EXTRADEFINES=$(EXTRADEFINES)
  99. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_BITSPERPIXEL=24 EXTRADEFINES=$(EXTRADEFINES)
  100. gen32bppsources:
  101. $(Q) $(MAKE) -C nxglib -f Makefile.sources TOPDIR=$(TOPDIR) NXGLIB_BITSPERPIXEL=32 EXTRADEFINES=$(EXTRADEFINES)
  102. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_BITSPERPIXEL=32 EXTRADEFINES=$(EXTRADEFINES)
  103. genfontsources:
  104. ifeq ($(CONFIG_NXFONT_MONO5X8),y)
  105. @$(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=18 EXTRADEFINES=$(EXTRADEFINES)
  106. endif
  107. ifeq ($(CONFIG_NXFONT_SANS23X27),y)
  108. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=1 EXTRADEFINES=$(EXTRADEFINES)
  109. endif
  110. ifeq ($(CONFIG_NXFONT_SANS22X29),y)
  111. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=2 EXTRADEFINES=$(EXTRADEFINES)
  112. endif
  113. ifeq ($(CONFIG_NXFONT_SANS28X37),y)
  114. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=3 EXTRADEFINES=$(EXTRADEFINES)
  115. endif
  116. ifeq ($(CONFIG_NXFONT_SANS39X48),y)
  117. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=4 EXTRADEFINES=$(EXTRADEFINES)
  118. endif
  119. ifeq ($(CONFIG_NXFONT_SANS17X23B),y)
  120. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=16 EXTRADEFINES=$(EXTRADEFINES)
  121. endif
  122. ifeq ($(CONFIG_NXFONT_SANS20X27B),y)
  123. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=17 EXTRADEFINES=$(EXTRADEFINES)
  124. endif
  125. ifeq ($(CONFIG_NXFONT_SANS22X29B),y)
  126. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=5 EXTRADEFINES=$(EXTRADEFINES)
  127. endif
  128. ifeq ($(CONFIG_NXFONT_SANS28X37B),y)
  129. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=6 EXTRADEFINES=$(EXTRADEFINES)
  130. endif
  131. ifeq ($(CONFIG_NXFONT_SANS40X49B),y)
  132. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=7 EXTRADEFINES=$(EXTRADEFINES)
  133. endif
  134. ifeq ($(CONFIG_NXFONT_SERIF22X29),y)
  135. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=8 EXTRADEFINES=$(EXTRADEFINES)
  136. endif
  137. ifeq ($(CONFIG_NXFONT_SERIF29X37),y)
  138. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=9 EXTRADEFINES=$(EXTRADEFINES)
  139. endif
  140. ifeq ($(CONFIG_NXFONT_SERIF38X48),y)
  141. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=10 EXTRADEFINES=$(EXTRADEFINES)
  142. endif
  143. ifeq ($(CONFIG_NXFONT_SERIF22X28B),y)
  144. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=11 EXTRADEFINES=$(EXTRADEFINES)
  145. endif
  146. ifeq ($(CONFIG_NXFONT_SERIF27X38B),y)
  147. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=12 EXTRADEFINES=$(EXTRADEFINES)
  148. endif
  149. ifeq ($(CONFIG_NXFONT_SERIF38X49B),y)
  150. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=13 EXTRADEFINES=$(EXTRADEFINES)
  151. endif
  152. ifeq ($(CONFIG_NXFONT_SANS17X22),y)
  153. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=14 EXTRADEFINES=$(EXTRADEFINES)
  154. endif
  155. ifeq ($(CONFIG_NXFONT_SANS20X26),y)
  156. $(Q) $(MAKE) -C nxfonts -f Makefile.sources TOPDIR=$(TOPDIR) NXFONTS_FONTID=15 EXTRADEFINES=$(EXTRADEFINES)
  157. endif
  158. gensources: gen1bppsources gen2bppsource gen4bppsource gen8bppsource gen16bppsource gen24bppsource gen32bppsources genfontsources
  159. $(AOBJS): %$(OBJEXT): %.S
  160. $(call ASSEMBLE, $<, $@)
  161. $(COBJS): %$(OBJEXT): %.c
  162. $(call COMPILE, $<, $@)
  163. $(BIN): $(OBJS)
  164. $(call ARCHIVE, $@, $(OBJS))
  165. mklibgraphics: gensources $(BIN)
  166. .depend: gensources Makefile $(SRCS)
  167. $(Q) $(MKDEP) $(DEPPATH) "$(CC)" -- $(CFLAGS) -- $(SRCS) >Make.dep
  168. $(Q) touch $@
  169. depend: .depend
  170. context: gensources
  171. clean:
  172. $(Q) $(MAKE) -C nxglib -f Makefile.sources clean TOPDIR=$(TOPDIR) EXTRADEFINES=$(EXTRADEFINES)
  173. $(Q) $(MAKE) -C nxfonts -f Makefile.sources clean TOPDIR=$(TOPDIR) EXTRADEFINES=$(EXTRADEFINES)
  174. $(call DELFILE, $(BIN))
  175. $(call CLEAN)
  176. distclean: clean
  177. $(Q) $(MAKE) -C nxglib -f Makefile.sources distclean TOPDIR=$(TOPDIR) EXTRADEFINES=$(EXTRADEFINES)
  178. $(Q) $(MAKE) -C nxfonts -f Makefile.sources distclean TOPDIR=$(TOPDIR) EXTRADEFINES=$(EXTRADEFINES)
  179. $(call DELFILE, Make.dep)
  180. $(call DELFILE, .depend)
  181. -include Make.dep