PROTON-1202: python setup.py - only extract the files necessary for
building the C library.
(cherry picked from commit 6b05d0107c6c70152769c43a97a347df30b92572)
diff --git a/proton-c/bindings/python/setuputils/bundle.py b/proton-c/bindings/python/setuputils/bundle.py
index 235592c..4f3f744 100644
--- a/proton-c/bindings/python/setuputils/bundle.py
+++ b/proton-c/bindings/python/setuputils/bundle.py
@@ -69,6 +69,14 @@
def fetch_libqpid_proton(savedir):
"""Download qpid-proton to `savedir`."""
+ def _c_only(members):
+ # just extract the files necessary to build the shared library
+ for tarinfo in members:
+ npath = os.path.normpath(tarinfo.name)
+ if ("proton-c/src" in npath or
+ "proton-c/include" in npath or
+ "proton-c/mllib" in npath):
+ yield tarinfo
dest = os.path.join(savedir, 'qpid-proton')
if os.path.exists(dest):
log.info("already have %s" % dest)
@@ -79,6 +87,6 @@
if member == '.':
member = tf.getmembers()[1].path
with_version = os.path.join(savedir, member)
- tf.extractall(savedir)
+ tf.extractall(savedir, members=_c_only(tf))
tf.close()
shutil.move(with_version, dest)