1default_build_CC = gcc 2default_build_CXX = g++ 3default_build_AR = ar 4default_build_RANLIB = ranlib 5default_build_STRIP = strip 6default_build_NM = nm 7default_build_OTOOL = otool 8default_build_INSTALL_NAME_TOOL = install_name_tool 9 10define add_build_tool_func 11build_$(build_os)_$1 ?= $$(default_build_$1) 12build_$(build_arch)_$(build_os)_$1 ?= $$(build_$(build_os)_$1) 13build_$1=$$(build_$(build_arch)_$(build_os)_$1) 14endef 15$(foreach var,CC CXX AR RANLIB NM STRIP SHA256SUM DOWNLOAD OTOOL INSTALL_NAME_TOOL,$(eval $(call add_build_tool_func,$(var)))) 16define add_build_flags_func 17build_$(build_arch)_$(build_os)_$1 += $(build_$(build_os)_$1) 18build_$1=$$(build_$(build_arch)_$(build_os)_$1) 19endef 20$(foreach flags, CFLAGS CXXFLAGS LDFLAGS, $(eval $(call add_build_flags_func,$(flags)))) 21