pantry/projects/xiph.org/ogg/package.yml
2023-03-16 11:06:17 -04:00

53 lines
1.2 KiB
YAML

distributable:
url: https://downloads.xiph.org/releases/ogg/libogg-{{version}}.tar.gz
strip-components: 1
versions:
- 1.3.5 # fix
build:
dependencies:
tea.xyz/gx/cc: c99
tea.xyz/gx/make: '*'
script: |
./configure $ARGS
make --jobs {{ hw.concurrency }}
make install
env:
ARGS:
- --prefix="{{prefix}}"
- --disable-dependency-tracking
test:
fixture: |
#include <ogg/ogg.h>
#include <stdio.h>
int main (void) {
ogg_sync_state oy;
ogg_stream_state os;
ogg_page og;
ogg_packet op;
char *buffer;
int bytes;
ogg_sync_init (&oy);
buffer = ogg_sync_buffer (&oy, 4096);
bytes = fread(buffer, 1, 4096, stdin);
ogg_sync_wrote (&oy, bytes);
if (ogg_sync_pageout (&oy, &og) != 1)
return 1;
ogg_stream_init (&os, ogg_page_serialno (&og));
if (ogg_stream_pagein (&os, &og) < 0)
return 1;
if (ogg_stream_packetout (&os, &op) != 1)
return 1;
return 0;
}
dependencies:
tea.xyz/gx/cc: c99
gnu.org/wget: '*'
script: |
wget https://upload.wikimedia.org/wikipedia/commons/c/c8/Example.ogg -O test.ogg
mv $FIXTURE test.c
cc test.c -logg
./a.out < test.ogg