blob: c36534d192234497f95ef3c5db722e0763b5bf32 [file] [log] [blame]
include(common.pri)
gn_args += \
use_sysroot=false \
enable_session_service=false \
ninja_use_custom_environment_files=false \
is_multi_dll_chrome=false \
win_linker_timing=true \
com_init_check_hook_disabled=true \
heterogeneous_executables=true
clang_cl {
clang_full_path = $$system_path($$which($${QMAKE_CXX}))
# Remove the "\bin\clang-cl.exe" part:
clang_dir = $$dirname(clang_full_path)
clang_prefix = $$join(clang_dir,,,"\..")
gn_args += \
is_clang=true \
use_lld=true \
clang_use_chrome_plugins=false \
clang_base_path=\"$$system_path($$clean_path($$clang_prefix))\"
} else {
gn_args += is_clang=false use_lld=false
}
qtConfig(webengine-developer-build) {
gn_args += \
is_win_fastlink=true
# Incremental linking doesn't work in release developer builds due to usage of /OPT:ICF
# by Chromium.
CONFIG(debug, debug|release) {
gn_args += \
use_incremental_linking=true
} else {
gn_args += \
use_incremental_linking=false
}
} else {
gn_args += \
is_win_fastlink=false \
use_incremental_linking=false
}
defineTest(usingMSVC32BitCrossCompiler) {
CL_DIR =
for(dir, QMAKE_PATH_ENV) {
exists($$dir/cl.exe) {
CL_DIR = $$dir
break()
}
}
isEmpty(CL_DIR): {
warning(Cannot determine location of cl.exe.)
return(false)
}
CL_DIR = $$system_path($$CL_DIR)
CL_DIR = $$split(CL_DIR, \\)
CL_PLATFORM = $$take_last(CL_DIR)
equals(CL_PLATFORM, amd64_x86): return(true)
equals(CL_PLATFORM, x86)|equals(CL_PLATFORM, x64) {
CL_PLATFORM = $$take_last(CL_DIR)
equals(CL_PLATFORM, HostX64): return(true)
}
return(false)
}
msvc:contains(QT_ARCH, "i386"):!usingMSVC32BitCrossCompiler() {
warning(Full debug info is disabled for chromium due to 32bit compiler)
# The 32 bit MSVC linker runs out of memory if we do not remove all debug information.
force_debug_info: gn_args -= symbol_level=1
gn_args *= symbol_level=0
}
msvc {
equals(MSVC_VER, 15.0) {
MSVS_VERSION = 2017
} else: equals(MSVC_VER, 16.0) {
MSVS_VERSION = 2019
} else {
error("Visual Studio compiler version \"$$MSVC_VER\" is not supported by gn.")
}
gn_args += visual_studio_version=$$MSVS_VERSION
SDK_PATH = $$(WINDOWSSDKDIR)
VS_PATH= $$(VSINSTALLDIR)
gn_args += visual_studio_path=\"$$clean_path($$VS_PATH)\"
gn_args += windows_sdk_path=\"$$clean_path($$SDK_PATH)\"
GN_TARGET_CPU = $$gnArch($$QT_ARCH)
gn_args += target_cpu=\"$$GN_TARGET_CPU\"
} else {
error("Microsoft Visual Studio C++ compatible compiler is required by gn.")
}