You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Simplify python3-improv: use same filenames in machine override folders
- eink: replace improv-eink.service/onboarding-server-eink.py with
improv.service and onboarding-server.py in imx93-jaguar-eink/
- INST: add imx8mm-jaguar-inst/ with improv.service and onboarding-server.py
- Recipe: remove all machine-specific SRC_URI, do_install conditionals,
FILES and SYSTEMD_SERVICE logic; Yocto picks up files from MACHINE/
when present via FILESEXTRAPATHS
- Update MACHINE_SPECIFIC_FILES.md to describe simplified pattern
1.**FILESEXTRAPATHS**: Extends the file search path to the recipe directory (`THISDIR`)
68
-
2.**Automatic Lookup**: Yocto automatically looks in `${MACHINE}/` subdirectory first
69
-
3.**Machine-Specific**: For `imx93-jaguar-eink`, files are found in `imx93-jaguar-eink/`
70
-
4.**Other Machines**: For other machines, files are found in the recipe directory root
68
+
2.**Automatic Lookup**: Yocto automatically looks in `${MACHINE}/` subdirectory first, then recipe root
69
+
3.**Same filenames**: Use the same filenames in machine folders (e.g. `improv.service`, `onboarding-server.py`) so the recipe needs no machine-specific SRC_URI, do_install, or SYSTEMD_SERVICE logic
71
70
72
71
## Example: python3-improv Recipe
73
72
74
73
**Structure:**
75
74
```
76
75
recipes-devtools/python/python3-improv/
77
-
├── improv.service (common - all machines)
78
-
├── onboarding-server.py (common - all machines)
79
-
├── python3-improv_git.bb (recipe)
80
-
└── imx93-jaguar-eink/ (machine-specific folder)
81
-
├── improv-eink.service
82
-
└── onboarding-server-eink.py
76
+
├── improv.service (default - all machines without override)
77
+
├── onboarding-server.py (default)
78
+
├── python3-improv_git.bb (recipe in parent directory)
79
+
├── imx93-jaguar-eink/ (machine override - same filenames)
80
+
│ ├── improv.service
81
+
│ └── onboarding-server.py
82
+
└── imx8mm-jaguar-inst/ (machine override - same filenames)
83
+
├── improv.service
84
+
└── onboarding-server.py
83
85
```
84
86
85
87
**Result:**
86
-
-`imx93-jaguar-eink`: Uses files from `imx93-jaguar-eink/` subdirectory
87
-
- All other machines (sentai, etc.): Use files from recipe directory root
88
-
- No changes to original files - other machine behavior preserved
88
+
- Yocto picks up `improv.service` and `onboarding-server.py` from `${MACHINE}/` when present; otherwise uses recipe root.
89
+
-`imx93-jaguar-eink`: Uses files from `imx93-jaguar-eink/` (eink-XXXX BLE name, improv-eink connection).
90
+
-`imx8mm-jaguar-inst`: Uses files from `imx8mm-jaguar-inst/` (Improv-Inst BLE, improv-inst connection).
91
+
- All other machines: Use files from recipe directory root.
92
+
- Recipe has no machine-specific SRC_URI, do_install, or SYSTEMD_SERVICE logic.
0 commit comments