diff options
author | Michal Klocek <michal.klocek@qt.io> | 2016-11-23 20:08:09 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-01-25 09:15:33 +0000 |
commit | 2fab4a04938a4ddc30f9bdb1749e75e26a3df354 (patch) | |
tree | 20ffd5d85f3f851c88beb2652f68f9e9291190b5 /src/core/config | |
parent | c2447a308882ba3691d66b2c28df197f571518c7 (diff) |
Add gn build of qtwebengine for linux
This commit uses gn instead of gyp to build on desktop
linux.
Use WEBENGINE_CONFIG+=use_gn to use gn during the build
instead of gyp.
Change-Id: Ifd3d8d0835b47c323a8d39c320eb55e5e1024dee
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/core/config')
-rw-r--r-- | src/core/config/common.pri | 82 | ||||
-rw-r--r-- | src/core/config/desktop_linux.pri | 48 |
2 files changed, 91 insertions, 39 deletions
diff --git a/src/core/config/common.pri b/src/core/config/common.pri index f822ab7cc..d13d9f8d9 100644 --- a/src/core/config/common.pri +++ b/src/core/config/common.pri @@ -1,33 +1,61 @@ # Shared configuration for all our supported platforms -# Trigger Qt-specific build conditions. -GYP_CONFIG += use_qt=1 -# We do not want to ship more external binary blobs, so let v8 embed its startup data. -GYP_CONFIG += v8_use_external_startup_data=0 -# WebSpeech requires Google API keys and adds dependencies on speex and flac. -GYP_CONFIG += enable_web_speech=0 -# We do not use or even include the extensions -GYP_CONFIG += enable_extensions=0 - -sanitize_address: GYP_CONFIG += asan=1 -sanitize_thread: GYP_CONFIG += tsan=1 -sanitize_memory: GYP_CONFIG += msan=1 -sanitize_undefined: GYP_CONFIG += ubsan=1 - -use?(printing) { - GYP_CONFIG += enable_basic_printing=1 enable_print_preview=1 -} else { - GYP_CONFIG += enable_basic_printing=0 enable_print_preview=0 -} +use?(gn) { -use?(pdf) { - GYP_CONFIG += enable_pdf=1 -} else { - GYP_CONFIG += enable_pdf=0 -} + use?(printing) { + gn_args += enable_basic_printing=true enable_print_preview=true + } else { + gn_args += enable_basic_printing=false enable_print_preview=false + } + + use?(pdf) { + gn_args += enable_pdf=true + } else { + gn_args += enable_pdf=false + } + + use?(pepper_plugins) { + gn_args += enable_plugins=true enable_widevine=true + } else { + gn_args += enable_plugins=false enable_widevine=false + } + + use?(spellchecker) { + gn_args += enable_spellcheck=true + } else { + gn_args += enable_spellcheck=false + } -use?(pepper_plugins) { - GYP_CONFIG += enable_plugins=1 enable_widevine=1 } else { - GYP_CONFIG += enable_plugins=0 enable_widevine=0 + # Trigger Qt-specific build conditions. + GYP_CONFIG += use_qt=1 + # We do not want to ship more external binary blobs, so let v8 embed its startup data. + GYP_CONFIG += v8_use_external_startup_data=0 + # WebSpeech requires Google API keys and adds dependencies on speex and flac. + GYP_CONFIG += enable_web_speech=0 + # We do not use or even include the extensions + GYP_CONFIG += enable_extensions=0 + + sanitize_address: GYP_CONFIG += asan=1 + sanitize_thread: GYP_CONFIG += tsan=1 + sanitize_memory: GYP_CONFIG += msan=1 + sanitize_undefined: GYP_CONFIG += ubsan=1 + + use?(printing) { + GYP_CONFIG += enable_basic_printing=1 enable_print_preview=1 + } else { + GYP_CONFIG += enable_basic_printing=0 enable_print_preview=0 + } + + use?(pdf) { + GYP_CONFIG += enable_pdf=1 + } else { + GYP_CONFIG += enable_pdf=0 + } + + use?(pepper_plugins) { + GYP_CONFIG += enable_plugins=1 enable_widevine=1 + } else { + GYP_CONFIG += enable_plugins=0 enable_widevine=0 + } } diff --git a/src/core/config/desktop_linux.pri b/src/core/config/desktop_linux.pri index 92491fc1c..f8bd42ce8 100644 --- a/src/core/config/desktop_linux.pri +++ b/src/core/config/desktop_linux.pri @@ -1,17 +1,41 @@ -GYP_ARGS += "-D qt_os=\"desktop_linux\"" -include(linux.pri) +use?(gn) { + include(common.pri) + gn_args += \ + use_qt=true \ + is_clang=false \ + use_sysroot=false \ + enable_remoting=false \ + enable_nacl=false \ + use_kerberos=false \ + is_component_build=false \ + use_experimental_allocator_shim=false \ + use_allocator=\"none\" \ + v8_use_external_startup_data=false \ + linux_use_bundled_binutils=false \ + treat_warnings_as_errors=false -GYP_CONFIG += \ - desktop_linux=1 + use?(icecc) { + gn_args += use_debug_fission=false + } -clang { - GYP_CONFIG += werror= - clang_full_path = $$which($${QMAKE_CXX}) - # Remove the "/bin/clang++" part. - clang_prefix = $$section(clang_full_path, /, 0, -3) - GYP_CONFIG += clang=1 host_clang=1 clang_use_chrome_plugins=0 make_clang_dir=$${clang_prefix} - linux-clang-libc++: GYP_CONFIG += use_system_libcxx=1 } else { - GYP_CONFIG += clang=0 host_clang=0 + + GYP_ARGS += "-D qt_os=\"desktop_linux\"" + + include(linux.pri) + + GYP_CONFIG += \ + desktop_linux=1 + + clang { + GYP_CONFIG += werror= + clang_full_path = $$which($${QMAKE_CXX}) + # Remove the "/bin/clang++" part. + clang_prefix = $$section(clang_full_path, /, 0, -3) + GYP_CONFIG += clang=1 host_clang=1 clang_use_chrome_plugins=0 make_clang_dir=$${clang_prefix} + linux-clang-libc++: GYP_CONFIG += use_system_libcxx=1 + } else { + GYP_CONFIG += clang=0 host_clang=0 + } } |