2020-12-19 12:00:21 +01:00
.gitignore Added gitignore for __pycache__ 2017-10-18 10:17:44 +02:00
cmake.py Fixed file generation on Windows platfrom. Added support for .cpp files. Refactored argument parsing. 2017-10-18 10:19:14 +02:00
CMakeLists.txt Pycon commit. 2016-10-28 11:30:47 +02:00
CONTRIBUTING.md Add LICENSE and CONTRIBUTING files. Update README. 2020-12-19 12:00:21 +01:00
converter.py Fixed file generation on Windows platfrom. Added support for .cpp files. Refactored argument parsing. 2017-10-18 10:19:14 +02:00
ewpproject.py Pycon commit. 2016-10-28 11:30:47 +02:00
LICENSE.md Add LICENSE and CONTRIBUTING files. Update README. 2020-12-19 12:00:21 +01:00
License.txt Added Readme & License. 2017-10-18 10:15:21 +02:00
Readme.md Add LICENSE and CONTRIBUTING files. Update README. 2020-12-19 12:00:21 +01:00
STM32FLASH.ld Pycon commit. 2016-10-28 11:30:47 +02:00
uvprojxproject.py Pycon commit. 2016-10-28 11:30:47 +02:00

Project converter for Embedded Projects

A lot of Embedded Projects use proprietary IDEs and build processes. This make any CI/CD painful. Therefore these simple python scripts allow conversion of existing projects into CMake and corresponding linker file for GCC toolchain. Currently supported are IAR's ewp and ARM's KEIL uvprojx project formats.

Module description

cmake.py - Cmake and linker file generation converter.py - Argument parsing ewpproject.py - Parser for IAR's ewp file format uvprojx.py - Parser for ARM's KEIL uvprojx file format

Prerequisites

Install python3 on your system run:

pip install Jinja2

Usage

Run in output dir.

Convert project from IAR:

    python converter.py ewp <path to project root>

Convert project from ARM's KEIL:

    python converter.py uvprojx <path to project root>

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning.

Authors

  • Petr Hodina - Initial work

License

The project is licensed under the Apache License v2.0 - see the LICENSE.md file for details.

TODO

  • Package as python module and publish it
  • Seperate templates into submodule
  • Support generation of Makefile
  • Support additional compilers
  • Test on MAC OSX
  • Arg to specify build directory
  • Add Tests