aboutsummaryrefslogblamecommitdiff
path: root/www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn
blob: 660b06bee167de41e3232f3dc05ed2ea7de17c72 (plain) (tree)
1
2
3
4
5
6
7
8
                                                                                       
                                                        





                                                                             


                                                                               
                                        
      
 
                       

                                                                                

                                            
                                             







                                        
                                        







                                                                                


















                                                                             


                                         

                                                                           


                                                    
                                                        







                                                                             











                                                                          







                                                                                  
                                                  







                                                                                            
                                              


                                                                              

                                                                      
                       

                                  
                                         




                                                                              
      
 
                                                                              
                                         

                                                                                
                                                         




                                                                           
--- src/3rdparty/chromium/build/config/compiler/BUILD.gn.orig	2023-11-09 11:32:20 UTC
+++ src/3rdparty/chromium/build/config/compiler/BUILD.gn
@@ -134,7 +134,7 @@ declare_args() {
   #
   # TODO(crbug.com/977230): Enabling this when 'use_xcode_clang' is true may
   # call an old clang that doesn't support auto-init.
-  init_stack_vars = !is_android && !use_xcode_clang
+  init_stack_vars = !is_android && !use_xcode_clang && !is_bsd
 
   # This argument is to control whether enabling text section splitting in the
   # final binary. When enabled, the separated text sections with prefix
@@ -297,7 +297,7 @@ config("compiler") {
     }
 
     # Linker warnings.
-    if (fatal_linker_warnings && !is_apple && current_os != "aix") {
+    if (fatal_linker_warnings && !is_apple && !is_bsd && current_os != "aix") {
       ldflags += [ "-Wl,--fatal-warnings" ]
     }
     if (fatal_linker_warnings && is_apple &&
@@ -310,6 +310,7 @@ config("compiler") {
 
   if (use_qt && is_clang) {
     cflags += [
+      "-Wno-enum-constexpr-conversion",
       "-Wno-unknown-attributes",
       "-Wno-unknown-pragmas",
       "-Wno-unknown-warning-option"
@@ -408,7 +409,7 @@ config("compiler") {
 
     # Compiler instrumentation can introduce dependencies in DSOs to symbols in
     # the executable they are loaded into, so they are unresolved at link-time.
-    if (!using_sanitizer) {
+    if (!using_sanitizer && !is_bsd) {
       ldflags += [
         "-Wl,-z,defs",
         "-Wl,--as-needed",
@@ -566,7 +567,7 @@ config("compiler") {
       # Override Chromium's default for projects that wish to stay on C++11.
       cflags_cc += [ "-std=${standard_prefix}++11" ]
     } else {
-      cflags_cc += [ "-std=${standard_prefix}++14" ]
+      cflags_cc += [ "-std=${standard_prefix}++17" ]
     }
   } else if (!is_win && !is_nacl) {
     if (target_os == "android") {
@@ -583,7 +584,7 @@ config("compiler") {
     if (cxx11_override) {
       cflags_cc += [ "-std=c++11" ]
     } else {
-      cflags_cc += [ "-std=c++14" ]
+      cflags_cc += [ "-std=c++17" ]
     }
   }
 
@@ -796,7 +797,7 @@ config("compiler_cpu_abi") {
         cflags += [ "-mtune=$arm_tune" ]
       }
     } else if (current_cpu == "arm64") {
-      if (is_clang && !is_android && !is_nacl && !is_fuchsia) {
+      if (is_clang && !is_android && !is_nacl && !is_fuchsia && !is_bsd) {
         cflags += [ "--target=aarch64-linux-gnu" ]
         ldflags += [ "--target=aarch64-linux-gnu" ]
       }
@@ -1149,7 +1150,7 @@ config("compiler_deterministic") {
       "-Xclang",
       ".",
     ]
-    if (!is_win) {
+    if (!is_win && !is_bsd) {
       # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
       asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
     }
@@ -1535,6 +1536,10 @@ config("default_warnings") {
       # which we no longer use. Check if it makes sense to remove
       # this as well. http://crbug.com/316352
       "-Wno-unneeded-internal-declaration",
+
+      # Reduce build log bloat by about 20MB
+      "-Wno-deprecated-copy",
+      "-Wno-implicit-float-conversion",
     ]
 
     # use_xcode_clang only refers to the iOS toolchain, host binaries use
@@ -1551,7 +1556,7 @@ config("default_warnings") {
         cflags += [ "-Wno-nonportable-include-path" ]
       }
 
-      if (current_toolchain == host_toolchain || !use_xcode_clang) {
+      if ((current_toolchain == host_toolchain || !use_xcode_clang) && !is_bsd) {
         # Flags NaCl (Clang 3.7) and Xcode 9.2 (Clang clang-900.0.39.2) do not
         # recognize.
         cflags += [
@@ -1725,7 +1730,7 @@ config("no_chromium_code") {
       # suppressing them individually, we just blanket suppress them here.
       "-Wno-unused-variable",
     ]
-    if (!is_nacl && (current_toolchain == host_toolchain || !use_xcode_clang)) {
+    if (!is_nacl && (current_toolchain == host_toolchain || !use_xcode_clang) && !is_bsd) {
       cflags += [
         # TODO(https://crbug.com/1031169): Clean up and enable.
         "-Wno-misleading-indentation",
@@ -1803,7 +1808,7 @@ config("thin_archive") {
   # Mac and iOS use the mac-specific "libtool" command, not ar, which doesn't
   # have a "thin archive" mode (it does accept -T, but it means truncating
   # archive names to 16 characters, which is not what we want).
-  if ((is_posix && !is_nacl && !is_apple) || is_fuchsia) {
+  if ((is_posix && !is_nacl && !is_apple && !is_bsd) || is_fuchsia) {
     arflags = [ "-T" ]
   } else if (is_win && use_lld) {
     arflags = [ "/llvmlibthin" ]
@@ -2344,7 +2349,7 @@ config("symbols") {
     # flag, so we can use use -g1 for pnacl and nacl-clang compiles.
     # gcc nacl is is_nacl && !is_clang, pnacl and nacl-clang are && is_clang.
     if (!is_nacl || is_clang) {
-      cflags += [ "-g2" ]
+      cflags += [ "-g0" ]
     }
 
     # TODO(https://crbug.com/1050118): Investigate missing debug info on mac.
@@ -2386,7 +2391,7 @@ config("symbols") {
     # DWARF info may be corrupt; offsets in a range list entry are in different
     # sections" there.  Maybe just a bug in nacl_switch_32.S.
     if (!is_apple && !is_nacl && current_cpu != "x86" &&
-        (use_gold || use_lld)) {
+        (use_gold || use_lld) && !is_bsd) {
       if (is_clang) {
         # This flag enables the GNU-format pubnames and pubtypes sections,
         # which lld needs in order to generate a correct GDB index.