package.py was not using `str.lower` for the type of the `config` argument which led to config-specific files being skipped during packaging because of case-sensitive matching. This change fixes the issue by setting up the argument properties correctly.
`package.json` is used by NPM and causes automated tooling to flag our repo as missing required files for NPM projects. Of course, we don't use NPM and our `package.json` is used to configure which build outputs are included in which SymCrypt packages. The simple fix is to just rename the file.
- Update `package.py` to read configuration from JSON file, and support per-platform/arch/config binaries
- Fix local VS build by changing `RuntimeLibrary` depending on whether `UndockedOfficial` is set
- Create vcxproj for `SymCryptKernelTestModule_UM.dll`
- Add Official pipeline definition, with option to create VPack
- Remove unused properties from undocked build property files
Related work items: #42154632, #42880140
This pull request adds MSBuild solution and project files so that SymCrypt can be built using the undocked OneBranch pipeline, including the kernel mode components. See the SymCrypt EO Compliance document for more information on why this is being done, and the high-level overview of how it will be accomplished.
In addition to adding the MSBuild files, I removed a bunch of files that were no longer being used, such as the iOS workspace and project files, old kernel test drivers that are not used in the RI-TP, etc.
Related work items: #42154697
This change rewrites our Azure DevOps pipelines to be compatible with OneBranch pipelines. It also adds new scripts to help with building, testing and packaging SymCrypt. These scripts replicate some of the functionality of `scbuild` but are also compatible with Linux builds. They can be used directly on the command line by developers, but the OneBranch pipeline also uses them to move as much as possible of the "business logic" of building SymCrypt out of the YAML templates and into Python scripts.
Also includes various reorganization and small fixes.