This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## Introduction
Liberasurecode is an erasure code library which can support multiple
erasure code 'backends'. The repository includes a Jerasure for Reed-Solomon
implementation.
[TODO: flesh this out a bit more]
## Code organization
```
├── README
├── NEWS
├── COPYING
├── AUTHORS
├── INSTALL
├── ChangeLog
|
├── autogen.sh
├── configure.ac
├── Makefile.am
|
├── include
│ ├── erasurecode
│ │ ├── erasurecode.h --> liberasurecode frontend API header
│ │ └── erasurecode_backend.h --> liberasurecode backend API header
│ └── xor_codes
|
├── src
│ ├── erasurecode.c --> liberasurecode API implementation
| | (frontend + backend)
│ ├── backends
│ │ └── xor
│ │ └─── flat_xor_hd.c --> 'flat_xor_hd' erasure code backend
| | implementation
| |
│ ├── builtin
│ │ └── xor_codes --> XOR HD code backend, built-in to
| | | liberasurecode
│ │ ├── xor_code.c
│ │ └── xor_hd_code.c
| |
│ └── utils
│ └── chksum --> fragment checksum utils for erasure
│ ├── alg_sig.c coded fragments
│ └── crc32.c
└─── test --> Test routines
├── builtin
│ └── xor_codes
├── liberasurecode_test.c
└── utils
```
## Dependencies
## Build
To build the liberasurecode repository, perform the following from the
top-level directory:
`$ ./autogen.sh`
`$ ./configure`
`$ make`
`$ make test`
`$ sudo make install`