On Fri, 2 Jun 2023 at 14:05, Petr Lautrbach <plautrba@xxxxxxxxxx> wrote: > > Masatake YAMATO <yamato@xxxxxxxxxx> writes: > > > Though instructed as > > > > DESTDIR=~/obj ./scripts/env_use_destdir make test Is that a valid use case of the script `env_use_destdir`? I thought the script is just for executing binaries depending on the shared libraries in DESTDIR (e.g. `DESTDIR=~/obj ./scripts/env_use_destdir seinfo`), not for make invocations. > > > > in README.md, compiling policy_define.c was failed with following errors: > > > > make[1]: Entering directory '/home/yamato/var/selinux/checkpolicy' > > cc -O2 -Werror -Wall -Wextra -Wfloat-equal -Wformat=2 -Winit-self \ > > -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes \ > > -Wnull-dereference -Wpointer-arith -Wshadow -Wstrict-prototypes \ > > -Wundef -Wunused -Wwrite-strings -fno-common -I~/obj/usr/include \ > > -o policy_define.o -c policy_define.c > > policy_define.c: In function ‘define_te_avtab_xperms_helper’: > > policy_define.c:2083:61: error: ‘RULE_NOTSELF’ undeclared (first use in this function); did you mean ‘RULE_SELF’? > > 2083 | avrule->flags |= (add ? RULE_SELF : RULE_NOTSELF); > > | ^~~~~~~~~~~~ > > | RULE_SELF > > > > because cc cannot find the directory ~/obj/usr/include passed via -I option. > > > > cc doesn't expand "~". > > > > Signed-off-by: Masatake YAMATO <yamato@xxxxxxxxxx> > > It doesn't work when DESTDIR does not exist - If no existing file name > matches a pattern, then that pattern is omitted from the output of the > wildcard function, see > https://www.gnu.org/software/make/manual/html_node/Wildcard-Function.html > > > Petr > > > --- > > Makefile | 6 +++--- > > 1 file changed, 3 insertions(+), 3 deletions(-) > > > > diff --git a/Makefile b/Makefile > > index 2ffba8e9..053c6d3d 100644 > > --- a/Makefile > > +++ b/Makefile > > @@ -26,11 +26,11 @@ else > > endif > > > > ifneq ($(DESTDIR),) > > - LIBDIR ?= $(DESTDIR)$(PREFIX)/lib > > + LIBDIR ?= $(wildcard $(DESTDIR))$(PREFIX)/lib > > LIBSEPOLA ?= $(LIBDIR)/libsepol.a > > > > - CFLAGS += -I$(DESTDIR)$(PREFIX)/include > > - LDFLAGS += -L$(DESTDIR)$(PREFIX)/lib -L$(LIBDIR) > > + CFLAGS += -I$(wildcard $(DESTDIR))$(PREFIX)/include > > + LDFLAGS += -L$(wildcard $(DESTDIR))$(PREFIX)/lib -L$(LIBDIR) > > export CFLAGS > > export LDFLAGS > > export LIBSEPOLA > > -- > > 2.40.1 >