X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/143464d58d2bd6378e74eec636961ceb0d32fb91..fe8ab488e9161c46dd9885d58fc52996dc0249ff:/iokit/conf/Makefile.template?ds=sidebyside diff --git a/iokit/conf/Makefile.template b/iokit/conf/Makefile.template index 4a72c656f..ceffec084 100644 --- a/iokit/conf/Makefile.template +++ b/iokit/conf/Makefile.template @@ -64,27 +64,34 @@ 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) +# 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) $(_v)for hib_file in ${HIB_FILES}; \ do \ $(SEG_HACK) -n __HIB -o $${hib_file}__ $${hib_file} ; \ mv $${hib_file}__ $${hib_file} ; \ done @echo LDFILELIST $(COMPONENT) - $(_v)( for obj in ${LDOBJS}; do \ + $(_v)( for obj in ${OBJS}; do \ echo $(TARGET)/$(CURRENT_KERNEL_CONFIG)/$${obj}; \ done; ) > $(COMPONENT).filelist