File: build.gradle

package info (click to toggle)
intellij-annotations 23.0.0-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid, trixie
  • size: 316 kB
  • sloc: java: 402; sh: 128; makefile: 15
file content (61 lines) | stat: -rw-r--r-- 1,594 bytes parent folder | download
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
/*
 * Copyright 2000-2021 JetBrains s.r.o.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

sourceCompatibility = 1.5

def jdk5Home = System.getenv("JDK_5")
if (hasProperty("JDK_5")) {
    jdk5Home = JDK_5
}
if (jdk5Home == null) {
    throw new GradleException('JDK_5 environment variable is not defined. It must point to any JDK that ' +
            'is capable to compile with Java 5 target (Any JDK version from 1.5 to 1.8)')
}

def generatedSourcesDir = "${buildDir}/generated/"

sourceSets {
    generated {
        java.srcDir generatedSourcesDir
    }
}

task generateSrc(type: Copy) {
    from project(':common').sourceSets.main.java
    into generatedSourcesDir
    filter { line -> line.replaceAll(", ElementType.TYPE_USE", "")}
}

compileJava {
    options.fork = true
    options.forkOptions.executable = "$jdk5Home/bin/javac"
    dependsOn(generateSrc)
    source sourceSets.generated.java
}

mainJar {
    from sourceSets.main.output
}

sourceJar {
    dependsOn(generateSrc)
    from sourceSets.generated.java
}

javadoc {
    source = [sourceSets.generated.java]
}