summaryrefslogtreecommitdiff
path: root/src/main/groovy/frege/gradle/FregePlugin.groovy
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/groovy/frege/gradle/FregePlugin.groovy')
-rw-r--r--src/main/groovy/frege/gradle/FregePlugin.groovy26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/main/groovy/frege/gradle/FregePlugin.groovy b/src/main/groovy/frege/gradle/FregePlugin.groovy
new file mode 100644
index 0000000..e2777ed
--- /dev/null
+++ b/src/main/groovy/frege/gradle/FregePlugin.groovy
@@ -0,0 +1,26 @@
+package frege.gradle
+
+import org.gradle.api.Plugin
+import org.gradle.api.Project
+
+class FregePlugin implements Plugin<Project> {
+
+ void apply(Project project) {
+ project.apply(plugin: 'base')
+ def e = (FregePluginExtension) project.extensions.create("frege", FregePluginExtension)
+
+ project.task('compileFrege', type: FregeTask, group: 'Build') << {
+
+ }
+ project.tasks.classes.dependsOn("compileFrege")
+
+ def oFR = project.task('openFregeRepl', type: FregeReplTask, group: 'Runtime', dependsOn: 'classes')
+ oFR.outputs.upToDateWhen { false }
+
+
+ project.task('fregeRepl', type: ReplTask)
+ project.task('fregeNativeGen', type: NativeGenTask)
+
+ }
+
+}