1*4882a593SmuzhiyunFrom 32f035a05e04c0a396e1b43ee8f63bb412c13907 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Max Ihlenfeldt <max@igalia.com> 3*4882a593SmuzhiyunDate: Fri, 10 Feb 2023 12:03:41 +0000 4*4882a593SmuzhiyunSubject: [PATCH] [PATCH] Revert "Use -ffile-compilation-dir= instead of 5*4882a593Smuzhiyun -fdebug-compilation-dir=" and "[ios] Fix breakpoint in Swift files" 6*4882a593Smuzhiyun 7*4882a593Smuzhiyunffile-compilation-dir is supported since clang 13, while 8*4882a593Smuzhiyunmeta-clang dunfel and hardknott are based on clang versions 9*4882a593Smuzhiyun11 and 12 respectively. Thus, revert the change and use 10*4882a593Smuzhiyunfdebug-compilation-dir, which is supported by both 11*4882a593Smuzhiyunversions. 12*4882a593Smuzhiyun 13*4882a593SmuzhiyunThis reverts commits 34a955823630096f5b01c2b01d51c1ea59d22763 and 14*4882a593Smuzhiyun765a3d2a795431f4d5d06d0f39b3512dac4a81d5, except for the changes to 15*4882a593Smuzhiyuntoolchain/ios/swiftc.py. 16*4882a593Smuzhiyun 17*4882a593SmuzhiyunUpstream-Status: Inappropriate 18*4882a593Smuzhiyun 19*4882a593SmuzhiyunSigned-off-by: Max Ihlenfeldt <max@igalia.com> 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun--- 22*4882a593Smuzhiyun build/config/compiler/BUILD.gn | 21 ++++++--------------- 23*4882a593Smuzhiyun build/config/compiler/compiler.gni | 7 +++++-- 24*4882a593Smuzhiyun 2 files changed, 11 insertions(+), 17 deletions(-) 25*4882a593Smuzhiyun 26*4882a593Smuzhiyundiff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn 27*4882a593Smuzhiyunindex d1d3835578db0..6de8875a45eee 100644 28*4882a593Smuzhiyun--- a/build/config/compiler/BUILD.gn 29*4882a593Smuzhiyun+++ b/build/config/compiler/BUILD.gn 30*4882a593Smuzhiyun@@ -1290,7 +1290,6 @@ config("compiler_codegen") { 31*4882a593Smuzhiyun config("compiler_deterministic") { 32*4882a593Smuzhiyun cflags = [] 33*4882a593Smuzhiyun ldflags = [] 34*4882a593Smuzhiyun- swiftflags = [] 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun # Eliminate build metadata (__DATE__, __TIME__ and __TIMESTAMP__) for 37*4882a593Smuzhiyun # deterministic build. See https://crbug.com/314403 38*4882a593Smuzhiyun@@ -1319,20 +1318,12 @@ config("compiler_deterministic") { 39*4882a593Smuzhiyun # different build directory like "out/feature_a" and "out/feature_b" if 40*4882a593Smuzhiyun # we build same files with same compile flag. 41*4882a593Smuzhiyun # Other paths are already given in relative, no need to normalize them. 42*4882a593Smuzhiyun- if (is_nacl) { 43*4882a593Smuzhiyun- # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here. 44*4882a593Smuzhiyun- cflags += [ 45*4882a593Smuzhiyun- "-Xclang", 46*4882a593Smuzhiyun- "-fdebug-compilation-dir", 47*4882a593Smuzhiyun- "-Xclang", 48*4882a593Smuzhiyun- ".", 49*4882a593Smuzhiyun- ] 50*4882a593Smuzhiyun- } else { 51*4882a593Smuzhiyun- # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir= 52*4882a593Smuzhiyun- # and -fcoverage-compilation-dir=. 53*4882a593Smuzhiyun- cflags += [ "-ffile-compilation-dir=." ] 54*4882a593Smuzhiyun- swiftflags += [ "-file-compilation-dir=." ] 55*4882a593Smuzhiyun- } 56*4882a593Smuzhiyun+ cflags += [ 57*4882a593Smuzhiyun+ "-Xclang", 58*4882a593Smuzhiyun+ "-fdebug-compilation-dir", 59*4882a593Smuzhiyun+ "-Xclang", 60*4882a593Smuzhiyun+ ".", 61*4882a593Smuzhiyun+ ] 62*4882a593Smuzhiyun if (!is_win) { 63*4882a593Smuzhiyun # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167) 64*4882a593Smuzhiyun asmflags = [ "-Wa,-fdebug-compilation-dir,." ] 65*4882a593Smuzhiyundiff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni 66*4882a593Smuzhiyunindex 7a43b1113a495..5bec423af6c89 100644 67*4882a593Smuzhiyun--- a/build/config/compiler/compiler.gni 68*4882a593Smuzhiyun+++ b/build/config/compiler/compiler.gni 69*4882a593Smuzhiyun@@ -267,8 +267,11 @@ declare_args() { 70*4882a593Smuzhiyun # deterministic builds to reduce compile times, so this is less relevant for 71*4882a593Smuzhiyun # official builders. 72*4882a593Smuzhiyun strip_absolute_paths_from_debug_symbols_default = 73*4882a593Smuzhiyun- is_android || is_fuchsia || is_nacl || (is_win && use_lld) || is_linux || 74*4882a593Smuzhiyun- is_chromeos || (is_apple && !enable_dsyms) 75*4882a593Smuzhiyun+ # TODO(crbug.com/1010267): remove '!use_clang_coverage', coverage build has 76*4882a593Smuzhiyun+ # dependency to absolute path of source files. 77*4882a593Smuzhiyun+ !use_clang_coverage && 78*4882a593Smuzhiyun+ (is_android || is_fuchsia || is_nacl || (is_win && use_lld) || is_linux || 79*4882a593Smuzhiyun+ is_chromeos || (is_apple && !enable_dsyms)) 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun # If the platform uses stripped absolute paths by default, then we don't expose 82*4882a593Smuzhiyun # it as a configuration option. If this is causing problems, please file a bug. 83