build.gradle 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562
  1. //ant.importBuild 'build.xml'
  2. import groovy.xml.MarkupBuilder
  3. import java.util.zip.ZipFile
  4. if (!hasProperty('mainClass')) {
  5. ext.mainClass = ''
  6. }
  7. configurations {
  8. corelibs
  9. optlibs
  10. testdatalibs
  11. examplelibs
  12. }
  13. dependencies {
  14. corelibs project(':jme3-blender')
  15. corelibs project(':jme3-core')
  16. corelibs project(':jme3-desktop')
  17. corelibs project(':jme3-effects')
  18. corelibs project(':jme3-jbullet')
  19. corelibs project(':jme3-jogg')
  20. corelibs project(':jme3-lwjgl')
  21. corelibs project(':jme3-networking')
  22. corelibs project(':jme3-niftygui')
  23. corelibs project(':jme3-plugins')
  24. corelibs project(':jme3-terrain')
  25. optlibs project(':jme3-bullet')
  26. optlibs project(':jme3-jogl')
  27. optlibs project(':jme3-android')
  28. optlibs project(':jme3-ios')
  29. if(buildNativeProjects == "true"){
  30. optlibs project(':jme3-android-native')
  31. optlibs project(':jme3-bullet-native')
  32. }
  33. testdatalibs project(':jme3-testdata')
  34. examplelibs project(':jme3-examples')
  35. }
  36. artifacts {
  37. // jar null
  38. }
  39. task checkPlatformConfig {
  40. description = "Downloads the NetBeans platform base and registers it in the SDK project if needed"
  41. def platformFile = file("nbproject/private/platform-private.properties")
  42. if(!platformFile.exists()){
  43. def netbeansFolder = file("../netbeans")
  44. if(!netbeansFolder.exists()){
  45. println "Downloading NetBeans Platform base, this only has to be done once.."
  46. def f = file("netbeans.zip")
  47. new URL("http://download.netbeans.org/netbeans/8.0/final/zip/netbeans-8.0-201403101706-javase.zip").withInputStream{ i -> f.withOutputStream{ it << i }}
  48. copy{
  49. from zipTree(f)
  50. into "../"
  51. }
  52. f.delete()
  53. }
  54. file("nbproject/private/").mkdirs()
  55. platformFile.createNewFile()
  56. platformFile.write("nbplatform.default.netbeans.dest.dir=${netbeansFolder.absolutePath}\r\n"+\
  57. "nbplatform.default.harness.dir=${netbeansFolder.absolutePath}/harness\r\n")
  58. }
  59. }
  60. task copyBaseLibs(dependsOn:configurations.corelibs) <<{
  61. description "Copies the library files needed to run the SDK to "+
  62. "jme3-core-baselibs and jme3-core-libraries"
  63. // for each dependency in corelibs..
  64. project.configurations.corelibs.dependencies.each {dep ->
  65. // copy built jme3 jar files to jme3-core-baselibs
  66. dep.dependencyProject.configurations.archives.allArtifacts.each{ artifact->
  67. if(artifact.classifier == "sources"){
  68. } else if(artifact.classifier == "javadoc"){
  69. } else{
  70. copy {
  71. from artifact.file
  72. into "jme3-core-baselibs/release/modules/ext/"
  73. }
  74. }
  75. }
  76. // copy external jar files to jme3-core-libraries
  77. copy {
  78. from dep.dependencyProject.configurations.compile.copyRecursive({ !(it instanceof ProjectDependency); }).resolve()
  79. into "jme3-core-libraries/release/modules/ext/"
  80. }
  81. }
  82. }
  83. copyBaseLibs.inputs.files configurations.corelibs.resolve()
  84. copyBaseLibs.outputs.dir "jme3-core-baselibs/release/modules/ext/"
  85. copyBaseLibs.outputs.dir "jme3-core-libraries/release/modules/ext/"
  86. task createBaseXml(dependsOn: configurations.corelibs) <<{
  87. description "Creates the project.xml files for "+
  88. "jme3-core-baselibs and jme3-core-libraries"
  89. def depJars = [] // jme3 jar files
  90. def depExtJars = [] // external jar files
  91. // collect jar files
  92. project.configurations.corelibs.dependencies.each {dep ->
  93. // collect external jar files
  94. dep.dependencyProject.configurations.compile.copyRecursive({ !(it instanceof ProjectDependency); }).resolve().each{ file->
  95. depExtJars.add(file)
  96. }
  97. // collect internal jar files (classes, sources and javadoc)
  98. dep.dependencyProject.configurations.archives.allArtifacts.each{ artifact->
  99. if(artifact.classifier == "sources"){
  100. } else if(artifact.classifier == "javadoc"){
  101. } else{
  102. if(!depJars.contains(artifact.file)){
  103. depJars.add(artifact.file)
  104. }
  105. }
  106. }
  107. }
  108. // collect base packages
  109. def packages = []
  110. depJars.each{jarFile ->
  111. ZipFile file = new ZipFile(jarFile)
  112. file.entries().each { entry ->
  113. if(entry.name.endsWith('.class')){
  114. // TODO: "/" works on windows?
  115. def pathPart = entry.name.substring(0,entry.name.lastIndexOf('/'))
  116. def classPath = pathPart.replace('/','.');
  117. if(!packages.contains(classPath)){
  118. packages.add(classPath)
  119. }
  120. }
  121. }
  122. }
  123. // collect library packages
  124. def extPackages = []
  125. depExtJars.each{jarFile ->
  126. ZipFile file = new ZipFile(jarFile)
  127. file.entries().each { entry ->
  128. if(entry.name.endsWith('.class')){
  129. // TODO: "/" works on windows?
  130. def pathPart = entry.name.substring(0,entry.name.lastIndexOf('/'))
  131. def classPath = pathPart.replace('/','.');
  132. if(!extPackages.contains(classPath)){
  133. extPackages.add(classPath)
  134. }
  135. }
  136. }
  137. }
  138. def writer = new StringWriter()
  139. def xml = new MarkupBuilder(writer)
  140. xml.mkp.xmlDeclaration(version:'1.0')
  141. xml.project(xmlns:"http://www.netbeans.org/ns/project/1"){
  142. type "org.netbeans.modules.apisupport.project"
  143. configuration {
  144. data(xmlns:"http://www.netbeans.org/ns/nb-module-project/3") {
  145. "code-name-base" "com.jme3.gde.core.baselibs"
  146. "suite-component"{}
  147. "module-dependencies"{
  148. dependency{
  149. "code-name-base" "com.jme3.gde.core.libraries"
  150. "build-prerequisite"{}
  151. "compile-dependency"{}
  152. "run-dependency"{
  153. "release-version" "1"
  154. "specification-version" "3.0.0"
  155. }
  156. }
  157. }
  158. "public-packages"{
  159. packages.each{
  160. "package" it
  161. }
  162. }
  163. depJars.each{jarFile ->
  164. "class-path-extension"{
  165. "runtime-relative-path" "ext/${jarFile.name}"
  166. "binary-origin" "release/modules/ext/${jarFile.name}"
  167. }
  168. }
  169. }
  170. }
  171. }
  172. // write XML file
  173. File baselibsProjectFile = file("jme3-core-baselibs/nbproject/project.xml");
  174. baselibsProjectFile.write(writer.toString())
  175. def extWriter = new StringWriter()
  176. def extXml = new MarkupBuilder(extWriter)
  177. // extXml.mkp.xmlDeclaration(version:'1.0')
  178. extXml.project(xmlns:"http://www.netbeans.org/ns/project/1"){
  179. type "org.netbeans.modules.apisupport.project"
  180. configuration {
  181. data(xmlns:"http://www.netbeans.org/ns/nb-module-project/3") {
  182. "code-name-base" "com.jme3.gde.core.libraries"
  183. "suite-component"{}
  184. "module-dependencies"{}
  185. "public-packages"{
  186. extPackages.each{
  187. "package" it
  188. }
  189. }
  190. depExtJars.each{jarFile ->
  191. "class-path-extension"{
  192. "runtime-relative-path" "ext/${jarFile.name}"
  193. "binary-origin" "release/modules/ext/${jarFile.name}"
  194. }
  195. }
  196. }
  197. }
  198. }
  199. // write XML file
  200. File librariesProjectFile = file("jme3-core-libraries/nbproject/project.xml");
  201. librariesProjectFile.write(extWriter.toString())
  202. }
  203. createBaseXml.inputs.files configurations.corelibs.resolve()
  204. createBaseXml.outputs.file "jme3-core-baselibs/nbproject/project.xml"
  205. createBaseXml.outputs.file "jme3-core-libraries/nbproject/project.xml"
  206. task copyProjectLibs(dependsOn: [configurations.corelibs, configurations.testdatalibs]) <<{
  207. description "Copies the jar files needed to supply the J2SE Libraries in the "+
  208. "SDK to jme3-project-baselibs and jme3-project-libraries"
  209. // for each dependency in corelibs and optlibs..
  210. def deps = []
  211. deps.addAll(project.configurations.corelibs.dependencies)
  212. deps.addAll(project.configurations.optlibs.dependencies)
  213. deps.each {dep ->
  214. // copy jme3 jar files, sources and javadocs to jme3-project-baselibs
  215. dep.dependencyProject.configurations.archives.allArtifacts.each{ artifact->
  216. if(artifact.classifier == "sources"){
  217. copy {
  218. from artifact.file
  219. into "jme3-project-baselibs/release/libs/"
  220. }
  221. } else if(artifact.classifier == "javadoc"){
  222. copy {
  223. from artifact.file
  224. into "jme3-project-baselibs/release/libs/"
  225. }
  226. } else{
  227. copy {
  228. from artifact.file
  229. into "jme3-project-baselibs/release/libs/"
  230. }
  231. }
  232. }
  233. // copy external jar files to jme3-project-libraries
  234. copy {
  235. from dep.dependencyProject.configurations.compile.copyRecursive({ !(it instanceof ProjectDependency); }).resolve()
  236. into "jme3-project-libraries/release/libs/"
  237. }
  238. }
  239. project.configurations.testdatalibs.dependencies.each {dep ->
  240. // copy jme3 test data to jme3-project-testdata
  241. dep.dependencyProject.configurations.archives.allArtifacts.each{ artifact->
  242. if(artifact.classifier == "sources"){
  243. } else if(artifact.classifier == "javadoc"){
  244. } else{
  245. copy {
  246. from artifact.file
  247. into "jme3-project-testdata/release/libs/"
  248. rename ("jme3-testdata(.*)", "jme3-testdata.jar")
  249. }
  250. }
  251. }
  252. }
  253. }
  254. copyProjectLibs.inputs.files configurations.corelibs.resolve()
  255. copyProjectLibs.inputs.files configurations.optlibs.resolve()
  256. copyProjectLibs.inputs.files configurations.testdatalibs.resolve()
  257. copyProjectLibs.outputs.dir "jme3-project-baselibs/release/libs/"
  258. copyProjectLibs.outputs.dir "jme3-project-libraries/release/libs/"
  259. copyProjectLibs.outputs.dir "jme3-project-testdata/release/libs/"
  260. // workaround method to add a tag with the name "name" and "file" to an XML MarkupBuilder
  261. def makeName(builder, nameR) { builder.name nameR }
  262. def makeFile(builder, nameR) { builder.file(name:nameR, url:nameR) }
  263. task createProjectXml(dependsOn: configurations.corelibs) <<{
  264. description "Creates needed J2SE library and layer XML files in jme3-project-baselibs"
  265. def eol = System.properties.'line.separator'
  266. def j2seLibraries = [] // created J2SE library descriptors
  267. // for each dependency in corelibs..
  268. def deps = []
  269. deps.addAll(project.configurations.corelibs.dependencies)
  270. deps.addAll(project.configurations.optlibs.dependencies)
  271. deps.each {dep ->
  272. def depJars = [] // jme3 jar files
  273. def depSources = [] // jme3 sources
  274. def depJavadocs = [] // jme3 javadoc
  275. def depExtJars = [] // external jar files
  276. j2seLibraries.add(dep.dependencyProject.name+".xml")
  277. // collect external jar files
  278. dep.dependencyProject.configurations.compile.copyRecursive({ !(it instanceof ProjectDependency); }).resolve().each{ file->
  279. depExtJars.add(file.name)
  280. }
  281. // collect internal jar files (classes, sources and javadoc)
  282. dep.dependencyProject.configurations.archives.allArtifacts.each{ artifact->
  283. if(artifact.classifier == "sources"){
  284. depSources.add(artifact.file.name)
  285. } else if(artifact.classifier == "javadoc"){
  286. depJavadocs.add(artifact.file.name)
  287. } else{
  288. if(!depJars.contains(artifact.file.name)){
  289. depJars.add(artifact.file.name)
  290. }
  291. }
  292. }
  293. // create J2SE library descriptor xml file
  294. def libraryWriter = new StringWriter()
  295. def libraryXml = new MarkupBuilder(libraryWriter)
  296. // xml.mkp.xmlDeclaration(version:'1.0')
  297. libraryWriter << '<?xml version="1.0" encoding="UTF-8"?>' << eol
  298. libraryWriter << '<!DOCTYPE library PUBLIC "-//NetBeans//DTD Library Declaration 1.0//EN" "http://www.netbeans.org/dtds/library-declaration-1_0.dtd">' << eol
  299. libraryXml.library(version:"1.0", encoding: "UTF-8"){
  300. makeName(libraryXml, "${dep.dependencyProject.name}")
  301. type "j2se"
  302. "localizing-bundle" "com.jme3.gde.project.baselibs.Bundle"
  303. volume{
  304. type "classpath"
  305. depJars.each{jar ->
  306. resource "jar:nbinst://com.jme3.gde.project.baselibs/libs/${jar}!/"
  307. }
  308. depExtJars.each{jar ->
  309. resource "jar:nbinst://com.jme3.gde.project.libraries/libs/${jar}!/"
  310. }
  311. }
  312. volume{
  313. type "src"
  314. depSources.each{jar ->
  315. resource "jar:nbinst://com.jme3.gde.project.baselibs/libs/${jar}!/"
  316. }
  317. }
  318. volume{
  319. type "javadoc"
  320. depJavadocs.each{jar ->
  321. resource "jar:nbinst://com.jme3.gde.project.baselibs/libs/${jar}!/"
  322. }
  323. }
  324. }
  325. // write XML file
  326. File libraryXmlFile = file("jme3-project-baselibs/src/com/jme3/gde/project/baselibs/${dep.dependencyProject.name}.xml");
  327. libraryXmlFile.write(libraryWriter.toString())
  328. }
  329. // create layer.xml file with entries of library xml files
  330. def layerWriter = new StringWriter()
  331. def layerXml = new MarkupBuilder(layerWriter)
  332. // layerXml.mkp.xmlDeclaration(version:'1.0')
  333. layerWriter << '<?xml version="1.0" encoding="UTF-8"?>' << eol
  334. layerWriter << '<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.1//EN" "http://www.netbeans.org/dtds/filesystem-1_1.dtd">' << eol
  335. layerXml.filesystem{
  336. folder(name:"org-netbeans-api-project-libraries"){
  337. folder(name:"Libraries"){
  338. j2seLibraries.each{lib ->
  339. makeFile(layerXml, lib)
  340. }
  341. }
  342. }
  343. }
  344. File layerXmlFile = file("jme3-project-baselibs/src/com/jme3/gde/project/baselibs/layer.xml");
  345. layerXmlFile.write(layerWriter.toString())
  346. }
  347. createProjectXml.inputs.files configurations.corelibs.resolve()
  348. createProjectXml.inputs.files configurations.optlibs.resolve()
  349. createProjectXml.outputs.dir "jme3-project-baselibs/src/com/jme3/gde/project/baselibs/"
  350. task copyTestSources <<{
  351. project.configurations.examplelibs.dependencies.each{dep ->
  352. copy{
  353. from dep.dependencyProject.sourceSets*.allSource
  354. into "JME3TestsTemplate/src/"
  355. }
  356. copy{
  357. from dep.dependencyProject.sourceSets*.allSource
  358. into "JME3TestsTemplateAndroid/src/"
  359. }
  360. }
  361. }
  362. copyTestSources.inputs.files project.configurations.examplelibs
  363. copyTestSources.outputs.dir "JME3TestsTemplate/src/"
  364. copyTestSources.outputs.dir "JME3TestsTemplateAndroid/src/"
  365. ant.properties['plugins.version'] = jmeVersion
  366. ant.properties['app.version']= jmeMainVersion + jmeVersionSuffix
  367. task buildSdk(dependsOn: [copyBaseLibs, copyProjectLibs, createProjectXml, createBaseXml, copyTestSources]) <<{
  368. ant.propertyfile(file: "nbproject/project.properties") {
  369. entry( key: "plugins.version", value: "${jmeVersion}")
  370. entry( key: "app.version", value: "${jmeMainVersion + jmeVersionSuffix}")
  371. }
  372. ant.ant(dir: ".", antfile: "build.xml", target: "build")
  373. }
  374. buildSdk.inputs.files configurations.corelibs.resolve()
  375. buildSdk.inputs.files configurations.optlibs.resolve()
  376. file('.').eachDir{
  377. if(it.name.startsWith("jme3-") && it.isDirectory()){
  378. buildSdk.inputs.dir it
  379. }
  380. }
  381. buildSdk.outputs.dir "build"
  382. task cleanSdk() <<{
  383. ant.ant(dir: ".", antfile: "build.xml", target: "clean")
  384. }
  385. jar.dependsOn(buildSdk)
  386. clean.dependsOn(cleanSdk);
  387. //configurations {
  388. // antlibs
  389. //}
  390. //dependencies {
  391. // antlibs filetree(dir: 'ant-lib', include: '*.jar')
  392. //}
  393. //
  394. //ant.taskdef(resource: 'net/sf/antcontrib/antcontrib.properties', classpath: configurations.antlibs.asPath)
  395. //ant.taskdef(name: 'deb', classname: 'com.googlecode.ant_deb_task.Deb', classpath: configurations.antlibs.asPath)
  396. //ant.taskdef(name: 'gcupload', classname: 'net.bluecow.googlecode.ant.GoogleCodeUploadTask', classpath: configurations.antlibs.asPath)
  397. //ant.taskdef(name: 'desktopentry', classname: 'com.googlecode.ant_deb_task.DesktopEntry', classpath: configurations.antlibs.asPath)
  398. //ant.importBuild 'build.xml'
  399. //ant.properties.buildDir = buildDir
  400. //ant.properties['buildDir'] = buildDir
  401. //ant.property(name: 'buildDir', location: buildDir)
  402. //ant.taskdef(resource: 'checkstyletask.properties') {
  403. // classpath {
  404. // fileset(dir: 'ant-lib', includes: '*.jar')
  405. // }
  406. //}
  407. //ant.checkstyle(config: 'checkstyle.xml') {
  408. // fileset(dir: 'src')
  409. //}
  410. //
  411. // <target name="-do-update-sdk">
  412. // <fileset id="jme3-jars" dir="build">
  413. // <include name="**/jME3**.jar"/>
  414. // <exclude name="**/jME3-testdata.jar"/>
  415. // <exclude name="**/jME3-bullet-natives.jar"/>
  416. // <exclude name="**/jME3-bullet-natives-android.jar"/>
  417. // <exclude name="**/jME3-openal-soft-natives-android.jar"/>
  418. // </fileset>
  419. // <fileset id="jme3-sdk-jars" dir="build">
  420. // <include name="**/jME3**.jar"/>
  421. // <exclude name="**/jME3-android.jar"/>
  422. // <exclude name="**/jME3-testdata.jar"/>
  423. // <exclude name="**/jME3-bullet.jar"/>
  424. // <exclude name="**/jME3-bullet-natives.jar"/>
  425. // <exclude name="**/jME3-bullet-natives-android.jar"/>
  426. // <exclude name="**/jME3-openal-soft-natives-android.jar"/>
  427. // </fileset>
  428. // <fileset id="jme3-bullet-native-jars" dir="${dist.dir}/opt/native-bullet">
  429. // <include name="**/jME3-bullet-native**.jar"/>
  430. // </fileset>
  431. // <fileset id="jme3-openal-soft-natives-jars" dir="${dist.dir}/opt/native-openal-soft">
  432. // <include name="**/jME3-openal-soft-natives-android.jar"/>
  433. // </fileset>
  434. // <fileset id="jme3-testdata-jars" dir="build">
  435. // <include name="**/jME3-testdata.jar"/>
  436. // </fileset>
  437. // <fileset id="jme3-lwjgl-native-jars" dir="${dist.dir}/lib">
  438. // <include name="**/jME3-lwjgl-natives.jar"/>
  439. // </fileset>
  440. // <fileset id="jme3-external-libraries" dir="${dist.dir}/lib/">
  441. // <exclude name="jME3-**"/>
  442. // <exclude name="**/nifty-examples.jar"/>
  443. // </fileset>
  444. // <echo>Clearing old files</echo>
  445. // <delete dir="${jmp_dir}/JME3TestsTemplate/src/"/>
  446. // <delete dir="${jmp_dir}/jme3-core-baselibs/release/modules/ext/"/>
  447. // <delete dir="${jmp_dir}/jme3-core-libraries/release/modules/ext/"/>
  448. // <delete dir="${jmp_dir}/jme3-project-libraries/release/libs/"/>
  449. // <delete dir="${jmp_dir}/jme3-project-baselibs/release/libs/"/>
  450. // <delete dir="${jmp_dir}/jme3-project-testdata/release/libs/"/>
  451. //
  452. // <echo>Copying jMonkeyPlatform jME3 libs</echo>
  453. // <copy toDir="${jmp_dir}/jme3-core-baselibs/release/modules/ext/" overwrite="true" failonerror="true" verbose="false" flatten="true">
  454. // <fileset refid="jme3-sdk-jars"/>
  455. // <!--natives need to be in jme3 package for jme to work in jMP-->
  456. // <fileset refid="jme3-lwjgl-native-jars"/>
  457. // </copy>
  458. //
  459. // <echo>Copying jMonkeyPlatform external libraries</echo>
  460. // <copy todir="${jmp_dir}/jme3-core-libraries/release/modules/ext/" overwrite="true" failonerror="true" verbose="false" flatten="true">
  461. // <fileset refid="jme3-external-libraries"/>
  462. // </copy>
  463. //
  464. // <echo>Copying Project jME3 libs</echo>
  465. // <copy toDir="${jmp_dir}/jme3-project-baselibs/release/libs/" overwrite="true" failonerror="true" verbose="false" flatten="true">
  466. // <fileset refid="jme3-jars"/>
  467. // <fileset refid="jme3-openal-soft-natives-jars"/>
  468. // </copy>
  469. //
  470. // <echo>Copying Project external libraries</echo>
  471. // <copy todir="${jmp_dir}/jme3-project-libraries/release/libs/" overwrite="true" failonerror="true" verbose="false" flatten="true">
  472. // <fileset refid="jme3-external-libraries"/>
  473. // <fileset refid="jme3-lwjgl-native-jars"/>
  474. // <fileset refid="jme3-bullet-native-jars"/>
  475. // </copy>
  476. //
  477. // <echo>Copying Test Project Data</echo>
  478. // <copy toDir="${jmp_dir}/jme3-project-testdata/release/libs/" overwrite="true" failonerror="true" verbose="false">
  479. // <fileset refid="jme3-testdata-jars"/>
  480. // </copy>
  481. //
  482. // <echo>Copying Javadoc</echo>
  483. // <zip destfile="${dist.dir}/jMonkeyEngine3-javadoc.zip">
  484. // <zipfileset dir="${dist.dir}/javadoc/"/>
  485. // </zip>
  486. // <copy file="${dist.dir}/jMonkeyEngine3-javadoc.zip" toDir="${jmp_dir}/jme3-project-baselibs/release/libs/" overwrite="true" failonerror="true" verbose="false"/>
  487. //
  488. // <zip destfile="${dist.dir}/jMonkeyEngine3-sources.zip">
  489. // <zipfileset dir="${src.core.dir}"/>
  490. // <zipfileset dir="${src.core-data.dir}"/>
  491. // <zipfileset dir="${src.core-effects.dir}"/>
  492. // <zipfileset dir="${src.core-plugins.dir}"/>
  493. // <zipfileset dir="${src.desktop.dir}"/>
  494. // <zipfileset dir="${src.jbullet.dir}"/>
  495. // <zipfileset dir="${src.niftygui.dir}"/>
  496. // <zipfileset dir="${src.jogg.dir}"/>
  497. // <zipfileset dir="${src.lwjgl.dir}"/>
  498. // <zipfileset dir="${src.ogre.dir}"/>
  499. // <zipfileset dir="${src.test.dir}"/>
  500. // <zipfileset dir="${src.tools.dir}"/>
  501. // <zipfileset dir="${src.xml.dir}"/>
  502. // <zipfileset dir="${src.terrain.dir}"/>
  503. // <zipfileset dir="${src.networking.dir}"/>
  504. // </zip>
  505. // <copy file="${dist.dir}/jMonkeyEngine3-sources.zip" toDir="${jmp_dir}/jme3-project-baselibs/release/libs/" overwrite="true" failonerror="true" verbose="false"/>
  506. //
  507. // <copy todir="${jmp_dir}/jme3-project-libraries/release/libs/" overwrite="true" failonerror="true" verbose="false" flatten="true">
  508. // <fileset refid="jme3-external-libraries"/>
  509. // <fileset refid="jme3-lwjgl-native-jars"/>
  510. // <fileset refid="jme3-bullet-native-jars"/>
  511. // <fileset refid="jme3-openal-soft-natives-jars"/>
  512. // <fileset dir="lib/niftygui/">
  513. // <include name="nifty-javadoc.jar"/>
  514. // <include name="nifty-default-controls-javadoc.jar"/>
  515. // </fileset>
  516. // </copy>
  517. //
  518. // <echo>Copying Test Examples</echo>
  519. // <copy todir="${jmp_dir}/JME3TestsTemplate/src/" overwrite="true" failonerror="true" verbose="false">
  520. // <fileset dir="src/test/">
  521. // <exclude name=".svn"/>
  522. // </fileset>
  523. // </copy>
  524. // <copy todir="${jmp_dir}/JME3TestsTemplateAndroid/src/" overwrite="true" failonerror="true" verbose="false">
  525. // <fileset dir="src/test/">
  526. // <exclude name=".svn"/>
  527. // </fileset>
  528. // </copy>
  529. // </target>