// Note that this is also declared in the main build.gradle for
// subprojects, but since evaluationDependsOnChildren is enabled we
// need to declare it here too
apply plugin: 'osgi'

description = """\
Smack core components."""

dependencies {
	compile 'xpp3:xpp3:1.1.4c'
	compile "org.jxmpp:jxmpp-core:$jxmppVersion"
	//	compile "org.igniterealtime.jxmpp:jxmpp-jid:$jxmppVersion"
	testCompile 'junit:junit:4.11'
	testCompile 'xmlunit:xmlunit:1.5'
	testCompile 'org.powermock:powermock-module-junit4:1.5.5'
	testCompile 'org.powermock:powermock-api-mockito:1.5.5'
	testCompile 'com.jamesmurty.utils:java-xmlbuilder:0.6'
	testCompile 'net.iharder:base64:2.3.8'
}

class CreateFileTask extends DefaultTask {
	@Input
	String fileContent

	@OutputFile
	File outputFile

	@TaskAction
	def createFile() {
		outputFile.text = fileContent
	}
}

task createVersionResource(type: CreateFileTask) {
	fileContent = version + ' (' + gitCommit + ' ' + builtDate + ')'
	outputFile = new File(projectDir, 'src/main/resources/org.jivesoftware.smack/version')
}

compileJava.dependsOn(createVersionResource)

jar {
  manifest {
    instruction 'DynamicImport-Package', '*'
  }
}