]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
cmake: do not pass unnecessary param to setup.py 25186/head
authorKefu Chai <kchai@redhat.com>
Tue, 20 Nov 2018 14:13:35 +0000 (22:13 +0800)
committerKefu Chai <kchai@redhat.com>
Tue, 20 Nov 2018 14:20:41 +0000 (22:20 +0800)
commitebfa2df2d55f2ee6fdadb49fd1afc2585864f725
tree6dc35539b03d6c4962814786cabac7b7628f8dbb
parent0a0e9f0179c237ec7331bd1dc3ce85366d2a4326
cmake: do not pass unnecessary param to setup.py

--single-version-externally-managed is used for packaging python eggs
to deb. so the metadata can be stored in the egg, and can be accessed
by user if necessary, see [1]. but this does not apply to users who
just want to "make install" without packaging Ceph.

the problem is, if we pass --single-version-externally-managed to
setup.py, we need to pass --record or --root also. otherwise setuptools
complains:

error: You must specify --record or --root when building system packages

so in this change, we choose not to pass
"--single-version-externally-managed", unless $DESTDIR is set.

both "ceph.spec.in" and "debian/rules" set $DESTDIR when running "make
install". so we can always check $DESTDIR to tell if current "make
install" is launched by the packaging script or not. this might not be
accurate, but good enough. assuming enduser does not use DESTDIR when
running plain "make install".

--
[1] https://wiki.debian.org/Python/FAQ#How_should_we_package_Python_eggs.3F

Signed-off-by: Kefu Chai <kchai@redhat.com>
cmake/modules/Distutils.cmake