]> begriffs open source - libnonstd/blob - configure
Pick ssize_t at configure time
[libnonstd] / configure
1 #!/bin/sh
2 set -eu
3
4 echo > config.mk
5 rm -f include/internal/ssize.h
6
7 compiles ()
8 {
9         stage="$(mktemp -d)"
10         echo "$2" > "$stage/test.c"
11         (cc -Werror "$1" -o "$stage/test" "$stage/test.c" >/dev/null 2>&1)
12         cc_success=$?
13         rm -rf "$stage"
14         return $cc_success
15 }
16
17 cd include/internal
18 if compiles "-D_POSIX_C_SOURCE=200112L" "
19         #include <sys/types.h>
20         int main(void)
21         {
22                 return (ssize_t)0;
23         }"
24 then
25         ln -s ssize{_posix,}.h
26 else
27         ln -s ssize{_ptrdiff,}.h
28 fi
29 cd -