Makefile 965 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #
  2. # Copyright (C) 2018 Marvell International Ltd.
  3. #
  4. # SPDX-License-Identifier: BSD-3-Clause
  5. # https://spdx.org/licenses
  6. PROJECT = doimage
  7. OBJECTS = doimage.o
  8. HOSTCCFLAGS = -Wall -Werror
  9. ifeq (${DEBUG},1)
  10. HOSTCCFLAGS += -g -O0 -DDEBUG
  11. else
  12. HOSTCCFLAGS += -O2
  13. endif
  14. ifeq (${MARVELL_SECURE_BOOT},1)
  15. DOIMAGE_CC_FLAGS := -DCONFIG_MVEBU_SECURE_BOOT
  16. DOIMAGE_LD_FLAGS := -lconfig -lmbedtls -lmbedcrypto -lmbedx509
  17. endif
  18. HOSTCCFLAGS += ${DOIMAGE_CC_FLAGS}
  19. # Make soft links and include from local directory otherwise wrong headers
  20. # could get pulled in from firmware tree.
  21. INCLUDE_PATHS = -I.
  22. HOSTCC ?= gcc
  23. RM := rm -rf
  24. .PHONY: all clean
  25. all: ${PROJECT}
  26. ${PROJECT}: ${OBJECTS} Makefile
  27. @echo " HOSTLD $@"
  28. ${Q}${HOSTCC} ${OBJECTS} ${DOIMAGE_LD_FLAGS} -o $@
  29. @echo
  30. @echo "Built $@ successfully"
  31. @echo
  32. %.o: %.c Makefile
  33. @echo " HOSTCC $<"
  34. ${Q}${HOSTCC} -c ${HOSTCCFLAGS} ${INCLUDE_PATHS} $< -o $@
  35. clean:
  36. ${Q}${RM} ${PROJECT}
  37. ${Q}${RM} ${OBJECTS}