diff --git a/sdk/build.gradle b/sdk/build.gradle new file mode 100644 index 000000000..b4a8d6e69 --- /dev/null +++ b/sdk/build.gradle @@ -0,0 +1,324 @@ +//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 +// +// +// +// +// +// +// +// +// +// +// + \ No newline at end of file