apply plugin: "java"

sourceSets.main.java.srcDirs = [ "src/" ]

project.ext.mainClassName = "com.watabou.pd.desktop.DesktopLauncher"
project.ext.assetsDir = new File("../android/assets");

task run(dependsOn: classes, type: JavaExec) {
	main = project.mainClassName
	classpath = sourceSets.main.runtimeClasspath
	standardInput = System.in
	workingDir = project.assetsDir
	ignoreExitValue = true
}

task dist(type: Jar) {
	from files(sourceSets.main.output.classesDirs)
	from files(sourceSets.main.output.resourcesDir)
	from {configurations.compile.collect {zipTree(it)}}
	from files(project.assetsDir);
 
	manifest {
		attributes 'Main-Class': project.mainClassName
		attributes 'Specification-Version': version
		attributes 'Implementation-Version': versionCode
	}
}

dist.dependsOn classes

eclipse {
	project {
		name = appName + "-desktop"
		linkedResource name: 'assets', type: '2', location: 'PARENT-1-PROJECT_LOC/android/assets'
	}
}

task afterEclipseImport(description: "Post processing after project generation", group: "IDE") {
  doLast {
	def classpath = new XmlParser().parse(file(".classpath"))
	new Node(classpath, "classpathentry", [ kind: 'src', path: 'assets' ]);
	def writer = new FileWriter(file(".classpath"))
	def printer = new XmlNodePrinter(new PrintWriter(writer))
	printer.setPreserveWhitespace(true)
	printer.print(classpath)
  }
}