[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Minios-devel] [UNIKRAT RFC PATCH] build: Introduce flag CFLAGS_REMOVE to remove some options



Previously, there is no way to remove any global options for individual
library. For some reason, on arm64 we need to use mgeneral-regs-only
for unikraft plat library (context switch, print debug). But for some
other libraries (e.g. newlib), we shouldn't use that option due to
float point/simd support on arm64.

This patch adds a new flag CFLAGS_REMOVE to filter it out in unikraft
build system.

Signed-off-by: Jia He <justin.he@xxxxxxx>
---
 support/build/Makefile.rules | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/support/build/Makefile.rules b/support/build/Makefile.rules
index d60c6d9..dea2c7f 100644
--- a/support/build/Makefile.rules
+++ b/support/build/Makefile.rules
@@ -391,7 +391,9 @@ $(3): $(2) | prepare
        $(call build_cmd_fixdep,CC,$(1),$(3),\
                $(CC)  $(CINCLUDES) $(CINCLUDES-y) \
                       $($(call vprefix_lib,$(1),CINCLUDES)) $($(call 
vprefix_lib,$(1),CINCLUDES-y)) \
-                      $(CFLAGS) $(CFLAGS-y) $(DBGFLAGS) $(DBGFLAGS-y) \
+                      $(filter-out $(CFLAGS_REMOVE),$(CFLAGS)) \
+                       $(filter-out $(CFLAGS_REMOVE),$(CFLAGS-y)) \
+                       $(DBGFLAGS) $(DBGFLAGS-y) \
                       $($(call vprefix_lib,$(1),CFLAGS)) $($(call 
vprefix_lib,$(1),CFLAGS-y)) \
                       $(4) -D__LIBNAME__=$(1) -D__BASENAME__=$(notdir $(2)) \
                       -c $(2) -o $(3) $(depflags)
-- 
2.17.1


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.