Skip to content

Commit 70dc89c

Browse files
committed
Cleaning up README and adding Steven Johnson to the license
1 parent b309d27 commit 70dc89c

File tree

2 files changed

+33
-32
lines changed

2 files changed

+33
-32
lines changed

LICENSE

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
Copyright (c) 2015, ArrayFire
2+
Copyright (c) 2015, Steven Johnson aka ggcrunchy (steve@xibalbastudios.com)
23
All rights reserved.
34

45
Redistribution and use in source and binary forms, with or without modification,

README.md

Lines changed: 32 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,67 +1,67 @@
1-
(Pilfered from [Rust's README](https://github.com/arrayfire/arrayfire-rust), adapting...)
2-
31
# Arrayfire Lua Bindings
42

5-
[ArrayFire](https://github.com/arrayfire/arrayfire) is a high performance library for parallel computing with an easy-to-use API. It enables users to write scientific computing code that is portable across CUDA, OpenCL and CPU devices. This project provides Lua bindings for the ArrayFire library. The wrapper is currently compliant with ArrayFire 3.2 API (and lower). If you find any bugs, please report them [here](https://github.com/arrayfire/arrayfire-lua/issues).
3+
[ArrayFire](https://github.com/arrayfire/arrayfire) is a high performance library for parallel computing with an easy-to-use API. It enables users to write scientific computing code that is portable across CUDA, OpenCL and CPU devices. This project provides Lua bindings for the ArrayFire library. The wrapper is currently compliant with ArrayFire 3.2 API (and higher). If you find any bugs, please report them [here](https://github.com/arrayfire/arrayfire-lua/issues).
64

75
## Documentation
86

9-
You can find the most recent updated documentation TODO.
7+
TODO
108

119
## Supported platforms
1210

13-
Currently, only Windows. So far, compiles with [Lua 5.1](http://www.lua.org/ftp/lua-5.1.5.tar.gz).
11+
Currently, tested only Windows with [Lua 5.1](http://www.lua.org/ftp/lua-5.1.5.tar.gz).
12+
13+
- Progress being made on Linux and OSX with Lua 5.2 and 5.3
14+
15+
## Installing the dependencies
1416

15-
## Build from Source
17+
### Get ArrayFire libraries
1618

1719
You can install ArrayFire using one of the following two ways.
1820

1921
- [Download and install binaries](https://arrayfire.com/download)
2022
- [Build and install from source](https://github.com/arrayfire/arrayfire)
2123

22-
- Build Lua, e.g. from above source
23-
- arrayfire depends on Lua (TODO: probably should add -lua suffix...)
24-
- (Windows) client depends on both of these
25-
- In these latter two, linkage required for appropriate ArrayFire library
24+
**Post Installation Instructions**
25+
26+
- Please read [the wiki page](https://github.com/arrayfire/arrayfire-lua/wiki) for setting up the proper environment variables.
27+
28+
### Get Lua libraries and header files
2629

27-
TODO: [5.2](http://www.lua.org/ftp/lua-5.2.4.tar.gz), [5.3](http://www.lua.org/ftp/lua-5.3.2.tar.gz)... [LuaJIT source](http://luajit.org/download.html).
28-
Alternatives such as [Ravi](https://github.com/dibyendumajumdar/ravi) and [Terra](https://github.com/zdevito/terra)?
30+
If you do not have the pre-installed library, use the source in `arrayfire-lua/lua` folder for building the libraries.
2931

30-
Preprocessor stuff:
32+
The following pre-processors need to be set when building lua.
3133

32-
For Lua: LUA_BUILD_AS_DLL; Windows-specific: _CRT_SECURE_NO_WARNINGS
33-
For arrayfire: AFDLL
34+
- LUA_BUILD_AS_DLL
35+
- CRT_SECURE_NO_WARNINGS
3436

35-
Not implemented: WANT_CUDA, WANT_OPENCL to include interface bindings (are there already alternatives?)
37+
## Building the arrayfire module
3638

37-
Setup:
39+
### Windows
3840

39-
Configuring package.path, package.cpath (ArrayFireWrapper/ArrayFireWrapper.cpp doing this, for Windows anyhow)
40-
LuaJIT FFI looking for some variables (TODO: explain)
41-
42-
## Example
41+
Use the visual studio project file present in `src/Lua/arrayfire` to build the library.
4342

43+
### Linux / OSX
4444

45+
Use the `cmake` file in `src/Lua/arrayfire` to build the library.
4546

46-
### Sample output
47+
- Ensure `ArrayFire_DIR` points to `/path/to/arrayfire/share/ArrayFire/cmake`
4748

49+
## Running the example
50+
51+
### Linux / OSX
52+
53+
$ export LUA_PATH="/path/to/arrayfire-lua/lib/?.lua;;"
54+
$ export LUA_CPATH="/path/to/arrayfire-lua/src/Lua/arrayfire/build/?.so;;"
55+
$ lua helloworld/helloworld.lua
4856

4957
## Issues
5058

59+
Currently segfaults on Linux. Untested on OSX.
5160

5261
## Note
5362

5463
This is a work in progress and is not intended for production use.
5564

5665
## Acknowledgements
5766

58-
The ArrayFire library is written by developers at [ArrayFire](http://arrayfire.com) LLC
59-
with (TODO: contributions)?
60-
61-
The developers at ArrayFire LLC have received partial financial support
62-
from several grants and institutions. Those that wish to receive public
63-
acknowledgement are listed below:
64-
65-
### Grants
66-
67-
(Not sure if this was for Rust or ArrayFire... if the latter, add back in)
67+
This project began with significant contributions from [Steven Johnson](https://github.com/ggcrunchy). It is currently being maintained by `@arrayfire/lua-devel` team.

0 commit comments

Comments
 (0)