Augment conversion scripts with requirements for qttools

The libclang test is implemented as a custom FindWrapLibClang module.
The module does mostly the same things as the configure test in qmake
land.

Change-Id: I965f284baf7daef074e22f033047c35a917c8808
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
This commit is contained in:
Alexandru Croitor 2019-08-26 16:15:56 +02:00
parent 486da5a84d
commit 5a5dc6294b
2 changed files with 16 additions and 0 deletions

View File

@ -32,6 +32,7 @@ import os.path
import re import re
import sys import sys
from typing import Set, Union, List, Dict from typing import Set, Union, List, Dict
from textwrap import dedent
from helper import map_qt_library, featureName, map_platform, \ from helper import map_qt_library, featureName, map_platform, \
find_3rd_party_library_mapping, generate_find_package_info find_3rd_party_library_mapping, generate_find_package_info
@ -80,6 +81,7 @@ def map_tests(test: str) -> str:
'fsgsbase': 'TEST_subarch_fsgsbase', 'fsgsbase': 'TEST_subarch_fsgsbase',
'gfni': 'TEST_subarch_gfni', 'gfni': 'TEST_subarch_gfni',
'ibt': 'TEST_subarch_ibt', 'ibt': 'TEST_subarch_ibt',
'libclang': 'TEST_libclang',
'lwp': 'TEST_subarch_lwp', 'lwp': 'TEST_subarch_lwp',
'lzcnt': 'TEST_subarch_lzcnt', 'lzcnt': 'TEST_subarch_lzcnt',
'mmx': 'TEST_subarch_mmx', 'mmx': 'TEST_subarch_mmx',
@ -590,6 +592,19 @@ def parseTest(ctx, test, data, cm_fh):
cm_fh.write(qmakeFixme) cm_fh.write(qmakeFixme)
cm_fh.write(")\n\n") cm_fh.write(")\n\n")
elif data["type"] == "libclang":
knownTests.add(test)
cm_fh.write("# {}\n".format(test))
lib_clang_lib = find_3rd_party_library_mapping("libclang")
cm_fh.write(generate_find_package_info(lib_clang_lib))
cm_fh.write(dedent("""
if(TARGET WrapLibClang::WrapLibClang)
set(TEST_libclang "ON" CACHE BOOL "Required libclang version found." FORCE)
endif()
"""))
cm_fh.write("\n")
elif data["type"] == "x86Simd": elif data["type"] == "x86Simd":
knownTests.add(test) knownTests.add(test)

View File

@ -203,6 +203,7 @@ _library_map = [
LibraryMapping('journald', 'Libsystemd', 'PkgConfig::Libsystemd'), LibraryMapping('journald', 'Libsystemd', 'PkgConfig::Libsystemd'),
LibraryMapping('jpeg', 'JPEG', 'JPEG::JPEG'), # see also libjpeg LibraryMapping('jpeg', 'JPEG', 'JPEG::JPEG'), # see also libjpeg
LibraryMapping('libatomic', 'Atomic', 'Atomic'), LibraryMapping('libatomic', 'Atomic', 'Atomic'),
LibraryMapping('libclang', 'WrapLibClang', 'WrapLibClang::WrapLibClang'),
LibraryMapping('libdl', None, '${CMAKE_DL_LIBS}'), LibraryMapping('libdl', None, '${CMAKE_DL_LIBS}'),
LibraryMapping('libinput', 'Libinput', 'Libinput::Libinput'), LibraryMapping('libinput', 'Libinput', 'Libinput::Libinput'),
LibraryMapping('libjpeg', 'JPEG', 'JPEG::JPEG'), # see also jpeg LibraryMapping('libjpeg', 'JPEG', 'JPEG::JPEG'), # see also jpeg