Skip to content

Commit

Permalink
core: log build information on init
Browse files Browse the repository at this point in the history
Build information includes:

- Version string as returned by 'git describe --dirty'
- Build counter (#1 initially or after 'make clean')
- Build date/time
- Linker architecture ('arm', 'aarch64')

For example: 0.2.0-107-g985d7d8 #1 Tue May 12 16:49:14 UTC 2015 aarch64

Signed-off-by: Jerome Forissier <[email protected]>
  • Loading branch information
jforissier committed May 13, 2015
1 parent 7398089 commit cee7b12
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 2 deletions.
3 changes: 3 additions & 0 deletions core/arch/arm/include/kernel/generic_boot.h
Original file line number Diff line number Diff line change
Expand Up @@ -58,4 +58,7 @@ extern uint8_t __pageable_part_end[];
extern uint8_t __pageable_start[];
extern uint8_t __pageable_end[];

/* Generated by core/arch/arm/kernel/link.mk */
extern const char core_v_str[];

#endif /* KERNEL_GENERIC_BOOT_H */
2 changes: 1 addition & 1 deletion core/arch/arm/kernel/generic_boot.c
Original file line number Diff line number Diff line change
Expand Up @@ -281,7 +281,7 @@ static void init_primary_helper(uint32_t pageable_part, uint32_t nsec_entry)

init_runtime(pageable_part);

DMSG("TEE initializing\n");
IMSG("Initializing (%s)\n", core_v_str);

thread_init_primary(generic_boot_get_handlers());
thread_init_per_cpu();
Expand Down
31 changes: 30 additions & 1 deletion core/arch/arm/kernel/link.mk
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ link-ldflags += --print-gc-sections
link-ldadd = $(LDADD)
link-ldadd += $(addprefix -L,$(libdirs))
link-ldadd += $(addprefix -l,$(libnames))
ldargs-tee.elf := $(link-ldflags) $(objs) $(link-ldadd) $(libgcccore)
ldargs-tee.elf := $(link-ldflags) $(objs) $(link-out-dir)/version.o \
$(link-ldadd) $(libgcccore)

link-script-cppflags := -DASM=1 \
$(filter-out $(CPPFLAGS_REMOVE) $(cppflags-remove), \
Expand Down Expand Up @@ -92,9 +93,37 @@ $(link-script-pp): $(link-script) $(link-script-extra-deps)
$(q)$(CPPcore) -Wp,-P,-MT,$@,-MD,$(link-script-dep) \
$(link-script-cppflags) $< > $@

define update-buildcount
@$(cmd-echo-silent) ' UPD $(1)'
$(q)if [ ! -f $(1) ]; then \
mkdir -p $(dir $(1)); \
echo 1 >$(1); \
else \
expr 0`cat $(1)` + 1 >$(1); \
fi
endef

define gen-version-o
$(call update-buildcount,$(link-out-dir)/.buildcount)
@$(cmd-echo-silent) ' GEN $(link-out-dir)/version.o'
$(q)echo -e "const char core_v_str[] =" \
"\"`git describe --dirty` \"" \
"\"#`cat $(link-out-dir)/.buildcount` \"" \
"\"`date -u` \"" \
"\"$(CFG_KERN_LINKER_ARCH)\";\n" \
| $(CCcore) $(core-platform-cflags) \
-xc - -c -o $(link-out-dir)/version.o
endef

$(link-out-dir)/version.o:
$(call gen-version-o)

all: $(link-out-dir)/tee.elf
cleanfiles += $(link-out-dir)/tee.elf $(link-out-dir)/tee.map
cleanfiles += $(link-out-dir)/version.o
cleanfiles += $(link-out-dir)/.buildcount
$(link-out-dir)/tee.elf: $(objs) $(libdeps) $(link-script-pp)
$(call gen-version-o)
@$(cmd-echo-silent) ' LD $@'
$(q)$(LDcore) $(ldargs-tee.elf) -o $@

Expand Down

0 comments on commit cee7b12

Please sign in to comment.