-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
95 lines (79 loc) · 2.33 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
ifeq ($(RADIO_HAL_UNIT_TEST),1)
ALL=radio_hal_daemon
else
ALL=radio_manager
endif
all: ${ALL}
LDFLAGS += -rdynamic
INC_DIR = inc
SRC_DIR = src
CMN_SRC_DIR = common
WIFI_HAL_DIR = wifi
WPA_CTL_DIR = wpa_socket
MODEM_HAL_DIR = modem
AT_CTL_DIR = at
ifndef CXX
CXX=g++
endif
ifndef CC
CC=gcc
endif
ifndef CXXSTD
CXXSTD=gnu++14
endif
ifndef CSTD
CSTD=gnu11
endif
ifndef CFLAGS
ifeq ($(RADIO_HAL_UNIT_TEST),1)
CXXFLAGS = -DRADIO_HAL_UNIT_TEST
endif
CFLAGS = -MMD -O2 -Wall -Werror -g -fPIC -I$(INC_DIR)/ \
-I$(SRC_DIR)/$(WIFI_HAL_DIR)/ \
-I$(SRC_DIR)/$(MODEM_HAL_DIR)/ \
-I$(SRC_DIR)/$(MODEM_HAL_DIR)/$(AT_CTL_DIR)/ \
-I$(SRC_DIR)/$(WIFI_HAL_DIR)/$(WPA_CTL_DIR)/ \
-I$(TARGET_DIR)/usr/include/libnl3/ -std=${CSTD}
CXXFLAGS += -MMD -O2 -Wall -Werror -g -fPIC -I$(INC_DIR)/ \
-I$(SRC_DIR)/$(WIFI_HAL_DIR)/ \
-I$(SRC_DIR)/$(MODEM_HAL_DIR)/ \
-I$(SRC_DIR)/$(MODEM_HAL_DIR)/$(AT_CTL_DIR)/ \
-I$(SRC_DIR)/$(WIFI_HAL_DIR)/$(WPA_CTL_DIR)/ \
-I$(TARGET_DIR)/usr/include/libnl3/ \
-std=${CXXSTD}
endif
LDFLAGS=$(shell pkg-config --libs libnl-3.0 libnl-genl-3.0 yaml-0.1)
ifeq ($(RADIO_HAL_UNIT_TEST),1)
OBJ=$(SRC_DIR)/$(CMN_SRC_DIR)/radio_hal_main.o
else
OBJ=$(SRC_DIR)/$(CMN_SRC_DIR)/radio_mgmr.o
endif
OBJ+=$(SRC_DIR)/$(CMN_SRC_DIR)/radio_hal_yaml.o \
$(SRC_DIR)/$(CMN_SRC_DIR)/radio_hal_common.o \
$(SRC_DIR)/$(CMN_SRC_DIR)/radio_hal_msg.o \
$(SRC_DIR)/$(WIFI_HAL_DIR)/$(WPA_CTL_DIR)/os_unix.o \
$(SRC_DIR)/$(WIFI_HAL_DIR)/$(WPA_CTL_DIR)/wpa_ctrl.o \
$(SRC_DIR)/$(WIFI_HAL_DIR)/wifi_stats.o \
$(SRC_DIR)/$(WIFI_HAL_DIR)/wifi_hal_main.o \
$(SRC_DIR)/$(MODEM_HAL_DIR)/modem_hal_main.o \
$(SRC_DIR)/$(MODEM_HAL_DIR)/$(AT_CTL_DIR)/at_tok.o \
$(SRC_DIR)/$(MODEM_HAL_DIR)/$(AT_CTL_DIR)/atchannel.o \
$(SRC_DIR)/$(MODEM_HAL_DIR)/$(AT_CTL_DIR)/misc.o \
%.o: %.cpp
$(CXX) -c -fPIC $(CXXFLAGS) ${COPTS} $< -o $@
@echo " CXX " $<
%.o: %.c
$(CC) -c -fPIC $(CFLAGS) ${COPTS} $< -o $@ -pthread
@echo " CC " $<
libradio_hal.so: $(OBJ)
$(CXX) $(LDFLAGS) -o $@ $(CFLAGS) -shared -fPIC $^
${ALL}: libradio_hal.so
$(CXX) -o $@ $(CXXFLAGS) $(CXXFLAGS) -Wall $^ -L. -lradio_hal $(LDFLAGS)
install:
cp -a -f ${ALL} $(INSTALL_ROOT)/usr/bin/
cp -a -f libradio_hal.so $(INSTALL_ROOT)/usr/lib/
clean:
rm -frv *.so $(OBJ) $(OBJ:.o=.d) ${ALL} radio_hal_daemon radio_manager
rebuild:
$(MAKE) clean
$(MAKE) all