Merge pull request #610 from antinucleon/bootcamp

[amalgamation] lz4frame.c
This commit is contained in:
Yann Collet 2018-11-26 12:14:27 -08:00 committed by GitHub
commit 6689dae33b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 22 additions and 1 deletions

View File

@ -213,7 +213,7 @@ __Content Size__
This is the original (uncompressed) size.
This information is optional, and only present if the associated flag is set.
Content size is provided using unsigned 8 Bytes, for a maximum of 16 HexaBytes.
Content size is provided using unsigned 8 Bytes, for a maximum of 16 Exabytes.
Format is Little endian.
This value is informational, typically for display or memory allocation.
It can be skipped by a decoder, or used to validate content correctness.

View File

@ -42,6 +42,19 @@ Should they be nonetheless needed, it's possible to force their publication
by using build macro `LZ4_PUBLISH_STATIC_FUNCTIONS`.
#### Amalgamation
lz4 code is able to be amalgamated into a single file.
We can combine all source code in `lz4_all.c` by using following command,
```
cat lz4.c > lz4_all.c
cat lz4hc.c >> lz4_all.c
cat lz4frame.c >> lz4_all.c
```
and compile `lz4_all.c`.
It's necessary to include all `*.h` files present in `/lib` together with `lz4_all.c`.
#### Windows : using MinGW+MSYS to create DLL
DLL can be created using MinGW+MSYS with the `make liblz4` command.

View File

@ -64,10 +64,15 @@ You can contact the author at :
**************************************/
#include <stdlib.h> /* malloc, calloc, free */
#define ALLOC(s) malloc(s)
#ifndef LZ4_SRC_INCLUDED
#define ALLOC_AND_ZERO(s) calloc(1,(s))
#endif
#define FREEMEM(p) free(p)
#include <string.h> /* memset, memcpy, memmove */
#ifndef LZ4_SRC_INCLUDED
#define MEM_INIT memset
#endif
/*-************************************
@ -180,9 +185,11 @@ static void LZ4F_writeLE64 (void* dst, U64 value64)
/*-************************************
* Constants
**************************************/
#ifndef LZ4_SRC_INCLUDED
#define KB *(1<<10)
#define MB *(1<<20)
#define GB *(1<<30)
#endif
#define _1BIT 0x01
#define _2BITS 0x03

View File

@ -160,6 +160,7 @@ test32: test
test-amalgamation: $(LZ4DIR)/lz4.c $(LZ4DIR)/lz4hc.c
cat $(LZ4DIR)/lz4.c > lz4_all.c
cat $(LZ4DIR)/lz4hc.c >> lz4_all.c
cat $(LZ4DIR)/lz4frame.c >> lz4_all.c
$(CC) -I$(LZ4DIR) -c lz4_all.c
$(RM) lz4_all.c