diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2017-04-07 16:04:40 +0200 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2017-04-09 11:27:14 +0200 |
| commit | d2004b15f1e90efafedc367335c07ad4636d291d (patch) | |
| tree | 3ab47dc219f5ad3b2f3bc9d3699aecc3b7ffd656 /configure | |
| parent | 3349b97344c6c7032bff7aaa13985406ca571c34 (diff) | |
| download | vis-d2004b15f1e90efafedc367335c07ad4636d291d.tar.gz vis-d2004b15f1e90efafedc367335c07ad4636d291d.tar.xz | |
text: add mem{r,}chr(3) based byte search functions
These are generally implemented efficiently in libc.
While memrchr(3) is non-standard, it is a common extension.
If it is not available, we use a simple C implementation from musl.
Diffstat (limited to 'configure')
| -rwxr-xr-x | configure | 20 |
1 files changed, 20 insertions, 0 deletions
@@ -594,6 +594,25 @@ EOF fi fi +printf "checking for memrchr... " + +cat > "$tmpc" <<EOF +#define _GNU_SOURCE +#include <string.h> + +int main(int argc, char *argv[]) { + return !memrchr("\n", '\n', 1); +} +EOF + +if $CC $CFLAGS "$tmpc" $LDFLAGS -o "$tmpo" >/dev/null 2>&1; then + HAVE_MEMRCHR=1 + printf "%s\n" "yes" +else + HAVE_MEMRCHR=0 + printf "%s\n" "no" +fi + printf "completing config.mk... " exec 3>&1 1>>config.mk @@ -621,6 +640,7 @@ LDFLAGS_ACL = $LDFLAGS_ACL CONFIG_SELINUX = $CONFIG_SELINUX CFLAGS_SELINUX = $CFLAGS_SELINUX LDFLAGS_SELINUX = $LDFLAGS_SELINUX +CFLAGS_LIBC = -DHAVE_MEMRCHR=$HAVE_MEMRCHR EOF exec 1>&3 3>&- |
