|
5 | 5 | # https://github.com/lengjingzju/cbuild-ng #
|
6 | 6 | ############################################
|
7 | 7 |
|
8 |
| -############# Date: 2024-01-31 ############# |
| 8 | +############# Date: 2024-08-18 ############# |
9 | 9 |
|
10 | 10 | # The default behavior only includes inc.env.mk and inc.ins.mk.
|
11 | 11 | # INC_MAKES can be set to a combination of `disenv` `conf` `app` `mod` `disins`.
|
|
30 | 30 | PACKAGE_ID := $(PACKAGE_NAME)-native
|
31 | 31 | endif
|
32 | 32 |
|
33 |
| -ENV_OPTIMIZER ?= release |
34 |
| -ifeq ($(ENV_OPTIMIZER),debug) |
| 33 | +ENV_BUILD_TYPE ?= optimized |
| 34 | +ifeq ($(ENV_BUILD_TYPE),debug) |
35 | 35 | OPTIMIZER_FLAG ?= -O0 -g -ggdb
|
36 |
| -else ifeq ($(ENV_OPTIMIZER),speed) |
| 36 | +else ifeq ($(ENV_BUILD_TYPE),release) |
37 | 37 | OPTIMIZER_FLAG ?= -O3
|
| 38 | +else ifeq ($(ENV_BUILD_TYPE),minsize) |
| 39 | +OPTIMIZER_FLAG ?= -Os |
38 | 40 | else
|
39 | 41 | OPTIMIZER_FLAG ?= -O2
|
40 | 42 | endif
|
@@ -151,6 +153,21 @@ endif
|
151 | 153 |
|
152 | 154 | ifneq ($(ENV_BUILD_MODE),yocto)
|
153 | 155 |
|
| 156 | +define ft-config |
| 157 | +ifneq ($(NATIVE_BUILD),y) |
| 158 | +FT_CONFIG += $$(if $$(filter y,$$($1)),$2,$3) |
| 159 | +$(if $(filter y,$(CACHE_BUILD)),CACHE_APPENDS += $1=$$($1)) |
| 160 | +else |
| 161 | +FT_CONFIG += $$(if $$(filter y,$$($1_NATIVE)),$2,$3) |
| 162 | +$(if $(filter y,$(CACHE_BUILD)),CACHE_APPENDS += $1_NATIVE=$$($1_NATIVE)) |
| 163 | +endif |
| 164 | +endef |
| 165 | + |
| 166 | +define FT-CONFIG |
| 167 | +FT_CONFIG += $$(if $$(filter y,$$($1)),$2,$3) |
| 168 | +$(if $(filter y,$(CACHE_BUILD)),CACHE_APPENDS += $1=$$($1)) |
| 169 | +endef |
| 170 | + |
154 | 171 | PREPARE_SYSROOT := -s CROSS_DESTDIR=$(WORKDIR)/sysroot NATIVE_DESTDIR=$(WORKDIR)/sysroot-native \
|
155 | 172 | NATIVE_BUILD= INSTALL_OPTION=link -C $(ENV_TOP_DIR) $(PACKAGE_ID)_psysroot
|
156 | 173 |
|
@@ -420,10 +437,11 @@ imake_cpflags += $(call link_hdrs)
|
420 | 437 | imake_ldflags += $(call link_libs)
|
421 | 438 |
|
422 | 439 | imake_cpflags += $(OPTIMIZER_FLAG)
|
423 |
| -imake_ldflags += -Wl,-O1 |
424 |
| -ifeq ($(ENV_OPTIMIZER),release) |
| 440 | +ifneq ($(ENV_BUILD_TYPE),debug) |
425 | 441 | imake_cpflags += -ffunction-sections -fdata-sections
|
426 | 442 | imake_ldflags += -Wl,--gc-sections
|
| 443 | +else |
| 444 | +imake_ldflags += -Wl,-O1 |
427 | 445 | endif
|
428 | 446 | #imake_ldflags += -static
|
429 | 447 |
|
@@ -503,7 +521,7 @@ imake_cpflags += $(IMAKE_CPFLAGS)
|
503 | 521 | imake_ldflags += $(IMAKE_LDFLAGS)
|
504 | 522 | prior_ldflags += $(PRIOR_LDFLAGS)
|
505 | 523 |
|
506 |
| -CHECK_INFO += ENV_OPTIMIZER=$(ENV_OPTIMIZER) \ |
| 524 | +CHECK_INFO += ENV_BUILD_TYPE=$(ENV_BUILD_TYPE) \ |
507 | 525 | ENV_SECURITY=$(ENV_SECURITY) \
|
508 | 526 | ENV_SANITIZER=$(ENV_SANITIZER) \
|
509 | 527 | ENV_ANALYZER=$(ENV_ANALYZER) \
|
|
0 commit comments