Dont use -b flag when calling sip

Was inexplicably removed from SIP5
This commit is contained in:
Kovid Goyal 2020-09-14 12:26:08 +05:30
parent 52cf15fc23
commit a4df5cc67b
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C

View File

@ -5,7 +5,7 @@ __license__ = 'GPL v3'
__copyright__ = '2009, Kovid Goyal <kovid@kovidgoyal.net>' __copyright__ = '2009, Kovid Goyal <kovid@kovidgoyal.net>'
__docformat__ = 'restructuredtext en' __docformat__ = 'restructuredtext en'
import textwrap, os, shlex, subprocess, glob, shutil, re, sys, json import textwrap, os, shlex, subprocess, glob, shutil, sys, json
from collections import namedtuple from collections import namedtuple
from setup import Command, islinux, isbsd, isfreebsd, ismacos, ishaiku, SRC, iswindows, __version__ from setup import Command, islinux, isbsd, isfreebsd, ismacos, ishaiku, SRC, iswindows, __version__
@ -476,19 +476,28 @@ class Build(Command):
sbf = self.j(src_dir, self.b(sipf)+'.sbf') sbf = self.j(src_dir, self.b(sipf)+'.sbf')
cmd = None cmd = None
if self.newer(sbf, [sipf]+ext.headers): if self.newer(sbf, [sipf]+ext.headers):
cmd = [pyqt['sip_bin'], '-w', '-c', src_dir, '-b', sbf, '-I' + pyqt['pyqt_sip_dir']] + shlex.split(pyqt['sip_flags']) + [sipf] shutil.rmtree(src_dir)
os.mkdir(src_dir)
cmd = [pyqt['sip_bin'], '-w', '-c', src_dir, '-I' + pyqt['pyqt_sip_dir']] + shlex.split(pyqt['sip_flags']) + [sipf]
return cmd, sbf return cmd, sbf
def get_sip_data(self, sbf): def get_sip_data(self, sbf):
with open(sbf, 'rb') as f: if os.path.exists(sbf):
raw = f.read().decode('utf-8') with open(sbf) as f:
return json.loads(f.read())
src_dir = os.path.dirname(sbf)
def read(x): def transform(x):
ans = re.search(r'^%s\s*=\s*(.+)$' % x, raw, flags=re.M).group(1).strip() return x.replace(os.sep, '/')
if x != 'target':
ans = ans.split() ans = {
'target': os.path.basename(src_dir),
'sources': list(map(transform, glob.glob(os.path.join(src_dir, '*.cpp')))),
'headers': list(map(transform, glob.glob(os.path.join(src_dir, '*.h')))),
}
with open(sbf, 'w') as f:
f.write(json.dumps(ans))
return ans return ans
return {x:read(x) for x in ('target', 'sources', 'headers')}
def build_pyqt_extension(self, ext, dest, sbf): def build_pyqt_extension(self, ext, dest, sbf):
self.info(f'\n####### Building {ext.name} extension', '#'*7) self.info(f'\n####### Building {ext.name} extension', '#'*7)