aboutsummaryrefslogtreecommitdiffstats
path: root/make/gluegen-cpptasks.xml
diff options
context:
space:
mode:
authorKenneth Russel <[email protected]>2009-06-13 00:59:10 +0000
committerKenneth Russel <[email protected]>2009-06-13 00:59:10 +0000
commitf3d18360dc11a0efc13f30a69753a286afb944c0 (patch)
tree860debc46d506b1ee97a190238c211652893d6f3 /make/gluegen-cpptasks.xml
parent08e2574de78f858c1a4656521df9fe8cc2900a2c (diff)
Fixed build problems with VC9 where manifests were not installed
correctly into DLLs; updated documentation git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@144 a78bb65f-1512-4460-ba86-f6dc96a7bf27
Diffstat (limited to 'make/gluegen-cpptasks.xml')
-rwxr-xr-xmake/gluegen-cpptasks.xml25
1 files changed, 24 insertions, 1 deletions
diff --git a/make/gluegen-cpptasks.xml b/make/gluegen-cpptasks.xml
index 48a77af..b64abfc 100755
--- a/make/gluegen-cpptasks.xml
+++ b/make/gluegen-cpptasks.xml
@@ -86,7 +86,7 @@
- isVC7
- isVC8
- isVC8_X64
- - isVC8Family (= isVC8 || isVC8_X64)
+ - isVC8Family (= isVC8 || isVC8_X64 || isVC9) (requires manifest in DLL)
- isVC9
- isMingW
-
@@ -119,6 +119,11 @@
- linker.cfg.win32.msvc
- linker.cfg.macosx
- linker.cfg.hpux
+ -
+ - This project file also defines a macrodef called "msvc.manifest"
+ - which helps insert manifests into DLLs compiled with MSVC 8.0 and
+ - later. Example usage is:
+ - &lt;msvc.manifest objdir="${obj}" dllname="gluegen-rt" /&gt;
-->
<project name="GlueGen-cpptasks" basedir=".">
<!-- import cpptasks -->
@@ -398,6 +403,7 @@
<or>
<istrue value="${isVC8}" />
<istrue value="${isVC8_X64}" />
+ <istrue value="${isVC9}" />
</or>
</condition>
<condition property="isMingW">
@@ -421,6 +427,7 @@
<echo message="VC6=${isVC6}" />
<echo message="VC7=${isVC7}" />
<echo message="VC8=${isVC8}" />
+ <echo message="VC8_X64=${isVC8_X64}" />
<echo message="VC9=${isVC9}" />
<echo message="MingW=${isMingW}" />
@@ -729,4 +736,20 @@
<target name="gluegen.cpptasks.declare.compiler" depends="gluegen.cpptasks.declare.compiler.win32,gluegen.cpptasks.declare.compiler.linux,gluegen.cpptasks.declare.compiler.solaris,gluegen.cpptasks.declare.compiler.macosx,gluegen.cpptasks.declare.compiler.freebsd,gluegen.cpptasks.declare.compiler.hpux" unless="gluegen.compiler.present"/>
<target name="gluegen.cpptasks.setup.compiler" depends="gluegen.cpptasks.detect.compiler,gluegen.cpptasks.configure.compiler,gluegen.cpptasks.declare.compiler" />
+
+ <!-- ================================================================== -->
+ <!--
+ - Helper macrodef for installing manifest in generated DLLs, needed for VC8 and later
+ -->
+ <macrodef name="msvc.manifest">
+ <attribute name="objdir" />
+ <attribute name="dllname" />
+ <sequential>
+ <exec executable="mt">
+ <arg value="-manifest"/>
+ <arg value="@{objdir}/@{dllname}.dll.manifest"/>
+ <arg value="-outputresource:@{objdir}/@{dllname}.dll;#2"/>
+ </exec>
+ </sequential>
+ </macrodef>
</project>