aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenneth Russel <[email protected]>2009-06-17 03:42:28 +0000
committerKenneth Russel <[email protected]>2009-06-17 03:42:28 +0000
commit1ce689ce9383ac55c961f82903d60d1cc7b89246 (patch)
tree0faa128c7128ad3f1e9034e8ae3e48da909d8a25
parentdf341ba65d01a9562b45c77768efa37cc4733084 (diff)
Steps toward revamping the dist build. Changed individual builds to
produce the Java Web Start native library jar file, [project]-natives-[os.and-arch].jar, and the top-level build to produce the developer binary archive, jogl-[version]-[os.and.arch].zip, as well as the source archive, jogl-[version]-src.zip. (This was only possible thanks to Sven, who made all of the platforms' Java-level binaries identical.) More work coming to simplify the dist target and redo the associated nightly build scripts. Minor documentation updates; more needed. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1970 232f8b59-042b-4e1e-8c03-345bb8c30851
-rwxr-xr-xCOPYRIGHT.txt2
-rwxr-xr-xLICENSE.txt2
-rw-r--r--doc/userguide/index.html25
-rwxr-xr-xmake/README-zip-bundles.txt6
-rw-r--r--make/build-jogl.xml10
-rw-r--r--make/build-nativewindow.xml6
-rw-r--r--make/build-newt.xml6
-rw-r--r--make/build.xml82
8 files changed, 123 insertions, 16 deletions
diff --git a/COPYRIGHT.txt b/COPYRIGHT.txt
index 360d3748b..11a24e3d7 100755
--- a/COPYRIGHT.txt
+++ b/COPYRIGHT.txt
@@ -1,5 +1,5 @@
-Copyright 2007 Sun Microsystems, Inc., 4150 Network
+Copyright 2003-2009 Sun Microsystems, Inc., 4150 Network
Circle, Santa Clara, California 95054, U.S.A. All rights
reserved.
diff --git a/LICENSE.txt b/LICENSE.txt
index cd35e8827..4fadc202c 100755
--- a/LICENSE.txt
+++ b/LICENSE.txt
@@ -1,6 +1,6 @@
JOGL is released under the BSD license. The full license terms follow:
- Copyright (c) 2003-2007 Sun Microsystems, Inc. All Rights Reserved.
+ Copyright (c) 2003-2009 Sun Microsystems, Inc. All Rights Reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
diff --git a/doc/userguide/index.html b/doc/userguide/index.html
index ed314f557..233f6090a 100644
--- a/doc/userguide/index.html
+++ b/doc/userguide/index.html
@@ -117,9 +117,10 @@ bundles.
If you are developing a new application which uses JOGL, download the
zip archive for your platform (for example.,
jogl-[version]-windows-i586.zip) and unzip it. Modify your CLASSPATH
-environment variable to include the full paths to jogl.jar and
-gluegen-rt.jar; for example,
-".;C:\Some\Other\Package\foo.jar;C:\Users\myhome\jogl-[version]-windows-i586\lib\jogl.jar;C:\Users\myhome\jogl-[version]-windows-i586\lib\gluegen-rt.jar".
+environment variable to include the full paths to jogl.all.jar,
+nativewindow.all.jar, gluegen-rt.jar, and optionally newt.all.jar; for
+example,
+".;C:\Some\Other\Package\foo.jar;C:\Users\myhome\jogl-[version]-windows-i586\lib\jogl.all.jar;C:\Users\myhome\jogl-[version]-windows-i586\lib\nativewindow.all.jar;C:\Users\myhome\jogl-[version]-windows-i586\lib\gluegen-rt.jar;C:\Users\myhome\jogl-[version]-windows-i586\lib\newt.all.jar".
(If you did not previously set the CLASSPATH environment variable, you
may want to make sure that ".", the current directory, is on your new
CLASSPATH.) Modify your PATH environment variable (Windows),
@@ -136,10 +137,18 @@ libraries to their current project.
</P>
<P>
-Dropping the JOGL jar and native library into the extension directory
-of the JRE is <b>strongly discouraged</b>. Doing so can cause
-conflicts with third-party applications launched via Java Web Start,
-and causes confusion later when upgrading the distribution.
+Note that the per-platform zip archives contain many more jar files
+than just the three or four mentioned above. The additional jars
+illustrate how JOGL may be partitioned to achieve a smaller deployment
+size, in particular on smaller devices.
+
+</P>
+<P>
+
+Dropping the JOGL jars and native libraries into the extension
+directory of the JRE is <b>strongly discouraged</b>. Doing so will
+cause conflicts with third-party applications launched via Java Web
+Start, and causes confusion later when upgrading the distribution.
</P>
<P>
@@ -667,7 +676,7 @@ threading model, the old threading model can be used by specifying the
system property <CODE>-Djogl.1thread=auto</CODE> or
<CODE>-Djogl.1thread=false</CODE>. The "auto" setting is equivalent to
the behavior in 1.1 b09 and before, where on ATI cards the
-single-threaded mode would be used. The "false' setting is equivalent
+single-threaded mode would be used. The "false" setting is equivalent
to disabling the single-threaded mode. "true" is now the default
setting.
diff --git a/make/README-zip-bundles.txt b/make/README-zip-bundles.txt
index 2e5899990..3fc9424b9 100755
--- a/make/README-zip-bundles.txt
+++ b/make/README-zip-bundles.txt
@@ -3,7 +3,7 @@ Java (TM) Binding for the OpenGL (r) API, version @VERSION@
-------------------------------------------------------
This software is licensed by Sun Microsystems, as specified
-in the LICENSE-JOGL-@[email protected] file. You must use this software
+in the LICENSE.txt file. You must use this software
in accordance with the terms under which the code is licensed.
@@ -16,7 +16,7 @@ JOGL release for your target platform, you will see the
following files in the top directory:
COPYRIGHT.txt
- LICENSE-JOGL-@[email protected]
+ LICENSE.txt
Userguide.html
README.txt README file (you are reading it now)
@@ -42,4 +42,4 @@ JOGL source code and project information can be found at:
Numerous answers to common questions can be found on the JOGL
forum:
- http://www.javagaming.org/forums/index.php?board=25.0
+ http://www.javagaming.org/index.php/board,25.0.html
diff --git a/make/build-jogl.xml b/make/build-jogl.xml
index 7fbf265eb..c88bbddf7 100644
--- a/make/build-jogl.xml
+++ b/make/build-jogl.xml
@@ -1620,6 +1620,12 @@
<target name="c.build.jogl" depends="c.configure,c.build.jogl.prepare,c.build.jogl.gl2es12,c.build.jogl.gl2,c.build.jogl.es2,c.build.jogl.es1,c.build.jogl.cg">
<antcall target="c.manifest" inheritRefs="true" />
+ <!-- Create the Java Web Start jar file for the built native code -->
+ <jar destfile="${build}/jogl-natives-${os.and.arch}.jar">
+ <fileset dir="${obj}">
+ <include name="*.${native.library.suffix}" />
+ </fileset>
+ </jar>
</target>
<!-- ================================================================== -->
@@ -2146,14 +2152,14 @@
</target>
<target name="setup-version-RI" if="jogl.ri">
- <property name="tmp.version" value="${base_version}" />
+ <property name="tmp.version" value="${jogl_base_version}" />
</target>
<target name="setup-version-non-RI" unless="jogl.ri">
<tstamp>
<format property="timestamp" pattern="yyyyMMdd"/>
</tstamp>
- <property name="tmp.version" value="${base_version}-pre-${timestamp}" />
+ <property name="tmp.version" value="${jogl_base_version}-pre-${timestamp}" />
</target>
<target name="dist" depends="dist.dir.check,dist.check.windows,dist.check.windows-amd64,dist.check.linux,dist.check.linux-amd64,dist.check.macosx,dist.check.macosxfat,dist.check.solsparc,dist.check.solsparcv9,dist.check.solx86,dist.check.solamd64,setup-version-RI,setup-version-non-RI">
diff --git a/make/build-nativewindow.xml b/make/build-nativewindow.xml
index d74ed7e03..f64a62694 100644
--- a/make/build-nativewindow.xml
+++ b/make/build-nativewindow.xml
@@ -775,6 +775,12 @@
<target name="c.build.nativewindow" depends="c.configure,c.build.nativewindow.windowlib,c.build.nativewindow.awt">
<antcall target="c.fixup.jawt.version.macosx" inheritrefs="true" />
<antcall target="c.manifest" inheritRefs="true" />
+ <!-- Create the Java Web Start jar file for the built native code -->
+ <jar destfile="${build}/nativewindow-natives-${os.and.arch}.jar">
+ <fileset dir="${obj}">
+ <include name="*.${native.library.suffix}" />
+ </fileset>
+ </jar>
</target>
<!-- ================================================================== -->
diff --git a/make/build-newt.xml b/make/build-newt.xml
index 0ca802f53..380df11d6 100644
--- a/make/build-newt.xml
+++ b/make/build-newt.xml
@@ -521,6 +521,12 @@
<target name="c.build.newt" depends="c.configure,c.build.newt.prepare,c.build.newt.windowlib">
<antcall target="c.manifest" inheritRefs="true" />
+ <!-- Create the Java Web Start jar file for the built native code -->
+ <jar destfile="${build}/newt-natives-${os.and.arch}.jar">
+ <fileset dir="${obj}">
+ <include name="*.${native.library.suffix}" />
+ </fileset>
+ </jar>
</target>
<!-- ================================================================== -->
diff --git a/make/build.xml b/make/build.xml
index 24bbec09a..0bf0d97a7 100644
--- a/make/build.xml
+++ b/make/build.xml
@@ -3,6 +3,10 @@
<import file="versions.xml" />
+ <!-- Pull in GlueGen cpptasks build file to pick up os.and.arch -->
+ <property name="gluegen.root" value="../../gluegen" />
+ <import file="${gluegen.root}/make/gluegen-cpptasks.xml" />
+
<target name="init">
<property name="project.root" value=".." />
<condition property="rootrel.build" value="build">
@@ -72,7 +76,83 @@
<ant antfile="${newt.build.xml}" dir="${newt.make.dir}" target="all" inheritAll="false"/>
</target>
- <target name="all" description="Build nativewindow, jogl and newt projects" depends="init,build.nativewindow,build.jogl,build.newt" />
+ <!-- ================================================================== -->
+ <!--
+ - Build the per-platform binary zip archive for developers.
+ - This must be called after all of the build targets complete.
+ -->
+
+ <target name="setup-version-RI" if="jogl.ri">
+ <property name="tmp.version" value="${jogl_base_version}" />
+ </target>
+
+ <target name="setup-version-non-RI" unless="jogl.ri">
+ <tstamp>
+ <format property="timestamp" pattern="yyyyMMdd"/>
+ </tstamp>
+ <property name="tmp.version" value="${jogl_base_version}-pre-${timestamp}" />
+ </target>
+
+ <target name="developer-zip-archive" depends="gluegen.cpptasks.detect.os,setup-version-RI,setup-version-non-RI">
+ <property name="archive.name" value="jogl-${tmp.version}-${os.and.arch}" />
+ <property name="archive.dir" value="${build}/${archive.name}" />
+ <delete includeEmptyDirs="true" quiet="true" dir="${archive.dir}" failonerror="false" />
+ <mkdir dir="${archive.dir}" />
+ <!-- Copy the appropriate pieces into the archive directory -->
+ <copy file="../CHANGELOG.txt" todir="${archive.dir}" />
+ <copy file="../COPYRIGHT.txt" todir="${archive.dir}" />
+ <copy file="../LICENSE.txt" todir="${archive.dir}" />
+ <copy file="../doc/userguide/index.html" tofile="${archive.dir}/Userguide.html" />
+ <copy file="README-zip-bundles.txt"
+ tofile="${archive.dir}/README.txt"
+ overwrite="true">
+ <filterset>
+ <filter token="VERSION" value="${tmp.version}"/>
+ </filterset>
+ </copy>
+ <mkdir dir="${archive.dir}/lib" />
+ <copy file="${project.root}/../gluegen/${rootrel.build}/gluegen-rt.jar" todir="${archive.dir}/lib" />
+ <copy todir="${archive.dir}/lib">
+ <fileset dir="${project.root}/../gluegen/${rootrel.build}" includes="gluegen-rt.jar" />
+ <fileset dir="${project.root}/../gluegen/${rootrel.build}/obj" includes="*.${native.library.suffix}" />
+ <fileset dir="${build}/jogl" includes="*.jar" excludes="*natives*.jar" />
+ <fileset dir="${build}/jogl/obj" includes="*.${native.library.suffix}" />
+ <fileset dir="${build}/nativewindow" includes="*.jar" excludes="*natives*.jar" />
+ <fileset dir="${build}/nativewindow/obj" includes="*.${native.library.suffix}" />
+ <fileset dir="${build}/newt" includes="*.jar" excludes="*natives*.jar" />
+ <fileset dir="${build}/newt/obj" includes="*.${native.library.suffix}" />
+ </copy>
+ <zip destfile="${build}/${archive.name}.zip"
+ basedir="${build}"
+ includes="${archive.name}/**" />
+ <!-- Clean up after ourselves -->
+ <delete includeEmptyDirs="true" quiet="true" dir="${archive.dir}" failonerror="false" />
+ </target>
+
+ <!-- ================================================================== -->
+ <!--
+ - Build the source archive for developers.
+ - This must be called after all of the build targets complete.
+ -->
+
+ <target name="source-archive" depends="setup-version-RI,setup-version-non-RI">
+ <zip destfile="${build}/jogl-${tmp.version}-src.zip"
+ basedir="${project.root}/.."
+ excludes="gluegen/build/**,gluegen/build-temp/**,jogl/build/**,jogl/build-temp/**"
+ includes="gluegen/**, jogl/**" />
+ <!-- Now add in certain portions of the generated source code for developers -->
+ <zip update="true"
+ destfile="${build}/jogl-${tmp.version}-src.zip"
+ basedir="${project.root}/.."
+ includes="jogl/build/jogl/gensrc/classes/javax/media/opengl/**" />
+ </target>
+
+ <!-- ================================================================== -->
+ <!--
+ - Main build target.
+ -->
+
+ <target name="all" description="Build nativewindow, jogl and newt projects" depends="init,build.nativewindow,build.jogl,build.newt,developer-zip-archive,source-archive" />
<target name="clean" depends="init">
<ant antfile="${nativewindow.build.xml}" dir="${nativewindow.make.dir}" target="clean" inheritAll="false"/>