Re: [PATCH] Makefile: expand ~ in DESTDIR

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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
>




[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux