I think the problem might be an unnecessary backslash in common/Make.rules:
CAPABILITIES=$(shell echo "\#include <linux/capability.h>" | cpp -dM | LC_ALL=C sed -n -e '/CAP_EMPTY_SET/d' -e 's/^\#define[ \t]\+CAP_\([A-Z0-9_]\+\)[ \t]\+\([0-9xa-f]\+\)\(.*\)$$/CAP_\1/p' | LC_ALL=C sort)
I wrote a dummy makefile to test this and $(CAPABILITIES) was empty. Changing to this:
CAPABILITIES=$(shell echo "#include <linux/capability.h>" | cpp -dM | LC_ALL=C sed -n -e '/CAP_EMPTY_SET/d' -e 's/^\#define[ \t]\+CAP_\([A-Z0-9_]\+\)[ \t]\+\([0-9xa-f]\+\)\(.*\)$$/CAP_\1/p' | LC_ALL=C sort)
gives what I think is the expected output.
I think the problem might be an unnecessary backslash in common/Make.rules:
CAPABILITIES= $(shell echo "\#include <linux/ capability. h>" | cpp -dM | LC_ALL=C sed -n -e '/CAP_EMPTY_SET/d' -e 's/^\#define[ \t]\+CAP_ \([A-Z0- 9_]\+\) [ \t]\+\( [0-9xa- f]\+\)\ (.*\)$$ /CAP_\1/ p' | LC_ALL=C sort)
I wrote a dummy makefile to test this and $(CAPABILITIES) was empty. Changing to this:
CAPABILITIES= $(shell echo "#include <linux/ capability. h>" | cpp -dM | LC_ALL=C sed -n -e '/CAP_EMPTY_SET/d' -e 's/^\#define[ \t]\+CAP_ \([A-Z0- 9_]\+\) [ \t]\+\( [0-9xa- f]\+\)\ (.*\)$$ /CAP_\1/ p' | LC_ALL=C sort)
gives what I think is the expected output.