mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
build system: Remove FLAGS_XXX variable option, replace with per-target overrides
Use for targeted disabling of warnings in LWIP.
This commit is contained in:
parent
1613c180e0
commit
94d2f77643
@ -6,5 +6,7 @@ COMPONENT_ADD_INCLUDEDIRS := include/lwip include/lwip/port include/lwip/posix
|
||||
|
||||
COMPONENT_SRCDIRS := api apps/sntp apps core/ipv4 core/ipv6 core netif port/freertos port/netif port
|
||||
|
||||
CFLAGS += -Wno-address -Wno-unused-variable -Wno-unused-but-set-variable
|
||||
CFLAGS += -Wno-address # lots of LWIP source files evaluate macros that check address of stack variables
|
||||
|
||||
api/tcpip.o apps/dhcpserver.o: CFLAGS += -Wno-unused-variable
|
||||
apps/dhcpserver.o core/pbuf.o core/tcp_in.o: CFLAGS += -Wno-unused-but-set-variable
|
||||
|
@ -244,7 +244,12 @@ The following variables can be set inside ``component.mk`` to control the build
|
||||
settings. Component-specific additions can be made via ``CXXFLAGS
|
||||
+=``. It is also possible (although not recommended) to override
|
||||
this variable completely for a component.
|
||||
- ``FLAGS_basename`` allows you to set compilation flags to apply to a single source file only. For example, this can useful for disabling warnings in a single upstream source file. The ``basename`` portion is the directory (relative to ``COMPONENT_PATH``) and the base filename (without extension) of the source file. For example, if a file inside ``COMPONENT_PATH`` is ``library/alpha/widget.c`` then you can set variable ``FLAGS_library/alpha/widget := -DTEST`` to pass the TEST macro when compiling this source file only.
|
||||
|
||||
To apply compilation flags to a single source file, you can add a variable override as a target, ie::
|
||||
|
||||
apps/dhcpserver.o: CFLAGS += -Wno-unused-variable
|
||||
|
||||
This can be useful if there is upstream code that emits warnings.
|
||||
|
||||
Component Configuration
|
||||
-----------------------
|
||||
|
@ -157,15 +157,15 @@ define GenerateCompileTargets
|
||||
# $(1) - directory containing source files, relative to $(COMPONENT_PATH)
|
||||
$(1)/%.o: $$(COMPONENT_PATH)/$(1)/%.c $(COMMON_MAKEFILES) $(COMPONENT_MAKEFILE) | $(1)
|
||||
$$(summary) CC $$@
|
||||
$$(CC) $$(CFLAGS) $$(CPPFLAGS) $$(FLAGS_$$(subst .o,,$$(@))) $$(addprefix -I ,$$(COMPONENT_INCLUDES)) $$(addprefix -I ,$$(COMPONENT_EXTRA_INCLUDES)) -I$(1) -c $$< -o $$@
|
||||
$$(CC) $$(CFLAGS) $$(CPPFLAGS) $$(addprefix -I ,$$(COMPONENT_INCLUDES)) $$(addprefix -I ,$$(COMPONENT_EXTRA_INCLUDES)) -I$(1) -c $$< -o $$@
|
||||
|
||||
$(1)/%.o: $$(COMPONENT_PATH)/$(1)/%.cpp $(COMMON_MAKEFILES) $(COMPONENT_MAKEFILE) | $(1)
|
||||
$$(summary) CXX $$@
|
||||
$$(CXX) $$(CXXFLAGS) $$(CPPFLAGS) $$(FLAGS_$$(subst .o,,$$(@))) $$(addprefix -I,$$(COMPONENT_INCLUDES)) $$(addprefix -I,$$(COMPONENT_EXTRA_INCLUDES)) -I$(1) -c $$< -o $$@
|
||||
$$(CXX) $$(CXXFLAGS) $$(CPPFLAGS) $$(addprefix -I,$$(COMPONENT_INCLUDES)) $$(addprefix -I,$$(COMPONENT_EXTRA_INCLUDES)) -I$(1) -c $$< -o $$@
|
||||
|
||||
$(1)/%.o: $$(COMPONENT_PATH)/$(1)/%.S $(COMMON_MAKEFILES) $(COMPONENT_MAKEFILE) | $(1)
|
||||
$$(summary) AS $$@
|
||||
$$(CC) $$(CPPFLAGS) $$(FLAGS_$$(subst .o,,$$(@))) $$(addprefix -I ,$$(COMPONENT_INCLUDES)) $$(addprefix -I ,$$(COMPONENT_EXTRA_INCLUDES)) -I$(1) -c $$< -o $$@
|
||||
$$(CC) $$(CPPFLAGS) $$(addprefix -I ,$$(COMPONENT_INCLUDES)) $$(addprefix -I ,$$(COMPONENT_EXTRA_INCLUDES)) -I$(1) -c $$< -o $$@
|
||||
|
||||
# CWD is build dir, create the build subdirectory if it doesn't exist
|
||||
$(1):
|
||||
|
Loading…
x
Reference in New Issue
Block a user