ada-examples-4-10-branchada-examples-4-6-branchada-examples-4-7-branchada-examples-4-8-branchada-examples-4-9-branch
Rev | Line | |
---|
[7efcefa] | 1 | # |
---|
| 2 | # Makefile for hello world example |
---|
| 3 | # |
---|
| 4 | |
---|
| 5 | MAIN=hello |
---|
| 6 | |
---|
| 7 | # Tool paths |
---|
| 8 | target=i386-rtems |
---|
| 9 | tooldir=/home/joel/gnat-3.10p/${target}/ |
---|
| 10 | rtemsdir=${tooldir}/rtems/pc386 |
---|
| 11 | |
---|
| 12 | # Tool names |
---|
| 13 | GCC=${tooldir}/bin/${target}-gcc |
---|
| 14 | GNATMAKE=${tooldir}/bin/${target}-gnatmake |
---|
| 15 | SIZE=${tooldir}/bin/${target}-size |
---|
| 16 | OBJCOPY=${tooldir}/bin/${target}-objcopy |
---|
| 17 | NM=${tooldir}/bin/${target}-nm |
---|
| 18 | |
---|
| 19 | HEADERADDR=0x00097E00 |
---|
| 20 | START16FILE=$(rtemsdir)/lib/start16.bin |
---|
| 21 | START16ADDR=0x00097C00 |
---|
| 22 | RELOCADDR=0x00100000 |
---|
| 23 | |
---|
| 24 | CARGS=-B${rtemsdir}/lib/ -specs bsp_specs -qrtems \ |
---|
| 25 | -Wl,-Ttext,$(RELOCADDR) -Wl,--oformat,elf32-i386 |
---|
| 26 | |
---|
| 27 | all: init.o $(MAIN) |
---|
| 28 | |
---|
| 29 | $(MAIN): $(MAIN).exe |
---|
| 30 | ln $(MAIN).exe $(MAIN) |
---|
| 31 | |
---|
| 32 | $(MAIN).exe: init.o |
---|
| 33 | $(GNATMAKE) -v -O -gnata -gnatE -gnato $(MAIN) -g -o $(MAIN).obj \ |
---|
| 34 | -bargs -r \ |
---|
| 35 | -cargs $(CARGS) \ |
---|
| 36 | -largs $(CARGS) init.o |
---|
| 37 | $(SIZE) $(MAIN).obj |
---|
| 38 | $(NM) -g -n $(MAIN).obj >$(MAIN).num |
---|
| 39 | $(OBJCOPY) -O a.out-i386 \ |
---|
| 40 | --remove-section=.rodata \ |
---|
| 41 | --remove-section=.comment \ |
---|
| 42 | --remove-section=.note \ |
---|
| 43 | --strip-unneeded $(MAIN).obj $@ |
---|
| 44 | $(OBJCOPY) -O binary $(MAIN).obj $(MAIN).bin |
---|
| 45 | $(rtemsdir)/build-tools/bin2boot -v $(MAIN).bt $(HEADERADDR) \ |
---|
| 46 | $(START16FILE) $(START16ADDR) 0 $(MAIN).bin $(RELOCADDR) 0 |
---|
| 47 | |
---|
| 48 | |
---|
| 49 | init.o: init.c |
---|
| 50 | $(GCC) -O4 -g -Wall -ansi -fasm $(CARGS) \ |
---|
| 51 | -DGNAT_MAIN_STACKSPACE=16 -c init.c |
---|
| 52 | |
---|
| 53 | clean: |
---|
| 54 | rm -f b_$(MAIN).c b_$(MAIN).o *.o *.ali $(MAIN) |
---|
Note: See
TracBrowser
for help on using the repository browser.