diff --git a/.gitignore b/.gitignore index 23e7ddc07..09b9b33de 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ build build-mingw obj-* *.user* +.project diff --git a/.travis.yml b/.travis.yml index b7ff93ff9..3e015dd07 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,6 +4,7 @@ matrix: include: ### 64-bit builds ### - os: linux + env: BADGE=linux arch: x64 compiler: gcc-5 addons: @@ -11,6 +12,7 @@ matrix: sources: ['ubuntu-toolchain-r-test'] packages: ['gcc-5', 'libusb-1.0.0-dev', 'libgtk-3-dev'] - os: linux + env: BADGE=linux arch: x64 compiler: gcc-7 addons: @@ -18,6 +20,7 @@ matrix: sources: ['ubuntu-toolchain-r-test'] packages: ['gcc-7', 'libusb-1.0.0-dev', 'libgtk-3-dev'] - os: linux + env: BADGE=linux arch: x64 compiler: gcc-9 addons: @@ -25,6 +28,7 @@ matrix: sources: ['ubuntu-toolchain-r-test'] packages: ['gcc-9', 'libusb-1.0.0-dev', 'libgtk-3-dev'] - os: linux + env: BADGE=linux arch: x64 compiler: clang-3.7 addons: @@ -32,6 +36,7 @@ matrix: sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-xenial-3.7'] packages: ['clang-3.7', 'libusb-1.0.0-dev', 'libgtk-3-dev'] - os: linux + env: BADGE=linux arch: x64 compiler: clang-6.0 addons: @@ -49,6 +54,7 @@ matrix: ### 32-bit builds ### - os: linux + env: BADGE=linux arch: x86 compiler: gcc-5 addons: @@ -56,6 +62,7 @@ matrix: sources: ['ubuntu-toolchain-r-test'] packages: ['gcc-5', 'libusb-1.0.0-dev', 'libgtk-3-dev'] - os: linux + env: BADGE=linux arch: x86 compiler: gcc-7 addons: @@ -63,6 +70,7 @@ matrix: sources: ['ubuntu-toolchain-r-test'] packages: ['gcc-7', 'libusb-1.0.0-dev', 'libgtk-3-dev'] - os: linux + env: BADGE=linux arch: x86 compiler: gcc-9 addons: @@ -70,6 +78,7 @@ matrix: sources: ['ubuntu-toolchain-r-test'] packages: ['gcc-9', 'libusb-1.0.0-dev', 'libgtk-3-dev'] - os: linux + env: BADGE=linux arch: x86 compiler: clang-3.7 addons: @@ -77,6 +86,7 @@ matrix: sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-xenial-3.7'] packages: ['clang-3.7', 'libusb-1.0.0-dev', 'libgtk-3-dev'] - os: linux + env: BADGE=linux arch: x86 compiler: clang-6.0 addons: @@ -86,6 +96,7 @@ matrix: ### macOS ### - os: osx + env: BADGE=osx compiler: gcc addons: homebrew: @@ -94,6 +105,7 @@ matrix: - libusb - gtk+3 - os: osx + env: BADGE=osx compiler: clang addons: homebrew: diff --git a/CMakeLists.txt b/CMakeLists.txt index 95e27d215..b5301fb0a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -278,6 +278,7 @@ install(TARGETS st-flash DESTINATION bin) install(TARGETS st-info DESTINATION bin) install(TARGETS st-util DESTINATION bin) + ### # Additional build tasks ### diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 000000000..fb3c1b656 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,49 @@ +# Contribution guidelines + +## Contributing to the stlink project +We love your input! We want to make contributing to this project as easy and transparent as possible, whether it's: + +- Reporting a bug +- Discussing the current state of the code +- Submitting a fix +- Proposing new features +- Assistance with maintaining + +We use GitHub to host code, to track issues and feature requests, as well as accept pull requests. +Report a bug by [opening a new issue]() with one of the available templates. It's that easy! + + +## Coding conventions +To read code written by other contributors can turn out to be quite demanding - a variable which seems to self-explaining, may appear cryptic to other readers. If you plan to contribute, please take this into account and feel encouraged to help others understand your code. In order to help you along, we have composed some contribution guidelines for this project. As this project already has a history you may find parts in the codebase that do not seem to comply with these guidelines, but we are trying to improve continuosly. However we can do even better, if every contributor considers the following points: + +* Naming of all source code elements as well as comments should exclusively be written in English. +* All functions and global variables should be fully commented. This includes a short description on _what_ the respective function does (but not necessarily _how_ it is done), an explantion of transfer parameters and/or return values (if applicable). +* Use [fixed width integer types](http://en.cppreference.com/w/c/types/integer) wherever possible and size-appropiate datatypes. +* Only make use of the datatype `char` for specific characters, otherwise use `int8_t` or `uint8_t` resspectively. + + +### Coding Style +* Use 4 spaces for indentation rather than tabs (the latter results in inconsistent appearance on different platforms) +* Use `/* your comment */` formatting for multi-line comments or section titles and `// your comment` for inline comments. +* Please try to avoid special characters where possible, as they are interpreted differently on particular platforms and systems. Otherwise these may result in mojibake within the sourcecode or cause translation errors when compiling. +* Use state-of-the-art UTF-8 encoding whereever possible. + + +## Github Flow +We Use [Github Flow](https://guides.github.com/introduction/flow/index.html) which implies that all code changes happen through Pull Requests (PRs). +They are the best way to propose changes to the codebase and we actively welcome your own ones: + +1. PRs should focus on _one_ single topic. +2. Fork the repo and create your branch from `develop`. +3. Begin to implement your changes on a local or personal branch. +4. Take a look at existing PR and check if these target the same part of the codebase. + Should this be the case, you are encouraged to get in touch with the respective author and discuss on how to proceed. +5. Keep your personal feature-branch up to date with the current development branch, by merging in recent changes regularly. +6. Don't open a PR unless your contribution has evolved to a somehow completed set of changes. +7. If you've changed major features, update the documentation. +8. Ensure your PR passes our travis CI tests. +9. Issue that pull request! + + +## License +When you submit code changes, your submissions are understood to be under the same [BSD-3 License](LICENSE.md) that covers this project.
Feel free to contact the project maintainers should there be any related questions. diff --git a/README.md b/README.md index 735712329..7f6706791 100644 --- a/README.md +++ b/README.md @@ -3,10 +3,12 @@ Open source version of the STMicroelectronics STlink Tools [![BSD licensed](https://img.shields.io/badge/license-BSD-blue.svg)](https://raw.githubusercontent.com/hyperium/hyper/master/LICENSE) [![GitHub release](https://img.shields.io/github/release/stlink-org/stlink.svg)](https://github.com/stlink-org/stlink/releases/latest) -[![GitHub commits](https://img.shields.io/github/commits-since/stlink-org/stlink/v1.6.0.svg)](https://github.com/stlink-org/stlink/releases/develop) -[![Downloads](https://img.shields.io/github/downloads/stlink-org/stlink/total.svg)](https://github.com/stlink-org/stlink/releases) -[![Linux Status](https://img.shields.io/travis/stlink-org/stlink/master.svg?label=linux)](https://travis-ci.org/stlink-org/stlink) -[![macOS Status](https://img.shields.io/travis/stlink-org/stlink/master.svg?label=osx)](https://travis-ci.org/stlink-org/stlink) +[![Downloads](https://img.shields.io/github/downloads/stlink-org/stlink/total)](https://github.com/stlink-org/stlink/releases/latest) +![GitHub commits](https://img.shields.io/github/commits-since/stlink-org/stlink/v1.6.0/develop) +![GitHub activity](https://img.shields.io/github/commit-activity/m/stlink-org/stlink) +![GitHub contributors](https://img.shields.io/github/contributors/stlink-org/stlink) +[![Linux Status](https://img.shields.io/travis/stlink-org/stlink/master?env=BADGE=linux&label=linux)](https://travis-ci.org/stlink-org/stlink) +[![macOS Status](https://img.shields.io/travis/stlink-org/stlink/master?env=BADGE=osx&label=osx)](https://travis-ci.org/stlink-org/stlink) Recent new features and bugfixes can be found in the [Changelog](CHANGELOG.md) of this software project. @@ -107,6 +109,8 @@ When there is no executable available for your platform or you need the latest ( * **ATTENTION: _NEVER EVER_ use the '#' character to count-up single points within a listing as '#' is _exclusively_ reserved for referencing github issues and pull-requests. Otherwise you accidentally introduce false cross references within the project.** * Please start new forks from the develop branch if possible as pull requests will go into this branch as well. +Please also refer to our [Contribution Guidelines](CONTRIBUTING.md). + # Current state of the project ## Known missing features diff --git a/cmake/packaging/debian/copyright b/cmake/packaging/debian/copyright index 4a7b110ae..4e58490f6 100644 --- a/cmake/packaging/debian/copyright +++ b/cmake/packaging/debian/copyright @@ -48,6 +48,7 @@ Copyright: 2011-2020 stlink-org Breton M. Saunders Bruno Dal Bo Burns Fisher + Cheng Guokai (Xim) [chenguokai] Chris Dew Chris Hiszpanski Chris Li @@ -153,5 +154,4 @@ Copyright: 2011-2020 stlink-org William Ransohoff [WRansohoff] Wojciech A. Koszek Woodrow Douglass - Xim [chenguokai] ... and others