diff options
Diffstat (limited to 'src/main/groovy/frege')
-rw-r--r-- | src/main/groovy/frege/gradle/CompileTask.groovy | 2 | ||||
-rw-r--r-- | src/main/groovy/frege/gradle/FregeBasePlugin.groovy | 17 | ||||
-rw-r--r-- | src/main/groovy/frege/gradle/FregePlugin.groovy | 11 |
3 files changed, 20 insertions, 10 deletions
diff --git a/src/main/groovy/frege/gradle/CompileTask.groovy b/src/main/groovy/frege/gradle/CompileTask.groovy index 07850a5..d297d3d 100644 --- a/src/main/groovy/frege/gradle/CompileTask.groovy +++ b/src/main/groovy/frege/gradle/CompileTask.groovy @@ -81,7 +81,7 @@ class CompileTask extends DefaultTask { @Optional @Input List<File> fregePaths = [] - @Optional @Input + @InputFiles List<File> sourcePaths = [deduceSourceDir(project)] @Optional @OutputDirectory diff --git a/src/main/groovy/frege/gradle/FregeBasePlugin.groovy b/src/main/groovy/frege/gradle/FregeBasePlugin.groovy new file mode 100644 index 0000000..5af7a86 --- /dev/null +++ b/src/main/groovy/frege/gradle/FregeBasePlugin.groovy @@ -0,0 +1,17 @@ +package frege.gradle + +import org.gradle.api.Plugin +import org.gradle.api.Project +import org.gradle.api.plugins.JavaBasePlugin + +class FregeBasePlugin implements Plugin<Project> { + static String EXTENSION_NAME = "frege" + + @Override + void apply(Project project) { + // Workaround to build proper jars on Windows, see https://github.com/Frege/frege-gradle-plugin/issues/9 + System.setProperty("file.encoding", "UTF-8") + project.getPluginManager().apply(JavaBasePlugin.class); + project.extensions.create(EXTENSION_NAME, FregePluginExtension) + } +} diff --git a/src/main/groovy/frege/gradle/FregePlugin.groovy b/src/main/groovy/frege/gradle/FregePlugin.groovy index 29be393..e8ee2d5 100644 --- a/src/main/groovy/frege/gradle/FregePlugin.groovy +++ b/src/main/groovy/frege/gradle/FregePlugin.groovy @@ -1,20 +1,13 @@ package frege.gradle - -import groovy.transform.TypeChecked +import fj.data.Option import org.gradle.api.Plugin import org.gradle.api.Project -import fj.data.Option -import org.gradle.api.plugins.JavaPlugin - //@TypeChecked class FregePlugin implements Plugin<Project> { void apply(Project project) { - // Workaround to build proper jars on Windows, see https://github.com/Frege/frege-gradle-plugin/issues/9 - System.setProperty("file.encoding", "UTF-8") - project.plugins.apply(JavaPlugin) - def e = (FregePluginExtension) project.extensions.create("frege", FregePluginExtension) + project.plugins.apply(FregeBasePlugin) project.task('compileFrege', type: CompileTask, group: 'Build', dependsOn: "compileJava") { module = CompileTask.deduceSourceDir(project).absolutePath |