| # |
| # Copyright 2015 Google, Inc. |
| # |
| # 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: |
| # |
| # http://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. |
| # |
| |
| config("default_include_dirs") { |
| include_dirs = [ |
| "//include/", |
| "//types/", |
| ] |
| } |
| |
| config("linux") { |
| # TODO(keybuk): AndroidConfig.h or equivalent |
| |
| cflags = [ |
| #TODO(jpawlowski): uncomment once we have no warnings on linux build |
| # "-Wall", |
| # "-Werror", |
| "-Wno-gnu-variable-sized-type-not-at-end", |
| "-g", |
| "-O0", |
| "-fpic", |
| "-fdata-sections", |
| "-ffunction-sections", |
| "-fvisibility=hidden", |
| ] |
| |
| cflags_c = [ "-std=c99" ] |
| |
| cflags_cc = [ |
| #TODO(jpawlowski): we should use same c++ version as Android, which is c++11, |
| # but we use some c++14 features. Uncomment when this get fixed in code.: |
| "-std=c++14", |
| "-fno-exceptions", |
| "-fpermissive", |
| ] |
| |
| defines = [ |
| "_FORTIFY_SOURCE=2", |
| "_GNU_SOURCE", |
| "HAS_NO_BDROID_BUILDCFG", |
| "LOG_NDEBUG=1", |
| "EXPORT_SYMBOL=__attribute__((visibility(\"default\")))", |
| "KERNEL_MISSING_CLOCK_BOOTTIME_ALARM=TRUE", |
| |
| # This is a macro to that can be used by source code to detect if the |
| # current build is done by GN or via Android.mk. This is a temporary |
| # workaround until we can remove all Android-specific dependencies. |
| "OS_GENERIC", |
| |
| "FALLTHROUGH_INTENDED", |
| ] |
| } |
| |
| config("pic") { |
| cflags = [ "-fPIC" ] |
| } |
| |
| config("gc") { |
| ldflags = [ "-Wl,--gc-sections" ] |
| } |