aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2019-04-03 22:08:55 +0200
committerSven Gothel <[email protected]>2019-04-03 22:08:55 +0200
commit302599570c04bae0d96e3b20981fab1ffcaf61ae (patch)
tree972eed3511c6c29b44ac2051236d4b2ef0dea81f
parent234bd58643e83aa7d34d752de3e98d6ae84cba3d (diff)
Bug 1369: SCC: Clarify & fix build dependencies in build.xml
Clean 'base.compile' order w/ matching build -> package tuples, having gluegen.build.shasum after the last actual build and before packaging. - init, - android-launcher.build, - gluegen.build.java, - gluegen.build.native, - gluegen.build.shasum, - gluegen.package.java, - gluegen.package.native, - android-launcher.package Further properly utilize a 'gluegen.package.*.done' property, corresponding with the 'gluegen.build.skip.*' property. Drop 'build.javaonly' gluegen.build.native exclusion
-rw-r--r--make/build.xml35
1 files changed, 26 insertions, 9 deletions
diff --git a/make/build.xml b/make/build.xml
index 5df5446..2fbb3f9 100644
--- a/make/build.xml
+++ b/make/build.xml
@@ -413,7 +413,7 @@
<property name="c.src.dir.os" value="unix" />
</target>
- <target name="c.configure" depends="gluegen.cpptasks.detect.os,gluegen.cpptasks.setup.compiler,declare.win32,declare.linux,declare.android,declare.solaris,declare.macosx,declare.freebsd,declare.hpux,gluegen.cpptasks.configure.compiler" unless="build.javaonly" />
+ <target name="c.configure" depends="gluegen.cpptasks.detect.os,gluegen.cpptasks.setup.compiler,declare.win32,declare.linux,declare.android,declare.solaris,declare.macosx,declare.freebsd,declare.hpux,gluegen.cpptasks.configure.compiler" />
<target name="c.rename.lib.mingw" if="isMingW">
<!-- FIXME: this is a hack; the cpptask should have an option to change the
@@ -430,7 +430,9 @@
<msvc.manifest objdir="${build}/obj" dllname="gluegen-rt" />
</target>
- <target name="gluegen.build.c" depends="init, c.configure" unless="build.javaonly" >
+ <target name="gluegen.build.native" depends="init, c.configure" >
+ <var name="gluegen.build.shasum.done" unset="true"/>
+ <var name="gluegen.package.native.done" unset="true"/>
<property name="c.compiler.src.files.common" value="src/native/common/*.c" />
<property name="c.compiler.src.files.os" value="src/native/${c.src.dir.os}/*.c" />
@@ -439,16 +441,19 @@
<condition property="output.lib.name.os" value="${output.lib.name}.dll"><isset property="isWindows"/></condition>
<condition property="output.lib.name.os" value="lib${output.lib.name}.dylib"><isset property="isOSX"/></condition>
- <uptodate property="gluegen.build.skip.c">
+ <uptodate property="gluegen.build.skip.native">
<srcfiles dir= "${project.root}" includes="${c.compiler.src.files.os}"/>
<srcfiles dir= "${project.root}" includes="${c.compiler.src.files.common}"/>
<mapper type="merge" to="${gluegen.lib.dir}/${output.lib.name.os}"/>
</uptodate>
+ <condition property="gluegen.package.native.done" value="true">
+ <isset property="gluegen.build.skip.native"/>
+ </condition>
<antcall target="gluegen.build.c.impl" inheritAll="true" inheritRefs="true" />
</target>
- <target name="gluegen.build.c.impl" depends="init, c.configure" unless="gluegen.build.skip.c">
+ <target name="gluegen.build.c.impl" depends="init, c.configure" unless="gluegen.build.skip.native">
<fail message="Requires '${compiler.cfg.id}'" unless="compiler.cfg.id"/>
<fail message="Requires '${linker.cfg.id}'" unless="linker.cfg.id"/>
@@ -511,7 +516,8 @@
<antcall target="c.manifest" inheritRefs="true" />
</target>
- <target name="gluegen.package.native" depends="init, c.configure" unless="build.javaonly" >
+ <target name="gluegen.package.native" depends="init, c.configure" unless="gluegen.package.native.done" >
+ <property name="gluegen.package.native.done" value="true" />
<copy file="Manifest-rt-natives"
tofile="${build}/Manifest-rt-natives.temp"
overwrite="true">
@@ -1053,14 +1059,22 @@
</jar>
</target>
- <target name="gluegen.build.java" depends="gluegen.cpptasks.detect.os,gluegen.build.check.java" unless="gluegen.build.skip.java">
+ <target name="gluegen.build.java" depends="gluegen.build.java.impl">
+ <condition property="gluegen.package.java.done" value="true">
+ <isset property="gluegen.build.skip.java"/>
+ </condition>
+ </target>
+ <target name="gluegen.build.java.impl" depends="gluegen.cpptasks.detect.os,gluegen.build.check.java" unless="gluegen.build.skip.java">
+ <var name="gluegen.build.shasum.done" unset="true"/>
+ <var name="gluegen.package.java.done" unset="true"/>
<antcall target="generate-hash-maps" inheritRefs="true"/>
<antcall target="generate-primitive-stacks" inheritRefs="true"/>
<antcall target="gluegen.build.javase" inheritRefs="true"/>
<antcall target="gluegen.build.android" inheritRefs="true"/>
</target>
- <target name="gluegen.packaging" depends="gluegen.cpptasks.detect.os">
+ <target name="gluegen.build.shasum" depends="gluegen.cpptasks.detect.os" unless="gluegen.build.shasum.done">
+ <property name="gluegen.build.shasum.done" value="true"/>
<java classname="com.jogamp.common.util.SHASum" logError="true" failonerror="true" fork="true" newenvironment="true"
classpath="${classes}"
outputproperty="gluegen.build.sha.sources">
@@ -1092,9 +1106,12 @@
<echo message="gluegen.build.sha.sources ${gluegen.build.sha.sources}"/>
<echo message="gluegen.build.sha.classes ${gluegen.build.sha.classes}"/>
<echo message="gluegen.build.sha.natives ${gluegen.build.sha.natives}"/>
+ </target>
+
+ <target name="gluegen.package.java" depends="gluegen.cpptasks.detect.os" unless="gluegen.package.java.done">
+ <property name="gluegen.package.java.done" value="true"/>
<antcall target="gluegen.package.javase" inheritRefs="true"/>
<antcall target="gluegen.package.android" inheritRefs="true"/>
- <antcall target="gluegen.package.native" inheritRefs="true"/>
</target>
<target name="gluegen.build.check.android-launcher" depends="init">
@@ -1197,7 +1214,7 @@
</target>
<target name="base.compile" description="Base compile ensuring valid build results w/o tampering the artifacts.properties"
- depends="init, android-launcher.build, gluegen.build.java, gluegen.build.c, gluegen.packaging, android-launcher.package" />
+ depends="init, android-launcher.build, gluegen.build.java, gluegen.build.native, gluegen.build.shasum, gluegen.package.java, gluegen.package.native, android-launcher.package" />
<target name="all.no_junit" description="Release build" depends="init, base.compile, tag.build, android.package, developer-zip-archive" />
<target name="all" description="Release build" depends="init, base.compile, tag.build, junit.compile, android.package, developer-zip-archive" />