Home | History | Annotate | Download | only in build
      1 #
      2 # Copyright (C) 2016 The Android Open Source Project
      3 #
      4 # Licensed under the Apache License, Version 2.0 (the "License");
      5 # you may not use this file except in compliance with the License.
      6 # You may obtain a copy of the License at
      7 #
      8 #      http://www.apache.org/licenses/LICENSE-2.0
      9 #
     10 # Unless required by applicable law or agreed to in writing, software
     11 # distributed under the License is distributed on an "AS IS" BASIS,
     12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13 # See the License for the specific language governing permissions and
     14 # limitations under the License.
     15 #
     16 
     17 LOCAL_CFLAGS += \
     18     -Wall \
     19     -Werror \
     20     \
     21     -Waddress \
     22     -Wempty-body \
     23     -Wenum-compare \
     24     -Wlogical-op \
     25     -Wmissing-declarations \
     26     -Wpointer-arith \
     27     -Wshadow \
     28     \
     29     -fdata-sections \
     30     -ffunction-sections \
     31     -fno-strict-aliasing \
     32     -fno-unwind-tables \
     33     -fstack-reuse=all \
     34     -fvisibility=hidden \
     35 
     36 LOCAL_CPPFLAGS +=       \
     37     -std=c++11          \
     38     -fno-exceptions     \
     39     -fno-rtti           \
     40 
     41 LOCAL_LDFLAGS +=                        \
     42     -nostartfiles                       \
     43     -nostdlib                           \
     44     -Wl,--gc-sections                   \
     45     -Wl,--no-undefined                  \
     46     -Wl,--no-allow-shlib-undefined      \
     47 
     48 LOCAL_CFLAGS_cortexm4 += \
     49     -mthumb \
     50     -mcpu=cortex-m4 \
     51     -march=armv7e-m \
     52     -mfloat-abi=softfp \
     53     -mfpu=fpv4-sp-d16 \
     54     -mno-thumb-interwork \
     55     -ffast-math \
     56     -fsingle-precision-constant \
     57     -DARM \
     58     -DUSE_NANOHUB_FLOAT_RUNTIME \
     59     -DARM_MATH_CM4 \
     60     -D__FPU_PRESENT \
     61     -DCPU_NUM_PERSISTENT_RAM_BITS=32 \
     62 
     63 LOCAL_CFLAGS_x86 += \
     64     -march=core2 \
     65     -msse2 \
     66     -DSYSCALL_VARARGS_PARAMS_PASSED_AS_PTRS \
     67 
     68 LOCAL_CFLAGS_stm32 += \
     69     -DPLATFORM_HW_VER=0 \
     70 
     71 # CHRE-specific
     72 LOCAL_CFLAGS += \
     73     -DCHRE_MESSAGE_TO_HOST_MAX_SIZE=128 \
     74     -DCHRE_NO_DOUBLE_SUPPORT \
     75 
     76 # DEBUG/RELEASE-specific
     77 DEBUG ?= -DDEBUG
     78 RELEASE ?=
     79 
     80 ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
     81 LOCAL_CFLAGS += \
     82     $(DEBUG) \
     83 
     84 else
     85 LOCAL_CFLAGS += \
     86     $(RELEASE) \
     87 
     88 endif
     89