1# Copyright (c) 2013-2019 Huawei Technologies Co., Ltd. All rights reserved. 2# Copyright (c) 2020-2021 Huawei Device Co., Ltd. All rights reserved. 3# 4# Redistribution and use in source and binary forms, with or without modification, 5# are permitted provided that the following conditions are met: 6# 7# 1. Redistributions of source code must retain the above copyright notice, this list of 8# conditions and the following disclaimer. 9# 10# 2. Redistributions in binary form must reproduce the above copyright notice, this list 11# of conditions and the following disclaimer in the documentation and/or other materials 12# provided with the distribution. 13# 14# 3. Neither the name of the copyright holder nor the names of its contributors may be used 15# to endorse or promote products derived from this software without specific prior written 16# permission. 17# 18# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 20# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 21# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR 22# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 23# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 24# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 25# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 26# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 27# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 28# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 30include $(LITEOSTOPDIR)/config.mk 31 32# common flags config 33BASE_OPTS := -D_FORTIFY_SOURCE=2 -D_XOPEN_SOURCE=700 34 35ASFLAGS := 36CFLAGS := $(LITEOS_COPTS) $(BASE_OPTS) -fPIE 37CXXFLAGS := $(LITEOS_CXXOPTS) $(BASE_OPTS) -fPIE 38LDFLAGS := $(LITEOS_CORE_COPTS) -pie -Wl,-z,relro,-z,now -O2 39 40CFLAGS := $(filter-out -fno-pic -fno-builtin -nostdinc -nostdlib,$(CFLAGS)) 41CXXFLAGS := $(filter-out -fno-pic -fno-builtin -nostdinc -nostdlib -nostdinc++,$(CXXFLAGS)) 42 43# alias variable config 44HIDE := @ 45MAKE := make 46RM := rm -rf 47CP := cp -rf 48MV := mv -f 49 50APP := $(APPSTOPDIR)/app.mk 51 52##build modules config## 53APP_SUBDIRS := 54 55ifeq ($(LOSCFG_SHELL), y) 56APP_SUBDIRS += shell 57APP_SUBDIRS += mksh 58APP_SUBDIRS += toybox 59endif 60 61ifeq ($(LOSCFG_KERNEL_LMS), y) 62APP_SUBDIRS += lms 63endif 64 65ifeq ($(LOSCFG_USER_INIT_DEBUG), y) 66APP_SUBDIRS += init 67endif 68 69ifeq ($(LOSCFG_NET_LWIP_SACK_TFTP), y) 70APP_SUBDIRS += tftp 71endif 72 73ifeq ($(LOSCFG_DRIVERS_TRACE), y) 74APP_SUBDIRS += trace 75endif 76 77ifeq ($(LOSCFG_DRIVERS_PERF), y) 78APP_SUBDIRS += perf 79endif 80