updating README; adding README.md; adding Travis CI integration

This commit is contained in:
Justin Meza 2015-03-08 17:15:13 -04:00
parent 2464d0c117
commit b56bedf908
3 changed files with 117 additions and 51 deletions

6
.travis.yml Normal file
View File

@ -0,0 +1,6 @@
language: c
compiler:
- gcc
- clang
# Change this to your needs
script: cmake . && make

68
README
View File

@ -37,51 +37,52 @@ This project's homepage is at http://lolcode.org. For help, visit
http://groups.google.com/group/lci-general. To report a bug, go to
http://github.com/justinmeza/lci/issues.
Created and maintained by Justin J. Meza <justin.meza@gmail.com>.
Created and maintained by Justin J. Meza (http://justinmeza.com).
PREREQUISITES
1. You must have CMake installed (www.cmake.org).
a) If you're using a Linux distro with package managment CMake should be in
1. You must have CMake installed (www.cmake.org).
- If you're using a Linux distro with package managment CMake should be in
your repositories.
2. Python 2.7+ or Python 2.x with the argparse module installed.
INSTALLATION: THE EASY WAY ON LINUX OR MAC OSX
1. run the script install.py. Note that
Run the script install.py. Note that
$ ./install.py -h
will display a list of relavent install options. For
example, if I wanted to install lci to the directory
"/home/kurtis/opt" I would run:
will display a list of relavent install options. For example, to install lci to
the directory "/home/foo/opt", run:
$ ./install.py --prefix="/home/foo/opt"
$ ./install.py --prefix="/home/kurtis/opt"
INSTALLATION: THE MORE INVOLVED WAY ON LINUX OR MAC OSX
1. Configure lci using CMake. This can be as simple as opening up the terminal,
navigating to the directory containing lci and typing:
1. Configure lci using CMake. This can be as simple as opening up the terminal,
navigating to the directory containing lci and typing:
$ cmake .
You can also provide any other argument to the CMake configuration process
you'd like. To enable Memory testing turn the PERFORM_MEM_TESTS option on
like so:
you'd like. To enable Memory testing turn the PERFORM_MEM_TESTS option on like
so:
$ cmake -DPERFORM_MEM_TESTS:BOOL=ON .
You can also use the "ccmake" command or the CMake GUI if you prefer.
See the cmake documentation for more details.
You can also use the "ccmake" command or the CMake GUI if you prefer. See
the cmake documentation for more details.
2. Build the project:
$ make
3. Install
$ make install
4. (Optional) Build documentation:
@ -91,38 +92,3 @@ INSTALLATION: THE MORE INVOLVED WAY ON LINUX OR MAC OSX
5. (Optional) Run tests:
$ ctest
INSTALLATION ON WINDOWS
(Note that the instructions were written from the point of view of Windows 7,
but in practice, any modern version will work.)
1. Add MinGW and Python to your PATH.
- Start > right-click Computer > Properties > Advanced system settings
> Environment Variables....
- Select the "PATH" variable and click "Edit...".
- Add ";C:\MinGW\bin;C:\Python32" to the end.
3. Open an Administrator shell
- Start > All Programs > Accessories > right-click Command Prompt
> Run as administrator.
4. Navigate to the project directory using the "cd" command, for example,
> cd C:\Users\%user%\Documents\lci
5. run the script install.py. Note that
> install.py -h
will display a list of relavent install options. For
example, if I wanted to install lci to the directory
"C:\Program Files\lci" I would run:
> install.py --prefix="C:/Program Files/lci"
(notice that forward slashes are used to separate directories.)

94
README.md Normal file
View File

@ -0,0 +1,94 @@
# lci
lci is a LOLCODE (http://lolcode.org) interpreter written in C and is designed
to be correct, portable, fast, and precisely documented.
- correct: Every effort has been made to test lci's conformance to the LOLCODE
language specification. Unit tests come packaged with the lci source code.
- portable: lci follows the widely ported ANSI C specification allowing it to
compile on a broad range of systems.
- fast: Much effort has gone into producing simple and efficient code whenever
possible to the extent that the above points are not compromized.
- precisely documented: lci uses Doxygen to generate literate code
documentation, browsable here.
This project's homepage is at http://lolcode.org. For help, visit
http://groups.google.com/group/lci-general. To report a bug, go to
http://github.com/justinmeza/lci/issues.
Created and maintained by Justin J. Meza (http://justinmeza.com).
### Prerequisites
1. You must have CMake installed (http://www.cmake.org).
- If you're using a Linux distro with package managment CMake should be in
your repositories.
1. Python 2.7+ or Python 2.x with the argparse module installed.
### Installation: The Easy Way on Linux or OSX
Run the script install.py. Note that
`$ ./install.py -h`
will display a list of relavent install options. For example, to install lci to
the directory `/home/foo/opt`, run:
`$ ./install.py --prefix="/home/foo/opt"`
### Installation: The More Involved Way on Linux or OSX
1. Configure lci using CMake. This can be as simple as opening up the terminal,
navigating to the directory containing lci and typing:
`$ cmake .`
You can also provide any other argument to the CMake configuration process
you'd like. To enable Memory testing turn the `PERFORM_MEM_TESTS` option on
like so:
`$ cmake -DPERFORM_MEM_TESTS:BOOL=ON .`
You can also use the `ccmake` command or the CMake GUI if you prefer. See
the cmake documentation for more details.
1. Build the project:
`$ make`
1. Install
`$ make install`
1. (Optional) Build documentation:
`$ make doc`
1. (Optional) Run tests:
`$ ctest`
### License
Copyright (C) 2010-2015 Justin J. Meza
This program is free software: you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation, either version 3 of the License, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
this program. If not, see <http://www.gnu.org/licenses/>.
### Prerequisites