chiark / gitweb /
mdup.pyx: New support for mLib's glorious `mdup' function.
[mLib-python] / setup.py
index de8e515cf2944fe9af2b99dcdd20e991ca7a1a85..d59471f7d046605e8f969e363c6b215da6566986 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -2,7 +2,7 @@ from distutils.core import setup, Extension
 from Pyrex.Distutils import build_ext
 from os import *
 from errno import *
-import sre
+import re
 import sys
 from sys import stdin, stdout, stderr
 
@@ -18,14 +18,10 @@ def progoutput(cmd):
   return out.rstrip('\n')
 
 def libconfig(lib, ver):
-  config = lib + '-config'
-  if system('%s --check %s' % (config, ver)):
-    raise '%s version %s not found' % (lib, ver)
-  version = progoutput('%s --version' % config)
-  for i in progoutput('%s --cflags' % config).split():
+  for i in progoutput('pkg-config --cflags "%s >= %s"' % (lib, ver)).split():
     if i[:2] == '-I': incdirs.append(i[2:])
     else: raise 'strange cflags item %s' % i
-  for i in progoutput('%s --libs' % config).split():
+  for i in progoutput('pkg-config --libs "%s >= %s"' % (lib, ver)).split():
     if i[:2] == '-L': libdirs.append(i[2:])
     elif i[:2] == '-l': libs.append(i[2:])
     else: raise 'strange libs item %s' % i
@@ -40,7 +36,7 @@ def uniquify(l):
   return o
 
 libconfig('catacomb', '2.1.0')
-libconfig('mLib', '2.0.3')
+libconfig('mLib', '2.1.0')
 
 def needs_update_p(target, sources):
   if not path.exists(target): return True
@@ -49,13 +45,13 @@ def needs_update_p(target, sources):
     if stat(s).st_mtime > t_target: return True
   return False
 
-rx_subst = sre.compile(r'\%(\w+)\%')
+rx_subst = re.compile(r'\%(\w+)\%')
 
 def derive(target, src, subs):
   if needs_update_p(target, [src]):
       out = file(target + '.new', 'w')
       for line in file(src):
-        out.write(rx_subst.sub((lambda m: subs[m.group(1)]), line))
+       out.write(rx_subst.sub((lambda m: subs[m.group(1)]), line))
       out.close()
       rename(target + '.new', target)
 
@@ -77,11 +73,11 @@ def mlibext(src):
     srcs = [src]
 
 mlib = Extension('mLib', ['mLib.pyx', 'atom-base.c', 'array.c'],
-                 
-                 ##extra_compile_args = ['-O0'],
-                 include_dirs = uniquify(incdirs),
-                 library_dirs = uniquify(libdirs),
-                 libraries = uniquify(libs))
+
+                ##extra_compile_args = ['-O0'],
+                include_dirs = uniquify(incdirs),
+                library_dirs = uniquify(libdirs),
+                libraries = uniquify(libs))
 
 setup(name = 'mLib-python',
       version = '1.0.0',