67 lines
1.9 KiB
Plaintext
67 lines
1.9 KiB
Plaintext
## 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`
|
||
|