aboutsummaryrefslogtreecommitdiff
path: root/src/main/groovy/frege/gradle/plugins/FregePlugin.groovy
diff options
context:
space:
mode:
authorDierk König <dierk.koenig@canoo.com>2015-11-21 10:09:31 +0100
committerDierk König <dierk.koenig@canoo.com>2015-11-21 10:09:31 +0100
commitf0807811f48c50b6a5fe7816ef48c148be9f9903 (patch)
treec61df925b637d26c95086510ee471ac861a36731 /src/main/groovy/frege/gradle/plugins/FregePlugin.groovy
parentfa6dce676590c83bc84d130e1241cf585f88a469 (diff)
parent73dd702743a5b4d8816e495e55c19f391669fc25 (diff)
downloadfrege-gradle-plugin-f0807811f48c50b6a5fe7816ef48c148be9f9903.tar.gz
frege-gradle-plugin-f0807811f48c50b6a5fe7816ef48c148be9f9903.tar.bz2
frege-gradle-plugin-f0807811f48c50b6a5fe7816ef48c148be9f9903.zip
Merge pull request #28 from breskeby/base-plugin
Base plugin
Diffstat (limited to 'src/main/groovy/frege/gradle/plugins/FregePlugin.groovy')
-rw-r--r--src/main/groovy/frege/gradle/plugins/FregePlugin.groovy34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/main/groovy/frege/gradle/plugins/FregePlugin.groovy b/src/main/groovy/frege/gradle/plugins/FregePlugin.groovy
new file mode 100644
index 0000000..af05228
--- /dev/null
+++ b/src/main/groovy/frege/gradle/plugins/FregePlugin.groovy
@@ -0,0 +1,34 @@
+package frege.gradle.plugins
+
+import frege.gradle.tasks.FregeDoc
+import frege.gradle.tasks.FregeNativeGen
+import frege.gradle.tasks.FregeQuickCheck
+import frege.gradle.tasks.FregeRepl
+import org.gradle.api.Plugin
+import org.gradle.api.Project
+
+class FregePlugin implements Plugin<Project> {
+
+ Project project
+
+ void apply(Project project) {
+ this.project = project
+
+ project.plugins.apply(FregeBasePlugin)
+ project.plugins.apply("java")
+
+ def replTask = project.task('fregeRepl', type: FregeRepl, group: 'Tools', dependsOn: 'compileFrege')
+ replTask.outputs.upToDateWhen { false } // always run, regardless of up to date checks
+
+ def checkTask = project.task('fregeQuickCheck', type: FregeQuickCheck, group: 'Verification', dependsOn: 'testClasses')
+ checkTask.outputs.upToDateWhen { false } // always run, regardless of up to date checks
+
+ project.tasks.test.dependsOn("fregeQuickCheck")
+
+ project.task('fregeDoc', type: FregeDoc, group: 'Documentation', dependsOn: 'compileFrege')
+
+ project.task('fregeNativeGen', type: FregeNativeGen, group: 'Tools')
+
+ }
+
+}