Statistics
| Branch: | Revision:

amiro-apps / configurations / HelloWorld / Makefile @ ec600fee

History | View | Annotate | Download (2.61 KB)

1 b74d5ee3 Thomas Schöpping
################################################################################
2
# AMiRo-Apps is a collection of applications for the Autonomous Mini Robot     #
3
# (AMiRo) platform.                                                            #
4 6d4ba740 Thomas Schöpping
# Copyright (C) 2018..2020  Thomas Schöpping et al.                            #
5 b74d5ee3 Thomas Schöpping
#                                                                              #
6
# This program is free software: you can redistribute it and/or modify         #
7
# it under the terms of the GNU General Public License as published by         #
8
# the Free Software Foundation, either version 3 of the License, or            #
9
# (at your option) any later version.                                          #
10
#                                                                              #
11
# This program is distributed in the hope that it will be useful,              #
12
# but WITHOUT ANY WARRANTY; without even the implied warranty of               #
13
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                #
14
# GNU General Public License for more details.                                 #
15
#                                                                              #
16
# You should have received a copy of the GNU General Public License            #
17
# along with this program.  If not, see <http://www.gnu.org/licenses/>.        #
18
#                                                                              #
19
# This research/work was supported by the Cluster of Excellence Cognitive      #
20
# Interaction Technology 'CITEC' (EXC 277) at Bielefeld University, which is   #
21
# funded by the German Research Foundation (DFG).                              #
22
################################################################################
23
24
25
26
# absolue path to this directory
27
HelloWorldCONF_DIR := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))
28
29 6d4ba740 Thomas Schöpping
# list of available/supported modules
30
HelloWorldCONF_MODULES_DIR = $(HelloWorldCONF_DIR)/modules/
31
HelloWorldCONF_MODULES = $(patsubst $(HelloWorldCONF_MODULES_DIR)%/,%,$(sort $(dir $(wildcard $(HelloWorldCONF_MODULES_DIR)*/*))))
32 b74d5ee3 Thomas Schöpping
33 6d4ba740 Thomas Schöpping
HelloWorldCONF_CLEANTRGS = $(HelloWorldCONF_MODULES:%=clean_%)
34
HelloWorldCONF_FLASHTRGS = $(HelloWorldCONF_MODULES:%=flash_%)
35 b74d5ee3 Thomas Schöpping
36 6d4ba740 Thomas Schöpping
.PHONY: all $(HelloWorldCONF_MODULES) $(HelloWorldCONF_FLASHTRGS) clean $(HelloWorldCONF_CLEANTRGS)
37 b74d5ee3 Thomas Schöpping
38
all: $(HelloWorldCONF_MODULES)
39 6d4ba740 Thomas Schöpping
40 b74d5ee3 Thomas Schöpping
$(HelloWorldCONF_MODULES):
41 6d4ba740 Thomas Schöpping
	$(MAKE) -C $(HelloWorldCONF_MODULES_DIR)/$@
42 b74d5ee3 Thomas Schöpping
43 6d4ba740 Thomas Schöpping
$(HelloWorldCONF_FLASHTRGS):
44
	$(MAKE) -C $(HelloWorldCONF_MODULES_DIR)/$(@:flash_%=%) flash
45 b74d5ee3 Thomas Schöpping
46 6d4ba740 Thomas Schöpping
clean: $(HelloWorldCONF_CLEANTRGS)
47
$(HelloWorldCONF_CLEANTRGS):
48
	$(MAKE) -C $(HelloWorldCONF_MODULES_DIR)/$(@:clean_%=%) clean