Old thread, I know, but I just read it. :)
He got the idea from Backbone, which has an internal FRAMEWORKS variable,
written thusly:
(from /Backbone.make, in the System module)
BBFRAMEWORKS=$(TOP_SRCDIR)/Frameworks
#
# Framework stuff
#
# To use this, set the variable FRAMEWORKS to a space-separated list of
# framework BASE NAMES (no .framework extension). All project types that
# link with shlibs will automatically link with the frameworks named in
# FRAMEWORKS.
#
define FRAMEWORK_link
fw := $(1)
AUXILIARY_OBJC_LIBS += -l$(fw)
AUXILIARY_LIB_DIRS +=
-L$(BBFRAMEWORKS)/$(fw)/$(fw).framework/Versions/Current/$(GNUSTEP_LDIR)
endef
$(foreach fw,$(FRAMEWORKS), $(eval $(call FRAMEWORK_link, $(fw))))
ifneq ($(FRAMEWORKS),)
ADDITIONAL_INCLUDE_DIRS += -I$(BBFRAMEWORKS)
endif
This bit of code allows Backbone System programs to link to Backbone
frameworks in one pass, as long as the frameworks are built before the
apps and tools.