aboutsummaryrefslogtreecommitdiffstats
path: root/src/native/ogl/build-windows-amd64-vc.xml
blob: 91d038b629ff8af920eff15e9b40e3e02f07b0ae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<?xml version="1.0"?>

<!--
/*
 * $RCSfile$
 *
 * Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
 *
 * Use is subject to license terms.
 *
 * $Revision$
 * $Date$
 * $State$
 */
 -->

<!--
/* 1. define the following property to change the location of the CG library:
 *
 *    ant -Dcg.home="path-to-cg-installation"
 */
 -->

<!-- Ant file for building native  ogl renderer files for Windows-amd64 -->
<project name="Java 3D" default="compile">



  <target name="init" depends="init-cg,init-nocg">
    <!-- Create the build directories for win32 -->
    <mkdir dir="${build}/${platform}/${bldType}/native/ogl/objs"/>
    <mkdir dir="${build}/${platform}/${bldType}/bin"/>
    
    <echo message="Executing 64 bit native renderer build [${bldType}]"/>

    <property name="javaInclude"
     location="${java.home}/../include"/>

    <property name="javaWin32Include"
     location="${java.home}/../include/win32"/>

    <property name="oglsrc"     location="${src}/native/ogl"/>
  </target>

  <target name="init-cg" if="build.cg">
    <property name="cflags.cg"  value="-DCOMPILE_CG_SHADERS=1"/>
    <property name="cg.home" location="c:/Program Files/NVIDIA Corporation/Cg"/>
  </target>

  <target name="init-nocg" unless="build.cg">
    <property name="cflags.cg"  value=""/>
    <property name="cg.home" value=""/>
  </target>

  <target name="compile-ogl">
    <!-- Compile the c source files-->
    <exec dir="${build}/${platform}/${bldType}/native/ogl/objs" executable="cl">
	<arg line="-I&quot;${oglsrc}&quot; -I&quot;${javaInclude}&quot; -I&quot;${javaWin32Include}&quot; -I&quot;${javahCoreTarget}&quot; -I&quot;${cg.home}\include&quot; -nologo -MT -W3 -EHsc -wd4996 -Ox -FD ${bldFlag} ${cflags.cg} -c &quot;${oglsrc}/DrawingSurfaceObjectAWT.c&quot; &quot;${oglsrc}/Canvas3D.c&quot; &quot;${oglsrc}/GraphicsContext3D.c&quot; &quot;${oglsrc}/NativeScreenInfo.c&quot; &quot;${oglsrc}/NativeConfigTemplate3D.c&quot; &quot;${oglsrc}/MasterControl.c&quot; &quot;${oglsrc}/GeometryArrayRetained.c&quot; &quot;${oglsrc}/Attributes.c&quot; &quot;${oglsrc}/CgShaderProgram.c&quot; &quot;${oglsrc}/GLSLShaderProgram.c&quot; &quot;${oglsrc}/Lights.c&quot;"/>
    </exec>

    <!-- Create the library file-->
    <exec dir="${build}/${platform}/${bldType}/native/ogl/objs" executable="link">
	<arg line="-nologo -dll -subsystem:windows -pdb:none  -out:j3dcore-ogl.dll DrawingSurfaceObjectAWT.obj  Canvas3D.obj  GraphicsContext3D.obj  NativeScreenInfo.obj  NativeConfigTemplate3D.obj  MasterControl.obj  GeometryArrayRetained.obj  Attributes.obj  CgShaderProgram.obj  GLSLShaderProgram.obj  Lights.obj kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib  shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib opengl32.lib delayimp.lib -DELAYLOAD:jawt.dll -LIBPATH:&quot;${java.home}\..\lib&quot; jawt.lib"/>
    </exec>

  </target>


  <target name="compile-ogl-cg" if="build.cg">
    <!-- Compile the c source files-->
    <exec dir="${build}/${platform}/${bldType}/native/ogl/objs" executable="cl">
	<arg line="-I&quot;${oglsrc}&quot; -I&quot;${javaInclude}&quot; -I&quot;${javaWin32Include}&quot; -I&quot;${javahCoreTarget}&quot; -I&quot;${cg.home}\include&quot; -nologo -MT -W3 -EHsc -Ox -FD ${bldFlag} ${cflags.cg} -c &quot;${oglsrc}/CgWrapper.c&quot;"/>
    </exec>

    <!-- Create the library file-->
    <exec dir="${build}/${platform}/${bldType}/native/ogl/objs" executable="link">
	<arg line="-nologo -dll -subsystem:windows -pdb:none -machine:I386 -out:j3dcore-ogl-cg.dll CgWrapper.obj  kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib  shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib opengl32.lib delayimp.lib -LIBPATH:&quot;${cg.home}\lib&quot; cg.lib cgGL.lib"/>
    </exec>

  </target>



  <target name="compile" depends="init,compile-ogl,compile-ogl-cg">

    <!-- Copy the  library file -->
    <copy todir="${build}/${platform}/${bldType}/bin">
          <fileset dir="${build}/${platform}/${bldType}/native/ogl/objs"
                      includes="j3dcore-ogl*.dll"
          />
    </copy>

  </target>

  <target name="dist">
    <!-- Create the distribution directory -->
    <mkdir dir="${dist}/${platform}/bin"/>

    <!-- Copy the library files -->
    <copy todir="${dist}/${platform}/bin">
          <fileset dir="${build}/${platform}/opt/bin"
                      includes="j3dcore-ogl*.dll"
          />
    </copy>

  </target>

</project>