d1e3170556
When installing to a destdir with pip install --prefix= --root=, pip tries to uninstall the existing root-owned package and fails Fixes: python3 -m pip install --prefix=/usr `test -n "/tmp/selinux-release//build-master" && echo --root /tmp/selinux-release//build-master` . Processing /tmp/selinux-release/selinux-master/python/sepolicy Preparing metadata (setup.py) ... done Building wheels for collected packages: sepolicy Building wheel for sepolicy (setup.py) ... done Created wheel for sepolicy: filename=sepolicy-3.4-py3-none-any.whl size=1663564 sha256=229546db123e7d84613d190d49c192291b1a4f7f2a037657b39283b04ac391a4 Stored in directory: /tmp/pip-ephem-wheel-cache-50r2x4cn/wheels/b2/9e/63/6a6212a84d65a709923228719d065ed34e66a90c7fed01e8cf Successfully built sepolicy Installing collected packages: sepolicy Attempting uninstall: sepolicy Found existing installation: sepolicy 3.4 Uninstalling sepolicy-3.4: ERROR: Could not install packages due to an OSError: [Errno 13] Permission denied: 'generate.py' Consider using the `--user` option or check the permissions. Signed-off-by: Jason Zaman <jason@perfinion.com> Acked-by: Petr Lautrbach <lautrbach@redhat.com>
45 lines
1.3 KiB
Makefile
45 lines
1.3 KiB
Makefile
PYTHON ?= python3
|
|
|
|
# Installation directories.
|
|
LINGUAS ?= ru
|
|
PREFIX ?= /usr
|
|
BINDIR ?= $(PREFIX)/bin
|
|
MANDIR ?= $(PREFIX)/share/man
|
|
BASHCOMPLETIONDIR ?= $(PREFIX)/share/bash-completion/completions
|
|
CFLAGS ?= -Wall -Werror -Wextra -W
|
|
override CFLAGS += -DPACKAGE="policycoreutils" -DSHARED -shared
|
|
|
|
BASHCOMPLETIONS=sepolicy-bash-completion.sh
|
|
|
|
all: python-build
|
|
|
|
python-build:
|
|
$(PYTHON) setup.py build
|
|
|
|
clean:
|
|
$(PYTHON) setup.py clean
|
|
-rm -rf build *~ \#* *pyc .#* sepolicy.egg-info/
|
|
|
|
sepolgen:
|
|
ln -sf sepolicy sepolgen
|
|
|
|
test:
|
|
@$(PYTHON) test_sepolicy.py -v
|
|
|
|
install:
|
|
$(PYTHON) -m pip install --prefix=$(PREFIX) `test -n "$(DESTDIR)" && echo --root $(DESTDIR) --ignore-installed --no-deps` $(PYTHON_SETUP_ARGS) .
|
|
[ -d $(DESTDIR)$(BINDIR) ] || mkdir -p $(DESTDIR)$(BINDIR)
|
|
install -m 755 sepolicy.py $(DESTDIR)$(BINDIR)/sepolicy
|
|
(cd $(DESTDIR)$(BINDIR); ln -sf sepolicy sepolgen)
|
|
-mkdir -p $(DESTDIR)$(MANDIR)/man8
|
|
install -m 644 *.8 $(DESTDIR)$(MANDIR)/man8
|
|
for lang in $(LINGUAS) ; do \
|
|
if [ -e $${lang} ] ; then \
|
|
mkdir -p $(DESTDIR)$(MANDIR)/$${lang}/man8 ; \
|
|
install -m 644 $${lang}/*.8 $(DESTDIR)$(MANDIR)/$${lang}/man8/ ; \
|
|
fi ; \
|
|
done
|
|
-mkdir -p $(DESTDIR)$(BASHCOMPLETIONDIR)
|
|
install -m 644 $(BASHCOMPLETIONS) $(DESTDIR)$(BASHCOMPLETIONDIR)/sepolicy
|
|
|
|
relabel:
|