--- setup.py.orig	Fri Oct  7 17:22:14 2005
+++ setup.py	Fri Oct  7 17:45:39 2005
@@ -1,42 +1,49 @@
 #!/usr/bin/env python
-
+import os
 from distutils.core import setup, Extension
 
-def pkg_config_parse(pkg, opt):
-    import os
-    conf = os.popen('pkg-config %s %s' % (opt,pkg)).read()
-    opt = opt[-2:]
-    return [x.lstrip(opt) for x in conf.split()]
+def pkgconfig(opt, *pkgs):
+    r = []
+    for pkg in pkgs:
+        conf = os.popen('pkg-config %s %s' % (opt,pkg)).read()
+        r.extend([ x[2:] for x in conf.split() ])
+    return r
 
-def get_include(pkg):
-    return pkg_config_parse(pkg,'--cflags-only-I')
+modules = [
+    Extension(name = 'cairo._cairo',
+              sources = ['cairo/cairomodule.c',
+                         'cairo/pycairo-context.c',
+                         'cairo/pycairo-font.c',
+                         'cairo/pycairo-matrix.c',
+                         'cairo/pycairo-path.c',
+                         'cairo/pycairo-pattern.c',
+                         'cairo/pycairo-surface.c',
+                         ],
+              include_dirs = pkgconfig('--cflags-only-I', 'cairo'),
+              library_dirs = pkgconfig('--libs-only-L', 'cairo'),
+              libraries = pkgconfig('--libs-only-l', 'cairo'),
+              )
+    ]
 
-def get_lib_dirs(pkg):
-    return pkg_config_parse(pkg,'--libs-only-L')
+#modules.append(Extension(
+#    name = 'cairo.svg',
+#    sources = ['cairo/cairosvgmodule.c'],
+#    include_dirs = pkgconfig('--cflags-only-I', 'libsvg-cairo'),
+#    library_dirs = pkgconfig('--libs-only-L', 'libsvg-cairo'),
+#    libraries = pkgconfig('--libs-only-l', 'libsvg-cairo')))
 
-def get_libs(pkg):
-    return pkg_config_parse(pkg,'--libs-only-l')
+modules.append(Extension(
+    name = 'cairo.gtk',
+    sources = ['cairo/cairogtkmodule.c'],
+    include_dirs = pkgconfig('--cflags-only-I', 'gtk+-2.0', 'pygtk-2.0', 'cairo'),
+    library_dirs = pkgconfig('--libs-only-L', 'pygtk-2.0'),
+    libraries = pkgconfig('--libs-only-l', 'pygtk-2.0')))
 
-#~ print get_include('cairo')
-#~ print get_lib_dirs('cairo')
-#~ print get_libs('cairo')
-
-_cairo = Extension(name = 'cairo._cairo',
-            sources= ['cairo/cairomodule.c',
-            'cairo/pycairo-context.c', 'cairo/pycairo-font.c',
-            'cairo/pycairo-matrix.c', 'cairo/pycairo-path.c',
-            'cairo/pycairo-pattern.c', 'cairo/pycairo-surface.c',
-            ],
-            include_dirs = get_include('cairo'),
-            library_dirs = get_lib_dirs('cairo'),
-            libraries = get_libs('cairo'),
-        )
-
-setup( name = "pycairo",
-    version = "1.0.2",
-    description = "python interface for cairo",
-
-    packages = ['cairo'],
-    ext_modules = [_cairo],
-    )
-
+setup(name = "pycairo",
+      version = "1.0.2",
+      description = "python interface for cairo",
+      packages = ['cairo'],
+      ext_modules = modules,
+      data_files = [  [ 'include/pycairo', [ 'cairo/pycairo.h',
+#                                             'cairo/pycairosvg.h',
+					    ] ]])
