-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
110 lines (92 loc) · 3.12 KB
/
Makefile
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
REPODIR := $(shell git rev-parse --show-toplevel)
# For NRF SDK configuration needed for drivers
CFLAGS += -DUSE_APP_CONFIG
CFLAGS += -I$(REPODIR)/sdk_config
# Dummy target, to ensure it's the first one
all:
PROJECT_NAME = mira-ruuvitag
TARGET ?= nrf52832ble-os
HW_REVISION ?= v8
LDFLAGS=-lm
SDKDIR = src/vendor/nrf5-sdk
LIBDIR = src/vendor/libmira
# include all the SDK dependencies
CFLAGS += -I$(SDKDIR)/integration/nrfx/legacy
CFLAGS += -I$(SDKDIR)/modules/nrfx/drivers/include
CFLAGS += -I$(SDKDIR)/modules/nrfx/drivers/src
CFLAGS += -I$(SDKDIR)/modules/nrfx
CFLAGS += -I$(SDKDIR)/integration/nrfx
CFLAGS += -I$(SDKDIR)/config/nrf52832/config
CFLAGS += -I$(SDKDIR)/modules/nrfx/mdk
CFLAGS += -I$(SDKDIR)/components/toolchain/cmsis/include
CFLAGS += -I$(SDKDIR)/components/libraries/util
CFLAGS += -I$(SDKDIR)/components/softdevice/s132/headers/
CFLAGS += -I$(SDKDIR)/components/libraries/log
CFLAGS += -I$(SDKDIR)/components/libraries/experimental_section_vars
CFLAGS += -I$(SDKDIR)/components/libraries/log/src
CFLAGS += -I$(SDKDIR)/components/libraries/delay
RUUIV_APP_DIR = src/application
BOARDS_DIR = boards
DRIVERS_DIR = src/drivers
SENSORS_DIR = src/sensors
# Update the ISR table to have both Mira and nRF SDK
ISR_VECTOR_FILE = $(RUUIV_APP_DIR)/isr_vector.c
# include ruuvi application dependencies
CFLAGS += -I$(RUUIV_APP_DIR)
CFLAGS += -I$(BOARDS_DIR)
CFLAGS += -I$(DRIVERS_DIR)/nfc
CFLAGS += -I$(DRIVERS_DIR)/nrf-gpiote
CFLAGS += -I$(DRIVERS_DIR)/spi
CFLAGS += -Isrc/net-status
CFLAGS += -Isrc/network-metrics
CFLAGS += -Isrc/network-monitoring
CFLAGS += -I$(SENSORS_DIR)/battery
CFLAGS += -I$(SENSORS_DIR)/bme280
CFLAGS += -I$(SENSORS_DIR)/lis2dh12
CFLAGS += -I$(DRIVERS_DIR)/i2c
CFLAGS += -I$(SENSORS_DIR)/shtc3
CFLAGS += -I$(SENSORS_DIR)/dps310
#Define device
CFLAGS += -DNRF52832_XXAA
#define Ruuvi firmware version
ifeq ($(HW_REVISION), v7)
CFLAGS += -DRUUVI_V_71
else
ifeq ($(HW_REVISION), v8)
CFLAGS += -DRUUVI_V_8
else
$(error HW_REVISION $(HW_REVISION) not recognized)
endif
endif
# include math dependencies
LDFLAGS += -lm
LDFLAGS += -u _printf_float
SOURCE_FILES = \
$(RUUIV_APP_DIR)/app-config.c \
$(RUUIV_APP_DIR)/application.c \
$(RUUIV_APP_DIR)/board.c \
$(RUUIV_APP_DIR)/boot.c \
src/net-status/net-status.c \
$(DRIVERS_DIR)/nfc/nfc-if.c \
$(SENSORS_DIR)/battery/sensor-battery.c \
$(SENSORS_DIR)/bme280/sensor-bme280.c \
$(SENSORS_DIR)/bme280/sensor-bme280-math.c \
$(RUUIV_APP_DIR)/sensor-value.c \
$(RUUIV_APP_DIR)/sensors.c \
$(RUUIV_APP_DIR)/sensors-sender.c \
src/network-metrics/network-metrics.c \
src/network-monitoring/network-monitoring.c\
$(SENSORS_DIR)/lis2dh12/sensor-lis2dh12.c \
$(DRIVERS_DIR)/spi/spi-if.c \
$(DRIVERS_DIR)/nrf-gpiote/gpiote-nrf-drv.c \
$(DRIVERS_DIR)/i2c/i2c-nrf-drv.c \
$(SENSORS_DIR)/shtc3/sensor-shtc3.c \
$(SENSORS_DIR)/dps310/sensor-dps310.c \
$(SDKDIR)/modules/nrfx/drivers/src/nrfx_gpiote.c \
$(SDKDIR)/integration/nrfx/legacy/nrf_drv_twi.c \
$(SDKDIR)/modules/nrfx/drivers/src/nrfx_twim.c
# For NFC
APP_VERSION := $(shell git rev-parse --short HEAD)
CFLAGS += -DAPPLICATION_TARGET=\"$(TARGET)\"
CFLAGS += -DAPPLICATION_VERSION=\"$(APP_VERSION)\"
include $(LIBDIR)/Makefile.include