--- sip-4.16.3/configure.py.orig 2014-09-11 19:12:51.000000000 +0200 +++ sip-4.16.3/configure.py 2014-10-27 17:54:50.981640566 +0100 @@ -47,6 +47,7 @@ sip_sip_dir = '' sysroot = '' src_dir = os.path.dirname(os.path.abspath(__file__)) +build_dir = os.getcwd() sip_module_base = None build_platform = None --- sip-4.16.3/siputils.py.orig 2014-09-07 17:30:09.000000000 +0200 +++ sip-4.16.3/siputils.py 2014-10-27 22:19:01.287642057 +0100 @@ -202,7 +202,7 @@ def __init__(self, configuration, console=0, qt=0, opengl=0, python=0, threaded=0, warnings=1, debug=0, dir=None, makefile="Makefile", installs=None, universal=None, - arch=None, deployment_target=None): + arch=None, deployment_target=None, src_dir=None): """Initialise an instance of the target. All the macros are left unchanged allowing scripts to manipulate them at will. @@ -264,8 +264,11 @@ else: self.dir = os.path.curdir - # Assume we are building in the source tree. - self._src_dir = self.dir + if src_dir is not None: + self._src_dir = src_dir + else: + # Assume we are building in the source tree. + self._src_dir = self.dir if universal is None: self._universal = configuration.universal @@ -381,6 +381,8 @@ defines.extend(self.optional_list("DEFINES")) incdir = _UniqueList(["."]) + if self.dir != self._src_dir: + incdir.append(self._src_dir) incdir.extend(self.extra_include_dirs) incdir.extend(self.optional_list("INCDIR")) @@ -1029,7 +1031,8 @@ else: if os.path.isabs(filename): # We appear to be building out of the source tree. - self._src_dir = os.path.dirname(filename) + if self._src_dir == self.dir: + self._src_dir = os.path.dirname(filename) bfname = filename else: bfname = os.path.join(self.dir, filename) @@ -1465,7 +1471,7 @@ console=0, qt=0, opengl=0, threaded=0, warnings=1, debug=0, dir=None, makefile="Makefile", installs=None, strip=1, export_all=0, universal=None, arch=None, - deployment_target=None): + deployment_target=None, src_dir=None): """Initialise an instance of a module Makefile. build_file is the file containing the target specific information. If @@ -1479,7 +1485,7 @@ increases the size of the module and slows down module load times but may avoid problems with modules that use exceptions. The default is 0. """ - Makefile.__init__(self, configuration, console, qt, opengl, 1, threaded, warnings, debug, dir, makefile, installs, universal, arch, deployment_target) + Makefile.__init__(self, configuration, console, qt, opengl, 1, threaded, warnings, debug, dir, makefile, installs, universal, arch, deployment_target, src_dir) self._build = self.parse_build_file(build_file) self._install_dir = install_dir