Re: [PATCH v2] libselinux: introduce PCPREFIX substitute variable for .pc files

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

 



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
>
>





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

  Powered by Linux