blob: 4de9a8c6f7428bbb27c45fb8bd14547ee4db54cd (
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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
<?xml version="1.0" encoding="UTF-8"?>
<!--
- Ant build for the JOGL demos. This build has been tested with ANT 1.5.3.
-
- In order for this build to succeed the resulting jar files from this build
- (jogl-demos.jar, jogl-demos-data.jar, jogl-demos-util.jar) must not be on
- the CLASSPATH.
-
- This build requires that the jogl project has been checked out into a sibling
- directory to the jogl-demos top-level directory and that the jogl.jar has been
- built into its build directory.
-->
<project name="JOGL.demos" default="all">
<!--
- Make sure that jogl-demos.jar is not on the CLASSPATH; this can
- cause builds to fail since if this Java process has the jar file
- open we can not overwrite it.
-->
<target name="test.for.jogl.demos.jar">
<available property="jogl.demos.jar.on.class.path" classname="demos.gears.Gears" />
</target>
<target name="java.class.path.validate" depends="test.for.jogl.demos.jar" if="jogl.demos.jar.on.class.path">
<fail>
******************************************************************
** Your CLASSPATH environment variable appears to be set (some **
** JOGL demos' classes are currently visible to the build.) **
** This can cause the build to fail. Please unset your **
** CLASSPATH variable and restart the build. **
******************************************************************
</fail>
</target>
<target name="setup.cg.excludes" unless="jogl.cg">
<property name="jogl.cg.excludes" value="demos/cg/**,demos/hdr/CgPipeline.java,demos/hdr/shaders/cg/**" />
</target>
<target name="skip.cg.excludes" if="jogl.cg">
<property name="jogl.cg.excludes" value="" />
</target>
<target name="init" depends="java.class.path.validate,setup.cg.excludes,skip.cg.excludes">
<property name="jogl.jar" value="../../jogl/build/jogl.jar" />
<property name="classes" value="../build/classes" />
<property name="src" value="../src" />
<property name="javadoc" value="../javadoc" />
<property name="javadoc.link" value="http://java.sun.com/j2se/1.4.2/docs/api/" />
<property name="javadoc.link.jogl" value="../../jogl/javadoc-public/" />
<property name="jogl.demos.jar" value="../build/jogl-demos.jar" />
<property name="jogl.demos.util.jar" value="../build/jogl-demos-util.jar" />
<property name="jogl.demos.data.jar" value="../build/jogl-demos-data.jar" />
<property name="jogl.demos.src.zip" value="../build/jogl-demos-src.zip" />
</target>
<target name="all" depends="init">
<mkdir dir="${classes}" />
<path id="jogl.classpath">
<pathelement location="${jogl.jar}" />
</path>
<javac destdir="${classes}" excludes="${jogl.cg.excludes}" source="1.4" debug="true" debuglevel="source,lines">
<src path="${src}" />
<classpath refid="jogl.classpath" />
</javac>
<jar destfile="${jogl.demos.jar}">
<fileset dir="${classes}">
<exclude name="gleem/**" />
<exclude name="demos/util/**" />
</fileset>
<fileset dir="${src}">
<include name="demos/cg/**/*.cg" />
</fileset>
<fileset dir="${src}">
<include name="demos/hdr/shaders/**/*.cg" />
<include name="demos/hdr/shaders/**/*.arbvp1" />
<include name="demos/hdr/shaders/**/*.arbfp1" />
</fileset>
<!-- Avoid requiring dependence on huge jogl-demos-data.jar for
particle engine demo -->
<fileset dir="${src}">
<include name="demos/particles/engine/images/*.jpg" />
</fileset>
</jar>
<jar destfile="${jogl.demos.util.jar}">
<fileset dir="${classes}">
<include name="gleem/**" />
<include name="demos/util/**" />
</fileset>
</jar>
<jar destfile="${jogl.demos.data.jar}">
<fileset dir="${src}">
<include name="demos/data/**" />
</fileset>
</jar>
<!-- Build a source archive as well -->
<delete file="${jogl.demos.src.zip}" />
<zip destfile="${jogl.demos.src.zip}"
basedir="../.."
includes="jogl-demos/doc/**,jogl-demos/make/**,jogl-demos/src/**"
excludes="**/*.class,**/*~"
/>
</target>
<target name="javadoc" depends="init">
<mkdir dir="${javadoc}" />
<javadoc destdir="${javadoc}" windowtitle="JOGL Demos"
source="1.4">
<packageset dir="${src}">
<exclude name="demos/cg/**" />
</packageset>
<link href="${javadoc.link}" />
<!-- FIXME: this doesn't work -->
<link href="${javadoc.link.jogl}" />
</javadoc>
</target>
<target name="clean" depends="init">
<delete includeEmptyDirs="true" quiet="true">
<fileset dir="../build" />
<fileset dir="../javadoc" />
</delete>
</target>
</project>
|