Nástroje projektu
Tento modul poskytuje skripty pre Windows a Linux/Unix, ktoré ponúkajú interaktívne menu na spúšťanie rôznych pomocných skriptov CMake.
Je navrhnutý tak, aby zjednodušil nastavenie a údržbu projektu zoskupením často používaných akcií do jednoduchého rozhrania.
📌 Hlavná obrazovka
Po spustení skriptu vyzerá hlavné menu takto:
=====================================
1. Create module
2: Add component
3: Add CMake file
4: Initialization
5: Exit
=====================================
Enter your selection (1-5):
Poznámka: Skutočné menu sa môže líšiť podľa konkrétnej implementácie a dostupných skriptov.
Vytvorenie modulu
Táto voľba umožňuje používateľovi vytvoriť v projekte nový modul.
Po jej výbere sa skript opýta na názov modulu a ďalšie relevantné údaje a potom vygeneruje potrebnú adresárovú štruktúru a súbory.
Vytvorená adresárová štruktúra:
ModuleName/
├─ CMakeLists.txt
├─ ModuleName_Port.h
├─ ModuleName_Types.h
├─ ModuleName.c
└─ ModuleName.h
CMakeLists.txt
Súbor CMakeLists.txt bude obsahovať základnú konfiguráciu na zahrnutie modulu do build systému. Vygeneruje cieľ statickej knižnice pre modul. Názov knižnice bude rovnaký ako názov modulu s príponou „_Lib“.
ModuleName_Port.h
Tento hlavičkový súbor bude obsahovať verejné definície portu modulu, napríklad prototypy funkcií. Používateľ nesmie volať žiadne iné interné funkcie priamo. Toto má byť jediný vstupný bod do modulu.
ModuleName_Types.h
Tento hlavičkový súbor bude obsahovať všetky verejné definície typov, enumov, štruktúr a makier.
ModuleName.c
Tento zdrojový súbor bude obsahovať implementáciu funkcií modulu. Tento súbor sa zvyčajne používa ako verejné API modulu. Všetky potrebné externé funkcie majú byť zapuzdrené tu, rovnako ako verejné funkcie definované v ModuleName_Port.h.
ModuleName.h
Tento hlavičkový súbor bude obsahovať interné definície typov, enumov, štruktúr a makier používaných iba v rámci modulu.
Pridanie komponentu
Táto voľba umožňuje používateľovi pridať nový komponent do existujúceho modulu. Po jej výbere sa skript opýta na názov modulu a podrobnosti o komponente a potom vygeneruje potrebné súbory v zadanom module.
Vytvorená adresárová štruktúra:
ModuleName/
├─ CMakeLists.txt - Existing file
├─ ModuleName_Port.h - Existing file
├─ ModuleName_Types.h - Existing file
├─ ModuleName.c - Existing file
├─ ModuleName.h - Existing file
├─ ModuleName_ComponentName.c - New component source file
└─ ModuleName_ComponentName.h - New component header file
Pridanie súboru CMake
Táto voľba umožňuje používateľovi vytvoriť alebo aktualizovať súbor CMakeLists.txt pre konkrétny modul.
Inicializácia
Po jej výbere skript zobrazí podmenu s rôznymi možnosťami inicializácie.
=====================================
1: Initialize folder structure
2: Initialize BSP module
3: Back to main menu
=====================================
Enter your selection (1-3):
Inicializácia adresárovej štruktúry
Táto voľba vytvorí základnú adresárovú štruktúru projektu vrátane adresárov pre zdrojové súbory, hlavičky a testy.
Vytvorená adresárová štruktúra:
ProjectRoot/
├─ CMakeLists.txt - Project root CMake file
├─ ArtifactsConfig.txt - Artifacts configuration file
├─ Application/ - Project application part
│ ├─ AppCom/ - Application communication modules
│ ├─ AppComp/ - Application components (Low level logic)
│ ├─ AppFun/ - Application functionalities (High level logic)
│ ├─ AppCore/ - Application core (Top level logic)
│ ├─ AppMain/ - Application main file
│ └─ App.cmake - Application CMake file
├─ Middlewares/ - Project middlewares part
├─ BSP/ - Board Support Package
└─ STM_Template/ - CMake build system submodule
Inicializácia modulu BSP
Táto voľba inicializuje modul Board Support Package (BSP). Skript sa opýta na cieľový mikrokontrolér a nastaví potrebné súbory a konfigurácie.
Vytvorená adresárová štruktúra BSP:
BSP/ - Board Support Package
├─ Hal/ - Hardware Abstraction Layer
├─ Mcal/ - Microcontroller Abstraction Layer
├─ Ral/ - Register Abstraction Layer
├─ Linker/ - Linker script
├─ Startup/ - Startup files
├─ Docs/ - BSP documentation
└─ Bsp.cmake - BSP CMake file
⚙️ Požiadavky
Nasledujúce nástroje musia byť nainštalované a dostupné v systémovej PATH:
- CMake
- Git
Všetky ostatné závislosti spravujú samotné skripty CMake.
📝 Poznámky
- Každá položka menu volá konkrétny skript CMake umiestnený v adresári
Scripts/. - Skript zaisťuje konzistentný priebeh vykonávania, takže nemusíte príkazy CMake volať ručne.
Licencia
Tento projekt je licencovaný pod licenciou CC BY-NC.
Môžete ho voľne používať, upravovať a zdieľať na nekomerčné účely s uvedením autorstva.