-INF $(WORKSPACE)/MdeModulePkg/Core/Pei/PeiMain.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Core/Dxe/DxeMain.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/RuntimeDxe/Runtime.inf\r
-INF $(WORKSPACE)/Nt32Pkg/BootModePei/BootMode.inf\r
-INF $(WORKSPACE)/Nt32Pkg/WinNtThunkDxe/WinNtThunk.inf\r
-#INF $(WORKSPACE)/Nt32Pkg/MiscSubClassPlatformDxe/MiscSubclassDriver.inf\r
-INF $(WORKSPACE)/Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocol.inf\r
-INF $(WORKSPACE)/Nt32Pkg/WinNtAutoScanPei/WinNtAutoScan.inf\r
-INF $(WORKSPACE)/Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIo.inf\r
-INF $(WORKSPACE)/Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriver.inf\r
-INF $(WORKSPACE)/Nt32Pkg/WinNtConsoleDxe/WinNtConsole.inf\r
-INF $(WORKSPACE)/Nt32Pkg/WinNtSimpleFileSystemDxe/WinNtSimpleFileSystem.inf\r
-INF $(WORKSPACE)/Nt32Pkg/WinNtGopDxe/WinNtGop.inf\r
-INF $(WORKSPACE)/Nt32Pkg/WinNtSerialIoDxe/WinNtSerialIo.inf\r
-INF $(WORKSPACE)/Nt32Pkg/TimerDxe/Timer.inf\r
-INF $(WORKSPACE)/Nt32Pkg/ResetRuntimeDxe/Reset.inf\r
-INF $(WORKSPACE)/Nt32Pkg/RealTimeClockRuntimeDxe/RealTimeClock.inf\r
-INF $(WORKSPACE)/Nt32Pkg/MetronomeDxe/Metronome.inf\r
-INF $(WORKSPACE)/Nt32Pkg/CpuRuntimeDxe/Cpu.inf\r
-INF $(WORKSPACE)/Nt32Pkg/FvbServicesRuntimeDxe/Nt32Fwh.inf\r
-#INF $(WORKSPACE)/Nt32Pkg/PlatformBdsDxe/PlatformBds.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Application/HelloWorld/HelloWorld.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/Disk/DiskIo/Dxe/DiskIo.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/Disk/Partition/Dxe/Partition.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/Disk/UnicodeCollation/English/Dxe/English.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/SecurityStubDxe/SecurityStub.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/Capsule/RuntimeDxe/CapsuleRuntime.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/Ebc/Dxe/Ebc.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/GenericMemoryTest/Dxe/NullMemoryTest.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/MonotonicCounterDxe/MonotonicCounter.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/FirmwareVolume/FaultTolerantWriteLite/Dxe/FtwLite.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/BaseMemoryTestPei/BaseMemoryTest.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/FirmwareVolume/GuidedSectionExtraction/Crc32SectionExtract/Dxe/Crc32SectionExtract.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/VariableRuntimeDxe/Variable.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Bus/Pci/AtapiPassThruDxe/AtapiPassThru.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/WatchDogTimerDxe/WatchDogTimer.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/VariablePei/Variable.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/VariableRuntimeDxe/Variable.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.inf\r
-#INF $(WORKSPACE)/IntelFrameworkModulePkg/Bus/Pci/PciBus/Dxe/PciBus.inf\r
-INF $(WORKSPACE)/IntelFrameworkModulePkg/Bus/Pci/IdeBus/Dxe/IdeBus.inf\r
-INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DataHub/DataHub/Dxe/DataHub.inf\r
-INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DataHub/DataHubStdErr/Dxe/DataHubStdErr.inf\r
-INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/StatusCode/Dxe/DxeStatusCode.inf\r
-INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf\r
-INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/HiiDataBaseDxe/HiiDatabase.inf\r
-INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/SetupBrowserDxe/SetupBrowser.inf\r
-INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DriverSampleDxe/DriverSample.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.inf ##This driver follows UEFI specification definition\r
-INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.inf ##This driver follows UEFI specification definition\r
-INF $(WORKSPACE)/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf\r
-INF $(WORKSPACE)/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsole.inf \r
-INF $(WORKSPACE)/Nt32Pkg/WinNtFlashMapPei/FlashMap.inf\r
-INF $(WORKSPACE)/Nt32Pkg/WinNtFirmwareVolumePei/WinNtFwh.inf\r
+ ##\r
+ # PEI Phase modules\r
+ ##\r
+ ##\r
+ # PEI Apriori file example, more PEIM module added later.\r
+ ##\r
+APRIORI PEI {\r
+ INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
+ INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf\r
+ }\r
+APRIORI DXE {\r
+ INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
+ INF Nt32Pkg/MetronomeDxe/MetronomeDxe.inf\r
+ }\r
+\r
+INF MdeModulePkg/Core/Pei/PeiMain.inf\r
+INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
+INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf\r
+INF Nt32Pkg/BootModePei/BootModePei.inf\r
+INF Nt32Pkg/WinNtFlashMapPei/WinNtFlashMapPei.inf\r
+INF MdeModulePkg/Universal/MemoryTest/BaseMemoryTestPei/BaseMemoryTestPei.inf\r
+INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf\r
+INF Nt32Pkg/WinNtAutoScanPei/WinNtAutoScanPei.inf\r
+INF Nt32Pkg/WinNtFirmwareVolumePei/WinNtFirmwareVolumePei.inf\r
+INF Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocolPei.inf\r
+INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf\r
+\r
+ ##\r
+ # DXE Phase modules\r
+ ##\r
+INF MdeModulePkg/Core/Dxe/DxeMain.inf\r
+INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
+INF Nt32Pkg/MetronomeDxe/MetronomeDxe.inf\r
+INF Nt32Pkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf\r
+INF Nt32Pkg/ResetRuntimeDxe/ResetRuntimeDxe.inf\r
+INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf\r
+INF Nt32Pkg/FvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf\r
+INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf\r
+INF IntelFrameworkModulePkg/Universal/DataHubDxe/DataHubDxe.inf\r
+INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf\r
+INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf\r
+INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf\r
+INF Nt32Pkg/WinNtThunkDxe/WinNtThunkDxe.inf\r
+INF Nt32Pkg/CpuRuntimeDxe/CpuRuntimeDxe.inf\r
+INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf\r
+INF MdeModulePkg/Universal/FirmwareVolume/FaultTolerantWriteDxe/FtwLite.inf\r
+INF IntelFrameworkModulePkg/Universal/DataHubStdErrDxe/DataHubStdErrDxe.inf\r
+INF Nt32Pkg/MiscSubClassPlatformDxe/MiscSubClassPlatformDxe.inf\r
+INF Nt32Pkg/TimerDxe/TimerDxe.inf\r
+INF IntelFrameworkModulePkg/Universal/StatusCode/Dxe/DxeStatusCode.inf\r
+INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf\r
+INF MdeModulePkg/Universal/WatchDogTimerDxe/WatchDogTimer.inf\r
+INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf\r
+INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf\r
+INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf\r
+INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf\r
+INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf\r
+INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf\r
+INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf\r
+INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf\r
+INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf\r
+INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf\r
+INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf\r
+INF IntelFrameworkModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf\r
+INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf ##This driver follows UEFI specification definition\r
+INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf ##This driver follows UEFI specification definition\r
+INF IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf\r
+INF Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriverDxe.inf\r
+INF Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIoDxe.inf\r
+INF Nt32Pkg/WinNtSerialIoDxe/WinNtSerialIoDxe.inf\r
+INF Nt32Pkg/WinNtGopDxe/WinNtGopDxe.inf\r
+INF Nt32Pkg/WinNtSimpleFileSystemDxe/WinNtSimpleFileSystemDxe.inf\r
+INF MdeModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf\r
+INF MdeModulePkg/Application/HelloWorld/HelloWorld.inf\r