Index: branches/meklort/i386/modules/NetbookInstaller/Makefile =================================================================== --- branches/meklort/i386/modules/NetbookInstaller/Makefile (revision 636) +++ branches/meklort/i386/modules/NetbookInstaller/Makefile (revision 637) @@ -46,7 +46,7 @@ VPATH = $(OBJROOT):$(SYMROOT) -NBI_OBJS = NBI.o +MODULE_OBJS = NBI.o SFILES = @@ -59,10 +59,12 @@ $(HFILES) $(OTHERFILES) DIRS_NEEDED = $(OBJROOT) $(SYMROOT) -all embedtheme optionrom: ${NBI_OBJS} dylib +all embedtheme optionrom: dylib -dylib: ${HELLO_WORLD_OBJS} +HAVE_MODULES := $(wildcard $(SYMROOT)/*.dylib) +ifneq ($(strip $(HAVE_MODULES)),) +dylib: ${MODULE_OBJS} ld -arch i386 \ -undefined dynamic_lookup \ -alias $(MODULE_START) start \ @@ -74,11 +76,24 @@ $(OBJROOT)/*.o \ -weak_library $(SYMROOT)/*.dylib \ -o $(SYMROOT)/$(MODULE_NAME).dylib +else +dylib: ${MODULE_OBJS} + ld -arch i386 \ + -undefined dynamic_lookup \ + -alias $(MODULE_START) start \ + -dylib -read_only_relocs suppress \ + -S -x -Z -dead_strip_dylibs \ + -no_uuid \ + -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ + -final_output $(MODULE_NAME) \ + $(OBJROOT)/*.o \ + -o $(SYMROOT)/$(MODULE_NAME).dylib +endif -NBI.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "NBI.c" $(INC) -o "$(OBJROOT)/NBI.o" +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "$<" $(INC) -o "$(OBJROOT)/$@" include ../../MakeInc.dir Index: branches/meklort/i386/modules/HPET/Makefile =================================================================== --- branches/meklort/i386/modules/HPET/Makefile (revision 636) +++ branches/meklort/i386/modules/HPET/Makefile (revision 637) @@ -46,7 +46,7 @@ VPATH = $(OBJROOT):$(SYMROOT) -HPET_OBJS = HPET.o +MODULE_OBJS = HPET.o SFILES = @@ -59,10 +59,12 @@ $(HFILES) $(OTHERFILES) DIRS_NEEDED = $(OBJROOT) $(SYMROOT) -all embedtheme optionrom: ${HPET_OBJS} dylib +all embedtheme optionrom: dylib -dylib: ${HPET_OBJS} +HAVE_MODULES := $(wildcard $(SYMROOT)/*.dylib) +ifneq ($(strip $(HAVE_MODULES)),) +dylib: ${MODULE_OBJS} ld -arch i386 \ -undefined dynamic_lookup \ -alias $(MODULE_START) start \ @@ -74,12 +76,24 @@ $(OBJROOT)/*.o \ -weak_library $(SYMROOT)/*.dylib \ -o $(SYMROOT)/$(MODULE_NAME).dylib +else +dylib: ${MODULE_OBJS} + ld -arch i386 \ + -undefined dynamic_lookup \ + -alias $(MODULE_START) start \ + -dylib -read_only_relocs suppress \ + -S -x -Z -dead_strip_dylibs \ + -no_uuid \ + -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ + -final_output $(MODULE_NAME) \ + $(OBJROOT)/*.o \ + -o $(SYMROOT)/$(MODULE_NAME).dylib +endif +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "$<" $(INC) -o "$(OBJROOT)/$@" -HPET.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "HPET.c" $(INC) -o "$(OBJROOT)/HPET.o" - include ../../MakeInc.dir # dependencies Index: branches/meklort/i386/modules/USBFix/Makefile =================================================================== --- branches/meklort/i386/modules/USBFix/Makefile (revision 636) +++ branches/meklort/i386/modules/USBFix/Makefile (revision 637) @@ -46,7 +46,7 @@ VPATH = $(OBJROOT):$(SYMROOT) -USB_OBJS = USBFix.o usb.o +MODULE_OBJS = USBFix.o usb.o SFILES = @@ -59,10 +59,12 @@ $(HFILES) $(OTHERFILES) DIRS_NEEDED = $(OBJROOT) $(SYMROOT) -all embedtheme optionrom: ${USB_OBJS} dylib +all embedtheme optionrom: dylib -dylib: ${USB_OBJS} +HAVE_MODULES := $(wildcard $(SYMROOT)/*.dylib) +ifneq ($(strip $(HAVE_MODULES)),) +dylib: ${MODULE_OBJS} ld -arch i386 \ -undefined dynamic_lookup \ -alias $(MODULE_START) start \ @@ -74,15 +76,25 @@ $(OBJROOT)/*.o \ -weak_library $(SYMROOT)/*.dylib \ -o $(SYMROOT)/$(MODULE_NAME).dylib +else +dylib: ${MODULE_OBJS} + ld -arch i386 \ + -undefined dynamic_lookup \ + -alias $(MODULE_START) start \ + -dylib -read_only_relocs suppress \ + -S -x -Z -dead_strip_dylibs \ + -no_uuid \ + -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ + -final_output $(MODULE_NAME) \ + $(OBJROOT)/*.o \ + -o $(SYMROOT)/$(MODULE_NAME).dylib +endif -USBFix.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "USBFix.c" $(INC) -o "$(OBJROOT)/USBFix.o" +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "$<" $(INC) -o "$(OBJROOT)/$@" -usb.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "usb.c" $(INC) -o "$(OBJROOT)/usb.o" - include ../../MakeInc.dir # dependencies Index: branches/meklort/i386/modules/KextPatcher/Makefile =================================================================== --- branches/meklort/i386/modules/KextPatcher/Makefile (revision 636) +++ branches/meklort/i386/modules/KextPatcher/Makefile (revision 637) @@ -46,7 +46,7 @@ VPATH = $(OBJROOT):$(SYMROOT) -OBJS = kext_patcher.o inflate.o deflate.o zutil.o inftrees.o inffast.o adler32.o hex_editor.o trees.o +MODULE_OBJS = kext_patcher.o inflate.o deflate.o zutil.o inftrees.o inffast.o adler32.o hex_editor.o trees.o SFILES = @@ -59,53 +59,41 @@ $(HFILES) $(OTHERFILES) DIRS_NEEDED = $(OBJROOT) $(SYMROOT) -all embedtheme optionrom: ${OBJS} dylib +all embedtheme optionrom: dylib -dylib: ${OBJS} +HAVE_MODULES := $(wildcard $(SYMROOT)/*.dylib) +ifneq ($(strip $(HAVE_MODULES)),) +dylib: ${MODULE_OBJS} ld -arch i386 \ -undefined dynamic_lookup \ -alias $(MODULE_START) start \ -dylib -read_only_relocs suppress \ - -S -x -dead_strip_dylibs \ + -S -x -Z -dead_strip_dylibs \ -no_uuid \ - -bind_at_load \ -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ -final_output $(MODULE_NAME) \ - -weak_library $(SYMROOT)/Symbols.dylib \ - -weak_library $(SYMROOT)/GUI.dylib \ $(OBJROOT)/*.o \ -weak_library $(SYMROOT)/*.dylib \ -o $(SYMROOT)/$(MODULE_NAME).dylib +else +dylib: ${MODULE_OBJS} + ld -arch i386 \ + -undefined dynamic_lookup \ + -alias $(MODULE_START) start \ + -dylib -read_only_relocs suppress \ + -S -x -Z -dead_strip_dylibs \ + -no_uuid \ + -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ + -final_output $(MODULE_NAME) \ + $(OBJROOT)/*.o \ + -o $(SYMROOT)/$(MODULE_NAME).dylib +endif -kext_patcher.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "kext_patcher.c" $(INC) -o "$(OBJROOT)/kext_patcher.o" +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "$<" $(INC) -o "$(OBJROOT)/$@" -inflate.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "inflate.c" $(INC) -o "$(OBJROOT)/inflate.o" - -deflate.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "deflate.c" $(INC) -o "$(OBJROOT)/deflate.o" - -zutil.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "zutil.c" $(INC) -o "$(OBJROOT)/zutil.o" - -inftrees.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "inftrees.c" $(INC) -o "$(OBJROOT)/inftrees.o" - -inffast.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "inffast.c" $(INC) -o "$(OBJROOT)/inffast.o" - -adler32.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "adler32.c" $(INC) -o "$(OBJROOT)/adler32.o" - -trees.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "trees.c" $(INC) -o "$(OBJROOT)/trees.o" - -hex_editor.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "hex_editor.c" $(INC) -o "$(OBJROOT)/hex_editor.o" - include ../../MakeInc.dir # dependencies Index: branches/meklort/i386/modules/ACPIPatcher/Makefile =================================================================== --- branches/meklort/i386/modules/ACPIPatcher/Makefile (revision 636) +++ branches/meklort/i386/modules/ACPIPatcher/Makefile (revision 637) @@ -46,7 +46,7 @@ VPATH = $(OBJROOT):$(SYMROOT) -HELLO_WORLD_OBJS = ACPIPatcher.o aml_generator.o acpi_patcher.o +MODULE_OBJS = ACPIPatcher.o aml_generator.o acpi_patcher.o SFILES = @@ -59,10 +59,12 @@ $(HFILES) $(OTHERFILES) DIRS_NEEDED = $(OBJROOT) $(SYMROOT) -all embedtheme optionrom: ${HELLO_WORLD_OBJS} dylib +all embedtheme optionrom: dylib -dylib: ${HELLO_WORLD_OBJS} +HAVE_MODULES := $(wildcard $(SYMROOT)/*.dylib) +ifneq ($(strip $(HAVE_MODULES)),) +dylib: ${MODULE_OBJS} ld -arch i386 \ -undefined dynamic_lookup \ -alias $(MODULE_START) start \ @@ -74,19 +76,25 @@ $(OBJROOT)/*.o \ -weak_library $(SYMROOT)/*.dylib \ -o $(SYMROOT)/$(MODULE_NAME).dylib +else +dylib: ${MODULE_OBJS} + ld -arch i386 \ + -undefined dynamic_lookup \ + -alias $(MODULE_START) start \ + -dylib -read_only_relocs suppress \ + -S -x -Z -dead_strip_dylibs \ + -no_uuid \ + -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ + -final_output $(MODULE_NAME) \ + $(OBJROOT)/*.o \ + -o $(SYMROOT)/$(MODULE_NAME).dylib +endif +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "$<" $(INC) -o "$(OBJROOT)/$@" -ACPIPatcher.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "ACPIPatcher.c" $(INC) -o "$(OBJROOT)/ACPIPatcher.o" -aml_generator.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "aml_generator.c" $(INC) -o "$(OBJROOT)/aml_generator.o" - -acpi_patcher.c: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "acpi_patcher.c" $(INC) -o "$(OBJROOT)/ACPIPatcher.o" - - include ../../MakeInc.dir # dependencies Index: branches/meklort/i386/modules/Resolution/Makefile =================================================================== --- branches/meklort/i386/modules/Resolution/Makefile (revision 636) +++ branches/meklort/i386/modules/Resolution/Makefile (revision 637) @@ -5,6 +5,7 @@ MODULE_START = _$(MODULE_NAME)_start MODULE_DEPENDENCIES = + DIR = Resolution include ../../MakePaths.dir @@ -46,7 +47,7 @@ VPATH = $(OBJROOT):$(SYMROOT) -RESOLUTION_OBJS = Resolution.o edid.o 915resolution.o +MODULE_OBJS = Resolution.o edid.o 915resolution.o SFILES = @@ -59,10 +60,12 @@ $(HFILES) $(OTHERFILES) DIRS_NEEDED = $(OBJROOT) $(SYMROOT) -all embedtheme optionrom: ${RESOLUTION_OBJS} dylib +all embedtheme optionrom: dylib -dylib: ${RESOLUTION_OBJS} +HAVE_MODULES := $(wildcard $(SYMROOT)/*.dylib) +ifneq ($(strip $(HAVE_MODULES)),) +dylib: ${MODULE_OBJS} ld -arch i386 \ -undefined dynamic_lookup \ -alias $(MODULE_START) start \ @@ -74,19 +77,24 @@ $(OBJROOT)/*.o \ -weak_library $(SYMROOT)/*.dylib \ -o $(SYMROOT)/$(MODULE_NAME).dylib +else +dylib: ${MODULE_OBJS} + ld -arch i386 \ + -undefined dynamic_lookup \ + -alias $(MODULE_START) start \ + -dylib -read_only_relocs suppress \ + -S -x -Z -dead_strip_dylibs \ + -no_uuid \ + -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ + -final_output $(MODULE_NAME) \ + $(OBJROOT)/*.o \ + -o $(SYMROOT)/$(MODULE_NAME).dylib +endif +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "$<" $(INC) -o "$(OBJROOT)/$@" -Resolution.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "Resolution.c" $(INC) -o "$(OBJROOT)/Resolution.o" - -915resolution.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "915resolution.c" $(INC) -o "$(OBJROOT)/915resolution.o" - -edid.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "edid.c" $(INC) -o "$(OBJROOT)/edid.o" - - include ../../MakeInc.dir # dependencies Index: branches/meklort/i386/modules/GUI/Makefile =================================================================== --- branches/meklort/i386/modules/GUI/Makefile (revision 636) +++ branches/meklort/i386/modules/GUI/Makefile (revision 637) @@ -50,7 +50,7 @@ VPATH = $(OBJROOT):$(SYMROOT) -GUI_OBJS = GUI_module.o gui.o picopng.o graphic_utils.o +MODULE_OBJS = GUI_module.o gui.o picopng.o graphic_utils.o SFILES = @@ -70,10 +70,12 @@ -all optionrom: ${HELLO_WORLD_OBJS} dylib +all embedtheme optionrom: dylib -dylib: ${GUI_OBJS} +HAVE_MODULES := $(wildcard $(SYMROOT)/*.dylib) +ifneq ($(strip $(HAVE_MODULES)),) +dylib: ${MODULE_OBJS} ld -arch i386 \ -undefined dynamic_lookup \ -alias $(MODULE_START) start \ @@ -84,21 +86,24 @@ -final_output $(MODULE_NAME) \ $(OBJROOT)/*.o \ -weak_library $(SYMROOT)/*.dylib \ - -o $(SYMROOT)/$(MODULE_NAME).dylib + -o $(SYMROOT)/$(MODULE_NAME).dylib +else +dylib: ${MODULE_OBJS} + ld -arch i386 \ + -undefined dynamic_lookup \ + -alias $(MODULE_START) start \ + -dylib -read_only_relocs suppress \ + -S -x -Z -dead_strip_dylibs \ + -no_uuid \ + -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ + -final_output $(MODULE_NAME) \ + $(OBJROOT)/*.o \ + -o $(SYMROOT)/$(MODULE_NAME).dylib +endif -GUI_module.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "GUI_module.c" $(INC) -o "$(OBJROOT)/GUI_module.o" +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "$<" $(INC) -o "$(OBJROOT)/$@" -gui.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "gui.c" $(INC) -o "$(OBJROOT)/gui.o" - - -picopng.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "picopng.c" $(INC) -o "$(OBJROOT)/picopng.o" - -graphic_utils.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "graphic_utils.c" $(INC) -o "$(OBJROOT)/graphic_utils.o" - art.h: @if [ "$(PNGCRUSH)" ]; then \ echo "optimizing art files ...\n$(PNGCRUSH) $(PNGOPTIONS) artwork/$(THEME)"; \ Index: branches/meklort/i386/modules/KernelPatcher/Makefile =================================================================== --- branches/meklort/i386/modules/KernelPatcher/Makefile (revision 636) +++ branches/meklort/i386/modules/KernelPatcher/Makefile (revision 637) @@ -46,7 +46,7 @@ VPATH = $(OBJROOT):$(SYMROOT) -OBJS = kernel_patcher.o +MODULE_OBJS = kernel_patcher.o SFILES = @@ -59,27 +59,40 @@ $(HFILES) $(OTHERFILES) DIRS_NEEDED = $(OBJROOT) $(SYMROOT) -all embedtheme optionrom: ${OBJS} dylib +all embedtheme optionrom: dylib -dylib: ${OBJS} +HAVE_MODULES := $(wildcard $(SYMROOT)/*.dylib) +ifneq ($(strip $(HAVE_MODULES)),) +dylib: ${MODULE_OBJS} ld -arch i386 \ -undefined dynamic_lookup \ -alias $(MODULE_START) start \ -dylib -read_only_relocs suppress \ - -S -x -dead_strip_dylibs \ + -S -x -Z -dead_strip_dylibs \ -no_uuid \ - -bind_at_load \ -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ -final_output $(MODULE_NAME) \ - -weak_library $(SYMROOT)/Symbols.dylib \ $(OBJROOT)/*.o \ -weak_library $(SYMROOT)/*.dylib \ -o $(SYMROOT)/$(MODULE_NAME).dylib +else +dylib: ${MODULE_OBJS} + ld -arch i386 \ + -undefined dynamic_lookup \ + -alias $(MODULE_START) start \ + -dylib -read_only_relocs suppress \ + -S -x -Z -dead_strip_dylibs \ + -no_uuid \ + -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ + -final_output $(MODULE_NAME) \ + $(OBJROOT)/*.o \ + -o $(SYMROOT)/$(MODULE_NAME).dylib +endif -kernel_patcher.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "kernel_patcher.c" $(INC) -o "$(OBJROOT)/kernel_patcher.o" +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "$<" $(INC) -o "$(OBJROOT)/$@" include ../../MakeInc.dir Index: branches/meklort/i386/modules/Networking/Makefile =================================================================== --- branches/meklort/i386/modules/Networking/Makefile (revision 636) +++ branches/meklort/i386/modules/Networking/Makefile (revision 637) @@ -46,7 +46,7 @@ VPATH = $(OBJROOT):$(SYMROOT) -NET_OBJS = Networking.o +MODULE_OBJS = Networking.o SFILES = @@ -59,10 +59,12 @@ $(HFILES) $(OTHERFILES) DIRS_NEEDED = $(OBJROOT) $(SYMROOT) -all embedtheme optionrom: ${NET_OBJS} dylib +all embedtheme optionrom: dylib -dylib: ${NET_OBJS} +HAVE_MODULES := $(wildcard $(SYMROOT)/*.dylib) +ifneq ($(strip $(HAVE_MODULES)),) +dylib: ${MODULE_OBJS} ld -arch i386 \ -undefined dynamic_lookup \ -alias $(MODULE_START) start \ @@ -74,11 +76,24 @@ $(OBJROOT)/*.o \ -weak_library $(SYMROOT)/*.dylib \ -o $(SYMROOT)/$(MODULE_NAME).dylib +else +dylib: ${MODULE_OBJS} + ld -arch i386 \ + -undefined dynamic_lookup \ + -alias $(MODULE_START) start \ + -dylib -read_only_relocs suppress \ + -S -x -Z -dead_strip_dylibs \ + -no_uuid \ + -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ + -final_output $(MODULE_NAME) \ + $(OBJROOT)/*.o \ + -o $(SYMROOT)/$(MODULE_NAME).dylib +endif -Networking.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "Networking.c" $(INC) -o "$(OBJROOT)/Networking.o" +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "$<" $(INC) -o "$(OBJROOT)/$@" include ../../MakeInc.dir Index: branches/meklort/i386/modules/Memory/Makefile =================================================================== --- branches/meklort/i386/modules/Memory/Makefile (revision 636) +++ branches/meklort/i386/modules/Memory/Makefile (revision 637) @@ -46,7 +46,7 @@ VPATH = $(OBJROOT):$(SYMROOT) -MEMORY_OBJS = dram_controllers.o mem.o spd.o Memory.o +MODULE_OBJS = dram_controllers.o mem.o spd.o Memory.o SFILES = @@ -59,10 +59,12 @@ $(HFILES) $(OTHERFILES) DIRS_NEEDED = $(OBJROOT) $(SYMROOT) -all embedtheme optionrom: ${MEMORY_OBJS} dylib +all embedtheme optionrom: dylib -dylib: ${GRAPHICS_ENABLER_OBJS} +HAVE_MODULES := $(wildcard $(SYMROOT)/*.dylib) +ifneq ($(strip $(HAVE_MODULES)),) +dylib: ${MODULE_OBJS} ld -arch i386 \ -undefined dynamic_lookup \ -alias $(MODULE_START) start \ @@ -74,22 +76,26 @@ $(OBJROOT)/*.o \ -weak_library $(SYMROOT)/*.dylib \ -o $(SYMROOT)/$(MODULE_NAME).dylib +else +dylib: ${MODULE_OBJS} + ld -arch i386 \ + -undefined dynamic_lookup \ + -alias $(MODULE_START) start \ + -dylib -read_only_relocs suppress \ + -S -x -Z -dead_strip_dylibs \ + -no_uuid \ + -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ + -final_output $(MODULE_NAME) \ + $(OBJROOT)/*.o \ + -o $(SYMROOT)/$(MODULE_NAME).dylib +endif -dram_controllers.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "dram_controllers.c" $(INC) -o "$(OBJROOT)/dram_controllers.o" +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "$<" $(INC) -o "$(OBJROOT)/$@" -Memory.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "Memory.c" $(INC) -o "$(OBJROOT)/Memory.o" -spd.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "spd.c" $(INC) -o "$(OBJROOT)/spd.o" - -mem.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "mem.c" $(INC) -o "$(OBJROOT)/mem.o" - - include ../../MakeInc.dir # dependencies Index: branches/meklort/i386/modules/GraphicsEnabler/Makefile =================================================================== --- branches/meklort/i386/modules/GraphicsEnabler/Makefile (revision 636) +++ branches/meklort/i386/modules/GraphicsEnabler/Makefile (revision 637) @@ -46,7 +46,7 @@ VPATH = $(OBJROOT):$(SYMROOT) -GRAPHICS_ENABLER_OBJS = nvidia.o ati.o gma.o GraphicsEnabler.o +MODULE_OBJS = nvidia.o ati.o gma.o GraphicsEnabler.o SFILES = @@ -59,10 +59,12 @@ $(HFILES) $(OTHERFILES) DIRS_NEEDED = $(OBJROOT) $(SYMROOT) -all embedtheme optionrom: ${GRAPHICS_ENABLER_OBJS} dylib +all embedtheme optionrom: dylib -dylib: ${GRAPHICS_ENABLER_OBJS} +HAVE_MODULES := $(wildcard $(SYMROOT)/*.dylib) +ifneq ($(strip $(HAVE_MODULES)),) +dylib: ${MODULE_OBJS} ld -arch i386 \ -undefined dynamic_lookup \ -alias $(MODULE_START) start \ @@ -74,21 +76,25 @@ $(OBJROOT)/*.o \ -weak_library $(SYMROOT)/*.dylib \ -o $(SYMROOT)/$(MODULE_NAME).dylib +else +dylib: ${MODULE_OBJS} + ld -arch i386 \ + -undefined dynamic_lookup \ + -alias $(MODULE_START) start \ + -dylib -read_only_relocs suppress \ + -S -x -Z -dead_strip_dylibs \ + -no_uuid \ + -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ + -final_output $(MODULE_NAME) \ + $(OBJROOT)/*.o \ + -o $(SYMROOT)/$(MODULE_NAME).dylib +endif -GraphicsEnabler.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "GraphicsEnabler.c" $(INC) -o "$(OBJROOT)/GraphicsEnabler.o" +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "$<" $(INC) -o "$(OBJROOT)/$@" -ati.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "ati.c" $(INC) -o "$(OBJROOT)/ati.o" - -nvidia.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "nvidia.c" $(INC) -o "$(OBJROOT)/nvidia.o" - -gma.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "gma.c" $(INC) -o "$(OBJROOT)/gma.o" - include ../../MakeInc.dir # dependencies Index: branches/meklort/i386/modules/HelloWorld/Makefile =================================================================== --- branches/meklort/i386/modules/HelloWorld/Makefile (revision 636) +++ branches/meklort/i386/modules/HelloWorld/Makefile (revision 637) @@ -46,7 +46,7 @@ VPATH = $(OBJROOT):$(SYMROOT) -HELLO_WORLD_OBJS = HelloWorld.o +MODULE_OBJS = HelloWorld.o SFILES = @@ -59,10 +59,12 @@ $(HFILES) $(OTHERFILES) DIRS_NEEDED = $(OBJROOT) $(SYMROOT) -all embedtheme optionrom: ${HELLO_WORLD_OBJS} dylib +all embedtheme optionrom: dylib -dylib: ${HELLO_WORLD_OBJS} +HAVE_MODULES := $(wildcard $(SYMROOT)/*.dylib) +ifneq ($(strip $(HAVE_MODULES)),) +dylib: ${MODULE_OBJS} ld -arch i386 \ -undefined dynamic_lookup \ -alias $(MODULE_START) start \ @@ -74,11 +76,24 @@ $(OBJROOT)/*.o \ -weak_library $(SYMROOT)/*.dylib \ -o $(SYMROOT)/$(MODULE_NAME).dylib +else +dylib: ${MODULE_OBJS} + ld -arch i386 \ + -undefined dynamic_lookup \ + -alias $(MODULE_START) start \ + -dylib -read_only_relocs suppress \ + -S -x -Z -dead_strip_dylibs \ + -no_uuid \ + -current_version $(MODULE_VERSION) -compatibility_version $(MODULE_COMPAT_VERSION) \ + -final_output $(MODULE_NAME) \ + $(OBJROOT)/*.o \ + -o $(SYMROOT)/$(MODULE_NAME).dylib +endif -HelloWorld.o: - $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "HelloWorld.c" $(INC) -o "$(OBJROOT)/HelloWorld.o" +%.o: %.c + $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c "$<" $(INC) -o "$(OBJROOT)/$@" include ../../MakeInc.dir