1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2024-11-16 12:12:06 +01:00
Smack/smack-core/build.gradle

58 lines
1.3 KiB
Groovy
Raw Normal View History

description = """\
Smack core components."""
configurations {
compression
dns
}
dependencies {
compile 'xpp3:xpp3:1.1.4c'
testCompile 'junit:junit:4.+'
testCompile 'xmlunit:xmlunit:1.5'
testCompile 'org.powermock:powermock-module-junit4:1.5.+'
testCompile 'org.powermock:powermock-api-mockito:1.5.+'
testCompile 'com.jamesmurty.utils:java-xmlbuilder:0.6+'
}
jar {
manifest {
attributes('Bundle-SymbolicName': project.group,
'Eclipse-ExtensibleAPI: true')
from sharedManifest
}
}
task compressionJar(type: Jar) {
appendix += '-compression'
dependsOn classes
from sourceSets.main.output
include('org/jivesoftware/smack/compression/**')
include('org/jivesoftware/smack/SmackConfiguration.class')
}
task dnsJar(type: Jar) {
appendix += '-dns'
dependsOn classes
from sourceSets.main.output
include('org/jivesoftware/smack/util/dns/**')
include('org/jivesoftware/smack/util/DNSUtil.class')
}
artifacts {
compression compressionJar
dns dnsJar
}
class CreateFileTask extends DefaultTask {
@Input
String fileContent
@OutputFile
File outputFile
@TaskAction
def createFile() {
outputFile.text = fileContent
}
}
task createVersionResource(type: CreateFileTask) {
fileContent = version
outputFile = new File(projectDir, 'src/main/resources/org.jivesoftware.smack/version')
}
compileJava.dependsOn(createVersionResource)