Skip to content

rgantt/ion-c

 
 

Repository files navigation

Amazon Ion C

A C implementation of the Ion data notation.

Build Status Build status

Setup

This repository contains a git submodule called ion-tests, which holds test data used by ion-c's unit tests.

The easiest way to clone the ion-c repository and initialize its ion-tests submodule is to run the following command.

$ git clone --recursive https://github.com/amzn/ion-c.git ion-c

Alternatively, the submodule may be initialized independently from the clone by running the following commands.

$ git submodule init
$ git submodule update

The submodule points to the tip of the branch of the ion-tests repository specified in ion-c's .gitmodules file.

Pulling in Upstream Changes

To pull upstream changes into ion-c, start with a simple git pull. This will pull in any changes to ion-c itself (including any changes to its .gitmodules file), but not any changes to the ion-tests submodule. To make sure the submodule is up-to-date, use the following command.

$ git submodule update --remote

This will fetch and update the ion-tests submodule from the ion-tests branch currently specified in the .gitmodules file.

For detailed walkthroughs of git submodule usage, see the Git Tools documentation.

Building the Library

Use the provided scripts build-release.sh and build-debug.sh. Ensure that cmake is installed first.

On macOS

cmake can be installed using Homebrew: brew install cmake

Using the Library

Ion cookbook for C coming soon!

About

A C implementation of Amazon Ion.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 81.8%
  • C++ 17.6%
  • Other 0.6%