uuagc-cabal: Cabal plugin for UUAGC

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

Cabal plugin for the Universiteit Utrecht Attribute Grammar System


[Skip to Readme]

Properties

Versions 1.0.0.0, 1.0.0.1, 1.0.0.2, 1.0.0.3, 1.0.0.4, 1.0.0.5, 1.0.0.6, 1.0.0.7, 1.0.0.9, 1.0.0.10, 1.0.2.0, 1.0.3.0, 1.0.4.0, 1.0.5.0, 1.0.6.0, 1.1.0.0, 1.1.0.0, 1.2.0.0, 1.3.0.0
Change log None available
Dependencies base (>=4 && <5), Cabal (>=2), containers (>=0.3), directory (>=1.0.1.1), filepath (>=1.1.0.4), mtl (>=2.2.1), process (>=1.0.1.3), uulib (>=0.9.14) [details]
License BSD-3-Clause
Copyright Universiteit Utrecht
Author Software Technology at Universiteit Utrecht
Maintainer Atze Dijkstra (atzedijkstra@gmail.com)
Category Development
Home page https://github.com/UU-ComputerScience/uuagc
Bug tracker https://github.com/UU-ComputerScience/uuagc/issues
Uploaded by AtzeDijkstra at 2018-01-07T21:23:38Z

Modules

[Index]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Readme for uuagc-cabal-1.1.0.0

[back to package description]
This is a plugin for the UUAG system.

To use UUAG in combination with Cabal, add a dependency on the packages:
uuagc         -- installs the tool: uuagc
uuagc-cabal   -- installs a cabal plugin that uses uuagc
Note that this package does not have a dependency on uuagc. You can use
this module without having uuagc installed.
(whether this is useful is a different question)

Then write a custom Setup.hs:

--
module Main where

import Distribution.Simple
import Distribution.Simple.UUAGC (uuagcLibUserHook)
import UU.UUAGC (uuagc)

main = defaultMainWithHooks (uuagcLibUserHook uuagc)
--

Add extra-source-files: uuagc_options
The contents of this file are options per AG module, as specified
as follows. Write for each AG file:
* Two lines in a file uuagc_options in the root of the package:
   --
   file: "src-ag/Desugar.ag"
   options: module, pretty, catas, semfuns, signatures, genlinepragmas
   --
  The options depend on what you actually want to compile.
* Add an extra source file to the AG file in the cabal file:
    extra-source-files: src/MyProgram.ag
* Add the module to the modules list in the cabal file.


Originally written by Juan Cardona (or one of his students).