aboutsummaryrefslogtreecommitdiffstats
path: root/make/build.xml
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2014-06-19 23:21:19 +0200
committerSven Gothel <[email protected]>2014-06-19 23:21:19 +0200
commit40d7d0d18ed11b8dbb0f16137f82eef828b822a4 (patch)
tree954cb10ac50d0eea506c4b4b9dc5b5bac39d99e0 /make/build.xml
parent20bf51f2ccbecf1ab21ef3dbd2ff06e04ebd40cc (diff)
Bug 1021: Add OculusSDK binding / Basic OVR support
Bring-up test only initializes the ovrHmdHandle data structure by OVR native code. See com.jogamp.oculusvr.OVRVersion Current evaluation build compiles all OVR-SDK source files itself w/o using provided libovr.a. We also skip the GL dependent renderer of the SDK, i.e. we prefer to utilize our JOGL 'barrel distortion' renderer. This eases the 'chicken-egg' problem of OVR SDK dependencies, i.e. libGL, libGLESv2 .. etc Since the OVR source code is C++, we may still have to figure out how to / and whether we shall link libstdc++ statically to remove platform dependencies. Right now we link libstdc++ statically if using GCC, see make/build-oculusvr.xml (hackish .. TODO: better way to include all symbols). Same consideration applies to GNU/Linux and libudev.so dependency, since there are: - libudev.so.0 and (Older distri's) - libudev.so.1 (Debian8, ..) ... Produced JAR artifacts are - jar/atomic/oculusvr.jar - jar/atomic/oculusvr-natives-<os.and.arch>.jar i.e. only in 'atomic' variants to not bloat the default 'all' JAR files. .... make/build-oculusvr.xml Notes: - Currently native build only enabled on GNU/Linux (isLinux) - Force disable native build via property 'c.build.oculusvr.skip'
Diffstat (limited to 'make/build.xml')
-rw-r--r--make/build.xml29
1 files changed, 21 insertions, 8 deletions
diff --git a/make/build.xml b/make/build.xml
index a7ba217fb..b356e2a1f 100644
--- a/make/build.xml
+++ b/make/build.xml
@@ -8,13 +8,13 @@
- Main build target.
-->
- <target name="all" description="Build nativewindow, jogl and newt projects, incl. all junit tests " depends="init,build.nativewindow,build.jogl,build.newt,one.dir,tag.build,test.compile,developer-zip-archive" />
+ <target name="all" description="Build nativewindow, jogl and newt projects, incl. all junit tests " depends="init,build.nativewindow,build.jogl,build.newt,build.oculusvr,one.dir,tag.build,test.compile,developer-zip-archive" />
- <target name="all.debug" description="Debug build nativewindow, jogl and newt projects, incl. all junit tests " depends="init.debug,build.nativewindow,build.jogl,build.newt,one.dir,tag.build,test.compile,developer-zip-archive" />
+ <target name="all.debug" description="Debug build nativewindow, jogl and newt projects, incl. all junit tests " depends="init.debug,build.nativewindow,build.jogl,build.newt,build.oculusvr,one.dir,tag.build,test.compile,developer-zip-archive" />
- <target name="all.but-archives" description="Build nativewindow, jogl and newt projects, incl. all junit tests " depends="init,build.nativewindow,build.jogl,build.newt,one.dir,tag.build,test.compile" />
+ <target name="all.but-archives" description="Build nativewindow, jogl and newt projects, incl. all junit tests " depends="init,build.nativewindow,build.jogl,build.newt,build.oculusvr,one.dir,tag.build,test.compile" />
- <target name="all.ide" description="Debug IDE build nativewindow, jogl and newt projects, including all junit tests, but don't tag the build or create archives" depends="init.debug,build.nativewindow,build.jogl,build.newt,one.dir,test.compile" />
+ <target name="all.ide" description="Debug IDE build nativewindow, jogl and newt projects, including all junit tests, but don't tag the build or create archives" depends="init.debug,build.nativewindow,build.jogl,build.newt,build.oculusvr,one.dir,test.compile" />
<target name="test.compile">
<ant antfile="build-test.xml" target="test.compile" inheritRefs="true" inheritAll="true"/>
@@ -47,10 +47,10 @@
<target name="clean" depends="init">
<ant antfile="${nativewindow.build.xml}" dir="${nativewindow.make}" target="clean" inheritRefs="true" inheritAll="true"/>
- <ant antfile="${jogl.build.xml}" dir="${jogl.make}" target="clean" inheritRefs="true" inheritAll="true"/>
- <ant antfile="${newt.build.xml}" dir="${newt.make}" target="clean" inheritRefs="true" inheritAll="true"/>
- <ant antfile="${newt.build.xml}" dir="${newt.make}" target="clean" inheritRefs="true" inheritAll="true"/>
- <ant antfile="build-test.xml" target="clean" inheritRefs="true" inheritAll="true"/>
+ <ant antfile="${jogl.build.xml}" dir="${jogl.make}" target="clean" inheritRefs="true" inheritAll="true"/>
+ <ant antfile="${newt.build.xml}" dir="${newt.make}" target="clean" inheritRefs="true" inheritAll="true"/>
+ <ant antfile="${oculusvr.build.xml}" dir="${oculusvr.make}" target="clean" inheritRefs="true" inheritAll="true"/>
+ <ant antfile="build-test.xml" target="clean" inheritRefs="true" inheritAll="true"/>
<delete includeEmptyDirs="true" quiet="true" failonerror="false">
<fileset dir="${build}" />
<fileset dir="." includes="*.tga" />
@@ -79,12 +79,17 @@
<ant antfile="${newt.build.xml}" dir="${newt.make}" target="all" inheritRefs="true" inheritAll="true"/>
</target>
+ <target name="build.oculusvr" depends="init">
+ <ant antfile="${oculusvr.build.xml}" dir="${oculusvr.make}" target="all" inheritRefs="true" inheritAll="true"/>
+ </target>
+
<target name="one.lib.dir" depends="init,gluegen.cpptasks.detect.os" unless="one.dir.skip">
<mkdir dir="${lib}" />
<copy todir="${lib}">
<fileset dir="${build}/jogl/obj" includes="*.${native.library.suffix}" />
<fileset dir="${build}/nativewindow/obj" includes="*.${native.library.suffix}" />
<fileset dir="${build}/newt/obj" includes="*.${native.library.suffix}" />
+ <!-- fileset dir="${build}/oculusvr/obj" includes="*.${native.library.suffix}" /-->
</copy>
</target>
@@ -95,6 +100,7 @@
<fileset dir="${build.jogl}" includes="*.jar" />
<fileset dir="${build.nativewindow}" includes="*.jar" />
<fileset dir="${build.newt}" includes="*.jar" />
+ <fileset dir="${build.oculusvr}" includes="*.jar" />
</copy>
<copy file="joglversion-all"
@@ -130,6 +136,7 @@
<path refid="nativewindow_all_atoms.classpath"/>
<path refid="jogl_all_atoms.classpath"/>
<path refid="newt_all_atoms.classpath"/>
+ <!-- path refid="oculusvr_all_atoms.classpath"/-->
</zips>
</archives>
</jar>
@@ -139,6 +146,7 @@
<path refid="nativewindow_all-noawt_atoms.classpath"/>
<path refid="jogl_all-noawt_atoms.classpath"/>
<path refid="newt_all-noawt_atoms.classpath"/>
+ <!-- path refid="oculusvr_all_atoms.classpath"/-->
</zips>
</archives>
</jar>
@@ -148,6 +156,7 @@
<path refid="nativewindow_all-noawt_atoms.classpath"/>
<path refid="jogl_all-mobile_atoms.classpath"/>
<path refid="newt_all-mobile_atoms.classpath"/>
+ <!-- path refid="oculusvr_all_atoms.classpath"/-->
</zips>
</archives>
</jar>
@@ -196,11 +205,15 @@
<srcfiles dir="${build.jogl}" includes="*.jar"/>
<srcfiles dir="${build.newt}" includes="*.jar"/>
</uptodate>
+ <uptodate property="one.dir.skip.oculusvr" targetfile="${oculusvr.jar}">
+ <srcfiles dir="${build.oculusvr}" includes="*.jar"/>
+ </uptodate>
<condition property="one.dir.skip">
<and>
<isset property="one.dir.skip.native"/>
<isset property="one.dir.skip.all"/>
<isset property="one.dir.skip.android"/>
+ <isset property="one.dir.skip.oculusvr"/>
</and>
</condition>
</target>