]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BuildNotes2.txt
Regenerate Fat binaries for the bug fix of LookupUnicodeString2() in UefiLib (r4655).
[mirror_edk2.git] / BuildNotes2.txt
index 200bf820e9056da1c61244b0f611434692be1e23..ffec64462ddc4f35e9ae33197dc38871ca19a040 100644 (file)
@@ -10,25 +10,29 @@ Copyright (c) 2007, Intel Corporation
 \r
 EDK II Prime packages are in the development phase. They consist of:\r
 \r
-  BuildNotes2.txt    - The build notes for this package\r
-  MdePkg             - Industry-standard headers and libraries\r
-  BaseTools          - Build -specific tools that are designed to help the\r
-                       developer create and modify drivers and libraries\r
-  IntelFrameworkPkg  - Framework headers and libraries\r
-  MdeModulePkg       - Reference drivers\r
-\r
-Currently, only module build supported, and only IA32 architecture supported.\r
+  BuildNotes2.txt         - The build notes for this package\r
+  MdePkg                  - Industry-standard headers and libraries\r
+  BaseTools               - Build -specific tools that are designed to help the\r
+                            developer create and modify drivers and libraries\r
+  IntelFrameworkPkg       - Tiano/Framework Includes and Libraries\r
+  MdeModulePkg            - UEFI 2.1/PI 1.0 compliant modules\r
+  IntelFrameworkModulePKg - Tiano/Framework Includes and Libraries\r
+  Nt32Pkg                 - UEFI 2.1/PI 1.0 emulation environment for Windows\r
+  FatBinPkg               - Binaries built from the FatPkg \r
+  EdkShellBinPkg          - Binaries of full shell, minimum shell and commonds(to be added)\r
 \r
+Note:\r
+  EdkShellBinPkg is supported to support both EDK II build and EDKII Prime build by having several module description files.\r
 \r
 -------------------------------------------------------------------------------\r
 Quick Start\r
 -----------\r
 \r
-NOTE: Please confirm you have already installed Python on your machine.\r
-\r
 In a command window, change to the top-level directory of the EDK II source.\r
 \r
-First, set up your workspace\r
+First, set up your workspace. If you have had a setup, please make sure that\r
+you don't have newer *.template in WORKSPACE\BaseTools\Conf. Otherwise remove\r
+*.txt files in WORKSPACE\Conf in advance.\r
     c:\MyWork\edk2\> edksetup newbuild\r
 \r
 Second, go to the module directory (For example, MdeModulePkg\Application\HelloWorld),\r
@@ -37,7 +41,7 @@ and then begin to build
     c:\MyWork\edk2\> build\r
 \r
 If you want to build the modules in other packages\r
-(For example, MdePkg\Library\BaseLib\BaseLib.inf), please edit open the BaseTools\Conf\Target.txt firstly,\r
+(For example, MdePkg\Library\BaseLib\BaseLib.inf), please edit open the <WORKSPACE>\Conf\Target.txt first,\r
 \r
 change the following line\r
     ACTIVE_PLATFORM       = MdeModulePkg/MdeModulePkg.dsc\r
@@ -48,4 +52,76 @@ and then go to MdePkg\Library\BaseLib directory and build
     c:\MyWork\edk2\> cd MdePkg\Library\BaseLib\r
     c:\MyWork\edk2\> build\r
 \r
+If you want build a platform, ACTIVE_PLATFORM must be set to your desired platform dsc file,\r
+go to directory which must be not a module's directory, and run "build" command.\r
+\r
+Instead of changing Target.txt, you can specify platform, module and/or architecture on command line.\r
+For example, if you want to build NT32 platform, you can just type \r
+\r
+               c:\MyWork\edk2\> build -p Nt32Pkg\Nt32Pkg.dsc -a IA32\r
+\r
+and if you want to build HelloWorld module, you can just type\r
+\r
+               c:\MyWork\edk2\> build -p Nt32Pkg\Nt32Pkg.dsc -a IA32 -m MdeModulePkg\Application\HelloWorld\HelloWorld.inf\r
+\r
+Other helpful command line options of build tool include "-v" and "-d". "-v" option is used to turn on\r
+the verbose build, which provide more information during the build. "-d <debug level 0-9>" option is used to\r
+turn on the debug information which is helpful debugging build tools.\r
+\r
+For more information on build options, please try "build -h" on command line. Note that "/?" is not working.\r
+\r
+\r
+-------------------------------------------------------------------------------\r
+Supported build targets\r
+-----------------------\r
+\r
+all       - Build whole platform or module. It can be ignored.\r
+genc      - Generate AutoGen.c, AutoGen.h and <ModuleName>.depex files only.\r
+genmake   - Generate makefiles in addition to files generated by "genc" target.\r
+clean     - Clean intermediate files\r
+cleanall  - Clean all generated files and directories during build, except Makefile\r
+cleanlib  - Clean all generated files and directories during library build\r
+run       - Launch NT32 shell (only valid for NT32 platform)\r
+\r
+-------------------------------------------------------------------------------\r
+Tools in Python\r
+---------------\r
+\r
+* Run buld tool written in Python from source\r
+  The build tool written in Python can be executed from its source directly as long as you\r
+have the Python interpreter (version 2.5) installed. The source of Python code is locating at\r
+\r
+               https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools/Source/Python\r
+\r
+       where:\r
+\r
+               build/build.py      - The entry tool of build tools\r
+               AutoGen/AutoGen.py  - Generate AutoGen.c/.h and makefile only\r
+\r
+       "build.py" steps:\r
+               1. Run "edksetup.bat newbuild"\r
+        2. set PYTHONPATH to the local directory of above source (BaseTools/Source/Python)\r
+               3. Set ACTIVE_PLATFORM in WORKSPACE\Conf\r
+               4. Go to platform or module directory\r
+               5. Run "<python_interpreter.exe> <python_source_dir>/build/build.py" or "<python_source_dir>/build/build.py"\r
+                  directly.\r
+\r
+       "AutoGen.py" steps:\r
+               1. Run "edksetup.bat newbuild"\r
+        2. set PYTHONPATH to the local directory of above source (BaseTools/Source/Python)\r
+               3. Set ACTIVE_PLATFORM in WORKSPACE\Conf\r
+               4. Run "<python_interpreter.exe> <python_source_dir>/AutoGen/AutoGen.py" or "<python_source_dir>/AutoGen/AutoGen.py"\r
+\r
+* Convert Python source to exe file\r
+  The tools written in Python can be coverted into executable program which can be executed\r
+without Python interpreter. One of the convertion tools is called cx_Freeze at \r
+\r
+               http://sourceforge.net/projects/cx-freeze/\r
+\r
+       Suppose you have installed cx_Freeze at c:\cx_Freeze-3.0.3. Use following command line to convert MyBuild.py\r
+\r
+    set PYTHONPATH=<buildtools>\BaseTools\Source\Python\r
+       c:\cx_Freeze-3.0.3\FreezePython.exe --include-modules=encodings.cp437,encodings.gbk,encodings.utf_16,encodings.utf_8 --install-dir=.\mybuild MyBuild.py\r
+\r
+       The generated .exe files are put in "mybuild" subdirectory.\r
 \r