diff options
author | Tobias Hunger <tobias.hunger@qt.io> | 2018-11-06 14:20:19 +0100 |
---|---|---|
committer | Tobias Hunger <tobias.hunger@qt.io> | 2018-11-06 15:24:35 +0000 |
commit | 38f1a10b6f6deeee0871535fe7430ebd90f3a935 (patch) | |
tree | 8612cac4d02df5c2135ba3ac62f85acb2a00393c /util | |
parent | e11522726bc7f05947e447ae96b85bc1e2d4685c (diff) |
CMake: Improve handling of the different kinds of iconv
Improve conditions/enable/disable conditions for iconv related features.
These are detected a bit different from what qmake does, so adapt to that.
Change-Id: I7b3e4baf05dc324507f370d7f651a62f29e42a98
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Diffstat (limited to 'util')
-rwxr-xr-x | util/cmake/configurejson2cmake.py | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/util/cmake/configurejson2cmake.py b/util/cmake/configurejson2cmake.py index e0335a0e52..5c137c394f 100755 --- a/util/cmake/configurejson2cmake.py +++ b/util/cmake/configurejson2cmake.py @@ -274,7 +274,6 @@ def map_condition(condition): mapped_features = { "dlopen": "UNIX", 'gbm': 'gbm_FOUND', - "sun-libiconv": "TEST_sun_iconv", "system-xcb": "ON", "system-freetype": "ON", } @@ -645,12 +644,22 @@ def parseFeature(ctx, feature, data, cm_fh): 'enable_gdb_index': None, 'enable_new_dtags': None, 'force_debug_info': None, - 'framework': { 'condition': 'APPLE AND BUILD_SHARED_LIBS', }, + 'framework': { + 'condition': 'APPLE AND BUILD_SHARED_LIBS', + }, 'gc_binaries': None, 'gcc-sysroot': None, 'gcov': None, + 'gnu-libiconv': { + 'condition': 'NOT WIN32 AND NOT QNX AND NOT ANDROID AND NOT APPLE AND TEST_posix_iconv AND NOT TEST_iconv_needlib', + 'enable': 'TEST_posix_iconv AND NOT TEST_iconv_needlib', + 'disable': 'NOT TEST_posix_iconv OR TEST_iconv_needlib', + }, 'GNUmake': None, 'host-dbus': None, + 'iconv': { + 'condition': 'NOT QT_FEATURE_icu AND QT_FEATURE_textcodec AND ( TEST_posix_iconv OR TEST_sun_iconv )' + }, 'incredibuild_xge': None, 'ltcg': None, 'msvc_mp': None, @@ -658,6 +667,11 @@ def parseFeature(ctx, feature, data, cm_fh): 'optimize_size': None, 'pkg-config': None, 'posix_fallocate': None, # Only needed for sqlite, which we do not want to build + 'posix_libiconv': { + 'condition': 'NOT WIN32 AND NOT QNX AND NOT ANDROID AND NOT APPLE AND TEST_posix_iconv AND TEST_iconv_needlib', + 'enable': 'TEST_posix_iconv AND TEST_iconv_needlib', + 'disable': 'NOT TEST_posix_iconv OR NOT TEST_iconv_needlib', + }, 'precompile_header': None, 'profile': None, 'qmakeargs': None, @@ -680,7 +694,11 @@ def parseFeature(ctx, feature, data, cm_fh): 'static_runtime': None, 'stl': None, # Do we really need to test for this in 2018?! 'strip': None, - 'sun-libiconv': None, # internal feature but not referenced in our system + 'sun-libiconv': { + 'condition': 'NOT WIN32 AND NOT QNX AND NOT ANDROID AND NOT APPLE AND TEST_sun_iconv', + 'enable': 'TEST_sun_iconv', + 'disable': 'NOT TEST_sun_iconv', + }, 'system-doubleconversion': None, # No system libraries anymore! 'system-freetype': None, 'system-jpeg': None, |