blob: ebebf3d66696fe01ac2c8eaf33272b041744c555 [file] [log] [blame]
#
# 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.
#
config("default_include_dirs") {
include_dirs = [
"//third_party/libhardware/include/",
]
}
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" ]
}