File: build.gradle

package info (click to toggle)
proguard 6.2.2-3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 8,712 kB
  • sloc: java: 97,785; xml: 1,015; sh: 256; makefile: 91
file content (71 lines) | stat: -rw-r--r-- 1,405 bytes parent folder | download | duplicates (2)
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
68
69
70
71
// Gradle build script for all ProGuard jars.

allprojects {
    repositories {
        google()
        jcenter()
    }
}

task clean {
    delete fileTree('../lib')
}

// Collect the main ProGuard jar.

task assembleProguardJar(type: Jar) {
    destinationDir = file('../lib')
    baseName       = 'proguard'

    manifest.from '../core/src/META-INF/MANIFEST.MF'
}

def proguardSubprojects =
    [':core', ':gradle', ':ant', ':wtk'].collect{ project(it) }

proguardSubprojects.each { subproject ->
    subproject.afterEvaluate {
        assembleProguardJar.dependsOn subproject.tasks['jar']
        assembleProguardJar.from      subproject.configurations.archives.artifacts.files.collect { zipTree(it) }
    }
}

// Copy the ReTrace jar.

task copyRetraceJar(type: Copy) {
    into '../lib'
}

project(':retrace').afterEvaluate {
    copyRetraceJar.from it.tasks['jar']
}

// Copy the GUI jar.

task copyGuiJar(type: Copy) {
    into '../lib'
    rename 'gui.jar', 'proguardgui.jar'
}

project(':gui').afterEvaluate {
    copyGuiJar.from it.tasks['jar']
}

// Copy the annotations jar.

task copyAnnotationsJar(type: Copy) {
    into '../lib'
}

project(':annotations').afterEvaluate {
    copyAnnotationsJar.from it.tasks['jar']
}

// Assemble or copy all jars.

task assemble {
    dependsOn assembleProguardJar
    dependsOn copyRetraceJar
    dependsOn copyGuiJar
    dependsOn copyAnnotationsJar
}