]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkNt32Pkg/Sec/SecMain_build.xml
Add in OFFSET_OF macro as defined in MDE Library spec
[mirror_edk2.git] / EdkNt32Pkg / Sec / SecMain_build.xml
index 6144f521c9c93adec71ccd1d8a7d356877fc871e..fc26a10779233a1e7a5e1d686600ac04d9949c3b 100644 (file)
@@ -56,14 +56,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
       <property name="PACKAGE_GUID" value="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>\r
       <property name="PACKAGE_VERSION" value=""/>\r
     </GenBuild>\r
-    <GenBuild type="build">\r
-      <property name="ARCH" value="${ARCH}"/>\r
-      <property name="MODULE_GUID" value="55c61087-7367-4546-bc32-4937c5e6aff3"/>\r
-      <property name="MODULE_VERSION" value=""/>\r
-      <property name="PLATFORM" value="${PLATFORM}"/>\r
-      <property name="PACKAGE_GUID" value="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>\r
-      <property name="PACKAGE_VERSION" value=""/>\r
-    </GenBuild>\r
     <GenBuild type="build">\r
       <property name="ARCH" value="${ARCH}"/>\r
       <property name="MODULE_GUID" value="9ba1d976-0624-41a3-8650-28165e8d9ae8"/>\r
@@ -74,72 +66,45 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     </GenBuild>\r
   </target>\r
   <target name="sourcefiles">\r
+      <Build_Init>\r
+        <EXTRA.INC>\r
+          <includepath path="${INCLUDE_PATHS}"/>\r
+        </EXTRA.INC>\r
+      </Build_Init>\r
       <Build_AUTOGEN FILEEXT="c" FILENAME="AutoGen" FILEPATH=".">\r
          <EXTRA.INC>\r
-            <includepath path="${WORKSPACE_DIR}"/>\r
-            <includepath path="${MODULE_DIR}"/>\r
-            <includepath path="${MODULE_DIR}\${ARCH}"/>\r
-            <includepath path="${WORKSPACE_DIR}\MdePkg\Include"/>\r
-            <includepath path="${WORKSPACE_DIR}\MdePkg\Include\${ARCH}"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkModulePkg\Include"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkModulePkg\Include\${ARCH}"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkNt32Pkg\Include"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkNt32Pkg\Include\${ARCH}"/>\r
-            <includepath path="${DEST_DIR_DEBUG}"/>\r
+            <includepath path="${INCLUDE_PATHS}"/>\r
          </EXTRA.INC>\r
        </Build_AUTOGEN>\r
-       <var name="OBJECTS" value="${OBJECTS} ${DEST_DIR_OUTPUT}/AutoGen.obj" />\r
       <Build_CCode FILEEXT="c" FILENAME="FwVol" FILEPATH=".">\r
          <EXTRA.INC>\r
-            <includepath path="${WORKSPACE_DIR}"/>\r
-            <includepath path="${MODULE_DIR}"/>\r
-            <includepath path="${MODULE_DIR}\${ARCH}"/>\r
-            <includepath path="${WORKSPACE_DIR}\MdePkg\Include"/>\r
-            <includepath path="${WORKSPACE_DIR}\MdePkg\Include\${ARCH}"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkModulePkg\Include"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkModulePkg\Include\${ARCH}"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkNt32Pkg\Include"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkNt32Pkg\Include\${ARCH}"/>\r
-            <includepath path="${DEST_DIR_DEBUG}"/>\r
+            <includepath path="${INCLUDE_PATHS}"/>\r
          </EXTRA.INC>\r
       </Build_CCode>\r
-      <var name="OBJECTS" value="${OBJECTS} ${DEST_DIR_OUTPUT}/FwVol.obj" />\r
       <Build_CCode FILEEXT="c" FILENAME="WinNtThunk" FILEPATH=".">\r
          <EXTRA.INC>\r
-            <includepath path="${WORKSPACE_DIR}"/>\r
-            <includepath path="${MODULE_DIR}"/>\r
-            <includepath path="${MODULE_DIR}\${ARCH}"/>\r
-            <includepath path="${WORKSPACE_DIR}\MdePkg\Include"/>\r
-            <includepath path="${WORKSPACE_DIR}\MdePkg\Include\${ARCH}"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkModulePkg\Include"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkModulePkg\Include\${ARCH}"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkNt32Pkg\Include"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkNt32Pkg\Include\${ARCH}"/>\r
-            <includepath path="${DEST_DIR_DEBUG}"/>\r
+            <includepath path="${INCLUDE_PATHS}"/>\r
          </EXTRA.INC>\r
       </Build_CCode>\r
-      <var name="OBJECTS" value="${OBJECTS} ${DEST_DIR_OUTPUT}/WinNtThunk.obj" />\r
       <Build_CCode FILEEXT="c" FILENAME="SecMain" FILEPATH=".">\r
          <EXTRA.INC>\r
