blob: a6df2d93ccc1e3f90ef3f3aaef04604a08bbbefe [file] [log] [blame]
Ben Gruver181c04c2012-09-16 00:03:44 -07001/*
2 * Copyright 2012, Google Inc.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met:
8 *
9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * * Redistributions in binary form must reproduce the above
12 * copyright notice, this list of conditions and the following disclaimer
13 * in the documentation and/or other materials provided with the
14 * distribution.
15 * * Neither the name of Google Inc. nor the names of its
16 * contributors may be used to endorse or promote products derived from
17 * this software without specific prior written permission.
18 *
19 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 */
31
Ben Gruvercc5871f2012-09-16 00:18:03 -070032apply plugin: 'idea'
33
Ben Gruver7d7ee582012-09-14 20:56:58 -070034subprojects {
35 apply plugin: 'java'
Ben Gruvercc5871f2012-09-16 00:18:03 -070036 apply plugin: 'idea'
Ben Gruver7d7ee582012-09-14 20:56:58 -070037
Ben Gruver5cf9fe72012-09-15 19:16:16 -070038 ext.baseVersion = '1.3.4'
39 ext.jarVersion = baseVersion
Ben Gruver7d1263a2012-09-15 16:54:20 -070040
41 // For non-release builds, we want to append the commit and
42 // dirty status to the version
43 gradle.taskGraph.whenReady {
44 if (!it.hasTask(release)) {
45 def versionSuffix
46 try {
47 def git = org.eclipse.jgit.api.Git.open(file('.'))
48 def head = git.getRepository().getRef("HEAD")
49 versionSuffix = head.getObjectId().abbreviate(8).name()
50
51 if (!git.status().call().clean) {
52 versionSuffix += '-dirty'
53 }
54 } catch (Exception) {
55 // In case we can't get the commit for some reason,
56 // just use -dev
57 versionSuffix = 'dev'
58 }
59
Ben Gruver5cf9fe72012-09-15 19:16:16 -070060 version = baseVersion + '-' + versionSuffix
61
62 // use <version>-dev for the jar name, rather than the
63 // full commit+dirty string
64 jarVersion = baseVersion + '-dev'
Ben Gruverc9afead2012-09-15 22:56:10 -070065 } else {
66 version = baseVersion
Ben Gruver5cf9fe72012-09-15 19:16:16 -070067 }
68
69 jar {
70 version = jarVersion
Ben Gruver7d1263a2012-09-15 16:54:20 -070071 }
72 }
73
Ben Gruver7d7ee582012-09-14 20:56:58 -070074 repositories {
75 mavenCentral()
76 }
Ben Gruver7d1263a2012-09-15 16:54:20 -070077
78 // Note: please don't use this. This is strictly for the official releases
79 // that are posted on the googlecode download page.
80 task release {
81 }
82}
83
84
85buildscript {
86 repositories {
87 mavenCentral()
88 }
89 dependencies {
90 classpath 'org.eclipse.jgit:org.eclipse.jgit:2.0.0.201206130900-r'
91 }
Ben Gruver7d7ee582012-09-14 20:56:58 -070092}