aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/ch
diff options
context:
space:
mode:
authortricktron <tgagnaux@gmail.com>2022-02-25 10:19:16 +0100
committerGitHub <noreply@github.com>2022-02-25 10:19:16 +0100
commitd852eb27823a53abb97366bae84ad0b806d6c748 (patch)
tree05345a77152410d3d8354e209108e7fd125080f6 /src/main/java/ch
parent5dda097196baa60fc45bb4f300439d791ccb1130 (diff)
parent4ea98e2199fcabbb585c4eb9187b3f00d7197d39 (diff)
downloadfrege-gradle-plugin-d852eb27823a53abb97366bae84ad0b806d6c748.tar.gz
frege-gradle-plugin-d852eb27823a53abb97366bae84ad0b806d6c748.tar.bz2
frege-gradle-plugin-d852eb27823a53abb97366bae84ad0b806d6c748.zip
Merge pull request #26 from tricktron/f-only-compile-mainModule-and-replModule-files
Only Compile Specified Files if Specified
Diffstat (limited to 'src/main/java/ch')
-rw-r--r--src/main/java/ch/fhnw/thga/gradleplugins/CompileFregeTask.java12
-rw-r--r--src/main/java/ch/fhnw/thga/gradleplugins/FregePlugin.java11
2 files changed, 10 insertions, 13 deletions
diff --git a/src/main/java/ch/fhnw/thga/gradleplugins/CompileFregeTask.java b/src/main/java/ch/fhnw/thga/gradleplugins/CompileFregeTask.java
index a39a07b..0620e51 100644
--- a/src/main/java/ch/fhnw/thga/gradleplugins/CompileFregeTask.java
+++ b/src/main/java/ch/fhnw/thga/gradleplugins/CompileFregeTask.java
@@ -11,7 +11,6 @@ import javax.inject.Inject;
import org.gradle.api.DefaultTask;
import org.gradle.api.file.DirectoryProperty;
import org.gradle.api.file.RegularFileProperty;
-import org.gradle.api.logging.LogLevel;
import org.gradle.api.model.ObjectFactory;
import org.gradle.api.provider.ListProperty;
import org.gradle.api.provider.Property;
@@ -22,6 +21,7 @@ import org.gradle.api.tasks.InputDirectory;
import org.gradle.api.tasks.InputFile;
import org.gradle.api.tasks.Internal;
import org.gradle.api.tasks.JavaExec;
+import org.gradle.api.tasks.Optional;
import org.gradle.api.tasks.OutputDirectory;
import org.gradle.api.tasks.PathSensitive;
import org.gradle.api.tasks.PathSensitivity;
@@ -48,6 +48,7 @@ public abstract class CompileFregeTask extends DefaultTask {
public abstract Property<String> getFregeDependencies();
@Input
+ @Optional
@Option(option = "compileItem",
description = "The absolute path to the frege file or the module name"
)
@@ -69,11 +70,8 @@ public abstract class CompileFregeTask extends DefaultTask {
@Internal
public final Provider<List<String>> getCompileItems() {
return getFregeCompileItem()
- .map(name ->
- {
- return name.isEmpty() ? getFregeSourceFiles().get()
- : List.of(name);
- });
+ .map(name -> List.of(name))
+ .orElse(getFregeSourceFiles());
}
@Internal
@@ -116,7 +114,6 @@ public abstract class CompileFregeTask extends DefaultTask {
@TaskAction
public void compileFrege()
{
- this.getLogging().captureStandardOutput(LogLevel.LIFECYCLE);
List<String> targetDirectoryArg = List.of(
"-d",
getFregeOutputDir().getAsFile().get().getAbsolutePath()
@@ -124,7 +121,6 @@ public abstract class CompileFregeTask extends DefaultTask {
javaExec.setClasspath(
getProject()
.files(getFregeCompilerJar()))
- .setErrorOutput(System.out)
.setArgs(buildCompilerArgsFromProperties(targetDirectoryArg))
.exec();
}
diff --git a/src/main/java/ch/fhnw/thga/gradleplugins/FregePlugin.java b/src/main/java/ch/fhnw/thga/gradleplugins/FregePlugin.java
index e1f410a..a4fa7b8 100644
--- a/src/main/java/ch/fhnw/thga/gradleplugins/FregePlugin.java
+++ b/src/main/java/ch/fhnw/thga/gradleplugins/FregePlugin.java
@@ -3,6 +3,7 @@ package ch.fhnw.thga.gradleplugins;
import org.gradle.api.Plugin;
import org.gradle.api.Project;
import org.gradle.api.artifacts.Configuration;
+import org.gradle.api.logging.LogLevel;
import org.gradle.api.tasks.TaskProvider;
public class FregePlugin implements Plugin<Project>
@@ -52,7 +53,6 @@ public class FregePlugin implements Plugin<Project>
task.getFregeOutputDir().set(extension.getOutputDir());
task.getFregeCompilerFlags().set(extension.getCompilerFlags());
task.getFregeDependencies().set(implementation.getAsPath());
- task.getFregeCompileItem().set("");
}
);
@@ -61,7 +61,6 @@ public class FregePlugin implements Plugin<Project>
RunFregeTask.class,
task ->
{
-
task.getMainModule().set(extension.getMainModule());
task.dependsOn(compileFregeTask.map(
compileTask ->
@@ -69,7 +68,7 @@ public class FregePlugin implements Plugin<Project>
compileTask.getFregeCompileItem().set(task.getMainModule());
return compileTask;
}
- ));
+ ).get());
task.getFregeCompilerJar().set(
setupFregeCompilerTask.get().getFregeCompilerOutputPath());
task.getFregeOutputDir().set(extension.getOutputDir());
@@ -86,10 +85,12 @@ public class FregePlugin implements Plugin<Project>
task.dependsOn(compileFregeTask.map(
compileTask ->
{
- compileTask.getFregeCompileItem().set(task.getReplModule());
+ compileTask.getFregeCompileItem().set(extension.getReplModule());
+ compileTask.getLogging().captureStandardOutput(LogLevel.LIFECYCLE);
+ compileTask.getLogging().captureStandardError(LogLevel.LIFECYCLE);
return compileTask;
}
- ));
+ ).get());
task.getFregeCompilerJar().set(
setupFregeCompilerTask.get().getFregeCompilerOutputPath());
task.getFregeOutputDir().set(extension.getOutputDir());