mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-08 10:44:09 -04:00
Merge branch 'qmake-compiler-env' of https://github.com/eli-schwartz/calibre
This commit is contained in:
commit
994a51da11
@ -209,6 +209,9 @@ class Environment(NamedTuple):
|
|||||||
cc: str
|
cc: str
|
||||||
cxx: str
|
cxx: str
|
||||||
linker: str
|
linker: str
|
||||||
|
base_cflags: List[str]
|
||||||
|
base_cxxflags: List[str]
|
||||||
|
base_ldflags: List[str]
|
||||||
cflags: List[str]
|
cflags: List[str]
|
||||||
ldflags: List[str]
|
ldflags: List[str]
|
||||||
make: str
|
make: str
|
||||||
@ -262,8 +265,11 @@ def init_env(debug=False, sanitize=False, compiling_for='native'):
|
|||||||
cflags = shlex.split(cflags) + ['-fPIC']
|
cflags = shlex.split(cflags) + ['-fPIC']
|
||||||
ldflags = os.environ.get('OVERRIDE_LDFLAGS', '-Wall')
|
ldflags = os.environ.get('OVERRIDE_LDFLAGS', '-Wall')
|
||||||
ldflags = shlex.split(ldflags)
|
ldflags = shlex.split(ldflags)
|
||||||
cflags += shlex.split(os.environ.get('CFLAGS', ''))
|
base_cflags = shlex.split(os.environ.get('CFLAGS', ''))
|
||||||
ldflags += shlex.split(os.environ.get('LDFLAGS', ''))
|
base_cxxflags = shlex.split(os.environ.get('CXXFLAGS', ''))
|
||||||
|
base_ldflags = shlex.split(os.environ.get('LDFLAGS', ''))
|
||||||
|
cflags += base_cflags
|
||||||
|
ldflags += base_ldflags
|
||||||
cflags += ['-fvisibility=hidden']
|
cflags += ['-fvisibility=hidden']
|
||||||
if sanitize:
|
if sanitize:
|
||||||
cflags.append('-fsanitize-address')
|
cflags.append('-fsanitize-address')
|
||||||
@ -272,6 +278,7 @@ def init_env(debug=False, sanitize=False, compiling_for='native'):
|
|||||||
if islinux:
|
if islinux:
|
||||||
cflags.append('-pthread')
|
cflags.append('-pthread')
|
||||||
if sys.stdout.isatty():
|
if sys.stdout.isatty():
|
||||||
|
base_cflags.append('-fdiagnostics-color=always')
|
||||||
cflags.append('-fdiagnostics-color=always')
|
cflags.append('-fdiagnostics-color=always')
|
||||||
ldflags.append('-shared')
|
ldflags.append('-shared')
|
||||||
|
|
||||||
@ -309,6 +316,7 @@ def init_env(debug=False, sanitize=False, compiling_for='native'):
|
|||||||
cc = cxx = win_cc
|
cc = cxx = win_cc
|
||||||
linker = win_ld
|
linker = win_ld
|
||||||
cflags, ldflags = basic_windows_flags(debug)
|
cflags, ldflags = basic_windows_flags(debug)
|
||||||
|
base_cflags, base_cxxflags, base_ldflags = [], [], []
|
||||||
if compiling_for == 'windows':
|
if compiling_for == 'windows':
|
||||||
cc = cxx = 'clang-cl'
|
cc = cxx = 'clang-cl'
|
||||||
linker = 'lld-link'
|
linker = 'lld-link'
|
||||||
@ -347,6 +355,7 @@ def init_env(debug=False, sanitize=False, compiling_for='native'):
|
|||||||
ldflags.append('/LIBPATH:'+os.path.join(sysconfig.get_config_var('prefix'), 'libs'))
|
ldflags.append('/LIBPATH:'+os.path.join(sysconfig.get_config_var('prefix'), 'libs'))
|
||||||
return Environment(
|
return Environment(
|
||||||
platform_name=platform_name, dest_ext=dest_ext, std_prefix=std_prefix,
|
platform_name=platform_name, dest_ext=dest_ext, std_prefix=std_prefix,
|
||||||
|
base_cflags=base_cflags, base_cxxflags=base_cxxflags, base_ldflags=base_ldflags,
|
||||||
cc=cc, cxx=cxx, cflags=cflags, ldflags=ldflags, linker=linker, make=NMAKE if iswindows else 'make', lib_prefix=lib_prefix,
|
cc=cc, cxx=cxx, cflags=cflags, ldflags=ldflags, linker=linker, make=NMAKE if iswindows else 'make', lib_prefix=lib_prefix,
|
||||||
obj_suffix=obj_suffix, cc_input_c_flag=cc_input_c_flag, cc_input_cpp_flag=cc_input_cpp_flag, cc_output_flag=cc_output_flag,
|
obj_suffix=obj_suffix, cc_input_c_flag=cc_input_c_flag, cc_input_cpp_flag=cc_input_cpp_flag, cc_output_flag=cc_output_flag,
|
||||||
internal_inc_prefix=internal_inc_prefix, external_inc_prefix=external_inc_prefix, libdir_prefix=libdir_prefix, lib_suffix=lib_suffix)
|
internal_inc_prefix=internal_inc_prefix, external_inc_prefix=external_inc_prefix, libdir_prefix=libdir_prefix, lib_suffix=lib_suffix)
|
||||||
@ -677,6 +686,16 @@ project-factory = "pyqtbuild:PyQtProject"
|
|||||||
sip-files-dir = "."
|
sip-files-dir = "."
|
||||||
{abi_version}
|
{abi_version}
|
||||||
|
|
||||||
|
[tool.sip.builder]
|
||||||
|
qmake-settings = [
|
||||||
|
'QMAKE_CC = {self.env.cc}',
|
||||||
|
'QMAKE_CXX = {self.env.cxx}',
|
||||||
|
'QMAKE_LINK = {self.env.linker or self.env.cxx}',
|
||||||
|
'QMAKE_CFLAGS += {shlex.join(self.env.base_cflags)}',
|
||||||
|
'QMAKE_CXXFLAGS += {shlex.join(self.env.base_cxxflags)}',
|
||||||
|
'QMAKE_LFLAGS += {shlex.join(self.env.base_ldflags)}',
|
||||||
|
]
|
||||||
|
|
||||||
[tool.sip.bindings.{ext.name}]
|
[tool.sip.bindings.{ext.name}]
|
||||||
headers = {ext.headers}
|
headers = {ext.headers}
|
||||||
sources = {ext.sources}
|
sources = {ext.sources}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user