]> git.proxmox.com Git - mirror_edk2.git/blobdiff - .pytool/Readme.md
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / .pytool / Readme.md
index f6505507966aed6fd885eede3caef30bc43311a7..b2688d168753ad641d9e3fa4dbf5ce066a5e8b3e 100644 (file)
@@ -1,5 +1,12 @@
 # Edk2 Continuous Integration\r
 \r
+This file focuses on information for those working with the `.pytools` directory\r
+directly or interested in lower-level details about how CI works.\r
+\r
+If you just want to get started building code, visit\r
+[Build Instructions](https://github.com/tianocore/tianocore.github.io/wiki/Build-Instruction)\r
+on the TianoCore wiki.\r
+\r
 ## Basic Status\r
 \r
 | Package              | Windows VS2019 (IA32/X64)| Ubuntu GCC (IA32/X64/ARM/AARCH64) | Known Issues |\r
@@ -82,43 +89,18 @@ easily and consistently running locally and in a cloud ci environment.  To do
 that a few steps should be followed.  Details of EDKII Tools can be found in the\r
 [docs folder here](https://github.com/tianocore/edk2-pytool-extensions/tree/master/docs)\r
 \r
-### Prerequisets\r
-\r
-1. A supported toolchain (others might work but this is what is tested and validated)\r
-   * Windows 10:\r
-     * VS 2017 or VS 2019\r
-     * Windows SDK (for rc)\r
-     * Windows WDK (for capsules)\r
-   * Ubuntu 18.04 or Fedora\r
-     * GCC5\r
-   * Easy to add more but this is the current state\r
-2. Python 3.7.x or newer on path\r
-3. git on path\r
-4. Recommended to setup and activate a python virtual environment\r
-5. Install the requirements `pip install --upgrade pip-requirements.txt`\r
-\r
 ### Running CI\r
 \r
-1. clone your edk2 repo\r
-2. Activate your python virtual environment in cmd window\r
-3. Get code dependencies (done only when submodules change)\r
-   * `stuart_setup -c .pytool/CISettings.py TOOL_CHAIN_TAG=<your tag here>`\r
-4. Update other dependencies (done more often)\r
-   * `stuart_update -c .pytool/CISettings.py TOOL_CHAIN_TAG=<your tag here>`\r
-5. Run CI build (--help will give you options)\r
-   * `stuart_ci_build -c .pytool/CISettings.py TOOL_CHAIN_TAG=<your tag here>`\r
-   * -p <pkg1,pkg2,pkg3> : To build only certain packages use a CSV list\r
-   * -a <arch1,arch2,arch3>: To run only certain architectures use a CSV list\r
-   * -t <target1,target2>: To run only tests related to certain targets use a\r
-     CSV list\r
-   * By default all tests are opted in.  Then given a package.ci.yaml file those\r
-     tests can be configured for a package. Finally setting the check to the\r
-     value `skip` will skip that plugin.  Examples:\r
-     * `CompilerPlugin=skip` skip the build test\r
-     * `GuidCheck=skip` skip the Guid check\r
-     * `SpellCheck=skip` skip the spell checker\r
-     * etc\r
-6. Detailed reports and logs per package are captured in the `Build` directory\r
+Quick notes:\r
+\r
+* By default all CI plugins are opted in.\r
+  * Setting the plugin to `skip` as an argument will skip running the plugin.\r
+    Examples:\r
+    * `CompilerPlugin=skip` skip the build test\r
+    * `GuidCheck=skip` skip the Guid check\r
+    * `SpellCheck=skip` skip the spell checker\r
+    * etc.\r
+* Detailed reports and logs per package are captured in the `Build` directory.\r
 \r
 ## Current PyTool Test Capabilities\r
 \r
@@ -264,6 +246,10 @@ BSD-2-Clause-Patent.
 Run the Ecc tool on the package. The Ecc tool is available in the BaseTools\r
 package. It checks that the code complies to the EDKII coding standard.\r
 \r
+### Coding Standard Compliance - UncrustifyCheck\r
+\r
+Runs the Uncrustify application to check for coding standard compliance issues.\r
+\r
 ## PyTool Scopes\r
 \r
 Scopes are how the PyTool ext_dep, path_env, and plugins are activated.  Meaning\r