Commit a595de3e authored by Greg Williams's avatar Greg Williams
Browse files

Updated README to float Travis CI status image to the upper right corner....

Updated README to float Travis CI status image to the upper right corner. Added more links and info to dependecies
parent a19fd8ad
Loading
Loading
Loading
Loading
+15 −19
Original line number Diff line number Diff line
Introduction [![Build Status](https://travis-ci.org/atomicobject/kinetic-c.png?branch=master)](https://travis-ci.org/atomicobject/kinetic-c)
<a href="https://travis-ci.org/atomicobject/kinetic-c"><img style="float: right" src="https://travis-ci.org/atomicobject/kinetic-c.png?branch=master" /></a>

Introduction
============
This repo contains code for producing C Kinetic clients which use the Seagate Kinetic protocol. Code examples/utilities that use the Kinetic C library are included for reference and usage during development.

@@ -14,42 +16,36 @@ Dependencies
============
* [Kinetic Protocol](https://github.com/Seagate/kinetic-protocol)
    * [Kinetic-Protocol v2.0.4](https://github.com/Seagate/kinetic-protocol/releases/tag/2.0.4)
* [Ruby](https://www.ruby-lang.org) v1.9.3 or higher
* [Ruby](https://www.ruby-lang.org) (v1.9.3 or higher) scripting language
* [RubyGems](http://rubygems.org) (installed w/ `bundle install)
    * bundler 1.3.5 or higher
    * rake 0.9.2.2 or higher
    * require_all
    * constructor
    * diy
    * [ceedling](https://github.com/ThrowTheSwitch/Ceedling) build/test system for C projects
    * [bundler](http://bundler.io) (v1.3.5 or higher) environment/dependency manager for Ruby projects
    * [rake](https://github.com/jimweirich/rake) (0.9.2.2 or higher) Ruby implementation of Make
    * [require_all](https://github.com/jarmo/require_all)
    * [constructor](https://github.com/atomicobject/constructor)
    * [diy](https://github.com/atomicobject/diy)
    * [ceedling](https://github.com/ThrowTheSwitch/Ceedling) Ruby/Rake-based build/test system for C projects
        * Ceedling also includes the following tools for testing C code
        * [Unity](https://github.com/ThrowTheSwitch/Unity) lightweight assertion framework and test executor for C
        * [CMock](https://github.com/ThrowTheSwitch/CMock) mock/fake generator for C modules using only C header files as input (written in Ruby)
* [CppCheck](http://cppcheck.sourceforge.net/) for static analysis source code
* [Valgrind](http://valgrind.org/) for memory tests
* [Doxygen](https://github.com/doxygen) and [GraphViz](http://www.graphviz.org/) for generating documentation
* [CppCheck](http://cppcheck.sourceforge.net/) for static analysis of source code
* [Valgrind](http://valgrind.org/) for validation of memory usage/management
* [Doxygen](https://github.com/doxygen) and [GraphViz](http://www.graphviz.org/) for generating API documentation

Common Developer Tasks
======================

* Run all tests and build the library and examples
    * `rake`

* Just build the library
* Build the library
    * `rake release`

* Run all unit/integration tests
    * `rake test:all`

* Analyze code
    * `rake cppcheck`

* Generating documentation
* Generate documentation
    * TBD

* Apply licenses
    * `./config/apply_license.sh my_new_file.cc` or `./config/apply_license.sh src/lib/*.h`

* Build/install Google Protocol Buffers support for the Kinetic-Protocol
    * `rake proto`