1*3ac0a46fSAndroid Build Coastguard Worker# Copyright 2022 The PDFium Authors 2*3ac0a46fSAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 3*3ac0a46fSAndroid Build Coastguard Worker# found in the LICENSE file. 4*3ac0a46fSAndroid Build Coastguard Worker 5*3ac0a46fSAndroid Build Coastguard Worker# A simplified config to consistently use C++17 and override the config 6*3ac0a46fSAndroid Build Coastguard Worker# in //build/config/compiler, which is using C++20 by default on many platforms. 7*3ac0a46fSAndroid Build Coastguard Worker 8*3ac0a46fSAndroid Build Coastguard Workerassert(!is_nacl) 9*3ac0a46fSAndroid Build Coastguard Worker 10*3ac0a46fSAndroid Build Coastguard Workerconfig("force_cxx17") { 11*3ac0a46fSAndroid Build Coastguard Worker cflags_cc = [] 12*3ac0a46fSAndroid Build Coastguard Worker 13*3ac0a46fSAndroid Build Coastguard Worker if (is_linux || is_chromeos || is_android || current_os == "aix") { 14*3ac0a46fSAndroid Build Coastguard Worker if (is_clang) { 15*3ac0a46fSAndroid Build Coastguard Worker standard_prefix = "c" 16*3ac0a46fSAndroid Build Coastguard Worker } else { 17*3ac0a46fSAndroid Build Coastguard Worker standard_prefix = "gnu" 18*3ac0a46fSAndroid Build Coastguard Worker } 19*3ac0a46fSAndroid Build Coastguard Worker cflags_cc += [ "-std=${standard_prefix}++17" ] 20*3ac0a46fSAndroid Build Coastguard Worker } else if (is_win) { 21*3ac0a46fSAndroid Build Coastguard Worker cflags_cc += [ "/std:c++17" ] 22*3ac0a46fSAndroid Build Coastguard Worker } else { 23*3ac0a46fSAndroid Build Coastguard Worker cflags_cc += [ "-std=c++17" ] 24*3ac0a46fSAndroid Build Coastguard Worker } 25*3ac0a46fSAndroid Build Coastguard Worker} 26