-            <includepath path="${WORKSPACE_DIR}"/>\r
-            <includepath path="${MODULE_DIR}"/>\r
-            <includepath path="${MODULE_DIR}\${ARCH}"/>\r
-            <includepath path="${WORKSPACE_DIR}\MdePkg\Include"/>\r
-            <includepath path="${WORKSPACE_DIR}\MdePkg\Include\${ARCH}"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkModulePkg\Include"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkModulePkg\Include\${ARCH}"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkNt32Pkg\Include"/>\r
-            <includepath path="${WORKSPACE_DIR}\EdkNt32Pkg\Include\${ARCH}"/>\r
-            <includepath path="${DEST_DIR_DEBUG}"/>\r
+            <includepath path="${INCLUDE_PATHS}"/>\r
          </EXTRA.INC>\r
       </Build_CCode>\r
-      <var name="OBJECTS" value="${OBJECTS} ${DEST_DIR_OUTPUT}/SecMain.obj" />\r
     </target>\r
+\r
     <target name="sections" />\r
+\r
     <target name="output" >\r
+      <if>\r
+        <available type="file" file="${DEST_DIR_OUTPUT}/AutoGen.h.obj"/>\r
+        <then>\r
+          <var name="SLINK_FLAGS" value="${SLINK_FLAGS} ${DEST_DIR_OUTPUT}/AutoGen.h.obj"/>\r
+        </then>\r
+      </if>\r
       <OnDependency>\r
         <sourcefiles>\r
-          <file list="${OBJECTS}"/>\r
+          <fileset dir="${DEST_DIR_OUTPUT}" includes="${OBJECTS}" />\r
           <file list="${LIBS}"/>\r
         </sourcefiles>\r
         <targetfiles>\r
@@ -147,27 +112,29 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
         </targetfiles>\r
         \r
         <sequential>\r
+          <cc userdefine="on">\r
+            <command type="SLINK" cmd="${SLINK}" family="${SLINK_FAMILY}"\r
+                outputFile="${DEST_DIR_OUTPUT}/SecMainLocal.lib" dpath="${SLINK_DPATH}">\r
+                \r
+              <argument value="${SLINK_FLAGS}"/>\r
+\r
+              <fileset dir="${DEST_DIR_OUTPUT}" includes="${OBJECTS}"/>\r
+            </command>\r
+          </cc>\r
+\r
+          <var name="LIBS" value="${LIBS} ${DEST_DIR_OUTPUT}/SecMainLocal.lib" />\r
+         \r
           <shellscript shell="cmd.exe" tmpsuffix=".cmd" >\r
             <arg line="/q"/>\r
             <arg line="/c"/>\r
             <arg line="call"/>\r
-            "${DLINK}" /LIBPATH:"${env.MSVCDir}\Lib" /LIBPATH:"${env.MSVCDir}\PlatformSdk\Lib" /NOLOGO /SUBSYSTEM:CONSOLE /NODEFAULTLIB /IGNORE:4086 /MAP /OPT:REF /DEBUG /MACHINE:I386 /LTCG Kernel32.lib MSVCRTD.lib Gdi32.lib User32.lib Winmm.lib ${OBJECTS} ${LIBS} /base:0x10000000 /out:${BIN_DIR}\SecMain.exe /pdb:${DEST_DIR_DEBUG}\SecMain.pdb\r
+            PATH ${DLINK_DPATH};%path%\r
+            "${DLINK}" /LIBPATH:"${env.MSVCDir}\Lib" /LIBPATH:"${env.MSVCDir}\PlatformSdk\Lib" /NOLOGO /SUBSYSTEM:CONSOLE /NODEFAULTLIB /IGNORE:4086 /MAP /OPT:REF /DEBUG /MACHINE:I386 /LTCG Kernel32.lib MSVCRTD.lib Gdi32.lib User32.lib Winmm.lib ${LIBS} /base:0x10000000 /out:${BIN_DIR}\SecMain.exe /pdb:${DEST_DIR_DEBUG}\SecMain.pdb\r
           </shellscript>\r
         </sequential>\r
       </OnDependency>\r
-      <!--      \r
-      <cc userdefine="on">\r
-        <command type="LINK">\r
-          <argument value="/LIBPATH:&quot;${env.MSVCDir}\Lib&quot; /LIBPATH:&quot;${env.MSVCDir}\PlatformSdk\Lib&quot;" />\r
-          <argument value="/NOLOGO /SUBSYSTEM:CONSOLE /NODEFAULTLIB /IGNORE:4086 /MAP /OPT:REF /DEBUG /MACHINE:I386 /LTCG" />\r
-          <argument value="Kernel32.lib MsvcRt.lib Gdi32.lib User32.lib Winmm.lib" />\r
-          <argument value="${OBJECTS}" />\r
-          <argument value="${LIBS}" />\r
-          <argument value="/base:0x10000000 /out:${BIN_DIR}\SecMain.exe /pdb:${DEST_DIR_DEBUG}\SecMain.pdb" />\r
-      </command>\r
-    </cc>\r
-    -->\r
   </target>\r
+  \r
   <target name="clean" ></target>\r
 \r
   <target name="cleanAll"></target>\r