mirror of
https://github.com/motioneye-project/motioneyeos.git
synced 2025-07-28 21:56:31 +00:00
libselinux: rework host installation
libselinux has a pretty peculiar interpretation of DESTDIR and PREFIX. PREFIX is not consistently used: some installation paths are forced to $(DESTDIR)/usr/... . In other cases, PREFIX is indeed used. PREFIX defaults to $(DESTDIR)/usr. Try to be a little bit more correct by passing both DESTDIR and PREFIX, both set to $(HOST_DIR). This is not a complete fix: man pages are still installed in $(HOST_DIR)/usr - but we don't care about that. Also simplify the symlink creation, like how it's done in libsepol. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
parent
46d770e7ed
commit
8b8257e7d3
@ -85,32 +85,31 @@ HOST_LIBSELINUX_PYINC = -I$(HOST_DIR)/include/python$(PYTHON_VERSION_MAJOR)/
|
|||||||
HOST_LIBSELINUX_PYLIBVER = python$(PYTHON_VERSION_MAJOR)
|
HOST_LIBSELINUX_PYLIBVER = python$(PYTHON_VERSION_MAJOR)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# DESTDIR is needed during the compile to compute library and header paths.
|
||||||
HOST_LIBSELINUX_MAKE_OPTS = \
|
HOST_LIBSELINUX_MAKE_OPTS = \
|
||||||
$(HOST_CONFIGURE_OPTS) \
|
$(HOST_CONFIGURE_OPTS) \
|
||||||
|
DESTDIR=$(HOST_DIR) \
|
||||||
|
PREFIX=$(HOST_DIR) \
|
||||||
LDFLAGS="$(HOST_LDFLAGS) -lpcre -lpthread" \
|
LDFLAGS="$(HOST_LDFLAGS) -lpcre -lpthread" \
|
||||||
PYINC="$(HOST_LIBSELINUX_PYINC)" \
|
PYINC="$(HOST_LIBSELINUX_PYINC)" \
|
||||||
PYSITEDIR="$(HOST_DIR)/lib/$(HOST_LIBSELINUX_PYLIBVER)/site-packages" \
|
PYSITEDIR="$(HOST_DIR)/lib/$(HOST_LIBSELINUX_PYLIBVER)/site-packages" \
|
||||||
SWIG_LIB="$(HOST_DIR)/share/swig/$(SWIG_VERSION)/"
|
SWIG_LIB="$(HOST_DIR)/share/swig/$(SWIG_VERSION)/"
|
||||||
|
|
||||||
define HOST_LIBSELINUX_BUILD_CMDS
|
define HOST_LIBSELINUX_BUILD_CMDS
|
||||||
# DESTDIR is needed during the compile to compute library and
|
|
||||||
# header paths.
|
|
||||||
$(HOST_MAKE_ENV) $(MAKE1) -C $(@D) \
|
$(HOST_MAKE_ENV) $(MAKE1) -C $(@D) \
|
||||||
$(HOST_LIBSELINUX_MAKE_OPTS) DESTDIR=$(HOST_DIR) \
|
$(HOST_LIBSELINUX_MAKE_OPTS) all
|
||||||
SHLIBDIR=$(HOST_DIR)/lib all
|
|
||||||
# Generate python interface wrapper
|
# Generate python interface wrapper
|
||||||
$(HOST_MAKE_ENV) $(MAKE1) -C $(@D) \
|
$(HOST_MAKE_ENV) $(MAKE1) -C $(@D) \
|
||||||
$(HOST_LIBSELINUX_MAKE_OPTS) DESTDIR=$(HOST_DIR) swigify pywrap
|
$(HOST_LIBSELINUX_MAKE_OPTS) swigify pywrap
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define HOST_LIBSELINUX_INSTALL_CMDS
|
define HOST_LIBSELINUX_INSTALL_CMDS
|
||||||
$(HOST_MAKE_ENV) $(MAKE) -C $(@D) \
|
$(HOST_MAKE_ENV) $(MAKE) -C $(@D) \
|
||||||
$(HOST_LIBSELINUX_MAKE_OPTS) DESTDIR=$(HOST_DIR) \
|
$(HOST_LIBSELINUX_MAKE_OPTS) install
|
||||||
SHLIBDIR=$(HOST_DIR)/lib SBINDIR=$(HOST_DIR)/sbin install
|
ln -sf libselinux.so.1 $(HOST_DIR)/lib/libselinux.so
|
||||||
(cd $(HOST_DIR)/lib; $(HOSTLN) -sf libselinux.so.1 libselinux.so)
|
|
||||||
# Install python interface wrapper
|
# Install python interface wrapper
|
||||||
$(HOST_MAKE_ENV) $(MAKE) -C $(@D) \
|
$(HOST_MAKE_ENV) $(MAKE) -C $(@D) \
|
||||||
$(HOST_LIBSELINUX_MAKE_OPTS) DESTDIR=$(HOST_DIR) install-pywrap
|
$(HOST_LIBSELINUX_MAKE_OPTS) install-pywrap
|
||||||
endef
|
endef
|
||||||
|
|
||||||
$(eval $(generic-package))
|
$(eval $(generic-package))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user