All Projects → Frege → frege-gradle-plugin

Frege / frege-gradle-plugin

Licence: BSD-3-Clause license
Gradle plugin for compiling Frege projects

Programming Languages

groovy
2714 projects
java
68154 projects - #9 most used programming language
shell
77523 projects

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.

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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].