MCPcopy Create free account
hub / github.com/RT-Thread/rt-thread / ProjectInfo

Function ProjectInfo

tools/utils.py:173–248  ·  view source on GitHub ↗
(env)

Source from the content-addressed store, hash-verified

171 return source_list
172
173def ProjectInfo(env):
174
175 project = env['project']
176 RTT_ROOT = env['RTT_ROOT']
177 BSP_ROOT = env['BSP_ROOT']
178
179 FILES = []
180 DIRS = []
181 HEADERS = []
182 CPPPATH = []
183 CPPDEFINES = []
184
185 for group in project:
186 # get each files
187 if 'src' in group and group['src']:
188 FILES += group['src']
189
190 # get each include path
191 if 'CPPPATH' in group and group['CPPPATH']:
192 CPPPATH += group['CPPPATH']
193
194 if 'CPPDEFINES' in env:
195 CPPDEFINES = env['CPPDEFINES']
196 CPPDEFINES = ListMap(CPPDEFINES)
197
198 # process FILES and DIRS
199 if len(FILES):
200 # use absolute path
201 for i in range(len(FILES)):
202 FILES[i] = os.path.abspath(str(FILES[i]))
203 DIRS.append(os.path.dirname(FILES[i]))
204
205 FILES.sort()
206 DIRS = list(set(DIRS))
207 DIRS.sort()
208
209 # process HEADERS
210 HEADERS = TargetGetList(env, ['h'])
211
212 # process CPPPATH
213 if len(CPPPATH):
214 # use absolute path
215 for i in range(len(CPPPATH)):
216 CPPPATH[i] = os.path.abspath(CPPPATH[i])
217
218 # remove repeat path
219 paths = []
220 for p in CPPPATH:
221 if p not in paths:
222 paths.append(p)
223
224 CPPPATH = []
225 for path in paths:
226 if PrefixPath(RTT_ROOT, path):
227 CPPPATH += [os.path.abspath(path).replace('\\', '/')]
228
229 elif PrefixPath(BSP_ROOT, path):
230 CPPPATH += [os.path.abspath(path).replace('\\', '/')]

Callers 1

SESProjectFunction · 0.90

Calls 5

ListMapFunction · 0.85
TargetGetListFunction · 0.85
sortMethod · 0.80
PrefixPathFunction · 0.70
setFunction · 0.50

Tested by

no test coverage detected