Revision 249c27b3

View differences:

apps/HelloWorld/HelloWorld.mk
30 30
HelloWorldAPP_INC = $(HelloWorldAPP_DIR)
31 31

  
32 32
# C source files
33
HelloWorldAPP_CSRC =
33
HelloWorldAPP_CSRC = $(HelloWorldAPP_DIR)/helloworld.c
34 34

  
35 35
# C++ source files
36 36
HelloWorldAPP_CPPSRC =
apps/HelloWorld/helloworld.c
1
/*
2
AMiRo-Apps is a collection of applications for the Autonomous Mini Robot (AMiRo) platform.
3
Copyright (C) 2018..2018  Thomas Schöpping et al.
4

  
5
This program is free software: you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation, either version 3 of the License, or
8
(at your option) any later version.
9

  
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
GNU General Public License for more details.
14

  
15
You should have received a copy of the GNU General Public License
16
along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
*/
18

  
19
#include <helloworld.h>
20

  
21
#warning "HEY, THIS IS HELLOWORLD.C!"
22

  
apps/HelloWorld/helloworld.h
1
/*
2
AMiRo-Apps is a collection of applications for the Autonomous Mini Robot (AMiRo) platform.
3
Copyright (C) 2018..2018  Thomas Schöpping et al.
4

  
5
This program is free software: you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation, either version 3 of the License, or
8
(at your option) any later version.
9

  
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
GNU General Public License for more details.
14

  
15
You should have received a copy of the GNU General Public License
16
along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
*/
18

  
19
#ifndef _HELLOWORLD_H_
20
#define _HELLOWORLD_H_
21

  
22
#warning "HEY, THIS IS HELLOWORLD.H!"
23

  
24
#endif /* _HELLOWORLD_H_ */
configurations/HelloWorld/Makefile
26 26
# absolue path to this directory
27 27
HelloWorldCONF_DIR := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))
28 28

  
29
ifneq ($(BUILDDIR),)
30
  export BUILDDIR
31
endif
32

  
33 29
# list of available modules
34 30
HelloWorldCONF_MODULES = $(patsubst $(HelloWorldCONF_DIR)/modules/%/,%,$(sort $(dir $(wildcard $(HelloWorldCONF_DIR)/modules/*/*))))
35 31

  
configurations/HelloWorld/modules/DiWheelDrive_1-1/Makefile
24 24

  
25 25

  
26 26
# absolue path to this directory
27
APPCONFIG_DIR := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))
27
APPCONFIG_MODULE_DIR := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))
28 28

  
29
# AMiRo-Apps root directory
30
AMIROAPPS_DIR = $(realpath $(APPCONFIG_DIR)/../../../..)
29
# environment setup
30
include $(APPCONFIG_MODULE_DIR)/../modules.mk
31 31

  
32
# path to the middleware
33
MIDDLEWARE_DIR = $(AMIROAPPS_DIR)/middleware
32
# include apps
33
include $(APPS_DIR)/HelloWorld/HelloWorld.mk
34 34

  
35
# path to the operating system
36
OS_DIR = $(AMIROAPPS_DIR)/os
35
# include directories for configurations
36
APPSINC += $(APPCONFIG_MODULE_DIR) \
37
           $(HelloWorldAPP_INC)
37 38

  
38
# include environments
39
include $(MIDDLEWARE_DIR)/middleware.mk
40
include $(OS_DIR)/os.mk
39
# C sources
40
APPSCSRC += $(HelloWorldAPP_CSRC)
41 41

  
42
# include directories for configurations
43
APPSINC = $(APPCONFIG_DIR)/../ \
44
          $(APPCONFIG_DIR)
42
# C++ sources
43
APPSCPPSRC += $(HelloWorldAPP_CPPSRC)
45 44

  
46 45
# call DiWHeelDrive Makefile module from OS
47
export
48

  
49 46
all:
50 47
	$(MAKE) -C $(OS_DIR)/AMiRo-OS/modules/DiWheelDrive_1-1/
51 48

  
configurations/HelloWorld/modules/DiWheelDrive_1-1/mainincludes.hpp
17 17
*/
18 18

  
19 19
#ifndef _MAININCLUDES_HPP_
20
#define _HAININCLUDES_HPP_
20
#define _MAININCLUDES_HPP_
21

  
22
#warning "HEY, THIS IS MAININCLUDES.HPP!"
21 23

  
22 24
#endif /* _MAININCLUDES_HPP_ */
configurations/HelloWorld/modules/HelloWorld_osconf.h
19 19
#ifndef _HELLOWORLD_OSCONF_H_
20 20
#define _HELLOWORLD_OSCONF_H_
21 21

  
22
#define AMIROOS_CFG_MAIN_EXTRA_INCLUDE_HEADER <mainincludes.hpp>
23

  
22 24
#endif /* _HELLOWORLD_OSCONF_H_ */
configurations/HelloWorld/modules/modules.mk
1
################################################################################
2
# AMiRo-Apps is a collection of applications for the Autonomous Mini Robot     #
3
# (AMiRo) platform.                                                            #
4
# Copyright (C) 2018..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
# absolue path to this directory
27
APPCONFIG_MODULES_DIR := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))
28

  
29
# environment setup
30
CONFIG_USE_MIDDLEWARE = true
31
include $(APPCONFIG_MODULES_DIR)/../../apps.mk
32

  
33
# include directories for configurations
34
APPSINC += $(APPCONFIG_MODULES_DIR)
35

  
36
# set the build directory
37
ifeq ($(BUILDDIR),)
38
  BUILDDIR = $(APPCONFIG_MODULE_DIR)/build
39
endif
40
export BUILDDIR
configurations/apps.mk
1
################################################################################
2
# AMiRo-Apps is a collection of applications for the Autonomous Mini Robot     #
3
# (AMiRo) platform.                                                            #
4
# Copyright (C) 2018..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
# absolue path to this directory
27
APPSCONFIG_DIR := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))
28

  
29
# absolute path to the applications directory
30
APPS_DIR := $(APPSCONFIG_DIR)/../apps
31

  
32
# operating system setup
33
include $(APPSCONFIG_DIR)/../os/os.mk
34

  
35
# middleware setup
36
ifneq ($(CONFIG_USE_MIDDLEWARE),)
37
  $(info middleware enabled)
38
  include $(APPSCONFIG_DIR)/../middleware/middleware.mk
39
else
40
  $(info middleware disabled)
41
endif
42

  
middleware/uRtWare
1
Subproject commit e98c61a84c06395279399244de0bd009e53740db
1
Subproject commit 5f113d7b692f0a8082b0a36c077d5607b270080c
os/AMiRo-OS
1
Subproject commit 2e69d6712b0aefca44bb5d0191d7c0e7de0ca157
1
Subproject commit a4a18efc98046bcdd382e6de5b5f8d786f165ae8

Also available in: Unified diff