Makefile 953 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #
  2. # Copyright (C) 2019 Remi Pommarel <repk@triplefau.lt>
  3. #
  4. # SPDX-License-Identifier: BSD-3-Clause
  5. # https://spdx.org/licenses
  6. #
  7. toolchains := host
  8. MAKE_HELPERS_DIRECTORY := ../../make_helpers/
  9. include ${MAKE_HELPERS_DIRECTORY}build_macros.mk
  10. include ${MAKE_HELPERS_DIRECTORY}build_env.mk
  11. include ${MAKE_HELPERS_DIRECTORY}toolchain.mk
  12. PROJECT := doimage${BIN_EXT}
  13. OBJECTS := doimage.o
  14. V := 0
  15. HOSTCCFLAGS := -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE
  16. ifeq (${DEBUG},1)
  17. HOSTCCFLAGS += -g -O0 -DDEBUG
  18. else
  19. HOSTCCFLAGS += -O2
  20. endif
  21. ifeq (${V},0)
  22. Q := @
  23. else
  24. Q :=
  25. endif
  26. .PHONY: all clean distclean
  27. all: ${PROJECT}
  28. ${PROJECT}: ${OBJECTS} Makefile
  29. @echo " HOSTLD $@"
  30. ${Q}$(host-cc) ${OBJECTS} -o $@
  31. @${ECHO_BLANK_LINE}
  32. @echo "Built $@ successfully"
  33. @${ECHO_BLANK_LINE}
  34. %.o: %.c Makefile
  35. @echo " HOSTCC $<"
  36. ${Q}$(host-cc) -c ${HOSTCCFLAGS} $< -o $@
  37. clean:
  38. $(call SHELL_DELETE_ALL, ${PROJECT} ${OBJECTS})
  39. distclean: clean