-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathMakefile
More file actions
92 lines (68 loc) · 2.81 KB
/
Copy pathMakefile
File metadata and controls
92 lines (68 loc) · 2.81 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# ------------------------------------------------------------------------------
# ALIASES
# ------------------------------------------------------------------------------
MKFILE_PATH := $(abspath $(lastword $(MAKEFILE_LIST)))
MKFILE_DIR := $(dir $(MKFILE_PATH))
ROOT_DIR := $(MKFILE_DIR)
DISPLAY ?= :1
MAKE_MAP ?= false
RMW_IMPLEMENTATION ?= rmw_cyclonedds_cpp
CYCLONEDDS_URI ?= /ros2_ws/cyclonedds.xml
ROS_DOMAIN_ID := 0
TEAM := 1 ## 0 - Yellow; 1 - Blue
# ------------------------------------------------------------------------------
COMPUTER_IMAGE = \
robot
DOCKER_COMPOSE_FILES := \
-f ./docker/docker-compose.yaml
BASE_IMAGES := $(COMPUTER_IMAGE)
# ------------------------------------------------------------------------------
RENDER_DISPLAY := $(DISPLAY)
BASE_PARAMETERS := \
ROOT_DIR=$(ROOT_DIR) \
RENDER_DISPLAY=$(DISPLAY) \
MAKE_MAP=$(MAKE_MAP) \
RMW_IMPLEMENTATION=$(RMW_IMPLEMENTATION) \
CYCLONEDDS_URI=$(CYCLONEDDS_URI) \
ROS_DOMAIN_ID=$(ROS_DOMAIN_ID) \
TEAM=$(TEAM)
# ------------------------------------------------------------------------------
BUILD_COMMAND := $(BASE_PARAMETERS) docker compose $(DOCKER_COMPOSE_FILES) build
RUN_COMMAND := docker compose $(DOCKER_COMPOSE_FILES) up
# ------------------------------------------------------------------------------
# BUILDING COMMANDS
# ------------------------------------------------------------------------------
.PHONY: build-robot build-all
build-robot:
@echo "Building robot"
cd $(ROOT_DIR) && $(BUILD_COMMAND) $(COMPUTER_IMAGE)
build-all:
@echo "Building all"
cd $(ROOT_DIR) && $(BASE_PARAMETERS) $(BUILD_COMMAND) $(BASE_IMAGES)
# ------------------------------------------------------------------------------
# RUNNING COMMANDS
# ------------------------------------------------------------------------------
.PHONY: run-yellow run-blue run-all-stack run-pi
run-yellow:
@echo "Running robot stack (Yellow team)"
cd $(ROOT_DIR) && $(BASE_PARAMETERS) TEAM=0 $(RUN_COMMAND) $(COMPUTER_IMAGE)
run-blue:
@echo "Running robot stack (Blue team)"
cd $(ROOT_DIR) && $(BASE_PARAMETERS) TEAM=1 $(RUN_COMMAND) $(COMPUTER_IMAGE)
run-all-stack:
@echo "Running all stack"
cd $(ROOT_DIR) && \
$(BASE_PARAMETERS) $(RUN_COMMAND) $(BASE_IMAGES)
run-pi:
@echo "Running rpi4 script"
chmod +x rpi_launch/rpi4_launch.sh
cd $(ROOT_DIR)rpi_launch && ./rpi4_launch.sh
# ------------------------------------------------------------------------------
# AUXILIARY COMMANDS
# ------------------------------------------------------------------------------
.PHONY: prepare-for-visualization
prepare-for-visualization:
@echo "Preparing for visualization"
DISPLAY=$(DISPLAY) xhost +local: && \
DISPLAY=$(DISPLAY) xhost + && \
export RCUTILS_COLORIZED_OUTPUT=1