On Wed, Jan 3, 2018 at 10:13 PM, Marcus Folkesson <marcus.folkesson@xxxxxxxxx> wrote: > `prefix` in the .pc file may be messed up when using a buildsystem > that has specified a sysroot as DESTDIR. > We need to make it possible to override the default `libdir` > and `includedir`. > > `includedir` may be overridden by `INCLUDEDIR` but `libdir` is using > `PREFIX` to setup the path. > > Therefore, introduce PCPREFIX to make it possible to generate a more > customized .pc file. > > Signed-off-by: Marcus Folkesson <marcus.folkesson@xxxxxxxxx> Looks good to me. This patch does not seem to break the existing usage and adds more flexibility for packagers. By the way, I was worried by the modification on INCLUDEDIR, but as this variable is only used to generate pkg-config files, it is reasonable to use PCPREFIX instead of PREFIX in its definition. Acked-by: Nicolas Iooss <nicolas.iooss@xxxxxxx> > --- > > v2: > - Reword commit message to be easier to understand... > > libselinux/src/Makefile | 5 +++-- > libsemanage/src/Makefile | 5 +++-- > libsepol/src/Makefile | 5 +++-- > 3 files changed, 9 insertions(+), 6 deletions(-) > > diff --git a/libselinux/src/Makefile b/libselinux/src/Makefile > index 18df75c8..baa2ba0f 100644 > --- a/libselinux/src/Makefile > +++ b/libselinux/src/Makefile > @@ -9,9 +9,10 @@ PKG_CONFIG ?= pkg-config > > # Installation directories. > PREFIX ?= $(DESTDIR)/usr > +PCPREFIX ?= $(PREFIX) > LIBDIR ?= $(PREFIX)/lib > SHLIBDIR ?= $(DESTDIR)/lib > -INCLUDEDIR ?= $(PREFIX)/include > +INCLUDEDIR ?= $(PCPREFIX)/include > PYINC ?= $(shell $(PKG_CONFIG) --cflags $(PYPREFIX)) > PYLIBS ?= $(shell $(PKG_CONFIG) --libs $(PYPREFIX)) > PYSITEDIR ?= $(DESTDIR)$(shell $(PYTHON) -c 'import site; print(site.getsitepackages()[0])') > @@ -148,7 +149,7 @@ $(LIBSO): $(LOBJS) > ln -sf $@ $(TARGET) > > $(LIBPC): $(LIBPC).in ../VERSION > - sed -e 's/@VERSION@/$(VERSION)/; s:@prefix@:$(PREFIX):; s:@libdir@:$(LIBBASE):; s:@includedir@:$(INCLUDEDIR):; s:@PCRE_MODULE@:$(PCRE_MODULE):' < $< > $@ > + sed -e 's/@VERSION@/$(VERSION)/; s:@prefix@:$(PCPREFIX):; s:@libdir@:$(LIBBASE):; s:@includedir@:$(INCLUDEDIR):; s:@PCRE_MODULE@:$(PCRE_MODULE):' < $< > $@ > > selinuxswig_python_exception.i: ../include/selinux/selinux.h > bash -e exception.sh > $@ || (rm -f $@ ; false) > diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile > index fdb178f5..8fe2f6dd 100644 > --- a/libsemanage/src/Makefile > +++ b/libsemanage/src/Makefile > @@ -9,9 +9,10 @@ PKG_CONFIG ?= pkg-config > > # Installation directories. > PREFIX ?= $(DESTDIR)/usr > +PCPREFIX ?= $(PREFIX) > LIBDIR ?= $(PREFIX)/lib > SHLIBDIR ?= $(DESTDIR)/lib > -INCLUDEDIR ?= $(PREFIX)/include > +INCLUDEDIR ?= $(PCPREFIX)/include > PYINC ?= $(shell $(PKG_CONFIG) --cflags $(PYPREFIX)) > PYLIBS ?= $(shell $(PKG_CONFIG) --libs $(PYPREFIX)) > PYSITEDIR ?= $(DESTDIR)$(shell $(PYTHON) -c 'import site; print(site.getsitepackages()[0])') > @@ -95,7 +96,7 @@ $(LIBSO): $(LOBJS) > ln -sf $@ $(TARGET) > > $(LIBPC): $(LIBPC).in ../VERSION > - sed -e 's/@VERSION@/$(VERSION)/; s:@prefix@:$(PREFIX):; s:@libdir@:$(LIBBASE):; s:@includedir@:$(INCLUDEDIR):' < $< > $@ > + sed -e 's/@VERSION@/$(VERSION)/; s:@prefix@:$(PCPREFIX):; s:@libdir@:$(LIBBASE):; s:@includedir@:$(INCLUDEDIR):' < $< > $@ > > semanageswig_python_exception.i: ../include/semanage/semanage.h > bash -e exception.sh > $@ || (rm -f $@ ; false) > diff --git a/libsepol/src/Makefile b/libsepol/src/Makefile > index 819d261b..59c287aa 100644 > --- a/libsepol/src/Makefile > +++ b/libsepol/src/Makefile > @@ -1,6 +1,7 @@ > # Installation directories. > PREFIX ?= $(DESTDIR)/usr > -INCLUDEDIR ?= $(PREFIX)/include > +PCPREFIX ?= $(PREFIX) > +INCLUDEDIR ?= $(PCPREFIX)/include > LIBDIR ?= $(PREFIX)/lib > SHLIBDIR ?= $(DESTDIR)/lib > RANLIB ?= ranlib > @@ -52,7 +53,7 @@ $(LIBSO): $(LOBJS) $(LIBMAP) > ln -sf $@ $(TARGET) > > $(LIBPC): $(LIBPC).in ../VERSION > - sed -e 's/@VERSION@/$(VERSION)/; s:@prefix@:$(PREFIX):; s:@libdir@:$(LIBBASE):; s:@includedir@:$(INCLUDEDIR):' < $< > $@ > + sed -e 's/@VERSION@/$(VERSION)/; s:@prefix@:$(PCPREFIX):; s:@libdir@:$(LIBBASE):; s:@includedir@:$(INCLUDEDIR):' < $< > $@ > > $(LIBMAP): $(LIBMAP).in > ifneq ($(DISABLE_CIL),y) > -- > 2.15.1 > >