Installation

Requirements: Python, CMake and Make.

Users Guide

Clone this repository:

git clone https://github.com/mojzu/pyedev.git

Install the pyedev python package and run tests to check the installation:

cd pyedev
python setup.py install
python setup.py test

Create a new configuration using the pyedev console:

pyedev config -n arm_gnu

Modify the generated configuration file, edit placeholder values for install directories and toolchain executables (assumes ARM GNU Embedded toolchain). Further instructions are included in the file.

Build the included library template. This will build a static archive, an executable test and documentation, which are installed with library headers in the directories defined in the configuration created above:

pyedev build -c arm_gnu pyedev/templates/libfoo install

Build the included application template. This will build application elf, map and binary files, an executable test and documentation, which are installed in the directories defined in the configuration created above:

pyedev build -c arm_gnu pyedev/templates/blinky install

Developers Guide

Clone this repository:

git clone https://github.com/mojzu/pyedev.git

Create a virtual environment for this package and activate it:

cd pyedev
virtualenv .env
source .env/bin/activate

Install required Python packages for developers:

pip install -r dev-requirements.txt

Install the pyedev python package in development mode and run tests with coverage reporting to check the installation:

python setup.py develop
nosetests --with-coverage --cover-package=pyedev

Build Sphinx documentation:

cd docs
make html

To create a source distribution and universal wheel:

python setup.py sdist bdist_wheel

Register and upload package information to Python Package Index:

python setup.py register

Upload package distributions to index:

twine upload dist/*

Upload documentation to package index:

zip -r html.zip docs/_build/html
# Navigate to https://pypi.python.org package edit page
# and upload zip file to http://pythonhosted.org.

Deactivate the virtualenv:

deactivate