+\r
+--------------------\r
+A Word on Apache-ANT\r
+--------------------\r
+The Apache-ANT program is a build tool that uses XML-based project files.\r
+Similar to Makefiles, these project files may contain multiple targets. Most\r
+build.xml files in EDK II are auto-generated; any edits performed on the\r
+build.xml files will be overwritten by the next build.\r
+\r
+Pre-defined targets in the build.xml file include:\r
+ all - This target builds binaries for defined architectures.\r
+ clean - This target removes object files generated by commands.\r
+ cleanall - This target removes all generated files and directories.\r
+\r
+----------------------------\r
+A Word on the GCC Tool Chain\r
+----------------------------\r
+EDK II will not compile with a standard Linux gcc tool chain. While Linux\r
+distributions are usually based on ELF, EDK II requires a version of gcc \r
+that is configured to produce PE-COFF images. You will find a script in \r
+edk2/Tools/gcc that will download, configure, compile, and install a gcc \r
+4.X cross-compile tool chain for EDK II development. This custom tool chain \r
+supports the IA-32 architecture. It can be built and run on Cygwin, Linux, and \r
+many other POSIX-compliant host operating environments. To compile the custom \r
+gcc tool chain, you need the following tools on your host computer: bash, gcc, \r
+gmake, curl (or wget).\r
+\r
+Only the MdePkg and EdkModulePkg are currently supported by gcc builds. Other\r
+builds, such as the EdkNt32Pkg, will not compile with gcc. By default, the edk2\r
+will try to build the NT32.fpd, which is not supported by gcc. So, you need to\r
+change the Tools/Conf/target.txt.\r
+\r
+The platform to be built is identified by the Tools/Conf/target.txt file:\r
+\r
+#\r
+# PROPERTY Type Use Description\r
+# ---------------- -------- -------- -----------------------------------------------------------\r
+# ACTIVE_PLATFORM Filename Recommended Specify the WORKSPACE relative Path and Filename \r
+# of the platform FPD file that will be used for the build\r
+# This line is required if and only if the current working\r
+# directory does not contain one or more FPD files.\r
+\r
+ACTIVE_PLATFORM =\r
+ \r
+You can leave it black, as above, or set it to any .fpd file in the workspace.\r
+If you leave it blank, then you just cd to the dir that contains the .fpd that\r
+you would like to build (MdePkg/ or EdkModulePkg/) and then type build.\r
+\r
+----------------------------\r
+A Word on compiling on Linux\r
+----------------------------\r
+\r
+In order to compile on Linux, you will need to have the e2fsprogs-dev package\r
+installed. Check your distribution for the rpm, deb or other package format.\r
+This package contains the uuid library and header that are used by some of the\r
+host tools.\r
+\r
+If you are running on x86_64 Linux, then you should install a 64 bit version of\r
+the Java JDK. The version that was used was jdk-1_5_0_07-linux-amd64-rpm.bin.\r
+It may be downloaded from sun.com.\r
+\r
+-----------------------------------------\r
+A Word on compiling under Cygwin with gcc\r
+-----------------------------------------\r
+\r
+Cygwin is a POSIX style operating environment for Windows. It is possible to\r
+compile the EDK 2 using gcc and cygwin. Compiling under cygwin is slow, because \r
+the underlying file accesses are slow in cygwin. For this reason, we do not \r
+encourage the use of cygwin. A true unix system will be a superior choice for \r
+those wishing to compile with gcc.\r
+\r
+Make sure that you select the e2fsprogs development package when you install\r
+cygwin. It is necessary for the GenFvImage tool.\r
+\r
+----------------------------------------\r
+A Word on gcc for Processor Architectures\r
+----------------------------------------\r
+\r
+Currently gcc support is limited to IA-32 builds, generating IA-32 PE32 images. \r
+\r
+The X64 bit (Intel 64, etc.) support under the gcc compiler does not support the EFIAPI \r
+calling convention (as defined in the UEFI 2.0 specification Chapter 2), so it is not \r
+possible to build a working EFI image for an X64 environment. Since the x64 gcc does \r
+not support the EFIAPI calling convention the x64 tools do not support generating a \r
+PE32+ image. The EFIAPI calling convention is very similar to the Microsoft x64 \r
+calling convention.\r
+\r
+On Itanium® Processors the gcc compiler does not support generating a PE32+ image.\r
+\r
+-----------------------\r
+Notes on Documentation\r
+-----------------------\r
+The documents are being managed by the Subversion Source Control on\r
+Tianocore.org. The document repository is "docs" and must be checked out\r
+separately from the EDK II source tree. Refer to the checkout procedures on\r
+the Tianocore.org Web site for EDK II.\r
+\r
+The URL of the document repository is:\r
+ https://edk2.tianocore.org/svn/edk2/trunk/docs\r
+\r