summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Zakhlestin <indeyets@gmail.com>2010-10-06 15:02:46 +0400
committerJohan Dahlin <johan@gnome.org>2010-10-06 09:37:07 -0300
commit272c4dbdf66eadfde8bf18200826867ec3a74035 (patch)
treeed6d25af93724374a92c7910aca4ec8f6352d229
parent754e5462f6dfbe3793eb959abf3dbfa7d2fe6435 (diff)
downloadgobject-introspection-272c4dbdf66eadfde8bf18200826867ec3a74035.tar.gz
chose extension basing on OS
https://bugzilla.gnome.org/show_bug.cgi?id=606686
-rw-r--r--giscanner/libtoolimporter.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/giscanner/libtoolimporter.py b/giscanner/libtoolimporter.py
index e149ec46..84c62f93 100644
--- a/giscanner/libtoolimporter.py
+++ b/giscanner/libtoolimporter.py
@@ -20,6 +20,7 @@
import imp
import os
+import platform
import sys
from .utils import extract_libtool
@@ -49,8 +50,16 @@ class LibtoolImporter(object):
def load_module(self, name):
realpath = extract_libtool(self.path)
- mod = imp.load_module(name, open(realpath), realpath,
- ('.so', 'rb', 3))
+ platform_system = platform.system()
+
+ if platform_system == 'Darwin':
+ extension = '.dylib'
+ elif platform_system == 'Windows':
+ extension = '.dll'
+ else:
+ extension = '.so'
+
+ mod = imp.load_module(name, open(realpath), realpath, (extension, 'rb', 3))
mod.__loader__ = self
return mod