admon/build-doc: be compatible with py3

Signed-off-by: Kefu Chai <kchai@redhat.com>
This commit is contained in:
Kefu Chai 2017-09-11 21:53:57 +08:00
parent 5720c9854b
commit f8cc72ff1c

View File

@ -57,7 +57,7 @@ cd build-doc
[ -z "$vdir" ] && vdir="$TOPDIR/build-doc/virtualenv"
if [ ! -e $vdir ]; then
virtualenv --system-site-packages $vdir -p python2
virtualenv --system-site-packages $vdir
fi
$vdir/bin/pip install --quiet -r $TOPDIR/admin/doc-requirements.txt
@ -88,7 +88,12 @@ for bind in rados rbd cephfs rgw; do
LDFLAGS="-L$vdir/lib -Wl,--no-as-needed" \
$vdir/bin/pip install $TOPDIR/src/pybind/${bind}
# rgwfile_version(), librgw_create(), rgw_mount()
nm $vdir/lib/python*/*-packages/${bind}.so | grep -E "U (lib)?${bind}" | \
# since py3.5, distutils adds postfix in between ${bind} and so
lib_fn=$vdir/lib/python*/*-packages/${bind}.*.so
if [ ! -e $lib_fn ]; then
lib_fn=$vdir/lib/python*/*-packages/${bind}.so
fi
nm $lib_fn | grep -E "U (lib)?${bind}" | \
awk '{ print "void "$2"(void) {}" }' | \
gcc -shared -o $vdir/lib/lib${bind}.so.1 -xc -
if [ ${bind} != rados ]; then