messages.mk 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. NULLSTRING :=
  2. ECHO_PIPEFAIL := set -o pipefail;
  3. _THEOS_VERBOSE := $(call __theos_bool,$(or $(messages),$(MESSAGES)))
  4. ifeq ($(_THEOS_VERBOSE),$(_THEOS_TRUE))
  5. ECHO_BEGIN = (
  6. ECHO_NOTHING = $(ECHO_PIPEFAIL) (
  7. ECHO_END = )
  8. ifeq ($(call __executable,unbuffer),$(_THEOS_TRUE))
  9. ECHO_UNBUFFERED = unbuffer $(NULLSTRING)
  10. else
  11. ECHO_UNBUFFERED =
  12. endif
  13. STDERR_NULL_REDIRECT =
  14. STDOUT_NULL_REDIRECT =
  15. else
  16. ECHO_BEGIN = @(
  17. ECHO_NOTHING = @(
  18. ECHO_UNBUFFERED =
  19. ECHO_END = )
  20. STDERR_NULL_REDIRECT = 2> /dev/null
  21. STDOUT_NULL_REDIRECT = > /dev/null
  22. endif
  23. PRINT_FORMAT = printf "\e[0;36m==> \e[1;36mNotice:\e[m %s\n"
  24. PRINT_FORMAT_MAKING = printf "\e[1;31m> \e[1;3;39m%s…\e[m\n"
  25. PRINT_FORMAT_STAGE = printf "\e[0;3%im==> \e[1;39m%s…\e[m\n"
  26. PRINT_FORMAT_WARNING = printf "\e[0;33m==> \e[1;33mWarning:\e[m %s\n"
  27. PRINT_FORMAT_ERROR = printf "\e[0;31m==> \e[1;31mError:\e[m %s\n"
  28. ECHO_PREPROCESSING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 1 "Preprocessing $<"$(ECHO_END); $(ECHO_PIPEFAIL) (
  29. ifneq ($(THEOS_CURRENT_ARCH),)
  30. ECHO_COMPILING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 2 "Compiling $< ($(THEOS_CURRENT_ARCH))"$(ECHO_END); $(ECHO_PIPEFAIL) (
  31. ECHO_LINKING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 3 "Linking $(_THEOS_CURRENT_TYPE) $(THEOS_CURRENT_INSTANCE) ($(THEOS_CURRENT_ARCH))"$(ECHO_END); $(ECHO_PIPEFAIL) (
  32. ECHO_LINKING_WITH_STRIP = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 3 "Linking $(_THEOS_CURRENT_TYPE) $(THEOS_CURRENT_INSTANCE) (with strip, $(THEOS_CURRENT_ARCH))"$(ECHO_END); $(ECHO_PIPEFAIL) (
  33. ECHO_STRIPPING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 4 "Stripping $(THEOS_CURRENT_INSTANCE) ($(THEOS_CURRENT_ARCH))"$(ECHO_END); $(ECHO_PIPEFAIL) (
  34. else
  35. ECHO_COMPILING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 2 "Compiling $<"$(ECHO_END); $(ECHO_PIPEFAIL) (
  36. ECHO_LINKING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 3 "Linking $(_THEOS_CURRENT_TYPE) $(THEOS_CURRENT_INSTANCE)"$(ECHO_END); $(ECHO_PIPEFAIL) (
  37. ECHO_LINKING_WITH_STRIP = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 3 "Linking $(_THEOS_CURRENT_TYPE) $(THEOS_CURRENT_INSTANCE) (with strip)"$(ECHO_END); $(ECHO_PIPEFAIL) (
  38. ECHO_STRIPPING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 4 "Stripping $(THEOS_CURRENT_INSTANCE)"$(ECHO_END); $(ECHO_PIPEFAIL) (
  39. endif
  40. ECHO_MERGING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 4 "Merging $(_THEOS_CURRENT_TYPE) $(THEOS_CURRENT_INSTANCE)"$(ECHO_END); $(ECHO_PIPEFAIL) (
  41. ECHO_SIGNING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 4 "Signing $(THEOS_CURRENT_INSTANCE)"$(ECHO_END); $(ECHO_PIPEFAIL) (
  42. ECHO_COPYING_RESOURCE_FILES = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 5 "Copying resource files into the $(_THEOS_CURRENT_TYPE) wrapper"$(ECHO_END); $(ECHO_PIPEFAIL) (
  43. ECHO_COPYING_RESOURCE_DIRS = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 5 "Copying resource directories into the $(_THEOS_CURRENT_TYPE) wrapper"$(ECHO_END); $(ECHO_PIPEFAIL) (
  44. ECHO_PRE_UNLOADING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 6 "Unloading $(PREINSTALL_TARGET_PROCESSES)"$(ECHO_END); $(ECHO_PIPEFAIL) (
  45. ECHO_INSTALLING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 6 "Installing"$(ECHO_END); $(ECHO_PIPEFAIL) (
  46. ECHO_UNLOADING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 6 "Unloading $(INSTALL_TARGET_PROCESSES)"$(ECHO_END); $(ECHO_PIPEFAIL) (
  47. ECHO_CLEANING = $(ECHO_BEGIN)$(PRINT_FORMAT_STAGE) 6 "Cleaning"$(ECHO_END); $(ECHO_PIPEFAIL) (
  48. WARNING_EMPTY_LINKING = @$(PRINT_FORMAT_WARNING) "No files to link. Please check your Makefile! Make sure you set $(THEOS_CURRENT_INSTANCE)_FILES (or similar variables)"
  49. # (bundle)
  50. NOTICE_EMPTY_LINKING = @$(PRINT_FORMAT_WARNING) "No files to link - creating a bundle containing only resources"
  51. $(eval $(call __mod,messages.mk))