Lines Matching refs:link

1 link-out-dir = $(out-dir)/core
3 link-script-dummy = $(arch-dir)/kernel/link_dummy.ld
4 link-script = $(if $(wildcard $(platform-dir)/kern.ld.S), \
7 link-script-pp = $(link-out-dir)/kern.ld
8 link-script-dep = $(link-out-dir)/.kern.ld.d
12 link-ldflags-common += $(call ld-option,--no-warn-rwx-segments)
14 link-ldflags-common += $(call ld-option,--no-warn-execstack)
17 link-ldflags = $(LDFLAGS)
19 link-ldflags += -pie -Bsymbolic -z norelro $(ldflag-apply-dynamic-relocs)
21 link-ldflags += -z text
24 link-ldflags += -z notext
33 link-ldflags += $(call ld-option,-z force-bti) --fatal-warnings
35 link-ldflags += -T $(link-script-pp) -Map=$(link-out-dir)/tee.map
36 link-ldflags += --sort-section=alignment
37 link-ldflags += --fatal-warnings
38 link-ldflags += --gc-sections
39 link-ldflags += $(link-ldflags-common)
41 link-ldadd = $(LDADD)
42 link-ldadd += $(ldflags-external)
43 link-ldadd += $(libdeps)
44 link-objs := $(filter-out \
50 link-objs-init := $(filter-out \
54 ldargs-tee.elf := $(link-ldflags) $(link-objs) $(link-out-dir)/version.o \
55 $(link-ldadd)
57 link-script-cppflags := \
60 $(addprefix -I,$(incdirscore) $(link-out-dir)) \
63 ldargs-all_objs := -T $(link-script-dummy) --no-check-sections \
64 $(link-ldflags-common) \
65 $(link-objs) $(link-ldadd)
66 cleanfiles += $(link-out-dir)/all_objs.o
67 $(link-out-dir)/all_objs.o: $(objs) $(libdeps) $(MAKEFILE_LIST)
71 cleanfiles += $(link-out-dir)/unpaged_entries.txt
72 $(link-out-dir)/unpaged_entries.txt: $(link-out-dir)/all_objs.o
77 unpaged-ldargs := -T $(link-script-dummy) --no-check-sections --gc-sections \
78 $(link-ldflags-common)
79 unpaged-ldadd := $(objs) $(link-ldadd)
80 cleanfiles += $(link-out-dir)/unpaged.o
81 $(link-out-dir)/unpaged.o: $(link-out-dir)/unpaged_entries.txt
84 `cat $(link-out-dir)/unpaged_entries.txt` \
87 cleanfiles += $(link-out-dir)/text_unpaged.ld.S
88 $(link-out-dir)/text_unpaged.ld.S: $(link-out-dir)/unpaged.o
93 cleanfiles += $(link-out-dir)/rodata_unpaged.ld.S
94 $(link-out-dir)/rodata_unpaged.ld.S: $(link-out-dir)/unpaged.o
100 cleanfiles += $(link-out-dir)/init_entries.txt
101 $(link-out-dir)/init_entries.txt: $(link-out-dir)/all_objs.o
106 init-ldargs := -T $(link-script-dummy) --no-check-sections --gc-sections \
107 $(link-ldflags-common)
108 init-ldadd := $(link-objs-init) $(link-out-dir)/version.o $(link-ldadd)
109 cleanfiles += $(link-out-dir)/init.o
110 $(link-out-dir)/init.o: $(link-out-dir)/init_entries.txt
114 `cat $(link-out-dir)/init_entries.txt` \
117 cleanfiles += $(link-out-dir)/text_init.ld.S
118 $(link-out-dir)/text_init.ld.S: $(link-out-dir)/init.o
123 cleanfiles += $(link-out-dir)/rodata_init.ld.S
124 $(link-out-dir)/rodata_init.ld.S: $(link-out-dir)/init.o
128 -include $(link-script-dep)
130 link-script-extra-deps += $(link-out-dir)/text_unpaged.ld.S
131 link-script-extra-deps += $(link-out-dir)/rodata_unpaged.ld.S
132 link-script-extra-deps += $(link-out-dir)/text_init.ld.S
133 link-script-extra-deps += $(link-out-dir)/rodata_init.ld.S
134 link-script-extra-deps += $(conf-file)
135 cleanfiles += $(link-script-pp) $(link-script-dep)
136 $(link-script-pp): $(link-script) $(link-script-extra-deps)
139 $(q)$(CPPcore) -P -MT $@ -MD -MP -MF $(link-script-dep) \
140 $(link-script-cppflags) $< -o $@
142 $(link-out-dir)/version.o:
145 -include $(link-out-dir)/.tee.elf.cmd
146 define check-link-objs
147 $(if $(strip $(filter-out $(link-objs), $(old-link-objs))
148 $(filter-out $(old-link-objs), $(link-objs))), FORCE_LINK := FORCE)
150 $(eval $(call check-link-objs))
152 all: $(link-out-dir)/tee.elf
153 cleanfiles += $(link-out-dir)/tee.elf $(link-out-dir)/tee.map
154 cleanfiles += $(link-out-dir)/version.o
155 cleanfiles += $(link-out-dir)/.buildcount
156 cleanfiles += $(link-out-dir)/.tee.elf.cmd
157 $(link-out-dir)/tee.elf: $(link-objs) $(libdeps) $(link-script-pp) $(FORCE_LINK)
158 @echo "old-link-objs := $(link-objs)" >$(link-out-dir)/.tee.elf.cmd
162 all: $(link-out-dir)/tee.dmp
163 cleanfiles += $(link-out-dir)/tee.dmp
164 $(link-out-dir)/tee.dmp: $(link-out-dir)/tee.elf
168 cleanfiles += $(link-out-dir)/tee-pager.bin
169 $(link-out-dir)/tee-pager.bin: $(link-out-dir)/tee.elf scripts/gen_tee_bin.py
174 cleanfiles += $(link-out-dir)/tee-pageable.bin
175 $(link-out-dir)/tee-pageable.bin: $(link-out-dir)/tee.elf scripts/gen_tee_bin.py
180 all: $(link-out-dir)/tee.bin
181 cleanfiles += $(link-out-dir)/tee.bin
182 $(link-out-dir)/tee.bin: $(link-out-dir)/tee.elf scripts/gen_tee_bin.py
186 all: $(link-out-dir)/tee-header_v2.bin
187 cleanfiles += $(link-out-dir)/tee-header_v2.bin
188 $(link-out-dir)/tee-header_v2.bin: $(link-out-dir)/tee.elf \
193 all: $(link-out-dir)/tee-pager_v2.bin
194 cleanfiles += $(link-out-dir)/tee-pager_v2.bin
195 $(link-out-dir)/tee-pager_v2.bin: $(link-out-dir)/tee.elf scripts/gen_tee_bin.py
199 all: $(link-out-dir)/tee-pageable_v2.bin
200 cleanfiles += $(link-out-dir)/tee-pageable_v2.bin
201 $(link-out-dir)/tee-pageable_v2.bin: $(link-out-dir)/tee.elf \
206 all: $(link-out-dir)/tee.symb_sizes
207 cleanfiles += $(link-out-dir)/tee.symb_sizes
208 $(link-out-dir)/tee.symb_sizes: $(link-out-dir)/tee.elf
212 cleanfiles += $(link-out-dir)/tee.mem_usage
214 mem_usage: $(link-out-dir)/tee.mem_usage
216 $(link-out-dir)/tee.mem_usage: $(link-out-dir)/tee.elf
221 all: $(link-out-dir)/tee-raw.bin
222 cleanfiles += $(link-out-dir)/tee-raw.bin
223 $(link-out-dir)/tee-raw.bin: $(link-out-dir)/tee.elf scripts/gen_tee_bin.py
227 cleanfiles += $(link-out-dir)/tee.srec
228 $(link-out-dir)/tee.srec: $(link-out-dir)/tee-raw.bin