| diff -Naur PyQt-builder-1.4.0-orig/pyqtbuild/builder.py PyQt-builder-1.4.0/pyqtbuild/builder.py |
| --- PyQt-builder-1.4.0-orig/pyqtbuild/builder.py 2020-05-31 14:52:54.000000000 +0300 |
| +++ PyQt-builder-1.4.0/pyqtbuild/builder.py 2020-06-07 21:33:19.550266500 +0300 |
| @@ -26,6 +26,7 @@ |
| |
| import os |
| import sys |
| +from sysconfig import _POSIX_BUILD |
| |
| from sipbuild import (Buildable, BuildableModule, Builder, Option, Project, |
| PyProjectOptionException, UserException) |
| @@ -58,7 +59,7 @@ |
| # be on PATH). |
| if tool != 'pep517': |
| self._sip_distinfo = os.path.join( |
| - os.path.abspath(os.path.dirname(sys.argv[0])), |
| + os.path.abspath(os.path.dirname(sys.argv[0]).replace('\\', '/')), |
| self._sip_distinfo) |
| |
| # Check we have a qmake. |
| @@ -175,8 +175,12 @@ |
| ['install_' + installable.name |
| for installable in project.installables]))) |
| pro_lines.append('distinfo.extra = {}'.format(' '.join(args))) |
| + if self.project.py_platform == 'win32' and "MSYSTEM" in os.environ: |
| + distinfo_dir = os.popen(' '.join(['cygpath', '--unix', target_dir])).readline().strip() |
| + else: |
| + distinfo_dir = target_dir |
| pro_lines.append( |
| - 'distinfo.path = {}'.format(self.qmake_quote(target_dir))) |
| + 'distinfo.path = {}'.format(self.qmake_quote(distinfo_dir))) |
| pro_lines.append('INSTALLS += distinfo') |
| |
| pro_name = os.path.join(project.build_dir, project.name + '.pro') |
| @@ -266,7 +267,7 @@ |
| def _find_make(self): |
| """ Return the name of a valid make program. """ |
| |
| - if self.project.py_platform == 'win32': |
| + if self.project.py_platform == 'win32' and not "MSYSTEM" in os.environ: |
| if self.spec == 'win32-g++': |
| make = 'mingw32-make' |
| else: |
| @@ -388,8 +389,8 @@ |
| # TODO: is this still necessary for Python v3.8? |
| if not buildable.static: |
| pro_lines.extend(['win32 {', |
| - ' LIBS += -L{}'.format( |
| - self.qmake_quote(project.py_pylib_dir)), |
| + ' LIBS += -L{} -l{}'.format( |
| + self.qmake_quote(project.py_pylib_dir), self.qmake_quote(project.py_pylib_lib)), |
| '}']) |
| |
| # Add any installables from the buildable. |
| @@ -419,7 +420,11 @@ |
| raise UserException( |
| "Unexpected output from qmake: '{0}'".format(line)) |
| |
| - name, value = tokens |
| + if _POSIX_BUILD and "MSYSTEM" in os.environ: |
| + name = tokens[0] |
| + value = os.popen(' '.join(['cygpath', '--unix', tokens[1]])).readline().strip() |
| + else: |
| + name, value = tokens |
| else: |
| name = tokens |
| value = None |
| diff -Naur PyQt-builder-1.4.0-orig/pyqtbuild/project.py PyQt-builder-1.4.0/pyqtbuild/project.py |
| --- PyQt-builder-1.4.0-orig/pyqtbuild/project.py 2020-05-31 14:52:54.000000000 +0300 |
| +++ PyQt-builder-1.4.0/pyqtbuild/project.py 2020-06-07 21:31:10.233125300 +0300 |
| @@ -26,6 +26,7 @@ |
| |
| import os |
| import sys |
| +from sysconfig import _POSIX_BUILD |
| |
| from sipbuild import Option, Project |
| |
| @@ -88,7 +89,7 @@ |
| # Get the details of the default Python interpreter library. Note that |
| # these are actually non-user options but we need the 'link_full_dll' |
| # user option in order to set them. |
| - if self.py_platform == 'win32': |
| + if self.py_platform == 'win32' and not _POSIX_BUILD: |
| pylib_dir = os.path.join(sys.base_prefix, 'libs') |
| |
| debug_suffix = '_d' if self.py_debug else '' |