Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ionescu007/SimpleVisor.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/uefi
diff options
context:
space:
mode:
authorAlex Ionescu <aionescu@gmail.com>2017-11-06 17:36:23 +0300
committerAlex Ionescu <aionescu@gmail.com>2017-11-06 17:36:23 +0300
commita44424d9a8e8756d1deeb8fdb8dc6aeef99b5d57 (patch)
tree2336e3828d8111d585a0ab20a1ae6e7a77876718 /uefi
parent6ca25d46717cdce217cc2cea1cc49a05a102deac (diff)
Properly support building for UEFI vs NT with VisualUefi
Refactor all project files/settings to support dual build. User should set EDK_PATH to their checked out copy of VisualUefi.
Diffstat (limited to 'uefi')
-rw-r--r--uefi/shvos.c4
-rw-r--r--uefi/uefi.default.props23
-rw-r--r--uefi/uefi.props60
3 files changed, 85 insertions, 2 deletions
diff --git a/uefi/shvos.c b/uefi/shvos.c
index db19f21..6a8afa9 100644
--- a/uefi/shvos.c
+++ b/uefi/shvos.c
@@ -49,8 +49,8 @@ Environment:
//
// External SimpleVisor Headers
//
-#include "ntint.h"
-#include "shv_x.h"
+#include "..\ntint.h"
+#include "..\shv_x.h"
//
// We run on any UEFI Specification
diff --git a/uefi/uefi.default.props b/uefi/uefi.default.props
new file mode 100644
index 0000000..c651b7b
--- /dev/null
+++ b/uefi/uefi.default.props
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ImportGroup Label="PropertySheets" />
+ <PropertyGroup Label="UserMacros">
+ <EDK_PATH>C:\Users\aione\Documents\GitHub\VisualUefi\edk2</EDK_PATH>
+ </PropertyGroup>
+ <PropertyGroup>
+ <IncludePath>$(EDK_PATH)\MdePkg\Include;$(EDK_PATH)\MdePkg\Include\X64;$(EDK_PATH)\ShellPkg\Include;$(EDK_PATH)\CryptoPkg\Include</IncludePath>
+ <LibraryPath>$(EDK_PATH)\..\EDK-II\$(Platform)\Release</LibraryPath>
+ </PropertyGroup>
+ <PropertyGroup Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>v141</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <ItemGroup>
+ <BuildMacro Include="EDK_PATH">
+ <Value>$(EDK_PATH)</Value>
+ </BuildMacro>
+ </ItemGroup>
+</Project>
diff --git a/uefi/uefi.props b/uefi/uefi.props
new file mode 100644
index 0000000..2841656
--- /dev/null
+++ b/uefi/uefi.props
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ImportGroup Label="PropertySheets" />
+ <PropertyGroup>
+ <GenerateManifest />
+ <TargetExt>.efi</TargetExt>
+ </PropertyGroup>
+ <ItemDefinitionGroup>
+ <ClCompile>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <WarningLevel>Level4</WarningLevel>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <MultiProcessorCompilation>true</MultiProcessorCompilation>
+ <Optimization>MinSpace</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <OmitFramePointers>true</OmitFramePointers>
+ <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
+ <ExceptionHandling>SyncCThrow</ExceptionHandling>
+ <BufferSecurityCheck>false</BufferSecurityCheck>
+ <ControlFlowGuard>false</ControlFlowGuard>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <ForcedIncludeFiles>$(EDK_PATH)\..\EDK-II\BaseLib\vshacks.h</ForcedIncludeFiles>
+ <CallingConvention />
+ <TreatWChar_tAsBuiltInType />
+ <StringPooling>true</StringPooling>
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
+ <ForceConformanceInForLoopScope />
+ <AdditionalOptions>/Gs32768 %(AdditionalOptions)</AdditionalOptions>
+ <ErrorReporting />
+ <FloatingPointModel />
+ </ClCompile>
+ <Link>
+ <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
+ <AdditionalDependencies>UefiHiiLib.lib;UefiHiiServicesLib.lib;UefiSortLib.lib;UefiShellLib.lib;GlueLib.lib;BaseLib.lib;BaseDebugPrintErrorLevelLib.lib;BasePrintLib.lib;UefiLib.lib;UefiBootServicesTableLib.lib;UefiRuntimeServicesTableLib.lib;UefiDevicePathLibDevicePathProtocol.lib;UefiDebugLibConOut.lib;UefiMemoryLib.lib;UefiMemoryAllocationLib.lib;BaseSynchronizationLib.lib;UefiFileHandleLib.lib;UefiApplicationEntryPoint.lib</AdditionalDependencies>
+ <GenerateDebugInformation>DebugFastLink</GenerateDebugInformation>
+ <SubSystem>EFI Application</SubSystem>
+ <Driver>Driver</Driver>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding />
+ <LinkTimeCodeGeneration>UseFastLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+ <BaseAddress>0</BaseAddress>
+ <SectionAlignment>32</SectionAlignment>
+ <ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
+ <RandomizedBaseAddress />
+ <DataExecutionPrevention />
+ <ManifestFile />
+ <AllowIsolation />
+ <EnableUAC />
+ <UACExecutionLevel />
+ <UACUIAccess />
+ <TypeLibraryResourceID />
+ <AdditionalOptions>/OPT:ICF=10 /IGNORE:4001 /IGNORE:4254 %(AdditionalOptions)</AdditionalOptions>
+ <MergeSections>.rdata=.data</MergeSections>
+ <SpecifySectionAttributes>.xdata,D</SpecifySectionAttributes>
+ <LinkErrorReporting />
+ <ProfileGuidedDatabase />
+ <EntryPointSymbol>EfiMain</EntryPointSymbol>
+ </Link>
+ </ItemDefinitionGroup>
+</Project> \ No newline at end of file