You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by gs...@apache.org on 2007/03/01 13:23:28 UTC

svn commit: r513293 - /harmony/enhanced/drlvm/trunk/build/make/targets/build.native.xml

Author: gshimansky
Date: Thu Mar  1 04:23:27 2007
New Revision: 513293

URL: http://svn.apache.org/viewvc?view=rev&rev=513293
Log:
Applied HARMONY-3254 [drlvm][winx64][build] need embed manifest files into DLLs


Modified:
    harmony/enhanced/drlvm/trunk/build/make/targets/build.native.xml

Modified: harmony/enhanced/drlvm/trunk/build/make/targets/build.native.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/build/make/targets/build.native.xml?view=diff&rev=513293&r1=513292&r2=513293
==============================================================================
--- harmony/enhanced/drlvm/trunk/build/make/targets/build.native.xml (original)
+++ harmony/enhanced/drlvm/trunk/build/make/targets/build.native.xml Thu Mar  1 04:23:27 2007
@@ -24,7 +24,8 @@
                      build.native.c,
                      build.native.cpp,
                      build.native.asm,
-                     build.native.link" />
+                     build.native.link,
+                     build.native.manifest" />
     <target name="build.native.init" depends="init_component">
         <echo message="## Building native of '${component}'" />
 
@@ -214,11 +215,30 @@
             outfile="${lib.out.dir}/${libname}"
             outtype="${outtype}"  subsystem="console">
             <select os="win">
-                <linkerarg value="/pdb:${build.dir}/_bin/${libname}.pdb" />
-                <linkerarg value="/debug" />
+                <linkerarg value="/pdb:${build.dir}/_bin/${libname}.pdb" if="not.static" />
+                <linkerarg value="/debug" if="not.static" />
             </select>
             <linker refid="linker" />
             <fileset refid="link.fileset" />
         </cc>
+        <condition property="add.manifest">
+            <and>
+                <os family="windows" />
+                <isset property="not.static" />
+                <available file="${lib.out.dir}/${libname}${shlib.suffix}${manifest.suffix}" />
+            </and>
+        </condition>
+    </target>
+
+    <target name="build.native.manifest"
+        depends="build.native.link"
+        if="add.manifest">
+        <echo message="Adding manifest to ${lib.out.dir}/${libname}${shlib.suffix}" />
+        <exec executable="mt.exe">
+            <arg value="-nologo" />
+            <arg value="-manifest" />
+            <arg value="${lib.out.dir}/${libname}${shlib.suffix}${manifest.suffix}" />
+            <arg value="-outputresource:${lib.out.dir}/${libname}${shlib.suffix};#2" />
+        </exec>
     </target>
 </project>