#!/bin/sh # Use of any --include or --exclude* option would segfault in 2.6 and 2.6.1 . "${srcdir=.}/init.sh"; path_prepend_ ../src mkdir -p x/dir || framework_failure_ echo aaa > x/a || framework_failure_ echo bbb > x/b || framework_failure_ echo ddd > x/dir/d || framework_failure_ printf '%s\n' x/b:bbb x/dir/d:ddd > exp-not-a || framework_failure_ printf '%s\n' x/dir/d:ddd > exp-not-ab || framework_failure_ printf '%s\n' x/a:aaa x/b:bbb > exp-not-d || framework_failure_ printf '%s\n' x/a:aaa x/b:bbb > exp-not-dir || framework_failure_ printf '%s\n' x/a:aaa > exp-a || framework_failure_ grep -r --exclude='a*' . x > out || fail=1 sort out > k && mv k out compare out exp-not-a || fail=1 grep -r --exclude='[ab]' . x > out || fail=1 sort out > k && mv k out compare out exp-not-ab || fail=1 grep -r --exclude='*d' . x > out || fail=1 sort out > k && mv k out compare out exp-not-d || fail=1 grep -r --exclude-dir=dir . x > out || fail=1 sort out > k && mv k out compare out exp-not-dir || fail=1 # Test with a non-glob. grep -r --include=a . x > out || fail=1 # no need to sort compare out exp-a || fail=1 # Also test --include with a "glob". grep -r --include='a*' . x > out || fail=1 # no need to sort compare out exp-a || fail=1 # --include (without --recursive) uses different code grep --include=a '^aaa$' x/* > out || fail=1 compare out exp-a || fail=1 Exit $fail