aboutsummaryrefslogtreecommitdiff
path: root/src/main/groovy/frege/gradle/plugins/FregeBasePlugin.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/groovy/frege/gradle/plugins/FregeBasePlugin.java')
-rw-r--r--src/main/groovy/frege/gradle/plugins/FregeBasePlugin.java26
1 files changed, 8 insertions, 18 deletions
diff --git a/src/main/groovy/frege/gradle/plugins/FregeBasePlugin.java b/src/main/groovy/frege/gradle/plugins/FregeBasePlugin.java
index 8bf5399..a2ebc25 100644
--- a/src/main/groovy/frege/gradle/plugins/FregeBasePlugin.java
+++ b/src/main/groovy/frege/gradle/plugins/FregeBasePlugin.java
@@ -30,22 +30,20 @@ public class FregeBasePlugin implements Plugin<Project> {
}
@Override
- public void apply(Project project) {
+ public void apply(final Project project) {
// Workaround to build proper jars on Windows, see https://github.com/Frege/frege-gradle-plugin/issues/9
this.project = project;
System.setProperty("file.encoding", "UTF-8");
project.getPluginManager().apply(JavaBasePlugin.class);
fregePluginExtension = project.getExtensions().create(EXTENSION_NAME, FregePluginExtension.class);
JavaBasePlugin javaBasePlugin = project.getPlugins().getPlugin(JavaBasePlugin.class);
-
- configureCompileDefaults(new FregeRuntime(project));
configureSourceSetDefaults(javaBasePlugin);
}
private void configureSourceSetDefaults(final JavaBasePlugin javaBasePlugin) {
project.getConvention().getPlugin(JavaPluginConvention.class).getSourceSets().all(new Action<SourceSet>() {
- public void execute(SourceSet sourceSet) {
+ public void execute(final SourceSet sourceSet) {
final DefaultFregeSourceSet fregeSourceSet = new DefaultFregeSourceSet(((DefaultSourceSet) sourceSet).getDisplayName(), fileResolver);
new DslObject(sourceSet).getConvention().getPlugins().put("frege", fregeSourceSet);
@@ -63,6 +61,12 @@ public class FregeBasePlugin implements Plugin<Project> {
FregeCompile compile = project.getTasks().create(compileTaskName, FregeCompile.class);
compile.setModule(project.file(defaultSourcePath).getAbsolutePath());
javaBasePlugin.configureForSourceSet(sourceSet, compile);
+ compile.getConventionMapping().map("fregepath", new Callable() {
+ public Object call() throws Exception {
+ return sourceSet.getCompileClasspath();
+ }
+ });
+
compile.dependsOn(sourceSet.getCompileJavaTaskName());
compile.setDescription(String.format("Compiles the %s Frege source.", sourceSet.getName()));
compile.setSource(fregeSourceSet.getFrege());
@@ -70,18 +74,4 @@ public class FregeBasePlugin implements Plugin<Project> {
}
});
}
-
- private void configureCompileDefaults(final FregeRuntime fregeRuntime) {
- this.project.getTasks().withType(FregeCompile.class, new Action<FregeCompile>() {
- public void execute(final FregeCompile compile) {
- compile.getConventionMapping().map("fregeClasspath", new Callable() {
- public Object call() throws Exception {
- return fregeRuntime.inferFregeClasspath(compile.getClasspath());
- }
-
- });
- }
- });
- }
-
}