#!/bin/sh set -eu rm -f include/internal/ssize.h compiles () { stage="$(mktemp -d)" echo "$2" > "$stage/test.c" (cc -Werror "$1" -o "$stage/test" "$stage/test.c" >/dev/null 2>&1) cc_success=$? rm -rf "$stage" return $cc_success } cd include/internal if compiles "-D_POSIX_C_SOURCE=200112L" " #include int main(void) { return (ssize_t)0; }" then ln -s ssize{_posix,}.h else ln -s ssize{_ptrdiff,}.h fi cd -