summaryrefslogtreecommitdiff
path: root/firmware/build/common_config.mk
blob: 189d71d39b30209f96b666381eaa1fe8ce5d44c6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#
# Copyright (C) 2016 The Android Open Source Project
#
# 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.
#

LOCAL_CFLAGS += \
    -Wall \
    -Werror \
    \
    -Waddress \
    -Wempty-body \
    -Wenum-compare \
    -Wlogical-op \
    -Wmissing-declarations \
    -Wpointer-arith \
    -Wshadow \
    \
    -fdata-sections \
    -ffunction-sections \
    -fno-strict-aliasing \
    -fno-unwind-tables \
    -fstack-reuse=all \
    -fvisibility=hidden \

LOCAL_CPPFLAGS +=       \
    -std=c++11          \
    -fno-exceptions     \
    -fno-rtti           \

LOCAL_LDFLAGS +=                        \
    -nostartfiles                       \
    -nostdlib                           \
    -Wl,--gc-sections                   \
    -Wl,--no-undefined                  \
    -Wl,--no-allow-shlib-undefined      \

LOCAL_CFLAGS_cortexm4 += \
    -mthumb \
    -mcpu=cortex-m4 \
    -march=armv7e-m \
    -mfloat-abi=softfp \
    -mfpu=fpv4-sp-d16 \
    -mno-thumb-interwork \
    -ffast-math \
    -fsingle-precision-constant \
    -DARM \
    -DUSE_NANOHUB_FLOAT_RUNTIME \
    -DARM_MATH_CM4 \
    -D__FPU_PRESENT \
    -DCPU_NUM_PERSISTENT_RAM_BITS=32 \

LOCAL_CFLAGS_x86 += \
    -march=core2 \
    -msse2 \
    -DSYSCALL_VARARGS_PARAMS_PASSED_AS_PTRS \

LOCAL_CFLAGS_stm32 += \
    -DPLATFORM_HW_VER=0 \

# CHRE-specific
LOCAL_CFLAGS += \
    -DCHRE_MESSAGE_TO_HOST_MAX_SIZE=128 \
    -DCHRE_NANOAPP_SUPPORTS_PRE_V1_5 \
    -DCHRE_NO_DOUBLE_SUPPORT \

# DEBUG/RELEASE-specific
DEBUG ?= -DDEBUG
RELEASE ?=

ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
LOCAL_CFLAGS += \
    $(DEBUG) \

else
LOCAL_CFLAGS += \
    $(RELEASE) \

endif