Commit dcd563d6 authored by Ning Wang's avatar Ning Wang

sync up and mergewith upstream

parents 48da9a5f 96c32ccc
This repository contains things related to
Hoopl: A Higher-Order OPtimization Library
** The closest thing we have to a SAMPLE CLIENT is in ./testing **
Directory Contents
paper/ A paper about Hoopl
prototypes/ A sampling of prototypes and early designs
src/ The current official sources to the Cabal package
testing/ Tests, including a sample client. See ./testing/README.
To build the library, change to the src directory and run
cabal configure --prefix=$HOME --user # we have no idea what this means
cabal build
cabal install --enable-documentation
To run the tests in the folder testing/, change to the top level and run
cabal configure --enable-tests
cabal test
You'll need a Haskell Platform, which should include appropriate
versions of Cabal and GHC.
To upload to Hackage,
cabal sdist
cabal upload dist/something.tar.gz
Developers, please see HOWTO-BRANCHES
The `hoopl` Package [![Hackage](https://img.shields.io/hackage/v/hoopl.svg)](https://hackage.haskell.org/package/hoopl) [![Build Status](https://travis-ci.org/haskell/hoopl.svg)](https://travis-ci.org/haskell/hoopl)
===================
## Hoopl: A Higher-Order OPtimization Library
API documentation can be found on [Hackage](https://hackage.haskell.org/package/hoopl).
| Directory | Contents
| -------------- | ---------
| `paper/` | A paper about Hoopl
| `prototypes/` | A sampling of prototypes and early designs
| `src/` | The current official sources to the Cabal package
| `testing/` | Tests, including a sample client. See [`testing/README`](testing/README)
### Development Notes
To build the library, change to the src directory and run
cabal configure --prefix=$HOME --user # we have no idea what this means
cabal build
cabal install --enable-documentation
To run the tests in the folder testing/, change to the src directory and run
cabal configure --enable-tests
cabal test
You'll need a Haskell Platform, which should include appropriate
versions of Cabal and GHC.
### Checklist for Making Releases
In order to facilitate GHC development's workflow, the version in [`hoopl.cabal`](hoopl.cabal) is to be bumped as soon as a change requires a respective version bump (according to the PVP) relative to the last released `hoopl` version.
1. Make sure `hoopl` passes Travis for all GHC versions in the build-matrix
2. Update Changelog (& `git commit`)
3. Generate source tarball via `cabal sdist` and upload a candidate to Hackage (see note below), and inspect the result.
4. If everything checks out, make an annotated and GPG-signed Git release tag: `git tag -a -s v${VER} -m "hoopl ${VER}"`
5. Publish (there's a button for that on Hackage) the package candidate
6. Work on next release
Note: To upload to Hackage,
cabal sdist
cabal upload dist/hoopl-*.tar.gz
However, it's recommended use the Hackage feature for
[uploading a candidate](http://hackage.haskell.org/packages/candidates/upload).
# Changelog for [`hoopl` package](http://hackage.haskell.org/package/hoopl)
## 3.10.2.1 *Apr 2015*
## 3.10.1.1 *Apr 2015*
- Add #if CABAL macro to several hoopl source files such that the Cabal generated macro is not included when building in ghci
- Change the test code (testing/*) to compare the converted graphs against the expected graphs in AST form
- Update the cabal file to run tests and generate a test coverage report
- Unhide gSplice of Hoopl.Graph
## 3.10.2.0 *Apr 2015*
## 3.10.1.0 *Apr 2015*
- Re-export runWithFuel from Compiler.Hoopl.
## 3.10.1.0 **TBA**
- Remove redundant constraints
## 3.10.0.2 *Dec 2014*
......
Name: hoopl
Version: 3.10.2.1
Version: 3.10.1.0
-- NOTE: Don't forget to update ./changelog.md
Description:
Higher-order optimization library
......@@ -18,7 +18,7 @@ Cabal-Version: >=1.10
Synopsis: A library to support dataflow analysis and optimization
Category: Compilers/Interpreters
Tested-With: GHC>=7.0.1
Extra-Source-Files: README, hoopl.pdf, changelog.md
Extra-Source-Files: README.md, hoopl.pdf, changelog.md
Source-repository head
Type: git
......
......@@ -29,7 +29,7 @@ import Compiler.Hoopl.Dataflow hiding ( wrapFR, wrapFR2, wrapBR, wrapBR2
import Compiler.Hoopl.Debug
import Compiler.Hoopl.Fuel hiding (withFuel, getFuel, setFuel)
import Compiler.Hoopl.Block
import Compiler.Hoopl.Graph hiding (splice{-, gSplice-})
import Compiler.Hoopl.Graph hiding (splice)
import Compiler.Hoopl.Label hiding (uniqueToLbl, lblToUnique)
import Compiler.Hoopl.MkGraph
import Compiler.Hoopl.Pointed
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment