openocd/README.md

2.2 KiB

Microsoft's fork of OpenOCD

Public pull requests are not accepted to this repo. If you would like to contribute changes to OpenOCD, please contribute directly to upstream following the OpenOCD Developer's Guide.

This is a soft fork of the OpenOCD project where Microsoft stages changes and provides binaries for Windows and Linux. The Linux binaries are statically linked with musl and are highly portable across a wide range of Linux distributions. In addition, this fork incorporates changes from Raspberry Pi, STMicroelectronics, and Azure Sphere to improve compatibility with the embedded development ecosystem.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Branching strategy

The master branch mirrors master in the upstream repository and is updated whenever OpenOCD releases. The microsoft/main branch follows master and includes small additions like this README and the scripts required to produce statically linked Linux binaries.

After every upstream tagged OpenOCD release, a new branch of the form microsoft/rel/<version> will be created based on microsoft/main. Patches from the Raspberry Pi, STMicroelectronics, and Azure Sphere forks will be applied to this new branch. After validating the build, the tip of the branch will be tagged as ms-v<version> and added as a release. Because OpenOCD releases are infrequent, it's more likely that the vendor forks and OpenOCD itself will have significant changes in the time between releases. Patches are are not applied directly to microsoft/main to avoid merge conflicts from stale vendor fork changes. Vendors are also encouraged to contribute their changes to upstream OpenOCD to avoid the need for patches at all.