//ant.importBuild 'build.xml'
if (!hasProperty('mainClass')) {
ext.mainClass = ''
}
configurations {
corelibs
optlibs
}
dependencies {
corelibs project(':jme3-blender')
corelibs project(':jme3-core')
corelibs project(':jme3-desktop')
corelibs project(':jme3-effects')
corelibs project(':jme3-jbullet')
corelibs project(':jme3-jogg')
corelibs project(':jme3-lwjgl')
corelibs project(':jme3-networking')
corelibs project(':jme3-niftygui')
corelibs project(':jme3-plugins')
corelibs project(':jme3-terrain')
corelibs project(':jme3-testdata')
optlibs project(':jme3-bullet')
optlibs project(':jme3-jogl')
}
//task copyToLib << {
// configurations.opt.resolvedConfiguration.resolvedArtifacts.each { artifact ->
// copy {
// from artifact.file
// into '../dist/opt'
// if(artifact.classifier != null){
// rename { "${artifact.name}-${artifact.classifier}.${artifact.extension}" }
// } else{
// rename { "${artifact.name}.${artifact.extension}" }
// }
// }
// }
//}
//build.dependsOn copyToLib
artifacts {
// jar null
}
//
//
//
//
//
//configurations {
// antlibs
//}
//dependencies {
// antlibs filetree(dir: 'ant-lib', include: '*.jar')
//}
//
//ant.taskdef(resource: 'net/sf/antcontrib/antcontrib.properties', classpath: configurations.antlibs.asPath)
//ant.taskdef(name: 'deb', classname: 'com.googlecode.ant_deb_task.Deb', classpath: configurations.antlibs.asPath)
//ant.taskdef(name: 'gcupload', classname: 'net.bluecow.googlecode.ant.GoogleCodeUploadTask', classpath: configurations.antlibs.asPath)
//ant.taskdef(name: 'desktopentry', classname: 'com.googlecode.ant_deb_task.DesktopEntry', classpath: configurations.antlibs.asPath)
//ant.importBuild 'build.xml'
ant.properties['plugins.version'] = jmeVersion
ant.properties['app.version']= jmeMainVersion + jmeVersionSuffix
//ant.properties.buildDir = buildDir
//ant.properties['buildDir'] = buildDir
//ant.property(name: 'buildDir', location: buildDir)
//ant.taskdef(resource: 'checkstyletask.properties') {
// classpath {
// fileset(dir: 'ant-lib', includes: '*.jar')
// }
//}
//ant.checkstyle(config: 'checkstyle.xml') {
// fileset(dir: 'src')
//}
//task copyFiles(type: Copy) {
// from 'src/files'
// into "$buildDir/files"
// rename '(.*)-(.*).html', '$2/$1.html'
// rename ~/(.*).template.(.*)/, '$1.$2'
// rename { filename ->
// filename.replace 'java', 'groovy'
// }
//}
//task copyTaskWithPatterns(type: Copy) {
// from 'src/main/webapp'
// into 'build/explodedWar'
// include '**/*.html'
// include '**/*.jsp'
// exclude { details -> details.file.name.endsWith('.html') && details.file.text.contains('staging') }
//}
task copyBaseLibs{
description "Copies the library files needed to run the SDK to jme3-core-baselibs and jme3-core-libraries"
dependsOn configurations.corelibs
dependsOn configurations.optlibs
// for each dependency in corelibs..
project.configurations.corelibs.dependencies.each {dep ->
// copy built jme3 jar files to jme3-core-baselibs
dep.dependencyProject.configurations.archives.allArtifacts.each{ artifact->
if(artifact.classifier == "sources"){
} else if(artifact.classifier == "javadoc"){
} else{
copy {
from artifact.file
into "jme3-core-baselibs/release/modules/ext/"
}
}
}
// copy external jar files to jme3-core-libraries
copy {
from dep.dependencyProject.configurations.compile.copyRecursive({ !(it instanceof ProjectDependency); }).resolve()
into "jme3-core-libraries/release/modules/ext/"
}
}
}
// project.configurations.collectMany { it.allDependencies }.findAll { it instanceof ProjectDependency }.each{
// println it
// }
//(type: Copy){
// from project.configurations.compile
// into "jme3-core-baselibs/release/modules/ext/"
// include "**/jme3-**.jar"
// exclude "**/jme3-android**.jar"
// exclude "**/jme3-testdata**.jar"
// exclude "**/jme3-bullet**.jar"
// exclude "**/jme3-bullet-native**.jar"
// exclude "**/jme3-android-native**.jar"
// rename '(.*)-'+jmeVersion+'(.*)', '$1.jar'
//
//// println project.configurations.compile.findAll { !(it instanceof ProjectDependency); }
//// println project.configurations.compile.findAll { it.version.startsWith("1") }
//}
task copyExternalLibs{
// println project.configurations.compile.findAll { it.name.startsWith("j") }
// println project.configurations.compile.properties.each { k,v -> println v}
// println project.configurations.compile.findAll { it.name.startsWith("l") }
// from project.configurations.compile.findAll { !(it instanceof ProjectDependency); }
// into "jme3-core-libraries/release/modules/ext/"
// exclude "**/jme3-**.jar"
}
task copyProjectBaseLibs(type: Copy){
// description "Copies the jar files needed to supply the J2SE Libraries in the SDK to jme3-project-baselibs and jme3-project-libraries"
// project.configurations.corelibs.dependencies.each {dep ->
// copy {
// from dep.dependencyProject.configurations.compile.copyRecursive({ !(it instanceof ProjectDependency); }).resolve()
// into "jme3-project-libraries/release/libs/"
// }
// dep.dependencyProject.configurations.archives.allArtifacts.each{ artifact->
// if(artifact.classifier == "sources"){
// } else if(artifact.classifier == "javadoc"){
// } else{
// copy {
// from artifact.file
// into "jme3-core-baselibs/release/modules/ext/"
// }
// }
// }
// }
}
task copyProjectExternalLibs{
// println project.configurations.compile.findAll { it.name.startsWith("j") }
// println project.configurations.compile.properties.each { k,v -> println v}
// println project.configurations.compile.findAll { it.name.startsWith("l") }
// from project.configurations.compile.findAll { !(it instanceof ProjectDependency); }
// into "jme3-core-libraries/release/modules/ext/"
// exclude "**/jme3-**.jar"
}
task copyTestData{
}
task copyJavaDoc{
}
task buildSdk(){
// ant.ant(dir: ".", antfile: "build.xml", target: "hudson-stable")
}
task cleanSdk(){
// ant.ant(dir: ".", antfile: "build.xml", target: "clean")
}
jar.dependsOn([copyBaseLibs, copyExternalLibs, buildSdk])
clean.dependsOn(cleanSdk);
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
// Clearing old files
//
//
//
//
//
//
//
// Copying jMonkeyPlatform jME3 libs
//
//
//
//
//
//
// Copying jMonkeyPlatform external libraries
//
//
//
//
// Copying Project jME3 libs
//
//
//
//
//
// Copying Project external libraries
//
//
//
//
//
//
// Copying Test Project Data
//
//
//
//
// Copying Javadoc
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
// Copying Test Examples
//
//
//
//
//
//
//
//
//
//
//