From 7e7c9ba45554cd4c2f9a80ad61c3d2a0f9599f9b Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Fri, 21 Aug 2020 12:59:24 +0200 Subject: CMake: Support configure tests of type 'linkerSupportsFlag' Task-number: QTBUG-86155 Change-Id: I3764d99cd4ad1c432b499ec9ba7c4c48391fa421 Reviewed-by: Alexandru Croitor --- util/cmake/configurejson2cmake.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'util/cmake') diff --git a/util/cmake/configurejson2cmake.py b/util/cmake/configurejson2cmake.py index ffe2dd11b7..8b74cf53cb 100755 --- a/util/cmake/configurejson2cmake.py +++ b/util/cmake/configurejson2cmake.py @@ -777,6 +777,14 @@ def write_compiler_supports_flag_test( cm_fh.write(lineify("FLAG", data.get("flag", ""))) cm_fh.write(")\n\n") +def write_linker_supports_flag_test( + ctx, name, details, data, cm_fh, manual_library_list=None, is_library_test=False +): + cm_fh.write(f"qt_config_linker_supports_flag_test({featureName(name)}\n") + cm_fh.write(lineify("LABEL", data.get("label", ""))) + cm_fh.write(lineify("FLAG", data.get("flag", ""))) + cm_fh.write(")\n\n") + def parseTest(ctx, test, data, cm_fh): skip_tests = { "c11", @@ -814,6 +822,16 @@ def parseTest(ctx, test, data, cm_fh): write_compiler_supports_flag_test(ctx, test, details, data, cm_fh) + if data["type"] == "linkerSupportsFlag": + knownTests.add(test) + + if "test" in data: + details = data["test"] + else: + details = test + + write_linker_supports_flag_test(ctx, test, details, data, cm_fh) + elif data["type"] == "libclang": knownTests.add(test) -- cgit v1.2.3