Frege Gradle Plugin
This is the official Gradle plugin to compile Frege projects (https://github.com/Frege/frege). See the example project (https://github.com/mperry/frege-gradle-example) for examples on the usage of this plugin.
This plugin is an alternative to using Gradle’s JavaEx task to start the Frege tools. Those who prefer the latter might want to have a look at (https://github.com/Dierk/HelloFrege)
Plugin Application
The gradle plugin portal page for Frege documents how to apply the Frege plugin (https://plugins.gradle.org/plugin/org.frege-lang).
For applying the plugin in all Gradle versions use:
buildscript {
repositories {
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath "gradle.plugin.org.frege-lang:frege-gradle-plugin:0.8"
}
}
apply plugin: "org.frege-lang"
To apply the plugin using the new incubating, plugin mechanism (since Gradle 2.1), add:
plugins {
id "org.frege-lang" version "0.8"
}
Tasks
This plugin creates the following tasks:
-
fregeRepl
-
fregeQuickCheck
-
fregeDoc
-
fregeNativeGen
-
compileFrege
-
compileTestFrege
The plugin adds dependencies so that using the build
task is typically all that is required to invoke the compileFrege
and compileTestFrege
tasks. These task dependencies include:
-
classes → compileFrege → compileJava
-
testClasses → compileTestFrege → compileTestJava
-
test → fregeQuickCheck → testClasses
Task Help
TODO: Add options and descriptions for each task above.
Example
See:
-
Plugin application: https://plugins.gradle.org/plugin/org.frege-lang
-
Plugin usage: https://github.com/mperry/frege-gradle-example
Continuous Integration
The Travis CI build of this repository is at https://travis-ci.org/Frege/frege-gradle-plugin.
Snapshots
Snapshot releases are available from the Sonatype repository at https://oss.sonatype.org/content/groups/public/org/frege-lang.