amiro-os / amiroos.mk @ 57a5d1df
History | View | Annotate | Download (4.11 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 | # absolute path to this directory |
||
27 | 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) |