786 |
|
|
787 |
|
|
788 |
# Modules. |
# Modules. |
789 |
pkgdata_MODULES = _chain.mod _linux.mod fat.mod ufs.mod ext2.mod minix.mod \ |
pkgdata_MODULES = _chain.mod _linux.mod linux.mod fat.mod ufs.mod ext2.mod minix.mod \ |
790 |
hfs.mod jfs.mod normal.mod hello.mod vga.mod font.mod _multiboot.mod ls.mod \ |
hfs.mod jfs.mod normal.mod hello.mod vga.mod font.mod _multiboot.mod ls.mod \ |
791 |
boot.mod cmp.mod cat.mod terminal.mod fshelp.mod chain.mod |
boot.mod cmp.mod cat.mod terminal.mod fshelp.mod chain.mod multiboot.mod |
792 |
|
|
793 |
# For _chain.mod. |
# For _chain.mod. |
794 |
_chain_mod_SOURCES = loader/i386/pc/chainloader.c |
_chain_mod_SOURCES = loader/i386/pc/chainloader.c |
1179 |
-include _linux_mod-loader_i386_pc_linux.d |
-include _linux_mod-loader_i386_pc_linux.d |
1180 |
|
|
1181 |
_linux_mod_CFLAGS = $(COMMON_CFLAGS) |
_linux_mod_CFLAGS = $(COMMON_CFLAGS) |
1182 |
|
|
1183 |
|
# For linux.mod. |
1184 |
|
linux_mod_SOURCES = loader/i386/pc/linux_normal.c |
1185 |
|
CLEANFILES += linux.mod mod-linux.o mod-linux.c pre-linux.o linux_mod-loader_i386_pc_linux_normal.o def-linux.lst und-linux.lst |
1186 |
|
MOSTLYCLEANFILES += linux_mod-loader_i386_pc_linux_normal.d |
1187 |
|
DEFSYMFILES += def-linux.lst |
1188 |
|
UNDSYMFILES += und-linux.lst |
1189 |
|
|
1190 |
|
linux.mod: pre-linux.o mod-linux.o |
1191 |
|
-rm -f $@ |
1192 |
|
$(LD) -r -o $@ $^ |
1193 |
|
$(STRIP) --strip-unneeded -K grub_mod_init -K grub_mod_fini -R .note -R .comment $@ |
1194 |
|
|
1195 |
|
pre-linux.o: linux_mod-loader_i386_pc_linux_normal.o |
1196 |
|
-rm -f $@ |
1197 |
|
$(LD) -r -o $@ $^ |
1198 |
|
|
1199 |
|
mod-linux.o: mod-linux.c |
1200 |
|
$(CC) $(CPPFLAGS) $(CFLAGS) $(linux_mod_CFLAGS) -c -o $@ $< |
1201 |
|
|
1202 |
|
mod-linux.c: moddep.lst genmodsrc.sh |
1203 |
|
sh $(srcdir)/genmodsrc.sh 'linux' $< > $@ || (rm -f $@; exit 1) |
1204 |
|
|
1205 |
|
def-linux.lst: pre-linux.o |
1206 |
|
$(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 linux/' > $@ |
1207 |
|
|
1208 |
|
und-linux.lst: pre-linux.o |
1209 |
|
echo 'linux' > $@ |
1210 |
|
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@ |
1211 |
|
|
1212 |
|
linux_mod-loader_i386_pc_linux_normal.o: loader/i386/pc/linux_normal.c |
1213 |
|
$(CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(CPPFLAGS) $(CFLAGS) $(linux_mod_CFLAGS) -c -o $@ $< |
1214 |
|
|
1215 |
|
linux_mod-loader_i386_pc_linux_normal.d: loader/i386/pc/linux_normal.c |
1216 |
|
set -e; $(CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(CPPFLAGS) $(CFLAGS) $(linux_mod_CFLAGS) -M $< | sed 's,linux_normal\.o[ :]*,linux_mod-loader_i386_pc_linux_normal.o $@ : ,g' > $@; [ -s $@ ] || rm -f $@ |
1217 |
|
|
1218 |
|
-include linux_mod-loader_i386_pc_linux_normal.d |
1219 |
|
|
1220 |
|
linux_mod_CFLAGS = $(COMMON_CFLAGS) |
1221 |
|
|
1222 |
# For normal.mod. |
# For normal.mod. |
1223 |
normal_mod_SOURCES = normal/cmdline.c normal/command.c normal/main.c \ |
normal_mod_SOURCES = normal/cmdline.c normal/command.c normal/main.c \ |
1650 |
-include _multiboot_mod-loader_i386_pc_multiboot.d |
-include _multiboot_mod-loader_i386_pc_multiboot.d |
1651 |
|
|
1652 |
_multiboot_mod_CFLAGS = $(COMMON_CFLAGS) |
_multiboot_mod_CFLAGS = $(COMMON_CFLAGS) |
1653 |
|
|
1654 |
|
# For multiboot.mod. |
1655 |
|
multiboot_mod_SOURCES = loader/i386/pc/multiboot_normal.c |
1656 |
|
CLEANFILES += multiboot.mod mod-multiboot.o mod-multiboot.c pre-multiboot.o multiboot_mod-loader_i386_pc_multiboot_normal.o def-multiboot.lst und-multiboot.lst |
1657 |
|
MOSTLYCLEANFILES += multiboot_mod-loader_i386_pc_multiboot_normal.d |
1658 |
|
DEFSYMFILES += def-multiboot.lst |
1659 |
|
UNDSYMFILES += und-multiboot.lst |
1660 |
|
|
1661 |
|
multiboot.mod: pre-multiboot.o mod-multiboot.o |
1662 |
|
-rm -f $@ |
1663 |
|
$(LD) -r -o $@ $^ |
1664 |
|
$(STRIP) --strip-unneeded -K grub_mod_init -K grub_mod_fini -R .note -R .comment $@ |
1665 |
|
|
1666 |
|
pre-multiboot.o: multiboot_mod-loader_i386_pc_multiboot_normal.o |
1667 |
|
-rm -f $@ |
1668 |
|
$(LD) -r -o $@ $^ |
1669 |
|
|
1670 |
|
mod-multiboot.o: mod-multiboot.c |
1671 |
|
$(CC) $(CPPFLAGS) $(CFLAGS) $(multiboot_mod_CFLAGS) -c -o $@ $< |
1672 |
|
|
1673 |
|
mod-multiboot.c: moddep.lst genmodsrc.sh |
1674 |
|
sh $(srcdir)/genmodsrc.sh 'multiboot' $< > $@ || (rm -f $@; exit 1) |
1675 |
|
|
1676 |
|
def-multiboot.lst: pre-multiboot.o |
1677 |
|
$(NM) -g --defined-only -P -p $< | sed 's/^\([^ ]*\).*/\1 multiboot/' > $@ |
1678 |
|
|
1679 |
|
und-multiboot.lst: pre-multiboot.o |
1680 |
|
echo 'multiboot' > $@ |
1681 |
|
$(NM) -u -P -p $< | cut -f1 -d' ' >> $@ |
1682 |
|
|
1683 |
|
multiboot_mod-loader_i386_pc_multiboot_normal.o: loader/i386/pc/multiboot_normal.c |
1684 |
|
$(CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(CPPFLAGS) $(CFLAGS) $(multiboot_mod_CFLAGS) -c -o $@ $< |
1685 |
|
|
1686 |
|
multiboot_mod-loader_i386_pc_multiboot_normal.d: loader/i386/pc/multiboot_normal.c |
1687 |
|
set -e; $(CC) -Iloader/i386/pc -I$(srcdir)/loader/i386/pc $(CPPFLAGS) $(CFLAGS) $(multiboot_mod_CFLAGS) -M $< | sed 's,multiboot_normal\.o[ :]*,multiboot_mod-loader_i386_pc_multiboot_normal.o $@ : ,g' > $@; [ -s $@ ] || rm -f $@ |
1688 |
|
|
1689 |
|
-include multiboot_mod-loader_i386_pc_multiboot_normal.d |
1690 |
|
|
1691 |
|
multiboot_mod_CFLAGS = $(COMMON_CFLAGS) |
1692 |
CLEANFILES += moddep.lst |
CLEANFILES += moddep.lst |
1693 |
pkgdata_DATA += moddep.lst |
pkgdata_DATA += moddep.lst |
1694 |
moddep.lst: $(DEFSYMFILES) $(UNDSYMFILES) genmoddep |
moddep.lst: $(DEFSYMFILES) $(UNDSYMFILES) genmoddep |