This directory contains the Maude 2 interpreter source tree. Copyright 1997-2014 SRI International, Menlo Park, CA 94025, USA.
The Maude 2 interpreter is free software. See the file COPYING for copying permission.
For more documentation and examples, see the Maude website: http://maude.cs.uiuc.edu/
The script ./build will help with building and installing Maude.
Run ./build help for instructions on how to use.
It is recommended that you use the latest versions of bison and flex since Maude is known to tickle bugs in certain older versions. You should use gcc 3.1 or later as there are code generation issues with the 3.0.* series. Maude requires the following packages:
On Ubuntu, you can run:
sudo apt install gcc bison flexAdditionally, you'll need:
On Ubuntu, you can run:
sudo apt install libgmp-dev libsigsegv-dev libtecla-dev libbdd-devNOTE: There is not an Ubuntu package for Yices2 yet.
On Ubuntu, you can run:
sudo apt install cvc4 gperfFirst build the dependencies:
./build depsThen build Maude (with or without an SMT solver):
./build maude # No SMT Solver
./build maude-cvc4 # CVC4 SMT Solver
./build maude-yices2 # Yices2 SMT SolverMerging into master will only occur when the following have been done:
- The feature branch is rebased on
master. - All tests in the repository pass.
- Code review has approved the changes.
Each feature/topic branch should use the following naming prefix scheme. If your branch falls into two categories, pick the earlier one in this list.
build/FEATURE-NAME: Branches which modify/update the build system.core/FEATURE-NAME: Any branch that touches code insrc/(modifying Core Maude).tools/FEATURE-NAME: Branches which work in thecontrib/toolsdirectory.systems/FEATURE-NAME: Branches which add systems to thecontrib/systemsdirectory.doc/FEATURE-NAME: Branches which work on repository documentation.
The actual merge into master will be performed using the merge-pr script in contrib/scripts.
./contrib/scripts/merge-pr BRANCH 'PULL-REQUEST-NAME'
git push upstream masterwith:
BRANCHas the branch to be merged.PULL-REQUEST-NAMEas the GitHub pull-request name.
This creates an empty merge commit which marks the feature addition/bug-fix.
It's assumed that the remote you're pushing to is named upstream.