aboutsummaryrefslogtreecommitdiff
path: root/build.gradle
blob: 0e5f6adf6f1d194063373f075b2c7620613677db (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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
apply plugin: "groovy"

defaultTasks "build"

sourceCompatibility = 1.7
targetCompatibility = 1.7

ext {
    baseVersion = "0.4.2"
    isSnapshot = true
    snapshotAppendix = "-SNAPSHOT"
    projectVersion = baseVersion + (isSnapshot ? snapshotAppendix : "")

    fregeBaseVersion = "3.23.288"
    fregeClassifier = "-gaa3af0c"
    fregeVersion = "$fregeBaseVersion$fregeClassifier"

    // work around https://issues.gradle.org/browse/GRADLE-3281
    def home      = new File(System.getProperty("user.home"))
    def propfile  = new File(home, ".gradle/gradle.properties")
    if (propfile.exists()) {
        props = new Properties()
        propfile.withReader {
            props.load(it)
            System.setProperty "gradle.publish.key", props.'gradle.publish.key'
            System.setProperty "gradle.publish.secret", props.'gradle.publish.secret'
        }
    } else println "cannot find '$propfile.absolutePath'"
}

version = projectVersion
group = 'org.frege-lang'

repositories {
    mavenLocal()
    mavenCentral()
}

dependencies {
    compile "org.frege-lang:frege:$fregeVersion"
    compile "org.frege-lang:frege-repl-core:1.2"
    compile "org.frege-lang:frege-native-gen:1.3"
    compile gradleApi()
    compile localGroovy()
}


// using the publishing plugin

buildscript {
  repositories {
    maven {
      url "https://plugins.gradle.org/m2/"
    }
  }
  dependencies {
    classpath "com.gradle.publish:plugin-publish-plugin:0.9.1"
  }
}

// Details on how to publish to the gradle plugin portal
// Go to http://plugins.gradle.org, get yourself a publishing key
// and add it to ~/.gradle/gradle.properties as
// For publishing, run the task publishPlugins.

apply plugin: "com.gradle.plugin-publish"

// The configuration example below shows the minimum required properties
// configured to publish your plugin to the plugin portal
pluginBundle {
  website = 'https://github.com/Frege/frege-gradle-plugin'
  vcsUrl  = 'https://github.com/Frege/frege-gradle-plugin'
  description = 'Enabling Frege for compilation, testing, documentation, and supporting tools.'
  tags = ['frege', 'haskell', 'java']

  plugins {
    fregePlugin {
      id = 'org.frege-lang'
      displayName = 'Frege plugin'
    }
  }
}