audk/BaseTools
Feng, Bob C bfe36cb4ef BaseTools: Improve the method of checking queue empty
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2807

The Queue.empty() method is not reliable in the multiple
process runtime environment. This patch uses a new method
to check if all modules are processed and workers need
to be stopped. That is to add a None item at the bottom
of the queue. Worker check if it gets that None item to
know if all the module is processed.

Signed-off-by: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Yuwei Chen <yuwei.chen@intel.com>
Cc: Lucy Yan <lucyyan@google.com>

Reviewed-by: Liming Gao <liming.gao@intel.com>
2020-08-07 01:44:36 +00:00
..
Bin BaseTools: Enable RISC-V architecture for RISC-V EDK2 CI. 2020-05-07 03:17:15 +00:00
BinWrappers BaseTools: Rename AmlToHex script to AmlToC 2020-07-02 10:09:17 +00:00
Conf Revert "BaseTools: Add gcc flag to warn on void* pointer arithmetic" 2020-07-24 09:50:28 +00:00
Plugin BaseTools/Plugin: Update HostBasedUnitTestRunner to support Linux 2020-05-08 05:54:46 +00:00
Scripts Revert "BaseTools/PatchCheck.py: Add LicenseCheck" 2020-07-31 03:37:17 +00:00
Source BaseTools: Improve the method of checking queue empty 2020-08-07 01:44:36 +00:00
Tests Revert "BaseTools:code of test python module is moved to edksetup" 2019-05-09 19:02:35 +08:00
UserManuals BaseTools/VfrCompile: Remove framework VFR support 2019-05-09 09:42:54 +08:00
.gitignore BaseTools gitignore: Ignore VS intermediate files *.obj and *.pdb 2016-11-18 11:07:46 +08:00
BuildEnv BaseTools: Replace BSD License with BSD+Patent License 2019-04-09 09:10:20 -07:00
Edk2ToolsBuild.py BaseTools: Update Edk2ToolsBuild.py to use multiple threads on Linux 2020-04-07 01:22:04 +00:00
GNUmakefile BaseTools: Replace BSD License with BSD+Patent License 2019-04-09 09:10:20 -07:00
Makefile BaseTools: Replace BSD License with BSD+Patent License 2019-04-09 09:10:20 -07:00
ReadMe.rst BaseTools: rename ReadMe.txt to ReadMe.rst 2020-07-21 04:12:32 +00:00
basetools_calling_path_env.yaml BaseTools: Add YAML files with path env and tool extdeps 2019-11-11 13:01:53 -08:00
basetools_path_env.yaml BaseTools: Add YAML files with path env and tool extdeps 2019-11-11 13:01:53 -08:00
get_vsvars.bat Add VS2019 Support on ToolSetup Batches 2019-09-23 22:42:41 +08:00
set_vsprefix_envs.bat BaseTools: Add RC_PATH define for VS2017/2019 2019-11-11 13:01:46 -08:00
toolsetup.bat Add VS2019 Support on ToolSetup Batches 2019-09-23 22:42:41 +08:00

ReadMe.rst

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This directory contains the EDK II build tools and template files.
Templates are located in the Conf directory, while the tools executables for
Microsoft Windows Operating Systems are located in the Bin\\Win32 directory, other
directory contains tools source.

Build step to generate the binary tools
---------------------------------------

Windows/Visual Studio Notes
===========================

To build the BaseTools, you should run the standard vsvars32.bat script
from your preferred Visual Studio installation or you can run get_vsvars.bat
to use latest automatically detected version.

In addition to this, you should set the following environment variables::

 * EDK_TOOLS_PATH - Path to the BaseTools sub directory under the edk2 tree
 * BASE_TOOLS_PATH - The directory where the BaseTools source is located.
   (It is the same directory where this README.rst is located.)

After this, you can run the toolsetup.bat file, which is in the same
directory as this file.  It should setup the remainder of the environment,
and build the tools if necessary.

Please also refer to the ``BuildNotes.txt`` file for more information on
building under Windows.

Unix-like operating systems
===========================

To build on Unix-like operating systems, you only need to type ``make`` in
the base directory of the project.

Ubuntu Notes
============

On Ubuntu, the following command should install all the necessary build
packages to build all the C BaseTools::

 sudo apt install build-essential uuid-dev