blob: 36e79e8d254cd5e2795b4da01fd409bc5be8f01a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
apply plugin: 'groovy'
dependencies {
compile gradleApi()
compile localGroovy()
}
apply plugin: 'maven'
group = 'org.thejk'
version = '0.3.11'
uploadArchives {
repositories {
mavenDeployer {
repository(url: uri('../repo'))
}
}
}
class PackageTask extends DefaultTask {
@Input
String packageName
@InputFile
File getLispScript() {
return project.file('flycheck-android-experimental.el')
}
@InputFile
File getPackageScript() {
return project.file('flycheck-android-experimental-pkg.el')
}
@InputFile
File getJavaPythonScript() {
return project.file('bin/flycheck-android-java.py')
}
@OutputFile
File getOutput() {
return new File(project.buildDir, "${packageName}.tar")
}
@TaskAction
def action() {
def intermediate = new File(project.buildDir, 'package/intermediate')
def target = new File(intermediate, packageName)
def bin = new File(target, 'bin')
bin.mkdirs()
project.copy {
from(lispScript, packageScript)
into target
}
project.copy {
from(javaPythonScript)
into bin
}
project.exec {
commandLine 'tar', '-c', '-f', output, '-C', intermediate, packageName
}
}
}
task packageLisp(type: PackageTask) {
packageName 'flycheck-android-experimental-0.3.11'
}
|