1//
2// Copyright (c) ZeroC, Inc. All rights reserved.
3//
4
5subprojects {
6    project.ext.topSrcDir = "$rootProject.projectDir/.."
7
8    project.version = iceVersion
9    project.group = "com.zeroc"
10
11    apply plugin: 'java'
12    apply plugin: 'idea'
13    apply from: "$project.ext.topSrcDir/java/gradle/ice.gradle"
14
15    // We set this early so that slice.jarDir is correct
16    slice.compat = true
17
18    repositories {
19        if (slice.jarDir) {
20            flatDir {
21                name "local"
22                dirs slice.jarDir
23            }
24        }
25
26        if(this.devRepo) {
27            maven {
28                url this.devRepo
29            }
30        }
31
32        if(new File("/usr/share/maven-repo").exists()) {
33            maven {
34                url "/usr/share/maven-repo"
35            }
36        }
37
38        mavenCentral()
39    }
40
41    jar {
42        manifest {
43            attributes("Built-By": "ZeroC, Inc.")
44        }
45    }
46
47    tasks.withType(JavaCompile) {
48        options.compilerArgs << "-Xlint:unchecked" << "-Xlint:-options"
49        options.encoding = "UTF-8"
50        options.deprecation = true
51    }
52
53    idea.module {
54        excludeDirs -= file(buildDir)
55        buildDir.listFiles({d, f ->f != 'generated-src'} as FilenameFilter).each { excludeDirs += it }
56    }
57}
58
59task dist()
60dist.dependsOn(project(":ice-compat").assemble)
61dist.dependsOn(project(":glacier2-compat").assemble)
62dist.dependsOn(project(":icebt-compat").assemble)
63dist.dependsOn(project(":icegrid-compat").assemble)
64dist.dependsOn(project(":icebox-compat").assemble)
65dist.dependsOn(project(":icediscovery-compat").assemble)
66dist.dependsOn(project(":icelocatordiscovery-compat").assemble)
67dist.dependsOn(project(":icepatch2-compat").assemble)
68dist.dependsOn(project(":icestorm-compat").assemble)
69
70//
71// Used to build the gradle wrapper to automatically download and install
72// the version of gradle needed to build Ice.
73//
74wrapper {
75    gradleVersion = "4.10.2"
76}
77