[libvirt] [python PATCH v2] setup: Use cflags and ldflags properly

Jiri Denemark jdenemar at redhat.com
Mon Jan 18 14:43:16 UTC 2016


The setup.py script reads cflags and ldflags from pkg-config and uses
them when compiling/linking C modules. Since both cflags and ldflags may
include multiple compiler arguments we need to split them rather than
concatenating them into a single argument.

Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
---

Notes:
    Version 2:
    - fix all modules
    
    I'm surprised it ever worked.

 setup.py | 22 ++++++++--------------
 1 file changed, 8 insertions(+), 14 deletions(-)

diff --git a/setup.py b/setup.py
index 9bf583b..c44f84a 100755
--- a/setup.py
+++ b/setup.py
@@ -88,17 +88,15 @@ def get_module_lists():
 
     c_modules = []
     py_modules = []
-    ldflags = get_pkgconfig_data(["--libs-only-L"], "libvirt", False)
-    cflags = get_pkgconfig_data(["--cflags"], "libvirt", False)
+    ldflags = get_pkgconfig_data(["--libs-only-L"], "libvirt", False).split()
+    cflags = get_pkgconfig_data(["--cflags"], "libvirt", False).split()
 
     module = Extension('libvirtmod',
                        sources = ['libvirt-override.c', 'build/libvirt.c', 'typewrappers.c', 'libvirt-utils.c'],
                        libraries = [ "virt" ],
                        include_dirs = [ "." ])
-    if cflags != "":
-        module.extra_compile_args.append(cflags)
-    if ldflags != "":
-        module.extra_link_args.append(ldflags)
+    module.extra_compile_args.extend(cflags)
+    module.extra_link_args.extend(ldflags)
 
     c_modules.append(module)
     py_modules.append("libvirt")
@@ -107,10 +105,8 @@ def get_module_lists():
                            sources = ['libvirt-qemu-override.c', 'build/libvirt-qemu.c', 'typewrappers.c', 'libvirt-utils.c'],
                            libraries = [ "virt-qemu" ],
                            include_dirs = [ "." ])
-    if cflags != "":
-        moduleqemu.extra_compile_args.append(cflags)
-    if ldflags != "":
-        moduleqemu.extra_link_args.append(ldflags)
+    moduleqemu.extra_compile_args.extend(cflags)
+    moduleqemu.extra_link_args.extend(ldflags)
 
     c_modules.append(moduleqemu)
     py_modules.append("libvirt_qemu")
@@ -120,10 +116,8 @@ def get_module_lists():
                               sources = ['libvirt-lxc-override.c', 'build/libvirt-lxc.c', 'typewrappers.c', 'libvirt-utils.c'],
                               libraries = [ "virt-lxc" ],
                               include_dirs = [ "." ])
-        if cflags != "":
-            modulelxc.extra_compile_args.append(cflags)
-        if ldflags != "":
-            modulelxc.extra_link_args.append(ldflags)
+        modulelxc.extra_compile_args.extend(cflags)
+        modulelxc.extra_link_args.extend(ldflags)
 
         c_modules.append(modulelxc)
         py_modules.append("libvirt_lxc")
-- 
2.7.0




More information about the libvir-list mailing list