X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/39236c6e673c41db228275375ab7fdb0f837b292..3903760236c30e3b5ace7a4eefac3a269d68957c:/pexpert/conf/Makefile.template diff --git a/pexpert/conf/Makefile.template b/pexpert/conf/Makefile.template index 7a8e0038d..cd16445fa 100644 --- a/pexpert/conf/Makefile.template +++ b/pexpert/conf/Makefile.template @@ -24,7 +24,7 @@ pe_identify_machine.o_CWARNFLAGS_ADD = -Wno-cast-align # # Directories for mig generated files # -COMP_SUBDIRS = +COMP_SUBDIRS = # # Make sure we don't remove this by accident if interrupted at the wrong @@ -44,24 +44,31 @@ COMP_SUBDIRS = %CFILES +%CXXFILES + %SFILES %MACHDEP -# -# OBJSDEPS is the set of files (defined in the machine dependent -# template if necessary) which all objects depend on (such as an -# in-line assembler expansion filter) -# -${OBJS}: ${OBJSDEPS} - -LDOBJS = $(OBJS) - -$(COMPONENT).filelist: $(LDOBJS) - @echo LDFILELIST $(COMPONENT) - $(_v)( for obj in ${LDOBJS}; do \ +# Rebuild if per-file overrides change +${OBJS}: $(firstword $(MAKEFILE_LIST)) + +# Rebuild if global compile flags change +$(COBJS): .CFLAGS +.CFLAGS: ALWAYS + $(_v)$(REPLACECONTENTS) $@ $(KCC) $(CFLAGS) $(INCFLAGS) +$(CXXOBJS): .CXXFLAGS +.CXXFLAGS: ALWAYS + $(_v)$(REPLACECONTENTS) $@ $(KC++) $(CXXFLAGS) $(INCFLAGS) +$(SOBJS): .SFLAGS +.SFLAGS: ALWAYS + $(_v)$(REPLACECONTENTS) $@ $(S_KCC) $(SFLAGS) $(INCFLAGS) + +$(COMPONENT).filelist: $(OBJS) + @echo "$(ColorL)LDFILELIST$(Color0) $(ColorLF)$(COMPONENT)$(Color0)" + $(_v)for obj in ${OBJS}; do \ echo $(TARGET)/$(CURRENT_KERNEL_CONFIG)/$${obj}; \ - done; ) > $(COMPONENT).filelist + done > $(COMPONENT).filelist do_all: $(COMPONENT).filelist