Makefile 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. ##############################################################################
  2. #
  3. # Copyright 2012 - 2020 Vivante Corporation, Santa Clara, California.
  4. # All Rights Reserved.
  5. #
  6. # Permission is hereby granted, free of charge, to any person obtaining
  7. # a copy of this software and associated documentation files (the
  8. # 'Software'), to deal in the Software without restriction, including
  9. # without limitation the rights to use, copy, modify, merge, publish,
  10. # distribute, sub license, and/or sell copies of the Software, and to
  11. # permit persons to whom the Software is furnished to do so, subject
  12. # to the following conditions:
  13. #
  14. # The above copyright notice and this permission notice (including the
  15. # next paragraph) shall be included in all copies or substantial
  16. # portions of the Software.
  17. #
  18. # THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
  19. # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  20. # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
  21. # IN NO EVENT SHALL VIVANTE AND/OR ITS SUPPLIERS BE LIABLE FOR ANY
  22. # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
  23. # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
  24. # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  25. #
  26. ##############################################################################
  27. ################################################################################
  28. # Macros.
  29. AQROOT ?= $(shell pwd)
  30. AQARCH ?= $(AQROOT)/arch/XAQ2
  31. AQVGARCH ?= $(AQROOT)/arch/GC350
  32. export AQROOT AQARCH AQVGARCH
  33. ################################################################################
  34. # Include common definitions.
  35. ifneq ($(BUILD_SYSTEM),YOCTO_BUILD)
  36. include ../.param
  37. endif
  38. include $(AQROOT)/makefile.linux.def
  39. ################################################################################
  40. # Components of the project.
  41. # app
  42. HAL_TEST := $(HAL_TEST_DIR)
  43. HAL_UNIT_TEST := $(AQROOT)/test/hal/common/UnitTest
  44. GFX_TEST := $(GFX_TEST_DIR)
  45. VVLAUNCHER := $(VVLAUNCHER_DIR)
  46. OVX_TEST := $(AQROOT)/test/ovx
  47. ifneq ($(VIVANTE_NO_VG),1)
  48. TIGER := $(AQROOT)/test/vg11/tiger
  49. endif
  50. ifeq ($(USE_VDK),0)
  51. VDK_TEST :=
  52. else
  53. VDK_TEST += $(VDK_TEST_DIR)
  54. endif
  55. CL11_TEST := $(CL11_TEST_DIR)
  56. CL11_UNIT := $(CL11_UNIT_DIR)
  57. ifeq ($(STATIC_LINK),1)
  58. APP_HAL_LIST := $(HAL_TEST)
  59. ifneq ($(VIVANTE_NO_VG),1)
  60. APP_OVG11_LIST := $(TIGER)
  61. endif
  62. APP_GFX_LIST :=
  63. else
  64. APP_HAL_LIST := $(HAL_TEST) $(HAL_UNIT_TEST)
  65. APP_GFX_LIST := $(GFX_TEST)
  66. ifneq ($(VIVANTE_NO_VG),1)
  67. APP_OVG11_LIST := $(TIGER)
  68. endif
  69. endif
  70. ifeq ($(USE_OPENCL),1)
  71. APP_OCL11_LIST := $(CL11_TEST)
  72. else
  73. APP_OCL11_LIST :=
  74. endif
  75. APP_VDK_LIST += $(VDK_TEST) $(TIGER) $(VVLAUNCHER)
  76. APP_OVX_LIST := $(OVX_TEST)
  77. APP_LIST :=
  78. ifeq ($(VIVANTE_ENABLE_2D),1)
  79. APP_LIST += $(APP_HAL_LIST)
  80. ifneq ($(STATIC_LINK),1)
  81. APP_LIST += $(APP_GFX_LIST)
  82. endif
  83. endif
  84. ifeq ($(VIVANTE_ENABLE_3D),1)
  85. ifeq ($(USE_VDK),1)
  86. APP_LIST += $(APP_VDK_LIST)
  87. else
  88. ifneq ($(VIVANTE_NO_VG),1)
  89. APP_LIST += $(APP_OVG11_LIST)
  90. endif
  91. endif
  92. ifeq ($(USE_OPENCL),1)
  93. APP_LIST += $(APP_OCL11_LIST)
  94. endif
  95. ifeq ($(USE_OPENVX),1)
  96. APP_LIST += $(APP_OVX_LIST)
  97. endif
  98. ifeq ($(USE_OPENVX),1)
  99. APP_LIST += $(APP_OVX_LIST)
  100. endif
  101. endif
  102. ifeq ($(VIVANTE_ENABLE_VG),1)
  103. ifneq ($(VIVANTE_NO_VG), 1)
  104. APP_LIST += $(APP_OVG11_LIST)
  105. endif
  106. endif
  107. ################################################################################
  108. # Define the macros used in the common makefile.
  109. SUBDIRS := $(APP_LIST)
  110. MAIN_MODULE := $(APP_LIST)
  111. OBJ_DIR := $(SDK_DIR)
  112. ################################################################################
  113. # Targets
  114. .PHONY: all clean install $(SUBDIRS)
  115. all: $(MAIN_MODULE)
  116. clean: V_TARGET := clean
  117. install: V_TARGET := install
  118. clean: all
  119. @rm -rf $(SDK_DIR)
  120. install: all
  121. @mkdir -p $(SDK_DIR)
  122. @-cp -f $(AQROOT)/release/SW/ReadMe_Linux_SDK.txt $(SDK_DIR)/ReadMe.txt
  123. $(SUBDIRS):
  124. @test ! -d $@ || $(MAKE) -f makefile.linux -C $@ $(V_TARGET) gcdSTATIC_LINK=$(gcdSTATIC_LINK)
  125. @test ! -d $@ || $(MAKE) -f makefile.linux -C $@ $(V_TARGET) 2IN=1 gcdSTATIC_LINK=$(gcdSTATIC_LINK)
  126. .PHONY: $(GFX_TEST)
  127. $(GFX_TEST):
  128. ifeq (,$(DFB_DIR))
  129. @echo "DFB_DIR variable was not exported; skipped gfx test building"
  130. endif
  131. ################################################################################
  132. # Supported targets.
  133. ifeq ($(VIVANTE_ENABLE_2D),1)
  134. gfx_test: $(GFX_TEST)
  135. hal_test: $(HAL_TEST)
  136. hal_unit: $(HAL_UNIT_TEST)
  137. hal_test_all: $(HAL_TEST) $(HAL_UNIT_TEST)
  138. chipinfo: $(CHIPINFO)
  139. endif
  140. ifeq ($(USE_VDK), 0)
  141. tutorial: $(TUTORIAL)
  142. else
  143. vdktest: $(VDK_TEST)
  144. vv_launcher: $(VVLAUNCHER)
  145. endif
  146. ifeq ($(USE_OPENCL), 1)
  147. cl11_test: $(CL11_TEST)
  148. cl11_unit: $(CL11_UNIT)
  149. endif
  150. ifeq ($(USE_OPENVX), 1)
  151. ovx_test: $(OVX_TEST)
  152. endif
  153. ifneq ($(VIVANTE_NO_VG), 1)
  154. ovg11_tst: $(APP_OVG11_LIST)
  155. tiger: $(TIGER)
  156. endif