X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/55e303ae13a4cf49d70f2294092726f2fffb9ef2..39236c6e673c41db228275375ab7fdb0f837b292:/iokit/conf/Makefile.template diff --git a/iokit/conf/Makefile.template b/iokit/conf/Makefile.template index bf9b2d38b..4a72c656f 100644 --- a/iokit/conf/Makefile.template +++ b/iokit/conf/Makefile.template @@ -5,16 +5,6 @@ # the terms and conditions for use and redistribution. # -# -# Export IDENT for sub-makefiles -# -export IDENT - -# -# XXX: INCFLAGS -# -INCFLAGS_MAKEFILE= $(INCFLAGS_POSIX) -I$(SOURCE) -I$(SOURCE)include - export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule @@ -26,16 +16,31 @@ include $(MakeInc_def) # # XXX: CFLAGS # -CFLAGS+= -DKERNEL -DDRIVER_PRIVATE \ - -Wall -Wno-four-char-constants -fno-common \ - -DIOMATCHDEBUG=1 -DIOALLOCDEBUG=1 \ +CFLAGS+= -include meta_features.h -DDRIVER_PRIVATE \ + -DIOKIT_KERNEL_PRIVATE -DIOMATCHDEBUG=1 -DIOALLOCDEBUG=1 #-DIOKITDEBUG=-1 +CWARNFLAGS = $(CWARNFLAGS_STD) -Wno-unused-parameter +CXXWARNFLAGS = $(CXXWARNFLAGS_STD) -Wno-unused-parameter -Wno-cast-qual -Wno-shadow + +# Objects that don't want -Wcast-align warning (8474835) +IOHibernateRestoreKernel.o_CWARNFLAGS_ADD = -Wno-cast-align +CXXOBJS_NO_CAST_ALIGN = \ + IODMACommand.cpo \ + IODataQueue.cpo \ + IOHibernateIO.cpo \ + IOMemoryDescriptor.cpo \ + IONVRAM.cpo \ + IOPMrootDomain.cpo \ + IOSharedDataQueue.cpo \ + IOUserClient.cpo + +$(foreach file,$(CXXOBJS_NO_CAST_ALIGN),$(eval $(call add_perfile_cxxflags,$(file),-Wno-cast-align))) + CFLAGS_RELEASE += -DIOASSERT=0 +CFLAGS_DEVELOPMENT += -DIOASSERT=1 CFLAGS_DEBUG += -DIOASSERT=1 -SFLAGS+= -DKERNEL - # # Directories for mig generated files # @@ -47,14 +52,6 @@ COMP_SUBDIRS = # .PRECIOUS: Makefile -VERSION_FILES= \ - $(SOURCE_DIR)/$(COMPONENT)/conf/version.major \ - $(SOURCE_DIR)/$(COMPONENT)/conf/version.minor \ - $(SOURCE_DIR)/$(COMPONENT)/conf/version.variant - -COPYRIGHT_FILES = \ - $(SOURCE_DIR)/$(COMPONENT)/conf/copyright - # # Theses macros are filled in by the config program depending on the # current configuration. The MACHDEP macro is replaced by the @@ -67,13 +64,8 @@ COPYRIGHT_FILES = \ %CFILES -%MFILES - %SFILES -%BFILES - -%ORDERED %MACHDEP # @@ -83,30 +75,24 @@ COPYRIGHT_FILES = \ # ${OBJS}: ${OBJSDEPS} - -%LOAD - LDOBJS = $(OBJS) -$(COMPONENT).o: $(LDOBJS) - @echo "creating $(COMPONENT).o" - $(RM) $(RMFLAGS) vers.c - $(COMPOBJROOT)/newvers \ - `$(CAT) ${VERSION_FILES}` ${COPYRIGHT_FILES} - ${KCC} $(CFLAGS) $(INCLUDES) -c vers.c - @echo [ updating $(COMPONENT).o ${IOKIT_KERNEL_CONFIG} ] - $(LD) $(LDFLAGS_COMPONENT) -o $(COMPONENT).o ${LDOBJS} vers.o +$(COMPONENT).filelist: $(LDOBJS) + $(_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 \ + echo $(TARGET)/$(CURRENT_KERNEL_CONFIG)/$${obj}; \ + done; ) > $(COMPONENT).filelist -do_depend: do_all - ${MD} -u Makedep -f -d `ls *.d` - - -do_all: $(COMPONENT).o +do_all: $(COMPONENT).filelist -do_build_all: do_depend +do_build_all:: do_all %RULES include $(MakeInc_rule) include $(MakeInc_dir) -