chromium/base/allocator/partition_allocator/gn/partition_alloc/BUILD.gn

# Copyright 2024 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

config("default") {
  asmflags = []
  cflags = []
  cflags = [
    "-Wno-return-type",  # TODO(crbug.com/41481467): Fix this warning.
    "-Wno-invalid-offsetof",  # TODO(crbug.com/41481467): Fix this warning.
    "-fstrict-aliasing",
    "-fPIC",
    "-fvisibility=hidden",
  ]
  cflags_cc = [
    "-std=c++17",
    "-fvisibility-inlines-hidden",
  ]
  cflags_objcc = cflags_cc
  defines = []
  ldflags = []
  libs = [ "pthread" ]

  # TODO(crbug.com/41481467): Consider creating a bot running partition_alloc
  # with extra flags enforced only in the standalone configuration. Then we can
  # remove the extra warnings when embedded.
}

config("no_exceptions") {
  cflags_cc = [ "-fno-exceptions" ]
  cflags_objcc = cflags_cc
}

config("no_rtti") {
  cflags_cc = [ "-fno-rtti" ]
  cflags_objcc = cflags_cc
}

config("optimize") {
  cflags = [ "-O3" ]
}

config("NDEBUG") {
  defines = [ "NDEBUG" ]
}