| liubin | 281ac46 | 2023-07-19 14:22:54 +0800 | [diff] [blame] | 1 | # Common make definitions, customized for each platform | 
|  | 2 |  | 
|  | 3 | # Definitions required in all program directories to compile and link | 
|  | 4 | # C programs using gcc. | 
|  | 5 |  | 
| b.liu | 3743bce | 2024-03-22 19:27:58 +0800 | [diff] [blame] | 6 |  | 
|  | 7 | ROOT = $(BUILD_ROOT)/.. | 
| liubin | 281ac46 | 2023-07-19 14:22:54 +0800 | [diff] [blame] | 8 | OUT_DIR = $(ROOT)/out | 
| liubin | 281ac46 | 2023-07-19 14:22:54 +0800 | [diff] [blame] | 9 | LOCAL_PATH=. | 
|  | 10 |  | 
| b.liu | b3b923a | 2024-06-06 15:15:49 +0800 | [diff] [blame] | 11 | ifeq ($(BUILD_PLATFORM), master) | 
| b.liu | 5d5b8ba | 2024-02-20 14:00:33 +0800 | [diff] [blame] | 12 | ifeq ($(BUILD_BRANCH), rls3895) | 
|  | 13 | BUILD_TOOLCHAIN_DIR = $(ROOT)/toolchain/gcc-4.9-rls3895 | 
|  | 14 | else | 
| b.liu | 3403c93 | 2023-10-10 16:26:35 +0800 | [diff] [blame] | 15 | BUILD_TOOLCHAIN_DIR = $(ROOT)/toolchain/gcc-4.9 | 
| b.liu | 5d5b8ba | 2024-02-20 14:00:33 +0800 | [diff] [blame] | 16 | endif | 
| liubin | 281ac46 | 2023-07-19 14:22:54 +0800 | [diff] [blame] | 17 | CC=$(BUILD_TOOLCHAIN_DIR)/bin/arm-openwrt-linux-uclibcgnueabi-gcc | 
|  | 18 | AR=$(BUILD_TOOLCHAIN_DIR)/bin/arm-openwrt-linux-uclibcgnueabi-ar | 
| b.liu | b3b923a | 2024-06-06 15:15:49 +0800 | [diff] [blame] | 19 | else ifeq ($(BUILD_PLATFORM), v2102) | 
| b.liu | 5d5b8ba | 2024-02-20 14:00:33 +0800 | [diff] [blame] | 20 |  | 
| b.liu | b3b923a | 2024-06-06 15:15:49 +0800 | [diff] [blame] | 21 | ifeq ($(BUILD_STD_LIBC), glibc) | 
|  | 22 | BUILD_TOOLCHAIN_DIR = $(ROOT)/toolchain/gcc-8.4-glibc | 
|  | 23 | CC=$(BUILD_TOOLCHAIN_DIR)/bin/arm-openwrt-linux-gnueabi-gcc | 
|  | 24 | AR=$(BUILD_TOOLCHAIN_DIR)/bin/arm-openwrt-linux-gnueabi-ar | 
|  | 25 | else | 
| b.liu | 3403c93 | 2023-10-10 16:26:35 +0800 | [diff] [blame] | 26 | BUILD_TOOLCHAIN_DIR = $(ROOT)/toolchain/gcc-8.4 | 
| b.liu | 17d7f8b | 2023-10-08 16:57:59 +0800 | [diff] [blame] | 27 | CC=$(BUILD_TOOLCHAIN_DIR)/bin/arm-openwrt-linux-muslgnueabi-gcc | 
|  | 28 | AR=$(BUILD_TOOLCHAIN_DIR)/bin/arm-openwrt-linux-muslgnueabi-ar | 
| b.liu | b3b923a | 2024-06-06 15:15:49 +0800 | [diff] [blame] | 29 | endif | 
| liubin | 281ac46 | 2023-07-19 14:22:54 +0800 | [diff] [blame] | 30 | else | 
|  | 31 | CC=gcc | 
|  | 32 | AR=ar | 
|  | 33 | endif | 
|  | 34 |  | 
|  | 35 | MAKE=make | 
|  | 36 |  | 
|  | 37 | $(info BUILD_LIB_TYPE=$(BUILD_LIB_TYPE)) | 
|  | 38 | $(info BUILD_PLATFORM=$(BUILD_PLATFORM)) | 
| b.liu | 5d5b8ba | 2024-02-20 14:00:33 +0800 | [diff] [blame] | 39 | $(info BUILD_BRANCH=$(BUILD_BRANCH)) | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 40 | $(info BUILD_PROJECT=$(BUILD_PROJECT)) | 
| liubin | 281ac46 | 2023-07-19 14:22:54 +0800 | [diff] [blame] | 41 | $(info ROOT=$(ROOT)) | 
|  | 42 | $(info CC=$(CC)) | 
|  | 43 | $(info AR=$(AR)) | 
|  | 44 |  | 
| b.liu | 1c1c721 | 2023-12-22 16:35:27 +0800 | [diff] [blame] | 45 | # -Werror=non-virtual-dtor | 
| b.liu | 778645e | 2024-06-21 16:47:42 +0800 | [diff] [blame] | 46 | CFLAGS= --sysroot=$(BUILD_TOOLCHAIN_DIR) -Os -pipe -rdynamic -march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4 -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -mfloat-abi=hard -fno-exceptions -Wno-multichar -ffunction-sections -fdata-sections -funwind-tables -Wa,--noexecstack -fno-short-enums -no-canonical-prefixes -fno-canonical-system-headers -mfpu=neon -fno-builtin-sin -fno-strict-volatile-bitfields -Wno-psabi -mthumb-interwork -fmessage-length=0 -W -Wall -Wno-unused -Winit-self -Wpointer-arith  -g -Wstrict-aliasing=2 -fgcse-after-reload -frerun-cse-after-loop -frename-registers -mthumb -fomit-frame-pointer -fno-strict-aliasing -Werror=format-security -Werror=return-type -Werror=address -Werror=sequence-point -ffunction-sections -Wl,--gc-sections -Wl,--no-undefined -Wno-sign-compare -Wno-pointer-arith | 
| liubin | 281ac46 | 2023-07-19 14:22:54 +0800 | [diff] [blame] | 47 |  | 
|  | 48 | AWK=awk | 
|  | 49 |  | 
|  | 50 | #CFLAGS += -Wno-error=format-truncation -Wno-error=format-overflow= -Wno-error=stringop-overread -Wno-error=deprecated-declarations | 
|  | 51 |  | 
|  | 52 | INC_DIR = \ | 
| b.liu | 9a30686 | 2024-03-06 16:49:40 +0800 | [diff] [blame] | 53 | -I$(LOCAL_PATH)/ \ | 
| liubin | 281ac46 | 2023-07-19 14:22:54 +0800 | [diff] [blame] | 54 | -I$(LOCAL_PATH)/inc \ | 
|  | 55 | -I$(BUILD_ROOT)/include \ | 
|  | 56 | -I$(BUILD_ROOT)/include/mbtk \ | 
|  | 57 | -I$(BUILD_ROOT)/include/lynq \ | 
|  | 58 | -I$(BUILD_ROOT)/include/mqtt \ | 
|  | 59 | -I$(BUILD_ROOT)/include/ql | 
|  | 60 |  | 
|  | 61 | # -DCONFIG_AB_SYSTEM | 
|  | 62 | DEFINE = \ | 
|  | 63 | -DMBTK_SUPPORT \ | 
|  | 64 | -DMARVELL_EXTENDED \ | 
|  | 65 | -DPXA1826_AUDIO \ | 
|  | 66 | -D__USE_GNU \ | 
|  | 67 | -DNOT_DROPPED_FLAGS_TEST \ | 
|  | 68 | -DNDEBUG \ | 
|  | 69 | -UDEBUG \ | 
| b.liu | 8883171 | 2023-10-10 15:26:32 +0800 | [diff] [blame] | 70 | -D_FORTIFY_SOURCE=2 \ | 
| b.liu | bcf86c9 | 2024-08-19 19:48:28 +0800 | [diff] [blame] | 71 | -D_GNU_SOURCE \ | 
|  | 72 | -DMBTK_BUILD_TIME=\""$(shell date +%Y/%m/%d\ %H:%M:%S)\"" \ | 
|  | 73 | -DMBTK_BUILD_GIT=\""$(shell git log | grep commit | head -1 | cut -d ' ' -f 2)\"" | 
|  | 74 |  | 
|  | 75 | #MBTK_BUILD_GIT="$(shell git log | grep commit | head -1 | cut -d ' ' -f 2)" | 
|  | 76 | #$(info MBTK_BUILD_GIT=$(MBTK_BUILD_GIT)) | 
| liubin | 281ac46 | 2023-07-19 14:22:54 +0800 | [diff] [blame] | 77 |  | 
| b.liu | 4f8e879 | 2023-11-01 23:25:22 +0800 | [diff] [blame] | 78 | #$(info TOPDIR=$(TOPDIR)) | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 79 | # BUILD_PROJECT=$(shell cat $(ROOT)/../build_version | grep PROJECT | cut -d '=' -f 2) | 
|  | 80 | #$(info BUILD_PROJECT=$(BUILD_PROJECT)) | 
| b.liu | 4f8e879 | 2023-11-01 23:25:22 +0800 | [diff] [blame] | 81 | #BUILD_PROJECT_X=$(shell ${BUILD_PROJECT:0:4}) | 
|  | 82 | #BUILD_PROJECT_X=$(shell echo $(BUILD_PROJECT) | cut -c 1-4) | 
|  | 83 | #$(info BUILD_PROJECT_X=$(BUILD_PROJECT_X)) | 
|  | 84 |  | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 85 | # 1806 | 
| b.liu | b3b923a | 2024-06-06 15:15:49 +0800 | [diff] [blame] | 86 | ifeq ($(BUILD_PLATFORM), v2102) | 
|  | 87 | DEFINE += -DMBTK_PLATFORM_KERNEL_5 | 
| b.liu | 03c7466 | 2023-11-17 16:09:48 +0800 | [diff] [blame] | 88 |  | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 89 | ifeq ($(BUILD_PROJECT), L508_X6) | 
| b.liu | 43da341 | 2023-11-08 15:58:39 +0800 | [diff] [blame] | 90 | DEFINE += -DMBTK_PROJECT_L508_X6 | 
|  | 91 | else | 
| b.liu | c25c547 | 2024-06-13 21:35:06 +0800 | [diff] [blame] | 92 | ifeq ($(BUILD_PROJECT), T108_2) | 
|  | 93 | DEFINE += -DMBTK_PROJECT_T108 | 
|  | 94 | else | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 95 | ifeq ($(BUILD_PROJECT), T108) | 
| b.liu | 43da341 | 2023-11-08 15:58:39 +0800 | [diff] [blame] | 96 | DEFINE += -DMBTK_PROJECT_T108 | 
|  | 97 | else | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 98 | ifeq ($(BUILD_PROJECT), L508) | 
|  | 99 | DEFINE += -DMBTK_PROJECT_L508 | 
|  | 100 | else | 
|  | 101 | ifeq ($(BUILD_PROJECT), L509) | 
|  | 102 | DEFINE += -DMBTK_PROJECT_L509 | 
|  | 103 | else | 
| b.liu | 03c7466 | 2023-11-17 16:09:48 +0800 | [diff] [blame] | 104 | $(info BUILD_PROJECT=Unknown) | 
|  | 105 | endif | 
|  | 106 | endif | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 107 | endif | 
|  | 108 | endif | 
| b.liu | c25c547 | 2024-06-13 21:35:06 +0800 | [diff] [blame] | 109 | endif | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 110 |  | 
|  | 111 | # 1803 | 
| b.liu | 03c7466 | 2023-11-17 16:09:48 +0800 | [diff] [blame] | 112 | else | 
|  | 113 | DEFINE += -DMBTK_POLARSSL_SUPPORT | 
| b.liu | 5d5b8ba | 2024-02-20 14:00:33 +0800 | [diff] [blame] | 114 |  | 
|  | 115 | ifeq ($(BUILD_BRANCH), rls3671) | 
| b.liu | 03c7466 | 2023-11-17 16:09:48 +0800 | [diff] [blame] | 116 | DEFINE += -DMBTK_MP3_SUPPORT | 
| b.liu | 5d5b8ba | 2024-02-20 14:00:33 +0800 | [diff] [blame] | 117 | endif | 
|  | 118 |  | 
| b.liu | b3b923a | 2024-06-06 15:15:49 +0800 | [diff] [blame] | 119 | DEFINE += -DMBTK_PLATFORM_KERNEL_3 | 
| b.liu | 03c7466 | 2023-11-17 16:09:48 +0800 | [diff] [blame] | 120 |  | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 121 | ifeq ($(BUILD_PROJECT), L508) | 
| b.liu | 4f8e879 | 2023-11-01 23:25:22 +0800 | [diff] [blame] | 122 | DEFINE += -DMBTK_PROJECT_L508 | 
|  | 123 | else | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 124 | ifeq ($(BUILD_PROJECT), L509) | 
| b.liu | 4f8e879 | 2023-11-01 23:25:22 +0800 | [diff] [blame] | 125 | DEFINE += -DMBTK_PROJECT_L509 | 
|  | 126 | else | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 127 | ifeq ($(BUILD_PROJECT), PN1803) | 
| b.liu | 4f8e879 | 2023-11-01 23:25:22 +0800 | [diff] [blame] | 128 | DEFINE += -DMBTK_PROJECT_PN1803 | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 129 | else | 
|  | 130 | $(info BUILD_PROJECT=Unknown) | 
| b.liu | 4f8e879 | 2023-11-01 23:25:22 +0800 | [diff] [blame] | 131 | endif | 
|  | 132 | endif | 
|  | 133 | endif | 
| b.liu | 43da341 | 2023-11-08 15:58:39 +0800 | [diff] [blame] | 134 | endif | 
| b.liu | 4f8e879 | 2023-11-01 23:25:22 +0800 | [diff] [blame] | 135 |  | 
| b.liu | 96f2515 | 2024-02-20 17:21:59 +0800 | [diff] [blame] | 136 | ifeq ($(MBTK_AF_SUPPORT), y) | 
| b.liu | 5fa9e77 | 2023-11-23 18:00:55 +0800 | [diff] [blame] | 137 | DEFINE += -DMBTK_AF_SUPPORT | 
| b.liu | d56071a | 2024-08-20 20:55:21 +0800 | [diff] [blame] | 138 | else | 
|  | 139 | ifeq ($(MBTK_AF_SUPPORT), Y) | 
|  | 140 | DEFINE += -DMBTK_AF_SUPPORT | 
|  | 141 | endif | 
| b.liu | 5fa9e77 | 2023-11-23 18:00:55 +0800 | [diff] [blame] | 142 | endif | 
|  | 143 |  | 
| b.liu | c7ffd09 | 2024-01-03 15:23:07 +0800 | [diff] [blame] | 144 | ifeq ($(MBTK_YX_SUPPORT), y) | 
|  | 145 | DEFINE += -DMBTK_YX_SUPPORT | 
| b.liu | d56071a | 2024-08-20 20:55:21 +0800 | [diff] [blame] | 146 | else | 
|  | 147 | ifeq ($(MBTK_YX_SUPPORT), Y) | 
|  | 148 | DEFINE += -DMBTK_YX_SUPPORT | 
|  | 149 | endif | 
| b.liu | c7ffd09 | 2024-01-03 15:23:07 +0800 | [diff] [blame] | 150 | endif | 
|  | 151 |  | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 152 | ifeq ($(MBTK_SG_SUPPORT), y) | 
|  | 153 | DEFINE += -DMBTK_SG_SUPPORT | 
| b.liu | d56071a | 2024-08-20 20:55:21 +0800 | [diff] [blame] | 154 | else | 
|  | 155 | ifeq ($(MBTK_SG_SUPPORT), Y) | 
|  | 156 | DEFINE += -DMBTK_SG_SUPPORT | 
|  | 157 | endif | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 158 | endif | 
|  | 159 |  | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 160 | ifeq ($(MBTK_ALL_CID_SUPPORT), y) | 
|  | 161 | DEFINE += -DMBTK_ALL_CID_SUPPORT | 
| b.liu | d56071a | 2024-08-20 20:55:21 +0800 | [diff] [blame] | 162 | else | 
|  | 163 | ifeq ($(MBTK_ALL_CID_SUPPORT), Y) | 
|  | 164 | DEFINE += -DMBTK_ALL_CID_SUPPORT | 
|  | 165 | endif | 
| b.liu | f37bd33 | 2024-03-18 13:51:24 +0800 | [diff] [blame] | 166 | endif | 
|  | 167 |  | 
| b.liu | 5fa9e77 | 2023-11-23 18:00:55 +0800 | [diff] [blame] | 168 | ifeq ($(MBTK_GNSS_MODE), gnss_6228) | 
|  | 169 | DEFINE += -DMBTK_GNSS_6228 | 
|  | 170 | else | 
| b.liu | ec2383b | 2024-06-25 18:28:53 +0800 | [diff] [blame] | 171 | ifeq ($(MBTK_GNSS_MODE), gnss_5311) | 
| b.liu | 5fa9e77 | 2023-11-23 18:00:55 +0800 | [diff] [blame] | 172 | DEFINE += -DMBTK_GNSS_5311 | 
| b.liu | ec2383b | 2024-06-25 18:28:53 +0800 | [diff] [blame] | 173 | else | 
| b.liu | ced8dd0 | 2024-06-28 13:28:29 +0800 | [diff] [blame] | 174 | ifeq ($(MBTK_GNSS_MODE), gnss_8122) | 
| b.liu | ec2383b | 2024-06-25 18:28:53 +0800 | [diff] [blame] | 175 | DEFINE += -DMBTK_GNSS_8122 | 
| b.liu | ced8dd0 | 2024-06-28 13:28:29 +0800 | [diff] [blame] | 176 | else | 
|  | 177 | DEFINE += -DMBTK_GNSS_ALL | 
|  | 178 | endif | 
| b.liu | ec2383b | 2024-06-25 18:28:53 +0800 | [diff] [blame] | 179 | endif | 
| b.liu | 5fa9e77 | 2023-11-23 18:00:55 +0800 | [diff] [blame] | 180 | endif | 
| wangyouqiang | ed88c72 | 2023-11-22 16:33:43 +0800 | [diff] [blame] | 181 |  | 
| b.liu | bb59049 | 2024-06-13 16:42:08 +0800 | [diff] [blame] | 182 | ifeq ($(MBTK_DUMP_SUPPORT), y) | 
|  | 183 | DEFINE += -DMBTK_DUMP_SUPPORT | 
| b.liu | d56071a | 2024-08-20 20:55:21 +0800 | [diff] [blame] | 184 | else | 
|  | 185 | ifeq ($(MBTK_DUMP_SUPPORT), Y) | 
|  | 186 | DEFINE += -DMBTK_DUMP_SUPPORT | 
|  | 187 | endif | 
| b.liu | bb59049 | 2024-06-13 16:42:08 +0800 | [diff] [blame] | 188 | endif | 
|  | 189 |  | 
| b.liu | bcf86c9 | 2024-08-19 19:48:28 +0800 | [diff] [blame] | 190 | ifeq ($(MBTK_SOURCE_VERSION), 2) | 
|  | 191 | DEFINE += -DMBTK_SOURCE_VERSION_2 | 
|  | 192 | endif | 
|  | 193 |  | 
| liubin | 281ac46 | 2023-07-19 14:22:54 +0800 | [diff] [blame] | 194 | LIB_DIR = \ | 
|  | 195 | -L$(OUT_DIR)/lib | 
|  | 196 |  | 
|  | 197 | LIBS = -lpthread -lstdc++ | 
|  | 198 |  | 
|  | 199 | # Common temp files to delete from each directory. | 
|  | 200 | TEMPFILES=core core.* *.o temp.* *.out |