From 7fb3f43096fa6b142eb059e1eeaca79abcaa3009 Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Mon, 14 Dec 2015 22:56:51 +0100 Subject: seme more coverage and work on frege doc task. TODO fix fregedoc task for mixed java + frege sources --- .../groovy/frege/gradle/plugins/FregeBasePlugin.java | 1 + .../groovy/frege/gradle/plugins/FregePlugin.groovy | 20 ++++++++++++++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) (limited to 'src/main/groovy/frege/gradle/plugins') diff --git a/src/main/groovy/frege/gradle/plugins/FregeBasePlugin.java b/src/main/groovy/frege/gradle/plugins/FregeBasePlugin.java index a2ebc25..6d7a639 100644 --- a/src/main/groovy/frege/gradle/plugins/FregeBasePlugin.java +++ b/src/main/groovy/frege/gradle/plugins/FregeBasePlugin.java @@ -71,6 +71,7 @@ public class FregeBasePlugin implements Plugin { compile.setDescription(String.format("Compiles the %s Frege source.", sourceSet.getName())); compile.setSource(fregeSourceSet.getFrege()); project.getTasks().getByName(sourceSet.getClassesTaskName()).dependsOn(compileTaskName); + sourceSet.compiledBy(compile); } }); } diff --git a/src/main/groovy/frege/gradle/plugins/FregePlugin.groovy b/src/main/groovy/frege/gradle/plugins/FregePlugin.groovy index 88864cc..13c1e9a 100644 --- a/src/main/groovy/frege/gradle/plugins/FregePlugin.groovy +++ b/src/main/groovy/frege/gradle/plugins/FregePlugin.groovy @@ -1,11 +1,13 @@ 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 +import org.gradle.api.file.FileCollection +import org.gradle.api.tasks.SourceSet +import org.gradle.api.tasks.util.PatternSet class FregePlugin implements Plugin { @@ -25,10 +27,24 @@ class FregePlugin implements Plugin { project.tasks.test.dependsOn("fregeQuickCheck") - project.task('fregeDoc', type: FregeDoc, group: 'frege', dependsOn: 'compileFrege') + + configureFregeDoc() project.task('fregeNativeGen', type: FregeNativeGen, group: 'frege') } + def configureFregeDoc() { + FregeDoc fregeDoc = project.tasks.create('fregeDoc', FregeDoc) + fregeDoc.group = 'frege' + fregeDoc.dependsOn "compileFrege" // TODO remove + SourceSet mainSourceSet = project.sourceSets.main + fregeDoc.module = mainSourceSet.output.classesDir.absolutePath + fregeDoc.classpath = mainSourceSet.runtimeClasspath + } + + + FileCollection findJavaModulesToExclude(SourceSet sourceSet) { + return sourceSet.allJava.asFileTree.matching { PatternSet pattern -> pattern.include("**/*.java")} + } } -- cgit