summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCurtis Rueden <[email protected]>2015-02-24 11:44:41 -0600
committerCurtis Rueden <[email protected]>2015-11-24 20:07:41 -0600
commit6a08a07659620bcd8deca498afc4de20019cf0a3 (patch)
treef6deab75b9e1f22a2cb7b79aa222fbde9258ed5f
parent41fddda1a4f430e45bef0154e1fdfe5671025f1e (diff)
Build the project using Maven
This introduces a pom.xml which tells Maven how the project is structured. To avoid a boatload of disruptive renames, we override some of Maven's default settings. It also removes the Ant build files to avoid maintaining multiple build systems.
-rw-r--r--.gitignore5
-rw-r--r--README-FIRST.txt2
-rw-r--r--README-build.html88
-rw-r--r--build.xml83
-rw-r--r--pom.xml104
-rw-r--r--src/VECMATH.MF17
6 files changed, 108 insertions, 191 deletions
diff --git a/.gitignore b/.gitignore
index 84c048a..10d81e8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,4 @@
-/build/
+/.classpath
+/.project
+/.settings/
+/target/
diff --git a/README-FIRST.txt b/README-FIRST.txt
index e89e2fe..af5cebb 100644
--- a/README-FIRST.txt
+++ b/README-FIRST.txt
@@ -6,8 +6,6 @@ The copyright notice for this project is in COPYRIGHT.txt
The source code license information for this project is in LICENSE.txt
-Instructions for building this project are in README-build.html
-
Note that the source code in this directory is untested and presumed
incompatible with the Java 3D(TM) API specification. You must only use
this code in accordance with the terms under which the code is
diff --git a/README-build.html b/README-build.html
deleted file mode 100644
index 81e4022..0000000
--- a/README-build.html
+++ /dev/null
@@ -1,88 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<!--
-/*
- * $RCSfile$
- *
- * Copyright (c) 2007 Sun Microsystems, Inc. All rights reserved.
- *
- * Use is subject to license terms.
- *
- * $Revision$
- * $Date$
- * $State$
- */
- -->
- <meta content="text/html; charset=ISO-8859-1"
- http-equiv="content-type">
- <title>README-build: build instructions for the vecmath project</title>
-</head>
-<body>
-<h3><span style="text-decoration: underline;">Building
-the Vecmath Package</span></h3>
-<p>To
-build the vecmath package, you must first checkout the <a
- href="http://vecmath.dev.java.net/">vecmath</a>
-svn
-repository on java.net. For example, run
-the svn checkout command as follows:<br>
-</p>
-<ul>
- <code>cd &lt;j3d-root-dir&gt;</code><br>
- <code>svn checkout https://vecmath.dev.java.net/svn/vecmath/branches/dev-1_6 vecmath</code>
-</ul>
-<p></p>
-<p>This top-level directory must be named "vecmath".
-</p>
-<h3><span style="text-decoration: underline;">System Requirements</span>
-</h3>
-<p>Vecmath is 100% Java, so any operating environment that supports
-J2SE should work. We have built vecmath on the following
-operating environments:<br>
-</p>
-<ul>
- <li>Solaris: Sparc (Ultra60 or better) running Solaris 9</li>
- <li>Linux: i386/i586 running SuSE 9 or RedHat 9.0</li>
- <li>Windows: Windows/XP (Windows
-2000 should work, but is untested)<br>
- </li>
-</ul>
-<p>The following software must be installed:</p>
-<ul>
- <li><a href="http://java.sun.com/j2se">JDK 1.5.0</a> <br>
- </li>
- <li><a href="http://jakarta.apache.org/ant">Apache Ant 1.6.1</a><br>
- </li>
-</ul>
-<h3><span style="text-decoration: underline;">Building
-Vecmath</span><span
- style="font-weight: bold; text-decoration: underline;"></span></h3>
-<h3><span style="font-weight: bold; text-decoration: underline;"></span></h3>
-<span style="font-weight: bold; text-decoration: underline;"></span>
-<p><span style="text-decoration: underline;"><span
- style="font-weight: bold;"></span></span>Before you start building,
-please check that your PATH must
-include the
-following directories:</p>
-<ul>
- <li>&lt;ant-root-dir&gt;/bin</li>
- <li>&lt;jdk-root_dir&gt;/bin</li>
-</ul>
-<p>The default target, jar-opt, creates an optimized jar files.<br>
-</p>
-<p>Steps:
-</p>
-<ul>
- <code> cd &lt;j3d-root-dir&gt;/vecmath<br>
-ant</code>
-</ul>
-<p>This will build the <code>javax.vecmath</code> package, which will
-be put
-in the <code>vecmath/build/opt</code> sub-directory.<br>
-</p>
-<p>To see other targets that are available, type "ant
--projecthelp". Note that ant must be run from the top-level
-directory.</p>
-</body>
-</html>
diff --git a/build.xml b/build.xml
deleted file mode 100644
index f33f185..0000000
--- a/build.xml
+++ /dev/null
@@ -1,83 +0,0 @@
-<?xml version="1.0"?>
-
-<project name="vecmath" basedir="." default="all">
-
- <property name="src.dir" location="src"/>
- <property name="build.dir" location="build"/>
- <property name="gen.dir" location="${build.dir}/gen"/>
- <property name="class.dir" location="${build.dir}/classes"/>
- <property name="javadoc.dir" location="${build.dir}/javadoc"/>
-
- <property name="version_base" value="1.6.0"/>
- <property name="build.spec.title" value="3D Vector Math Package"/>
- <property name="build.spec.vendor" value=""/>
- <property name="build.impl.title" value="3D Vector Math Package"/>
- <property name="build.impl.vendor" value=""/>
- <property name="build.impl.vendor.id" value=""/>
-
- <target name="clean">
- <delete dir="${build.dir}"/>
- </target>
-
- <target name="gen">
- <mkdir dir="${gen.dir}"/>
- <copy todir="${gen.dir}" overwrite="true">
- <fileset dir="${src.dir}" includes="VECMATH.MF"/>
- <filterset>
- <filter token="VERSION_BASE" value="${version_base}"/>
- <filter token="SPEC_TITLE" value="${build.spec.title}"/>
- <filter token="SPEC_VENDOR" value="${build.spec.vendor}"/>
- <filter token="IMPL_TITLE" value="${build.impl.title}"/>
- <filter token="IMPL_VENDOR" value="${build.impl.vendor}"/>
- <filter token="IMPL_VENDOR_ID" value="${build.impl.vendor.id}"/>
- </filterset>
- </copy>
-
- <copy todir="${class.dir}/javax">
- <fileset dir="." includes="COPYRIGHT.txt"/>
- <fileset dir="." includes="LICENSE.txt"/>
- </copy>
- </target>
-
- <target name="compile" depends="gen">
- <mkdir dir="${class.dir}"/>
-
- <javac srcdir="${src.dir}" destdir="${class.dir}"
- source="1.5" target="1.5"
- debug="true"
- debuglevel="lines,source"
- deprecation="on"
- includeantruntime="false"
- />
-
- <copy todir="${class.dir}">
- <fileset dir="${src.dir}" includes="**/*.properties"/>
- </copy>
- </target>
-
- <target name="jar" depends="compile">
- <jar jarfile="${build.dir}/jars/vecmath.jar" manifest="${gen.dir}/VECMATH.MF"
- compress="false" update="yes">
- <fileset dir="${class.dir}"/>
- </jar>
-
- <zip destfile="${build.dir}/jars/vecmath-src.zip">
- <fileset dir="${src.dir}" includes="**/*.java"/>
- <fileset dir="." includes="COPYRIGHT.txt"/>
- <fileset dir="." includes="LICENSE.txt"/>
- </zip>
-
- </target>
-
- <target name="docs" depends="gen">
- <mkdir dir="${javadoc.dir}"/>
-
- <javadoc sourcepath="${src.dir}"
- packagenames="javax.vecmath.*"
- destdir="${javadoc.dir}"
- windowtitle="Vecmath ${version_base}">
- </javadoc>
- </target>
-
- <target name="all" depends="jar,docs" />
-</project>
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..2b0f0e3
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.jogamp.java3d</groupId>
+ <artifactId>vecmath</artifactId>
+ <version>1.6.0-SNAPSHOT</version>
+
+ <licenses>
+ <license>
+ <name>GPLv2 with Classpath exception</name>
+ <url>http://www.gnu.org/licenses/gpl-2.0.txt</url>
+ <distribution>repo</distribution>
+ </license>
+ </licenses>
+
+ <developers>
+ <developer>
+ <id>gouessej</id>
+ <name>Julien Gouesse</name>
+ <url>https://github.com/gouessej</url>
+ <organization>JogAmp</organization>
+ <organizationUrl>http://jogamp.org/</organizationUrl>
+ </developer>
+ <developer>
+ <id>hharrison</id>
+ <name>Harvey Harrison</name>
+ <url>https://github.com/hharrison</url>
+ <organization>JogAmp</organization>
+ <organizationUrl>http://jogamp.org/</organizationUrl>
+ </developer>
+ </developers>
+ <contributors>
+ <contributor>
+ <name>Kevin Rushforth</name>
+ <url>https://www.linkedin.com/in/kevin-rushforth-8ba3b43</url>
+ <organization>Oracle Corporation</organization>
+ <organizationUrl>http://oracle.com/</organizationUrl>
+ </contributor>
+ <contributor>
+ <name>Chien Yang</name>
+ <url>https://www.linkedin.com/in/chien-yang-0884122</url>
+ <organization>Oracle Corporation</organization>
+ <organizationUrl>http://oracle.com/</organizationUrl>
+ </contributor>
+ <contributor>
+ <name>Curtis Rueden</name>
+ <url>http://loci.wisc.edu/people/curtis-rueden</url>
+ <organization>UW-Madison LOCI</organization>
+ <organizationUrl>http://loci.wisc.edu/</organizationUrl>
+ </contributor>
+ </contributors>
+
+ <properties>
+ <!-- NB: Avoid platform encoding warning when copying resources. -->
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+ </properties>
+
+ <build>
+ <defaultGoal>install</defaultGoal>
+ <sourceDirectory>${project.basedir}/src</sourceDirectory>
+ <resources>
+ <resource>
+ <directory>${project.basedir}/src</directory>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ <exclude>**/package.html</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>3.1</version>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <version>2.5</version>
+ <configuration>
+ <archive>
+ <manifest>
+ <addClasspath>true</addClasspath>
+ </manifest>
+ </archive>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.9.1</version>
+ <configuration>
+ <javadocDirectory>${project.basedir}/src</javadocDirectory>
+ <links>
+ <link>http://docs.oracle.com/javase/1.5.0/docs/api/</link>
+ </links>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/src/VECMATH.MF b/src/VECMATH.MF
deleted file mode 100644
index d675a3a..0000000
--- a/src/VECMATH.MF
+++ /dev/null
@@ -1,17 +0,0 @@
-Manifest-Version: 1.0
-Specification-Title: @SPEC_TITLE@
-Specification-Version: 1.6
-Specification-Vendor: @SPEC_VENDOR@
-Implementation-Title: @IMPL_TITLE@
-Implementation-Version: @VERSION_BASE@
-Implementation-Vendor: @IMPL_VENDOR@
-Extension-Name: javax.vecmath
-Implementation-Vendor-Id: @IMPL_VENDOR_ID@
-Bundle-ManifestVersion: 2
-Bundle-Name: Vecmath Library
-Bundle-Vendor: @IMPL_VENDOR@
-Bundle-Localization: plugin
-Bundle-SymbolicName: javax.vecmath; singleton:=true
-Bundle-Version: @VERSION_BASE@
-Eclipse-AutoStart: true
-Export-Package: javax.vecmath