Mercurial > hg > dhcpcd
changeset 2505:a258c02383fb draft
Use SHA256Init on OpenBSD .... grrr
| author | Roy Marples <roy@marples.name> |
|---|---|
| date | Mon, 02 Jun 2014 16:31:37 +0000 |
| parents | 4ee5d28155d5 |
| children | 91f57d346f38 |
| files | configure |
| diffstat | 1 files changed, 38 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/configure Mon Jun 02 15:00:24 2014 +0000 +++ b/configure Mon Jun 02 16:31:37 2014 +0000 @@ -801,6 +801,7 @@ if [ -z "$SHA2" ]; then SHA2_LIB= + SHA2_RENAMED= printf "Testing for SHA256_Init ... " cat <<EOF >_sha256.c #include <sys/types.h> @@ -826,12 +827,49 @@ fi echo "$SHA2" rm -f _sha256.c _sha256 + if [ "$SHA2" = no ]; then + # Did OpenBSD really change this? grrrr + printf "Testing for SHA256Init ... " + cat <<EOF >_sha256.c +#include <sys/types.h> +EOF + [ -n "$SHA2_H" ] && echo "#include <$SHA2_H>">>_sha256.c + cat <<EOF >>_sha256.c +#include <stdlib.h> +int main(void) { + SHA2_CTX context; + SHA256Init(&context); + return 0; +} +EOF + # We only want to link to libmd if it exists in /lib + set -- $(ls /lib/libmd.so.* 2>/dev/null) + if $XCC _sha256.c -o _sha256 3>/dev/null; then + SHA2=yes + SHA2_RENAMED=yes + elif [ -e "$1" ] && $XCC _sha256.c -lmd -o _sha256 2>/dev/null + then + SHA2="yes (-lmd)" + SHA2_LIB=-lmd + SHA2_RENAMED=yes + else + SHA2=no + fi + echo "$SHA2" + rm -f _sha256.c _sha256 + fi fi if [ "$SHA2" = no ]; then echo "SHA256_SRC= sha256.c" >>$CONFIG_MK else echo "SHA256_SRC=" >>$CONFIG_MK echo "#define SHA2_H <$SHA2_H>" >>$CONFIG_H + if [ "$SHA2_RENAMED" = yes ]; then + echo "#define SHA256_CTX SHA2_CTX" >>$CONFIG_H + echo "#define SHA256_Init SHA256Init" >>$CONFIG_H + echo "#define SHA256_Update SHA256Update" >>$CONFIG_H + echo "#define SHA256_Final SHA256Final" >>$CONFIG_H + fi [ -n "$SHA2_LIB" ] && echo "LDADD+= $SHA2_LIB" >>$CONFIG_MK fi
