| Line |  | 
|---|
| 1 | # Makefile for kernel | 
|---|
| 2 |  | 
|---|
| 3 | # Directories | 
|---|
| 4 | u = /usr | 
|---|
| 5 | i = $u/include | 
|---|
| 6 | l = $u/lib | 
|---|
| 7 | s = system | 
|---|
| 8 |  | 
|---|
| 9 | # Programs, flags, etc. | 
|---|
| 10 | CC =    exec cc | 
|---|
| 11 | CPP =   $l/cpp | 
|---|
| 12 | LD =    $(CC) -.o | 
|---|
| 13 | CFLAGS = -I$i | 
|---|
| 14 | LDFLAGS = -i | 
|---|
| 15 |  | 
|---|
| 16 | HEAD =  mpx.o | 
|---|
| 17 | OBJS =  start.o protect.o klib.o table.o kprintf.o main.o proc.o \ | 
|---|
| 18 | i8259.o exception.o system.o clock.o utility.o debug.o | 
|---|
| 19 | SYSTEM = system.a | 
|---|
| 20 | LIBS = -ltimers | 
|---|
| 21 |  | 
|---|
| 22 |  | 
|---|
| 23 | # What to make. | 
|---|
| 24 | all: build | 
|---|
| 25 | kernel build install: $(HEAD) $(OBJS) | 
|---|
| 26 | cd system && $(MAKE) -$(MAKEFLAGS) $@ | 
|---|
| 27 | $(LD) $(CFLAGS) $(LDFLAGS) -o kernel \ | 
|---|
| 28 | $(HEAD) $(OBJS) \ | 
|---|
| 29 | $(SYSTEM) $(LIBS) | 
|---|
| 30 | install -S 0 kernel | 
|---|
| 31 |  | 
|---|
| 32 | clean: | 
|---|
| 33 | cd system && $(MAKE) -$(MAKEFLAGS) $@ | 
|---|
| 34 | rm -f *.a *.o *~ *.bak kernel | 
|---|
| 35 |  | 
|---|
| 36 | depend: | 
|---|
| 37 | cd system && $(MAKE) -$(MAKEFLAGS) $@ | 
|---|
| 38 | /usr/bin/mkdep "$(CC) -E $(CPPFLAGS)" *.c *.s > .depend | 
|---|
| 39 |  | 
|---|
| 40 | # How to build it | 
|---|
| 41 | .s.o: | 
|---|
| 42 | $(CC) $(CFLAGS) -c -o $@ $< | 
|---|
| 43 |  | 
|---|
| 44 | .c.o: | 
|---|
| 45 | $(CC) $(CFLAGS) -c -o $@ $< | 
|---|
| 46 |  | 
|---|
| 47 | # Include generated dependencies. | 
|---|
| 48 | klib.o: klib386.s klib88.s | 
|---|
| 49 | mpx.o:  mpx386.s mpx88.s | 
|---|
| 50 | include .depend | 
|---|
| 51 |  | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.