dkrz.de/libaec (#1776)

* new file:   projects/dkrz.de/libaec/fixture.cpp
	new file:   projects/dkrz.de/libaec/package.yml

* shouldn't need `-L`

---------

Co-authored-by: Jacob Heider <jacob@tea.xyz>
This commit is contained in:
Andrew 2023-05-01 20:17:21 +03:00 committed by GitHub
parent d7adf09a43
commit 939e4b36ac
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 52 additions and 0 deletions

View file

@ -0,0 +1,25 @@
#include <cassert>
#include <cstddef>
#include <cstdlib>
#include <libaec.h>
int main() {
unsigned char * data = (unsigned char *) calloc(1024, sizeof(unsigned char));
unsigned char * compressed = (unsigned char *) calloc(1024, sizeof(unsigned char));
for(int i = 0; i < 1024; i++) { data[i] = (unsigned char)(i); }
struct aec_stream strm;
strm.bits_per_sample = 16;
strm.block_size = 64;
strm.rsi = 129;
strm.flags = AEC_DATA_PREPROCESS | AEC_DATA_MSB;
strm.next_in = data;
strm.avail_in = 1024;
strm.next_out = compressed;
strm.avail_out = 1024;
assert(aec_encode_init(&strm) == 0);
assert(aec_encode(&strm, AEC_FLUSH) == 0);
assert(strm.total_out > 0);
assert(aec_encode_end(&strm) == 0);
free(data);
free(compressed);
return 0;
}

View file

@ -0,0 +1,27 @@
distributable:
url: https://github.com/MathisRosenhauer/libaec/releases/download/v{{version}}/libaec-{{version}}.tar.gz
strip-components: 1
versions:
github: MathisRosenhauer/libaec
strip: /^v/
build:
dependencies:
tea.xyz/gx/cc: c99
tea.xyz/gx/make: '*'
script: |
./configure $ARGS
make --jobs {{ hw.concurrency }} install
env:
ARGS:
- --prefix="{{prefix}}"
provides:
- bin/aec
test:
dependencies:
tea.xyz/gx/cc: c99
script: |
cc -o testlibaec fixture.cpp -laec