[Docs] Added Information about Secure Monitor
[3rdparty/ote_partner/tlk.git] / make / macros.mk
1 # Find the local dir of the make file
2 GET_LOCAL_DIR    = $(patsubst %/,%,$(dir $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))))
3
4 # makes sure the target dir exists
5 MKDIR = if [ ! -d $(dir $@) ]; then mkdir -p $(dir $@); fi
6
7 # prepends the BUILD_DIR var to each item in the list
8 TOBUILDDIR = $(addprefix $(BUILDDIR)/,$(1))
9
10 COMMA := ,
11 SPACE :=
12 SPACE +=
13
14 # generate a header file at $1 with an expanded variable in $2
15 define MAKECONFIGHEADER
16         @$(MKDIR)
17         @echo generating $1
18         @rm -f $1.tmp; \
19         LDEF=`echo $1 | tr '/\\.-' '_'`; \
20         echo \#ifndef __$${LDEF}_H > $1.tmp; \
21         echo \#define __$${LDEF}_H >> $1.tmp; \
22         for d in `echo $($2) | tr '[:lower:]' '[:upper:]'`; do \
23                 echo "#define $$d" | sed "s/=/\ /g;s/-/_/g;s/\//_/g" >> $1.tmp; \
24         done; \
25         echo \#endif >> $1.tmp; \
26         if [ -f "$1" ]; then \
27                 if cmp "$1.tmp" "$1"; then \
28                         rm -f $1.tmp; \
29                 else \
30                         mv $1.tmp $1; \
31                 fi \
32         else \
33                 mv $1.tmp $1; \
34         fi
35 endef