Statistics
| Branch: | Tag: | Revision:

amiro-os / Makefile @ 881a7932

History | View | Annotate | Download (4.202 KB)

1
################################################################################
2
# AMiRo-OS is an operating system designed for the Autonomous Mini Robot       #
3
# (AMiRo) platform.                                                            #
4
# Copyright (C) 2016..2018  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
define HELP_TEXT
27
################################################################################
28
#                                                                              #
29
# Copyright (c) 2016..2018  Thomas Schöpping                                   #
30
#                                                                              #
31
# This is free software; see the source for copying conditions. There is NO    #
32
# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  #
33
# The development of this software was supported by the Excellence Cluster     #
34
# EXC 227 Cognitive Interaction Technology. The Excellence Cluster EXC 227 is  #
35
# a grant of the Deutsche Forschungsgemeinschaft (DFG) in the context of the   #
36
# German Excellence Initiative.                                                #
37
#                                                                              #
38
################################################################################
39

    
40
  AMiRo-OS Makefile help
41
  ======================
42

    
43
ARGUMENTS:
44

    
45
  help:
46
      Prints this text.
47

    
48
  all:
49
      Builds the binaries for all modules.
50

    
51
  flash:
52
      Flashes all binaries to the hardware.
53
      If the binaries do not exist, they are created beforehand.
54

    
55
  clean:
56
      Deletes all temporary and binary files of all modules.
57

    
58
  <module>:
59
      Builds the binary only for the specified module.
60

    
61

    
62
EXAMPLES:
63

    
64
  >$$ make DiWheelDrive_1-1
65
      This command will generate the binary file for the DiWheelDrive module
66
      (version 1.1).
67

    
68
  >$$ make DiWheelDrive_1-1 LightRing_1-0
69
      This command will generate the binary files for the two modules
70
      DiWheelDrive (version 1.1) and LightRing (version 1.0).
71

    
72
  >$$ make flash -j
73
      This command will first build all missing binary files and flash all
74
      modules as soon as the binaries are ready.
75
      By the additional argument '-j' the build process will be parallelized.
76

    
77
  >$$ make clean && make all && make flash
78
      This command will first clean all thee projects. In a second step the
79
      binaries for all modules are build from scratch. Finally all modules are
80
      updated with the latest software.
81
      The following command can be used as a shorter and faster version:
82
          >$$ make clean && make flash -j
83

    
84
################################################################################
85
endef
86

    
87
.PHONY: help
88

    
89
OS_BASE_DIR := $(dir $(lastword $(MAKEFILE_LIST)))
90

    
91
help:
92
	$(info $(HELP_TEXT))
93
	@exit
94

    
95
include $(OS_BASE_DIR)/modules/Makefile