mirror of
https://gitlab.com/apparmor/apparmor.git
synced 2025-03-04 08:24:42 +01:00

The following patch addresses two issues on older releases: 1) In trunk commit 2911, the line 'undefine VERBOSE' was added to parser/tst/Makefile so that the equality tests would not generate verbose output when $VERBOSE != 1. Unfortunately, the 'undefine' keyword was not introduced in GNU Make until version 3.82. On distro releases like Ubuntu 12.04 LTS that include versions of Make older than that, make check and make clean abort when VERBOSE is not set to 1. The patch fixes that by setting VERBOSE to a zero length string if does not already equal 1. 2) In trunk commit 2923, a workaround for systemd as init was added to the pivot_root regression test. The workaround included a call to ps(1) to determine if systemd is pid 1. Unfortunately, in older versions of the procps package (such as the version in Ubuntu 12.04 LTS), 'ps -hp1' emits the warning Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html The patch below converts the ps call to 'ps hp1' which does not generate the warning. Signed-off-by: Steve Beattie <steve@nxnw.org> Acked-by: John Johansen <john.johansen@canonical.com>
64 lines
2 KiB
Makefile
64 lines
2 KiB
Makefile
#
|
|
PROVE=/usr/bin/prove
|
|
TESTS=simple.pl
|
|
PARSER_DIR=..
|
|
PARSER_BIN=apparmor_parser
|
|
PARSER=$(PARSER_DIR)/$(PARSER_BIN)
|
|
PROVE_ARG=-f
|
|
|
|
ifeq ($(VERBOSE),1)
|
|
PROVE_ARG+=-v
|
|
PYTEST_ARG = -v
|
|
else
|
|
VERBOSE=
|
|
endif
|
|
|
|
all: tests
|
|
|
|
.PHONY: tests error_output gen_dbus gen_xtrans parser_sanity caching minimize equality valgrind
|
|
tests: error_output caching minimize equality parser_sanity
|
|
|
|
GEN_TRANS_DIRS=simple_tests/generated_x/ simple_tests/generated_perms_leading/ simple_tests/generated_perms_safe/ simple_tests/generated_dbus
|
|
|
|
gen_xtrans: $(GEN_TRANS_DIRS)
|
|
./gen-xtrans.pl
|
|
|
|
$(GEN_TRANS_DIRS):
|
|
mkdir $@
|
|
|
|
gen_dbus: $(GEN_TRANS_DIRS)
|
|
./gen-dbus.pl
|
|
|
|
error_output: $(PARSER)
|
|
LANG=C $(PARSER) -S -I errors >/dev/null errors/okay.sd
|
|
LANG=C $(PARSER) -S -I errors 2>&1 >/dev/null errors/single.sd | \
|
|
grep -q "AppArmor parser error for errors/single.sd in errors/single.sd at line 3: Could not open 'failure'"
|
|
LANG=C $(PARSER) -S -I errors 2>&1 >/dev/null errors/double.sd | \
|
|
grep -q "AppArmor parser error for errors/double.sd in errors/includes/busted at line 66: Could not open 'does-not-exist'"
|
|
LANG=C $(PARSER) -S -I errors 2>&1 >/dev/null errors/modefail.sd | \
|
|
grep -q "AppArmor parser error for errors/modefail.sd in errors/modefail.sd at line 6: syntax error"
|
|
LANG=C $(PARSER) -S -I errors 2>&1 >/dev/null errors/multi_include.sd | \
|
|
grep -q "AppArmor parser error for errors/multi_include.sd in errors/multi_include.sd at line 12: Could not open 'failure'"
|
|
@echo "Error Output: PASS"
|
|
|
|
parser_sanity: $(PARSER) gen_xtrans gen_dbus
|
|
$(Q)LANG=C APPARMOR_PARSER="$(PARSER)" ${PROVE} ${PROVE_ARG} ${TESTS}
|
|
|
|
caching: $(PARSER)
|
|
LANG=C ./caching.py -p "$(PARSER)" $(PYTEST_ARG)
|
|
|
|
minimize: $(PARSER)
|
|
LANG=C APPARMOR_PARSER="$(PARSER)" ./minimize.sh
|
|
|
|
equality: $(PARSER)
|
|
LANG=C APPARMOR_PARSER="$(PARSER)" ./equality.sh
|
|
|
|
valgrind: $(PARSER) gen_xtrans gen_dbus
|
|
LANG=C ./valgrind_simple.py -p "$(PARSER)" -v simple_tests
|
|
|
|
$(PARSER):
|
|
make -C $(PARSER_DIR) $(PARSER_BIN)
|
|
|
|
clean:
|
|
find $(GEN_TRANS_DIRS) -type f | xargs rm -f
|
|
rm -f gmon.out
|