Conan: Rename 'extra_cmake_args' Conan option as 'cmake_args_qtbase'
It turns out that we need to support two ways to pass cmake args as Conan options. Those that are meant for qtbase only, like "-DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}", and those that are meant for leaf modules only. Rename the current 'extra_cmake_args' Conan recipe option as 'cmake_args_qtbase' to make it clear these cmake args are passed to qtbase build only. The leaf modules will be using 'cmake_args_leaf_module' as the Conan option name. Change-Id: I456b8b07da5684f386cac668a5cd3e2509c733ac Reviewed-by: Toni Saario <toni.saario@qt.io> (cherry picked from commit 83752fcd2b8104df8d17f24640c14a307eac46fa) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
590d3f8e1e
commit
2177ada794
10
conanfile.py
10
conanfile.py
@ -124,8 +124,8 @@ class QtOptionParser:
|
||||
def __init__(self) -> None:
|
||||
self.options: List[QtConfigureOption] = []
|
||||
self.load_configure_options()
|
||||
self.extra_options: Dict[str, Any] = {"extra_cmake_args": "ANY"}
|
||||
self.extra_options_default_values = {"extra_cmake_args": None}
|
||||
self.extra_options: Dict[str, Any] = {"cmake_args_qtbase": "ANY"}
|
||||
self.extra_options_default_values = {"cmake_args_qtbase": None}
|
||||
|
||||
def load_configure_options(self) -> None:
|
||||
"""Read the configure options and features dynamically via configure(.bat).
|
||||
@ -315,10 +315,10 @@ class QtOptionParser:
|
||||
qt_options.append(qt_option)
|
||||
return qt_options
|
||||
|
||||
def get_extra_cmake_args_for_configure(self, conan_options: Options) -> List[Optional[str]]:
|
||||
def get_cmake_args_for_configure(self, conan_options: Options) -> List[Optional[str]]:
|
||||
ret: List[Optional[str]] = []
|
||||
for option_name, option_value in conan_options.items():
|
||||
if option_name == "extra_cmake_args" and self.is_used_option(option_value):
|
||||
if option_name == "cmake_args_qtbase" and self.is_used_option(option_value):
|
||||
ret = [ret for ret in option_value.strip(r" '\"").split()]
|
||||
return ret
|
||||
|
||||
@ -334,7 +334,7 @@ def _build_qtbase(conan_file: ConanFile):
|
||||
cmd = " ".join(
|
||||
[str(configure), " ".join(qt_configure_options), "-prefix", conan_file.package_folder]
|
||||
)
|
||||
cmake_args = parser.get_extra_cmake_args_for_configure(conan_file.options)
|
||||
cmake_args = parser.get_cmake_args_for_configure(conan_file.options)
|
||||
if cmake_args:
|
||||
cmd += f" -- {' '.join(cmake_args)}"
|
||||
conan_file.output.info(f"Calling: {cmd}")
|
||||
|
Loading…
x
Reference in New Issue
Block a user