|
15 | 15 | # add build and include dirs according to CPPDEFINES |
16 | 16 | for item in menv.get("CPPDEFINES", []): |
17 | 17 |
|
18 | | - # STM32 |
19 | | - if isinstance(item, str) and item == "STM32_PLATFORM": |
20 | | - menv.Append(CPPPATH=[realpath("src/helpers/stm32")]) |
21 | | - menv.Append(BUILD_FLAGS=["-I src/helpers/stm32"]) |
| 18 | + # PLATFORM HANDLING |
| 19 | + if item == "STM32_PLATFORM": |
22 | 20 | src_filter.append("+<helpers/stm32/*>") |
23 | | - |
24 | | - # ESP32 |
25 | | - elif isinstance(item, str) and item == "ESP32": |
26 | | - menv.Append(CPPPATH=[realpath("src/helpers/esp32")]) |
27 | | - menv.Append(BUILD_FLAGS=["-I src/helpers/esp32"]) |
| 21 | + elif item == "ESP32": |
28 | 22 | src_filter.append("+<helpers/esp32/*>") |
29 | | - |
30 | | - # NRF52 |
31 | | - elif isinstance(item, str) and item == "NRF52_PLATFORM": |
32 | | - menv.Append(CPPPATH=[realpath("src/helpers/nrf52")]) |
33 | | - menv.Append(BUILD_FLAGS=["-I src/helpers/nrf52"]) |
| 23 | + elif item == "NRF52_PLATFORM": |
34 | 24 | src_filter.append("+<helpers/nrf52/*>") |
35 | | - |
36 | | - # RP2040 |
37 | | - elif isinstance(item, str) and item == "RP2040_PLATFORM": |
38 | | - menv.Append(CPPPATH=[realpath("src/helpers/rp2040")]) |
39 | | - menv.Append(BUILD_FLAGS=["-I src/helpers/rp2040"]) |
| 25 | + elif item == "RP2040_PLATFORM": |
40 | 26 | src_filter.append("+<helpers/rp2040/*>") |
41 | 27 |
|
42 | 28 | # DISPLAY HANDLING |
|
50 | 36 | # VARIANTS HANDLING |
51 | 37 | elif isinstance(item, tuple) and item[0] == "MC_VARIANT": |
52 | 38 | variant_name = item[1] |
53 | | - menv.Append(BUILD_FLAGS=[f"-I variants/{variant_name}"]) |
54 | 39 | src_filter.append(f"+<../variants/{variant_name}>") |
55 | 40 |
|
56 | 41 | # INCLUDE EXAMPLE CODE IN BUILD (to provide your own support files without touching the tree) |
57 | 42 | elif isinstance(item, tuple) and item[0] == "BUILD_EXAMPLE": |
58 | 43 | example_name = item[1] |
59 | | - src_filter.append(f"+<../examples/{example_name}>") |
| 44 | + src_filter.append(f"+<../examples/{example_name}/*.cpp>") |
60 | 45 |
|
61 | 46 | # EXCLUDE A SOURCE FILE FROM AN EXAMPLE (must be placed after example name or boom) |
62 | 47 | elif isinstance(item, tuple) and item[0] == "EXCLUDE_FROM_EXAMPLE": |
63 | 48 | exclude_name = item[1] |
| 49 | + if example_name is None: |
| 50 | + print("***** PLEASE DEFINE EXAMPLE FIRST *****") |
| 51 | + break |
64 | 52 | src_filter.append(f"-<../examples/{example_name}/{exclude_name}>") |
65 | 53 |
|
| 54 | + # DEAL WITH UI VARIANT FOR AN EXAMPLE |
| 55 | + elif isinstance(item, tuple) and item[0] == "MC_UI_FLAVOR": |
| 56 | + ui_flavor = item[1] |
| 57 | + if example_name is None: |
| 58 | + print("***** PLEASE DEFINE EXAMPLE FIRST *****") |
| 59 | + break |
| 60 | + src_filter.append(f"+<../examples/{example_name}/{ui_flavor}/*.cpp>") |
| 61 | + |
66 | 62 | menv.Replace(SRC_FILTER=src_filter) |
67 | 63 |
|
68 | 64 | #print (menv.Dump()) |
0 commit comments