Add README.md

Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
This commit is contained in:
Robert Baldyga 2018-12-05 13:38:32 +01:00
parent 0f9d36b7e5
commit 0189648bbb

76
README.md Normal file
View File

@ -0,0 +1,76 @@
# Open CAS Framework
Open CAS Framwework (OCF) is high performance block storage caching meta-library
written in C. It's entirely platform and system independent, accessing system API
through user provided environment wrappers layer. OCF tightly integrates with the
rest of software stack, providing flawless, high performance, low latency caching
utility.
# In this readme:
* [Documentation](#documentation)
* [Source Code](#source)
* [Deployment](#deployment)
* [Unit Tests](#tests)
* [Contributing](#contributing)
<a id="documentation"></a>
## Documentation
Doxygen API documentation is available [here](http://open-cas.github.io/doxygen/ocf).
More documentation, tutorial and examples will be available soon.
<a id="source"></a>
## Source Code
Source code is available in the official OCF GitHub repository:
~~~{.sh}
git clone https://github.com/open-cas/ocf
cd ocf
~~~
<a id="deployment"></a>
## Deployment
OCF doesn't compile as separate library. It's designed to be included into another
software. For this purpose OCF Makefile provides two useful targets for deploying
OCF source into target directories. Assuming OCFDIR is ocf directory, and SRCDIR and
INCDIR are your source and include directories, you can use following commands to
deploy OCF into your project:
~~~{.sh}
make -C $OCFDIF src O=$SRCDIR
make -C $OCFDIF inc O=$INCDIR
~~~
This by default will not copy OCF source files but create symbolic links to them,
to avoid source duplication and allow for easy OCF code modification. If you prefer
to copy OCF source files (e.g. you don't want to distribute whole OCF repository
as your submodule), you can use following commands:
~~~{.sh}
make -C $OCFDIF src O=$SRCDIR CMD=cp
make -C $OCFDIF inc O=$INCDIR CMD=cp
~~~
<a id="tests"></a>
## Unit Tests
OCF is shipped with dedicated unit test framework based on Cmocka.
To run unit test you need to install following packages:
- Cmake (>= 3.8.1)
- Cmocka (>= 1.1.1)
- ctags (>= 5.8)
To run unit tests use following command:
~~~{.sh}
./tests/ut-framework/run_unit_tests.py
~~~
<a id="contributing"></a>
## Contributing
Feel like making OCF better? Don't hesitate to submit a pull request!
In case of any questions feel free to contact [maintainer](mailto:robert.baldyga@intel.com).