mirror of
https://github.com/ivabus/pantry
synced 2024-11-23 00:45:07 +03:00
+libxcrypt (#785)
Requires -L because the standard library path has precedence on Linux and usually linux has its own lib crypt. I experimented with trying to use the enable-compat-symlinks (that make xcrypt symlinks) but this option only works if you enable “obsolete modes” which leads to believe it is not wise to do it manually either as other build tools will likely make assumptions based on the filenames. --------- Co-authored-by: Max Howell <mxcl@me.com>
This commit is contained in:
parent
be2d60bfa0
commit
ed8b734fd8
2 changed files with 50 additions and 0 deletions
20
projects/github.com/besser82/libxcrypt/fixture.c
Normal file
20
projects/github.com/besser82/libxcrypt/fixture.c
Normal file
|
@ -0,0 +1,20 @@
|
|||
#include <crypt.h>
|
||||
#include <errno.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
int main() {
|
||||
char *hash = crypt("abc", "$2b$05$abcdefghijklmnopqrstuu");
|
||||
if (errno) {
|
||||
fprintf(stderr, "Received error: %s", strerror(errno));
|
||||
return errno;
|
||||
}
|
||||
if (hash == NULL) {
|
||||
fprintf(stderr, "Hash is NULL");
|
||||
return -1;
|
||||
}
|
||||
if (strcmp(hash, "$2b$05$abcdefghijklmnopqrstuuRWUgMyyCUnsDr8evYotXg5ZXVF/HhzS")) {
|
||||
fprintf(stderr, "Unexpected hash output");
|
||||
return -1;
|
||||
}
|
||||
return 0;
|
||||
}
|
30
projects/github.com/besser82/libxcrypt/package.yml
Normal file
30
projects/github.com/besser82/libxcrypt/package.yml
Normal file
|
@ -0,0 +1,30 @@
|
|||
distributable:
|
||||
url: https://github.com/besser82/libxcrypt/releases/download/v{{version}}/libxcrypt-{{version}}.tar.xz
|
||||
strip-components: 1
|
||||
|
||||
versions:
|
||||
github: besser82/libxcrypt/releases/tags
|
||||
|
||||
build:
|
||||
dependencies:
|
||||
tea.xyz/gx/cc: c99
|
||||
tea.xyz/gx/make: '*'
|
||||
freedesktop.org/pkg-config: ~0.29
|
||||
perl.org: '*'
|
||||
script: |
|
||||
./configure $ARGS
|
||||
make --jobs {{ hw.concurrency }} install
|
||||
env:
|
||||
ARGS:
|
||||
- --prefix="{{prefix}}"
|
||||
- --disable-valgrind
|
||||
- --disable-failure-tokens
|
||||
|
||||
test:
|
||||
dependencies:
|
||||
tea.xyz/gx/cc: c99
|
||||
script: |
|
||||
cc fixture.c -lcrypt -L{{prefix}}/lib
|
||||
./a.out
|
||||
# ^^ we nee to add the -L because system lib paths come first on Linux
|
||||
# and most linuxes have a (arcaic) libcrypt.so in /lib
|
Loading…
Reference in a new issue