1export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd 2export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def 3export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule 4export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir 5 6IOKIT_INCVERS = A 7IOKIT_INCFRAME = $(FRAMEDIR)/IOKit.framework 8IOKIT_INCDIR = $(IOKIT_INCFRAME)/Versions/$(IOKIT_INCVERS)/Headers 9IOKIT_PINCDIR = $(IOKIT_INCFRAME)/Versions/$(IOKIT_INCVERS)/PrivateHeaders 10 11INCDIR = $(IOKIT_INCDIR) 12LCLDIR = $(IOKIT_PINCDIR) 13 14include $(MakeInc_cmd) 15include $(MakeInc_def) 16 17INSTINC_SUBDIRS = \ 18 nvram \ 19 platform \ 20 power \ 21 pwr_mgt \ 22 rtc \ 23 system_management 24 25EXPINC_SUBDIRS = ${INSTINC_SUBDIRS} 26 27# By default, everything in xnu/iokit/IOKit gets installed into 28# Kernel.framework/Headers/IOKit AND Kernel.framework/PrivateHeaders/IOKit. 29# This is so the files with #ifdef ...PRIVATE portions can be processed. 30# xnu/README documents the INSTALL* and EXPORT_MI_DIR lists. 31ALL_HEADERS = $(shell (cd $(SOURCE); echo *.h)) 32 33# Do not install these headers (anywhere). 34NOT_EXPORT_HEADERS = IOInterruptAccountingPrivate.h 35 36# Install these only in Kernel.framework's PrivateHeaders (not Headers). 37NOT_KF_MI_HEADERS = $(NOT_EXPORT_HEADERS) \ 38 IOKitKeysPrivate.h IOCPU.h \ 39 IOHibernatePrivate.h IOPolledInterface.h \ 40 IOCommandQueue.h IOLocksPrivate.h \ 41 IOSyncer.h AppleKeyStoreInterface.h \ 42 IOStatistics.h IOStatisticsPrivate.h \ 43 IOKernelReporters.h 44 45# These should be additionally installed in IOKit.framework's public Headers 46INSTALL_MI_LIST = IOBSD.h IOKitKeys.h IOKitServer.h IOReturn.h\ 47 IOSharedLock.h IOTypes.h OSMessageNotification.h\ 48 IODataQueueShared.h IOMessage.h IOInterruptAccounting.h\ 49 50# These should be additionally installed in IOKit.framework's PrivateHeaders 51INSTALL_MI_LCL_LIST = IOKitKeysPrivate.h IOHibernatePrivate.h \ 52 IOLocksPrivate.h IOStatistics.h \ 53 AppleKeyStoreInterface.h \ 54 IOReportTypes.h IOKernelReportStructs.h \ 55 IOReportMacros.h 56 57INSTALL_MI_DIR = . 58 59EXPORT_MI_LIST = $(filter-out $(NOT_EXPORT_HEADERS), $(ALL_HEADERS)) 60 61EXPORT_MI_DIR = IOKit 62 63INSTALL_KF_MI_LIST = $(filter-out $(NOT_KF_MI_HEADERS), $(ALL_HEADERS)) 64 65include $(MakeInc_rule) 66include $(MakeInc_dir) 67