summaryrefslogtreecommitdiffstats
path: root/util
diff options
context:
space:
mode:
authorTobias Hunger <tobias.hunger@qt.io>2018-11-06 14:20:19 +0100
committerTobias Hunger <tobias.hunger@qt.io>2018-11-06 15:24:35 +0000
commit38f1a10b6f6deeee0871535fe7430ebd90f3a935 (patch)
tree8612cac4d02df5c2135ba3ac62f85acb2a00393c /util
parente11522726bc7f05947e447ae96b85bc1e2d4685c (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-xutil/cmake/configurejson2cmake.py24
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,