| 1 | CC=gcc-4.3 |
| 2 | CFLAGS=-I../include -I../include/raw \ |
| 3 | -I../lwip/src/include -I../lwip/src/include/ipv4 \ |
| 4 | -nostdlib -nostdinc -fno-builtin -D__RAW__ \ |
| 5 | -Wall -Werror -std=gnu99 -Wstrict-aliasing=2 \ |
| 6 | -O1 -fno-merge-constants -fno-strict-aliasing |
| 7 | |
| 8 | STUBOBJS=entry.o pagingstub-asm.o pagingstub.o |
| 9 | |
| 10 | LWIP_OBJS = \ |
| 11 | ../lwip/src/core/dhcp.o \ |
| 12 | ../lwip/src/core/dns.o \ |
| 13 | ../lwip/src/core/init.o \ |
| 14 | ../lwip/src/core/ipv4/autoip.o \ |
| 15 | ../lwip/src/core/ipv4/icmp.o \ |
| 16 | ../lwip/src/core/ipv4/igmp.o \ |
| 17 | ../lwip/src/core/ipv4/inet.o \ |
| 18 | ../lwip/src/core/ipv4/inet_chksum.o \ |
| 19 | ../lwip/src/core/ipv4/ip.o \ |
| 20 | ../lwip/src/core/ipv4/ip_addr.o \ |
| 21 | ../lwip/src/core/ipv4/ip_frag.o \ |
| 22 | ../lwip/src/core/mem.o \ |
| 23 | ../lwip/src/core/memp.o \ |
| 24 | ../lwip/src/core/netif.o \ |
| 25 | ../lwip/src/core/pbuf.o \ |
| 26 | ../lwip/src/core/raw.o \ |
| 27 | ../lwip/src/core/stats.o \ |
| 28 | ../lwip/src/core/sys.o \ |
| 29 | ../lwip/src/core/tcp.o \ |
| 30 | ../lwip/src/core/tcp_in.o \ |
| 31 | ../lwip/src/core/tcp_out.o \ |
| 32 | ../lwip/src/core/udp.o \ |
| 33 | ../lwip/src/netif/etharp.o \ |
| 34 | ../lwip/src/netif/ethernetif.o |
| 35 | |
| 36 | |
| 37 | OBJS = ../ich2/smi.o \ |
| 38 | ../ich2/smram-ich2.o \ |
| 39 | ../ich2/ich2-timer.o \ |
| 40 | ../pci/pci.o \ |
| 41 | ../pci/pci-raw.o \ |
| 42 | ../pci/pci-bother.o \ |
| 43 | ../net/net.o \ |
| 44 | ../net/http/fs.o \ |
| 45 | ../net/http/httpd.o \ |
| 46 | ../net/3c90x.o \ |
| 47 | ../net/rfb.o \ |
| 48 | ../video/tnt2.o \ |
| 49 | ../video/fb.o \ |
| 50 | ../video/generic.o \ |
| 51 | ../video/text.o \ |
| 52 | drivers.o \ |
| 53 | ../lib/minilib.o \ |
| 54 | ../lib/doprnt.o \ |
| 55 | ../lib/sprintf.o \ |
| 56 | ../lib/console.o \ |
| 57 | ../lib/serial.o \ |
| 58 | ../lib/crc32.o \ |
| 59 | keyboard.o \ |
| 60 | packet.o \ |
| 61 | $(LWIP_OBJS) \ |
| 62 | smi.o \ |
| 63 | vga-overlay.o \ |
| 64 | main.o \ |
| 65 | traps.o \ |
| 66 | firstrun.o |
| 67 | |
| 68 | |
| 69 | all: aseg.elf |
| 70 | |
| 71 | aseg.elf: aseg.lds $(STUBOBJS) $(OBJS) |
| 72 | ld -o aseg.elf -T aseg.lds $(STUBOBJS) $(OBJS) |
| 73 | |
| 74 | clean: |
| 75 | rm -f $(OBJS) aseg.elf entry.bin entry.o |
| 76 | |
| 77 | %.o: %.asm |
| 78 | nasm -o $@.bin $< |
| 79 | objcopy -I binary -B i386 -O elf32-i386 $@.bin $@ |
| 80 | rm -f $@.bin |