# Copyright 2020 The Pigweed Authors # # Licensed under the Apache License, Version 2.0 (the "License"); you may not # use this file except in compliance with the License. You may obtain a copy of # the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations under # the License. import("//build_overrides/pigweed.gni") # Disable obnoxious ABI warning. # # GCC 7.1 adds an over-zealous ABI warning with little useful information # on how to resolve the issue. The warning you get is: # # note: parameter passing for argument of type '...' changed in GCC 7.1 # # There is no other information, and searching for the error is needed to # understand what is happening. For upstream Pigweed, we compile from # source so this is irrelevant; so disable it. # # See: https://gcc.gnu.org/gcc-7/changes.html (search for "psabi"). # https://gcc.gnu.org/ml/gcc/2017-05/msg00073.html config("disable_psabi_warning") { cflags = [ "-Wno-psabi" ] } config("mingw_z_format") { if (host_os == "win") { # MinGW can't handle %z format specifiers without this flag enabled. This # flag is deprecated in future versions of MinGW, and should be replaced by # setting __MINGW_FEATURES__=__MINGW_ANSI_STDIO__ when switching to a # version of MinGW that uses the new flags. cflags = [ "-D__USE_MINGW_ANSI_STDIO=1" ] } } # GCC needs the -pthread option to support multithreading. This must be # specified to build e.g. pw_thread_stl. config("threading_support") { ldflags = [ "-pthread" ] }