- $(call makelog,$(ColorF)INSTALL$(Color0) $(ColorF)$(notdir $@)$(Color0) "($(ColorLF)$(CURRENT_ARCH_CONFIG_LC)$(Color0))")
- $(_v)$(INSTALL) $(EXEC_INSTALL_FLAGS) $< $@
-
-do_config_install:: $(DSTROOT_KEXT) $(SYMROOT_KEXT)
-
+ @$(LOG_INSTALL) "$(@F)$(Color0) ($(ColorLF)$(CURRENT_ARCH_CONFIG_LC)$(Color0))"
+ $(_v)if [ $(OBJROOT)/.symbolset.timestamp -nt $@ ]; then \
+ $(INSTALL) $(EXEC_INSTALL_FLAGS) $(OBJPATH)/$(@F).symbolset $@; \
+ cmdstatus=$$?; \
+ else \
+ $(LIPO) -create $@ $(OBJPATH)/$(@F).symbolset -output $@ 2>/dev/null || true; \
+ cmdstatus=$$?; \
+ fi; \
+ exit $$cmdstatus
+
+do_config_install:: $(SYMROOT_KEXT) $(DSTROOT_KEXT)
+else
+# We are building XNU as a static library - no need for the symbol kexts
+endif