| # |
| # Copyright (C) 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. |
| # |
| |
| declare_args() { |
| # Include path for hardware/bluetooth.h |
| libhw_include_path = "" |
| } |
| |
| config("default_include_dirs") { |
| # TODO(armansito): Remove "core_include_path" once the cutils includes have |
| # been removed. |
| assert(libhw_include_path != "", |
| "libhardware_include_path build argument wasn't provided.") |
| include_dirs = [ |
| libhw_include_path, |
| ] |
| } |
| |
| config("linux") { |
| # TODO(keybuk): AndroidConfig.h or equivalent |
| |
| cflags = [ |
| #TODO(jpawlowski): uncomment once we have no warnings on linux build |
| # "-Wall", |
| # "-Werror", |
| "-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 android hardware/libhardware |
| # to not include dependencies on core project. This is a temporary |
| # workaround until we get rid of dependency on hardware. |
| "_HW_DONT_INCLUDE_CORE_=1", |
| |
| # 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", |
| ] |
| } |
| |
| config("pic") { |
| cflags = [ "-fPIC" ] |
| } |
| |
| config("gc") { |
| ldflags = [ "-Wl,--gc-sections" ] |
| } |