Skip to content

Commit

Permalink
Change dir naming during build; add comment about external tool integ…
Browse files Browse the repository at this point in the history
…rations
  • Loading branch information
WilfredTA committed May 22, 2022
1 parent 0a3abb4 commit 6cca5a0
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 8 deletions.
9 changes: 5 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
OS=$(shell uname -s | tr '[:upper:]' '[:lower:]')
prefix ?= $(shell pwd)/build
ATHENA_POSTFIX=$(OS)-$(version)
TEST_LOGS_DIR ?= ./logs/tests/
INSTALLDIR ?= $(prefix)/athena
INSTALLDIR ?= $(prefix)/athena-$(ATHENA_POSTFIX)
version=$(shell cat ./version.txt)
ATHENA_POSTFIX=$(OS)-$(version)

ATHENA_HOME ?= $(shell pwd)

.PHONY: install_external_tools
Expand Down Expand Up @@ -31,8 +32,8 @@ build:
.PHONY: packages
packages: build
mkdir ./packages
cd $(prefix) && tar czvf athena-$(ATHENA_POSTFIX).tgz ./athena
cd $(prefix) && zip -r athena-$(ATHENA_POSTFIX).zip ./athena/*
cd $(prefix) && tar czvf athena-$(ATHENA_POSTFIX).tgz ./athena-$(ATHENA_POSTFIX)
cd $(prefix) && zip -r athena-$(ATHENA_POSTFIX).zip ./athena-$(ATHENA_POSTFIX)/*
mv $(prefix)/*.tgz ./packages
mv $(prefix)/*.zip ./packages

Expand Down
25 changes: 22 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,28 @@ module Asymmetry {
}
```

## Quickstart

To start using Athena right away, simply download and unpack the latest [release](https://github.com/AthenaFoundation/athena/releases/latest). After doing so, ensure that the `ATHENA_HOME` environment variable is set to the path to the files.

After expanding the packaged release, the contents of the `athena-[platform]-[version]` directory should look like this

```sh

tannr@pop-os: ~/athena-linux-v1.4.1$ ls ./

athena* build_logs.txt lib/ util/
```

It is recommended to also add Athena to your `$PATH` for convenience.

Some features and tests may require an external automated theorem prover and/or SAT solver. The defaults are SPASS and Minisat. These tools are *not* shipped with Athena, so must be installed independently if they are needed (you will need them, for example, if you intend on using the `sat` or `prove` functions within an Athena project).

# Building From Source

For build instructions, please refer to the [Building Athena](https://github.com/AthenaFoundation/athena/wiki/Building-Athena) page in the wiki.

## Codebase Structure
Athena is implemented in SML. At its present state, that implementation comprises 80 files, listed in sources.cm.

Expand All @@ -51,9 +73,6 @@ Note that `athena.sml` is at the top of the graph (it's essentially the 'main' f
`base.sml` is at the bottom.


# Building Athena

For build instructions, please refer to the [Building Athena](https://github.com/AthenaFoundation/athena/wiki/Building-Athena) page in the wiki.


# Regression testing
Expand Down
2 changes: 1 addition & 1 deletion scripts/make_mlton_binary
Original file line number Diff line number Diff line change
@@ -1 +1 @@
mlton @MLton gc-summary -- -output $INSTALLDIR/athena-$ATHENA_POSTFIX -verbose 1 -default-ann 'allowFFI true' -drop-pass deepFlatten -codegen native athena.mlb
mlton @MLton gc-summary -- -output $INSTALLDIR/athena -verbose 1 -default-ann 'allowFFI true' -drop-pass deepFlatten -codegen native athena.mlb

0 comments on commit 6cca5a0

Please sign in to comment.