pantry/projects/hadrons.org/libmd/package.yml
2023-10-01 20:41:57 -04:00

48 lines
1.2 KiB
YAML

distributable:
url: https://archive.hadrons.org/software/libmd/libmd-{{ version }}.tar.xz
strip-components: 1
versions:
github: guillemj/libmd/tags
build:
dependencies:
gnu.org/patch: '*'
crates.io/semverator: '*'
script:
# Combats "error: aliases are not supported on darwin" on versions
# prior to 1.1.0.
- run: |
if semverator lt 1.1.0 {{version}}; then
patch -p1 <props/patch-symbol-alias.diff
fi
- ./configure --prefix={{prefix}}
- make --jobs {{hw.concurrency}} install
test:
script: |
mv $FIXTURE test.c
cc test.c -lmd -o test
test $(./test) = "900150983cd24fb0d6963f7d28e17f72"
fixture: |
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <md5.h>
int main() {
MD5_CTX ctx;
uint8_t results[MD5_DIGEST_LENGTH];
char *buf;
buf = "abc";
int n;
n = strlen(buf);
MD5Init(&ctx);
MD5Update(&ctx, (uint8_t *)buf, n);
MD5Final(results, &ctx);
for (n = 0; n < MD5_DIGEST_LENGTH; n++)
printf("%02x", results[n]);
putchar('\n');
return EXIT_SUCCESS;
}