Wirepas SDK
config.mk
Go to the documentation of this file.
1 ifeq ($(SHARED_LIBDATA), yes)
2 $(error Shared_LibData library as been renamed, please see libraries/shared_libdata.h for an explanation.)
3 endif
4 
5 ifeq ($(SHARED_SHUTDOWN), yes)
6 $(error Shared_Shutdown library as been renamed, please use libraries/stack_state.h instead \
7  and enable its usage with STACK_STATE_LIB)
8 endif
9 
10 # Any library needing app_scheduler must increment this variable
11 # this way:
12 # scheduler_tasks+= + n
13 scheduler_tasks=0
14 
15 # Any library needing stack state callbacks must increment this variable
16 # this way:
17 # stack_state_cbs+= + n
18 stack_state_cbs=0
19 
20 # Any library needing app_config filter must increment this variable
21 # this way:
22 # library_app_config_filters+= + n
23 app_config_filters=0
24 
25 # Any library needing shared offline modules must increment this variable
26 # this way:
27 # shared_offline_modules+= + n
28 shared_offline_modules=0
29 
30 # Any library needing shared neighbors cllbacks must increment this variable
31 # this way:
32 # shared_neighbors_cbs+= + n
33 shared_neighbors_cbs=0
34 
35 ifeq ($(LOCAL_PROVISIONING), yes)
36 $(info LOCAL_PROVISIONING automatically enable PROVISIONING and PROVISIONING_PROXY)
37 PROVISIONING=yes
38 PROVISIONING_PROXY=yes
39 scheduler_tasks+= + 1
40 app_config_filters+= + 1
41 stack_state_cbs+= + 1
42 endif
43 
44 ifeq ($(PROVISIONING), yes)
45 scheduler_tasks+= + 3
46 stack_state_cbs+= + 1
47 SHARED_DATA=yes
48 TINY_CBOR=yes
49 SW_AES=yes
50 endif
51 
52 ifeq ($(PROVISIONING_PROXY), yes)
53 SHARED_DATA=yes
54 TINY_CBOR=yes
55 SW_AES=yes
56 endif
57 
58 ifeq ($(CONTROL_NODE), yes)
59 scheduler_tasks+= + 3
60 SHARED_DATA=yes
61 endif
62 
63 ifeq ($(POSITIONING), yes)
64 scheduler_tasks+= + 7
65 SHARED_DATA=yes
66 app_config_filters+= + 2
67 shared_neighbors_cbs+= + 2
68 # 2 state event cb
69 # - one in measurement for end of scan
70 # - one if route cb is implemented in poslib_contol
71 stack_state_cbs+= + 2
72 SHARED_BEACON=yes
73 shared_offline_modules+= + 2
74 endif
75 
76 ifeq ($(SHARED_OFFLINE), yes)
77 scheduler_tasks+= + 2
78 endif
79 
80 ifeq ($(DUALMCU_LIB), yes)
81 scheduler_tasks+= + 3
82 app_config_filters+= + 1
83 SHARED_DATA=yes
84 stack_state_cbs+= + 1
85 endif
86 
87 #########
88 # Enabling libraries needed by other libs and check app input
89 #########
90 
91 # Shared app_config
92 ifeq ($(SHARED_APP_CONFIG), yes)
93 # Enabled by app
94 ifndef SHARED_APP_CONFIG_FILTERS
95 $(error "Please define SHARED_APP_CONFIG_FILTERS from your application makefile. Previously\
96  directly added as a CFLAG: -DSHARED_APP_CONFIG_MAX_FILTER=n")
97 endif
98 # Add to app libs own filters
99 app_config_filters+= + $(SHARED_APP_CONFIG_FILTERS)
100 else
101 ifneq ($(app_config_filters), 0)
102 $(info Enabling SHARED_APP_CONFIG as libraries need it)
103 SHARED_APP_CONFIG=yes
104 endif
105 endif
106 
107 # Shared neighbors
108 ifeq ($(SHARED_NEIGHBORS), yes)
109 ifndef SHARED_NEIGHBORS_CBS
110 $(error "Please define SHARED_NEIGHBORS_CBS from your application makefile. Previously\
111  directly added as a CFLAG: -DSHARED_NEIGHBORS_MAX_CB=n")
112 endif
113 shared_neighbors_cbs+= + $(SHARED_NEIGHBORS_CBS)
114 else
115 ifneq ($(shared_neighbors_cbs), 0)
116 $(info Enabling SHARED_NEIGHBORS as libraries need it)
117 SHARED_NEIGHBORS=yes
118 endif
119 endif
120 
121 # Stack state
122 ifeq ($(STACK_STATE_LIB), yes)
123 ifdef STACK_STATE_CBS
124 stack_state_cbs+= + $(STACK_STATE_CBS)
125 endif
126 # It is not an issue if STACK_STATE_CBS is not defined
127 # as lib can be used without callbacks
128 else
129 ifneq ($(stack_state_cbs), 0)
130 $(info Enabling STACK_STATE_LIB as libraries need it)
131 STACK_STATE_LIB=yes
132 endif
133 endif
134 
135 # Shared offline library
136 ifeq ($(SHARED_OFFLINE), yes)
137 ifndef SHARED_OFFLINE_MODULES
138 $(error "Please define SHARED_OFFLINE_MODULES from your application makefile. Previously\
139  directly added as a CFLAG: -DSHARED_OFFLINE_MAX_MODULES=n")
140 endif
141 shared_offline_modules+= + $(SHARED_OFFLINE_MODULES)
142 else
143 ifneq ($(shared_offline_modules), 0)
144 $(info Enabling SHARED_OFFLINE as libraries need it)
145 SHARED_OFFLINE=yes
146 endif
147 endif
148 
149 # App scheduler
150 ifeq ($(APP_SCHEDULER), yes)
151 ifndef APP_SCHEDULER_TASKS
152 $(error "Please define APP_SCHEDULER_TASKS from your application makefile. Previously\
153  directly added as a CFLAG: -DAPP_SCHEDULER_MAX_TASKS=n")
154 endif
155 scheduler_tasks+= + $(APP_SCHEDULER_TASKS)
156 else
157 ifneq ($(scheduler_tasks), 0)
158 $(info Enabling APP_SCHEDULER as libraries need it but app not)
159 APP_SCHEDULER=yes
160 endif
161 endif