Changeset cc1f8d4 in mainline for boot/arch/ia64/loader/Makefile
- Timestamp:
- 2009-10-20T16:08:08Z (15 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 50989793
- Parents:
- 00413c5c
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
boot/arch/ia64/loader/Makefile
r00413c5c rcc1f8d4 1 1 # 2 # Copyright (c) 2006 Martin Decky 2 # Copyright (c) 2005 Martin Decky 3 # Copyright (c) 2007 Jakub Jermar 3 4 # All rights reserved. 4 5 # … … 27 28 # 28 29 29 include ../../../../version 30 -include ../../../../Makefile.config 30 include Makefile.common 31 31 32 ## Toolchain configuration 33 # 32 .PHONY: all clean 34 33 35 ifndef CROSS_PREFIX 36 CROSS_PREFIX = /usr/local 37 endif 38 39 BFD_NAME = elf64-ia64-little 40 BFD_ARCH = ia64 41 TARGET = ia64-pc-linux-gnu 42 TOOLCHAIN_DIR = $(CROSS_PREFIX)/ia64/bin 43 44 ifeq ($(COMPILER),gcc_native) 45 CC = gcc 46 AS = as 47 LD = ld 48 OBJCOPY = objcopy 49 OBJDUMP = objdump 50 GEFI_PREFIX = 51 endif 52 53 ifeq ($(COMPILER),icc) 54 CC = icc 55 AS = as 56 LD = ld 57 OBJCOPY = objcopy 58 OBJDUMP = objdump 59 endif 60 61 ifeq ($(COMPILER),gcc_cross) 62 CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc 63 AS = $(TOOLCHAIN_DIR)/$(TARGET)-as 64 LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld 65 OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy 66 OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump 67 GEFI_PREFIX = $(TOOLCHAIN_DIR)/$(TARGET)- 68 endif 69 70 #-mno-pic means do not use gp + imm22 to address data 71 CFLAGS = -DRELEASE=$(RELEASE) -I. -I../../../generic -I../../../genarch -I../../../../kernel/generic/include -imacros ../../../../config.h -nostdinc -nostdlib -fno-builtin -Werror-implicit-function-declaration -Wmissing-prototypes -Werror -O3 -fno-unwind-tables -mfixed-range=f32-f127 -mno-pic -pipe 72 73 SOURCES = \ 74 main.c \ 75 ../../../generic/printf.c \ 76 ../../../generic/string.c \ 77 ../../../genarch/balloc.c \ 78 _components.c \ 79 asm.S \ 80 boot.S 81 82 NOCOMPONENTS = \ 83 $(KERNELDIR)/kernel.bin 84 COMPONENTS = \ 85 $(KERNELDIR)/kernel.bin \ 86 $(USPACEDIR)/srv/ns/ns \ 87 $(USPACEDIR)/srv/loader/loader \ 88 $(USPACEDIR)/app/init/init \ 89 $(USPACEDIR)/srv/devmap/devmap \ 90 $(USPACEDIR)/srv/bd/rd/rd \ 91 $(USPACEDIR)/srv/vfs/vfs 92 ifeq ($(RDFMT),tmpfs) 93 COMPONENTS += $(USPACEDIR)/srv/fs/tmpfs/tmpfs 94 endif 95 ifeq ($(RDFMT),fat) 96 COMPONENTS += $(USPACEDIR)/srv/fs/fat/fat 97 endif 98 99 RD_SRVS = \ 100 $(USPACEDIR)/srv/fb/fb \ 101 $(USPACEDIR)/srv/kbd/kbd \ 102 $(USPACEDIR)/srv/console/console \ 103 $(USPACEDIR)/srv/fs/devfs/devfs \ 104 $(USPACEDIR)/srv/fs/tmpfs/tmpfs \ 105 $(USPACEDIR)/srv/fs/fat/fat \ 106 $(USPACEDIR)/srv/bd/file_bd/file_bd \ 107 $(USPACEDIR)/srv/part/mbr_part/mbr_part 108 109 RD_APPS = \ 110 $(USPACEDIR)/app/edit/edit \ 111 $(USPACEDIR)/app/getvc/getvc \ 112 $(USPACEDIR)/app/tetris/tetris \ 113 $(USPACEDIR)/app/tester/tester \ 114 $(USPACEDIR)/app/trace/trace \ 115 $(USPACEDIR)/app/klog/klog \ 116 $(USPACEDIR)/app/bdsh/bdsh 117 118 OBJECTS := $(addsuffix .o,$(basename $(SOURCES))) 119 COMPONENT_OBJECTS := $(addsuffix .o,$(basename $(notdir $(COMPONENTS)))) 120 121 .PHONY: all clean depend 122 123 all: hello.efi disasm 124 125 -include Makefile.depend 126 127 hello.efi: image.boot 128 make -C gefi/HelenOS PREFIX=$(GEFI_PREFIX) 129 cp gefi/HelenOS/hello.efi ../../../../ 130 cp gefi/HelenOS/image.bin ../../../../ 131 132 image.boot: depend _components.h _link.ld $(COMPONENT_OBJECTS) initrd.o $(OBJECTS) 133 $(LD) -Map image.map -no-check-sections -N -T _link.ld $(COMPONENT_OBJECTS) initrd.o $(OBJECTS) -o $@ 134 135 depend: 136 -makedepend -f - -- $(DEFS) $(CFLAGS) -- $(SOURCES) > Makefile.depend 2> /dev/null 34 all: ../../../../version ../../../../Makefile.config ../../../../config.h ../../../../config.defs 35 -[ -f $(DEPEND) ] && mv -f $(DEPEND) $(DEPEND_PREV) 36 $(MAKE) -f Makefile.build 137 37 138 38 clean: 139 -for file in $(RD_SRVS) ; do \ 39 $(MAKE) -C gefi clean 40 $(MAKE) -C gefi/HelenOS clean 41 for file in $(RD_SRVS) ; do \ 140 42 rm -f $(USPACEDIR)/dist/srv/`basename $$file` ; \ 141 43 done 142 -for file in $(RD_APPS) ; do \44 for file in $(RD_APPS) ; do \ 143 45 rm -f $(USPACEDIR)/dist/app/`basename $$file` ; \ 144 46 done 145 -rm -f _components.h _components.c _link.ld $(COMPONENT_OBJECTS) initrd.o $(OBJECTS) image.boot image.map image.disasm initrd.img image.boot Makefile.depend ../../../../image.bin ../../../../hello.efi 146 make -C gefi clean 147 make -C gefi/HelenOS clean 148 149 _components.h _components.c _link.ld $(COMPONENT_OBJECTS) initrd.o: $(COMPONENTS) $(RD_SRVS) $(RD_APPS) _link.ld.in 150 for file in $(RD_SRVS) ; do \ 151 cp $$file $(USPACEDIR)/dist/srv/ ; \ 152 done 153 for file in $(RD_APPS) ; do \ 154 cp $$file $(USPACEDIR)/dist/app/ ; \ 155 done 156 ifeq ($(RDFMT),tmpfs) 157 ../../../../tools/mktmpfs.py $(USPACEDIR)/dist/ initrd.fs 158 endif 159 ifeq ($(RDFMT),fat) 160 ../../../../tools/mkfat.py $(USPACEDIR)/dist/ initrd.fs 161 endif 162 ../../../../tools/mkhord.py 16384 initrd.fs initrd.img 163 rm initrd.fs 164 ../../../tools/pack.py $(OBJCOPY) $(BFD_NAME) $(BFD_ARCH) 16384 "unsigned long" $(COMPONENTS) ./initrd.img 165 166 %.o: %.S 167 $(CC) $(DEFS) $(CFLAGS) -D__ASM__ -c $< -o $@ 168 169 %.o: %.c 170 $(CC) $(DEFS) $(CFLAGS) -c $< -o $@ 171 172 disasm: image.boot 173 $(OBJDUMP) -d image.boot > image.disasm 47 rm -f $(DEPEND) $(DEPEND_PREV) $(OUTPUT) $(HELLO) $(COMPS).h $(COMPS).c $(LINK) $(INITRD).img $(INITRD).fs 48 find . -name '*.o' -follow -exec rm \{\} \; 49 find . -name '*.co' -follow -exec rm \{\} \;
Note:
See TracChangeset
for help on using the changeset viewer.