# Makefile for i386 modules SRCROOT = $(abspath $(CURDIR)/../..) OBJROOT = $(SRCROOT)/obj/i386/modules/ SYMROOT = $(SRCROOT)/sym/i386 DSTROOT = $(SRCROOT)/dst/i386 DOCROOT = $(SRCROOT)/doc IMGROOT = $(SRCROOT)/sym/cache IMGSKELROOT = $(SRCROOT)/imgskel CDBOOT = ${IMGROOT}/usr/standalone/i386/cdboot include ${SRCROOT}/Make.rules # The order of building modules is important. SUBDIRS = KernelPatcher ifdef CONFIG_KLIBC_MODULE SUBDIRS += klibc endif ifdef CONFIG_UCLIBCXX_MODULE SUBDIRS += uClibcxx endif ifdef CONFIG_RESOLUTION_MODULE SUBDIRS += Resolution endif ifdef CONFIG_HELLOWORLD_MODULE SUBDIRS += HelloWorld endif ifdef CONFIG_KEYLAYOUT_MODULE SUBDIRS += Keylayout endif ifdef CONFIG_SATA_MODULE SUBDIRS += Sata endif ifdef CONFIG_ACPICODEC_MODULE SUBDIRS += AcpiCodec endif ifdef CONFIG_FILENVRAM_MODULE SUBDIRS += FileNVRAM endif #ifdef CONFIG_KEXTPATCHER_MODULE #SUBDIRS += KextPatcher #endif ifdef CONFIG_HDAENABLER_MODULE SUBDIRS += HDAEnabler endif CFLAGS= -O3 $(MORECPP) -arch i386 -g -static DEFINES= CONFIG = hd LIBSAIODIR = $(SRCROOT)/i386/libsaio INC = -I$(LIBSAIODIR) ifeq (${CONFIG_MODULES}, y) all: $(SYMROOT) $(OBJROOT) objroot_dirs $(SYMROOT)/boot_modules.c $(SYMROOT)/boot_modules.h all-recursive @# Finish up boot_modules.c @echo "}" >> $(SYMROOT)/boot_modules.c else all: $(SYMROOT) $(OBJROOT) objroot_dirs $(SYMROOT)/boot_modules.c $(SYMROOT)/boot_modules.h all-recursive @# Finish up boot_modules.c @echo "}" >> $(SYMROOT)/boot_modules.c endif .PHONY: objroot_dirs .PHONY: $(SYMROOT)/boot_modules.h .PHONY: $(SYMROOT)/boot_modules.c objroot_dirs: @${MKDIRS} "$(SYMROOT)/modules/" $(SYMROOT)/boot_modules.c: ${OBJROOT} ${SYMROOT}/modules/ ${OBJROOT} $(addprefix $(OBJROOT)/, ${MODULE_OBJS}) ifeq ($(BUILT_IN),yes) @echo "// Autogenerated - do not modify" > $@ @echo "#include " >> $@ @echo "#include \"boot_modules.h\"" >> $@ @echo "void start_built_in_modules() {" >> $@ endif $(SYMROOT)/boot_modules.h: ${OBJROOT} ${SYMROOT}/modules/ ${OBJROOT} $(addprefix $(OBJROOT)/, ${MODULE_OBJS}) ifeq ($(BUILT_IN),yes) @echo "// Autogenerated - do not modify" > $@ @echo "void start_built_in_modules(); " > $@ endif clean-local: @rm -f $(SYMROOT)/boot_modules.c $(SYMROOT)/boot_modules.h