Statistics
| Branch: | Tag: | Revision:

amiro-os / amiro-os.mk @ b7ac1f29

History | View | Annotate | Download (4.102 KB)

1 4c72a54c Thomas Schöpping
################################################################################
2
# AMiRo-OS is an operating system designed for the Autonomous Mini Robot       #
3
# (AMiRo) platform.                                                            #
4
# Copyright (C) 2016..2019  Thomas Schöpping et al.                            #
5
#                                                                              #
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 efe86ca9 Thomas Schöpping
# path to this directory
27 4c72a54c Thomas Schöpping
AMIROOS_DIR := $(dir $(lastword $(MAKEFILE_LIST)))
28
29
# set AMiRo-OS path variable
30
AMIROOS := $(AMIROOS_DIR:/=)
31
32
# load bootloader files
33
include $(AMIROOS)/bootloader/bootloader.mk
34
35
# load kernel files
36
include $(AMIROOS)/kernel/kernel.mk
37
38
# load peryphery LLD files
39
include $(AMIROOS)/periphery-lld/periphery-lld.mk
40
41
# load AMiRo-OS files
42
include $(AMIROOS)/modules/modules.mk
43
include $(AMIROOS)/core/core.mk
44
include $(AMIROOS)/test/test.mk
45
46
# inclusion directories
47
AMIROOS_INC = $(CONFDIR) \
48
              $(AMIROOS) \
49
              $(AMIROOS_BOOTLOADER_INC) \
50
              $(AMIROOS_KERNEL_INC) \
51
              $(AMIROOS_PERIPHERYLLD_INC) \
52
              $(AMIROOS_MODULES_INC) \
53
              $(AMIROOS_CORE_INC) \
54
              $(AMIROOS_TEST_INC) \
55
              $(MODULE_INC) \
56
              $(APPS_INC)
57
58
# C sources that can be compiled in ARM or THUMB mode depending on the global setting
59
AMIROOS_CSRC = $(AMIROOS_BOOTLOADER_CSRC) \
60
               $(AMIROOS_KERNEL_CSRC) \
61
               $(AMIROOS_PERIPHERYLLD_CSRC) \
62
               $(AMIROOS_MODULES_CSRC) \
63
               $(AMIROOS_CORE_CSRC) \
64
               $(AMIROOS_TEST_CSRC) \
65
               $(MODULE_CSRC) \
66
               $(APPS_CSRC)
67
68
# C++ sources that can be compiled in ARM or THUMB mode depending on the global setting
69
AMIROOS_CPPSRC = $(AMIROOS_BOOTLOADER_CPPSRC) \
70
                 $(AMIROOS_KERNEL_CPPSRC) \
71
                 $(AMIROOS_PERIPHERYLLD_CPPSRC) \
72
                 $(AMIROOS_MODULES_CPPSRC) \
73
                 $(AMIROOS_CORE_CPPSRC) \
74
                 $(AMIROOS_TEST_CPPSRC) \
75
                 $(MODULE_CPPSRC) \
76
                 $(APPS_CPPSRC)
77
78
# ASM source files
79
AMIROOS_ASMSRC = $(AMIROOS_BOOTLOADER_ASMSRC) \
80
                 $(AMIROOS_KERNEL_ASMSRC) \
81
                 $(AMIROOS_PERIPHERYLLD_ASMSRC) \
82
                 $(AMIROOS_MODULES_ASMSRC) \
83
                 $(AMIROOS_CORE_ASMSRC) \
84
                 $(AMIROOS_TEST_ASMSRC) \
85
                 $(MODULE_ASMSRC) \
86
                 $(APPS_ASMSRC)
87
88
# ASM with preprocessor source files here
89
AMIROOS_ASMXSRC = $(AMIROOS_BOOTLOADER_ASMXSRC) \
90
                  $(AMIROOS_KERNEL_ASMXSRC) \
91
                  $(AMIROOS_PERIPHERYLLD_ASMXSRC) \
92
                  $(AMIROOS_MODULES_ASMXSRC) \
93
                  $(AMIROOS_CORE_ASMXSRC) \
94
                  $(AMIROOS_TEST_ASMXSRC) \
95
                  $(MODULE_ASMXSRC) \
96
                  $(APPS_ASMXSRC)