]> rtime.felk.cvut.cz Git - arc.git/blob - examples/build_example.mk
Updated Os configs for some more examples
[arc.git] / examples / build_example.mk
1 \r
2 \r
3 ifeq ($(EXAMPLENAME),)\r
4 $(error whyyyyyy)\r
5 endif\r
6 \r
7 ifndef ROOTDIR\r
8 $(error ROOTDIR is not set. This makefile is invoked the wrong way)\r
9 endif\r
10 \r
11 #export EXAMPLENAME\r
12 \r
13 ifndef BOARDDIR\r
14 # Assume in-tree-build \r
15 boardpath=$(realpath $(CURDIR)/../..)\r
16 boarddir=$(subst $(realpath $(ROOTDIR)/boards)/,,$(boardpath))\r
17 ugh=1\r
18 else\r
19   # BOARDIR is defined\r
20   ifndef BDIR\r
21     # Assume that we want to build current directory\r
22     BDIR=$(CURDIR)\r
23     ugh=1\r
24   else\r
25     # BOARDIR and BDIR are defined \r
26     # out-of-tree build\r
27   endif\r
28 endif\r
29 \r
30 ifeq ($(ugh),1) \r
31 \r
32 export example:=$(subst $(abspath $(CURDIR)/..)/,,$(CURDIR))\r
33 \r
34 .PHONY: all clean\r
35 all:\r
36         @echo "==========[ Building \"$(example)\" ]=========="\r
37         $(Q)$(MAKE) -C $(ROOTDIR) BOARDDIR=$(boarddir) BDIR=$(CURDIR) all\r
38         \r
39 clean:  \r
40         @echo Cleaning dir $(boarddir) \r
41         $(Q)rm -rf obj_$(boarddir)\r
42         @echo done!\r
43 \r
44 endif\r
45 \r
46 ifneq (${MAKELEVEL},0)\r
47 \r
48 VPATH += ..\r
49 VPATH += $(ROOTDIR)/examples\r
50 inc-y += ..\r
51 \r
52 ldcmdfile-y = linkscript_$(COMPILER).lcf\r
53 vpath %.ldf $(ROOTDIR)/$(ARCH_PATH-y)/scripts\r
54         \r
55 # What I want to build\r
56 build-exe-y = $(EXAMPLENAME).elf\r
57 \r
58 endif\r
59 \r