Subversion Repositories HelenOS

Rev

Rev 460 | Rev 462 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 460 Rev 461
Line 139... Line 139...
139
all: kernel.bin boot
139
all: kernel.bin boot
140
 
140
 
141
-include Makefile.depend
141
-include Makefile.depend
142
 
142
 
143
clean:
143
clean:
144
	-rm -f kernel.bin kernel.map kernel.map.pre kernel.objdump generic/src/debug/real_map.bin Makefile.depend generic/include/arch generic/include/genarch arch/$(ARCH)/_link.ld
144
	-rm -f kernel.bin kernel.raw kernel.map kernel.map.pre kernel.objdump generic/src/debug/real_map.bin Makefile.depend generic/include/arch generic/include/genarch arch/$(ARCH)/_link.ld
145
	find generic/src/ arch/$(ARCH)/src/ genarch/src/ -name '*.o' -exec rm \{\} \;
145
	find generic/src/ arch/$(ARCH)/src/ genarch/src/ -name '*.o' -exec rm \{\} \;
146
	$(MAKE) -C arch/$(ARCH)/boot clean
146
	$(MAKE) -C arch/$(ARCH)/boot clean
147
 
147
 
148
config:
148
config:
149
	ln -sfn ../../arch/$(ARCH)/include/ generic/include/arch
149
	ln -sfn ../../arch/$(ARCH)/include/ generic/include/arch
Line 151... Line 151...
151
 
151
 
152
depend: config
152
depend: config
153
	$(CC) $(DEFS) $(CFLAGS) -M $(ARCH_SOURCES) $(GENARCH_SOURCES) $(GENERIC_SOURCES) > Makefile.depend
153
	$(CC) $(DEFS) $(CFLAGS) -M $(ARCH_SOURCES) $(GENARCH_SOURCES) $(GENERIC_SOURCES) > Makefile.depend
154
 
154
 
155
arch/$(ARCH)/_link.ld: arch/$(ARCH)/_link.ld.in
155
arch/$(ARCH)/_link.ld: arch/$(ARCH)/_link.ld.in
156
	$(CC) $(DEFS) -DBFD=\"$(BFD)\" $(CFLAGS) -E -x c $< | grep -v "^\#" > $@
156
	$(CC) $(DEFS) $(CFLAGS) -E -x c $< | grep -v "^\#" > $@
157
 
157
 
158
generic/src/debug/real_map.bin: depend arch/$(ARCH)/_link.ld $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS)
158
generic/src/debug/real_map.bin: depend arch/$(ARCH)/_link.ld $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS)
159
	$(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab Makefile generic/src/debug/empty_map.o
159
	$(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab Makefile generic/src/debug/empty_map.o
160
	$(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/empty_map.o -o $@ -Map kernel.map.pre
160
	$(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/empty_map.o -o $@ -Map kernel.map.pre
161
	$(OBJDUMP) -t $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) > kernel.objdump
161
	$(OBJDUMP) -t $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) > kernel.objdump
162
	tools/genmap.py kernel.map.pre kernel.objdump generic/src/debug/real_map.bin 
162
	tools/genmap.py kernel.map.pre kernel.objdump generic/src/debug/real_map.bin 
163
 
163
 
164
generic/src/debug/real_map.o: generic/src/debug/real_map.bin
164
generic/src/debug/real_map.o: generic/src/debug/real_map.bin
165
	$(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab $< $@
165
	$(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab $< $@
166
 
166
 
167
kernel.bin: depend arch/$(ARCH)/_link.ld $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/real_map.o
167
kernel.raw: depend arch/$(ARCH)/_link.ld $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/real_map.o
168
	$(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/real_map.o -o $@ -Map kernel.map
168
	$(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/real_map.o -o $@ -Map kernel.map
169
 
169
 
-
 
170
kernel.bin: kernel.raw
-
 
171
	$(OBJCOPY) -O $(BFD) kernel.raw kernel.bin
-
 
172
 
170
boot: kernel.bin
173
boot: kernel.bin
171
	$(MAKE) -C arch/$(ARCH)/boot build KERNEL_SIZE="`cat kernel.bin | wc -c`" CC=$(CC) AS=$(AS) LD=$(LD)
174
	$(MAKE) -C arch/$(ARCH)/boot build KERNEL_SIZE="`cat kernel.bin | wc -c`" CC=$(CC) AS=$(AS) LD=$(LD)
172
 
175
 
173
%.o: %.S
176
%.o: %.S
174
	$(CC) $(DEFS) $(AFLAGS) $(CFLAGS) -c $< -o $@
177
	$(CC) $(DEFS) $(AFLAGS) $(CFLAGS) -c $< -o $@