forked from Mirrors/opensbi
		
	Makefile: Convert to a more standard format
Convert the Makefile to a more standard format and don't forcefully overwrite a users enviroment. Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
This commit is contained in:
		
				
					committed by
					
						
						Anup Patel
					
				
			
			
				
	
			
			
			
						parent
						
							d6ddfdce39
						
					
				
				
					commit
					eeab92f242
				
			
							
								
								
									
										79
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										79
									
								
								Makefile
									
									
									
									
									
								
							@@ -100,35 +100,38 @@ GENFLAGS	+=	$(platform-genflags-y)
 | 
				
			|||||||
GENFLAGS	+=	$(firmware-genflags-y)
 | 
					GENFLAGS	+=	$(firmware-genflags-y)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Setup compilation environment
 | 
					# Setup compilation environment
 | 
				
			||||||
cpp=$(CROSS_COMPILE)cpp
 | 
					CC			?=	$(CROSS_COMPILE)gcc
 | 
				
			||||||
cppflags+=$(GENFLAGS)
 | 
					CFLAGS		=	-g -Wall -Werror -nostdlib -fno-strict-aliasing -O2
 | 
				
			||||||
cppflags+=$(platform-cppflags-y)
 | 
					CFLAGS		+=	-fno-omit-frame-pointer -fno-optimize-sibling-calls
 | 
				
			||||||
cppflags+=$(firmware-cppflags-y)
 | 
					CFLAGS		+=	-mno-save-restore -mstrict-align
 | 
				
			||||||
cc=$(CROSS_COMPILE)gcc
 | 
					CFLAGS		+=	$(GENFLAGS)
 | 
				
			||||||
cflags=-g -Wall -Werror -nostdlib -fno-strict-aliasing -O2
 | 
					CFLAGS		+=	$(platform-cflags-y)
 | 
				
			||||||
cflags+=-fno-omit-frame-pointer -fno-optimize-sibling-calls
 | 
					CFLAGS		+=	$(firmware-cflags-y)
 | 
				
			||||||
cflags+=-mno-save-restore -mstrict-align
 | 
					
 | 
				
			||||||
cflags+=$(GENFLAGS)
 | 
					CPP			?=	$(CROSS_COMPILE)cpp
 | 
				
			||||||
cflags+=$(platform-cflags-y)
 | 
					CPPFLAGS	+=	$(GENFLAGS)
 | 
				
			||||||
cflags+=$(firmware-cflags-y)
 | 
					CPPFLAGS	+=	$(platform-cppflags-y)
 | 
				
			||||||
cflags+=$(EXTRA_CFLAGS)
 | 
					CPPFLAGS	+=	$(firmware-cppflags-y)
 | 
				
			||||||
as=$(CROSS_COMPILE)gcc
 | 
					
 | 
				
			||||||
asflags=-g -Wall -nostdlib -D__ASSEMBLY__
 | 
					AS			=	$(CC)
 | 
				
			||||||
asflags+=-fno-omit-frame-pointer -fno-optimize-sibling-calls
 | 
					ASFLAGS		=	-g -Wall -nostdlib -D__ASSEMBLY__
 | 
				
			||||||
asflags+=-mno-save-restore -mstrict-align
 | 
					ASFLAGS		+=	-fno-omit-frame-pointer -fno-optimize-sibling-calls
 | 
				
			||||||
asflags+=$(GENFLAGS)
 | 
					ASFLAGS		+=	-mno-save-restore -mstrict-align
 | 
				
			||||||
asflags+=$(platform-asflags-y)
 | 
					ASFLAGS		+=	$(GENFLAGS)
 | 
				
			||||||
asflags+=$(firmware-asflags-y)
 | 
					ASFLAGS		+=	$(platform-asflags-y)
 | 
				
			||||||
asflags+=$(EXTRA_ASFLAGS)
 | 
					ASFLAGS		+=	$(firmware-asflags-y)
 | 
				
			||||||
ar=$(CROSS_COMPILE)ar
 | 
					
 | 
				
			||||||
arflags=rcs
 | 
					AR			?= $(CROSS_COMPILE)ar
 | 
				
			||||||
ld=$(CROSS_COMPILE)gcc
 | 
					ARFLAGS		=	rcs
 | 
				
			||||||
ldflags=-g -Wall -nostdlib -Wl,--build-id=none
 | 
					
 | 
				
			||||||
ldflags+=$(platform-ldflags-y)
 | 
					LD			?=	$(CROSS_COMPILE)ld
 | 
				
			||||||
ldflags+=$(firmware-ldflags-y)
 | 
					LDFLAGS		+=	-g -Wall -nostdlib -Wl,--build-id=none -N
 | 
				
			||||||
merge=$(CROSS_COMPILE)ld
 | 
					LDFLAGS		+=	$(platform-ldflags-y)
 | 
				
			||||||
mergeflags=-r
 | 
					LDFLAGS		+=	$(firmware-ldflags-y)
 | 
				
			||||||
objcopy=$(CROSS_COMPILE)objcopy
 | 
					
 | 
				
			||||||
 | 
					MERGEFLAGS	+=	-r
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					OBJCOPY	?=	$(CROSS_COMPILE)objcopy
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Setup functions for compilation
 | 
					# Setup functions for compilation
 | 
				
			||||||
define dynamic_flags
 | 
					define dynamic_flags
 | 
				
			||||||
@@ -136,7 +139,7 @@ define dynamic_flags
 | 
				
			|||||||
endef
 | 
					endef
 | 
				
			||||||
merge_objs = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
					merge_objs = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
				
			||||||
	     echo " MERGE     $(subst $(build_dir)/,,$(1))"; \
 | 
						     echo " MERGE     $(subst $(build_dir)/,,$(1))"; \
 | 
				
			||||||
	     $(merge) $(mergeflags) $(2) -o $(1)
 | 
						     $(LD) $(MERGEFLAGS) $(2) -o $(1)
 | 
				
			||||||
merge_deps = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
					merge_deps = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
				
			||||||
	     echo " MERGE-DEP $(subst $(build_dir)/,,$(1))"; \
 | 
						     echo " MERGE-DEP $(subst $(build_dir)/,,$(1))"; \
 | 
				
			||||||
	     cat $(2) > $(1)
 | 
						     cat $(2) > $(1)
 | 
				
			||||||
@@ -162,32 +165,32 @@ inst_header_dir =  $(CMD_PREFIX)mkdir -p $(1); \
 | 
				
			|||||||
	     cp -rf $(2) $(1)
 | 
						     cp -rf $(2) $(1)
 | 
				
			||||||
compile_cpp = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
					compile_cpp = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
				
			||||||
	     echo " CPP       $(subst $(build_dir)/,,$(1))"; \
 | 
						     echo " CPP       $(subst $(build_dir)/,,$(1))"; \
 | 
				
			||||||
	     $(cpp) $(cppflags) $(2) | grep -v "\#" > $(1)
 | 
						     $(CPP) $(CPPFLAGS) $(2) | grep -v "\#" > $(1)
 | 
				
			||||||
compile_cc_dep = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
					compile_cc_dep = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
				
			||||||
	     echo " CC-DEP    $(subst $(build_dir)/,,$(1))"; \
 | 
						     echo " CC-DEP    $(subst $(build_dir)/,,$(1))"; \
 | 
				
			||||||
	     echo -n `dirname $(1)`/ > $(1) && \
 | 
						     echo -n `dirname $(1)`/ > $(1) && \
 | 
				
			||||||
	     $(cc) $(cflags) $(call dynamic_flags,$(1),$(2))   \
 | 
						     $(CC) $(CFLAGS) $(call dynamic_flags,$(1),$(2))   \
 | 
				
			||||||
	       -MM $(2) >> $(1) || rm -f $(1)
 | 
						       -MM $(2) >> $(1) || rm -f $(1)
 | 
				
			||||||
compile_cc = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
					compile_cc = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
				
			||||||
	     echo " CC        $(subst $(build_dir)/,,$(1))"; \
 | 
						     echo " CC        $(subst $(build_dir)/,,$(1))"; \
 | 
				
			||||||
	     $(cc) $(cflags) $(call dynamic_flags,$(1),$(2)) -c $(2) -o $(1)
 | 
						     $(CC) $(CFLAGS) $(call dynamic_flags,$(1),$(2)) -c $(2) -o $(1)
 | 
				
			||||||
compile_as_dep = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
					compile_as_dep = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
				
			||||||
	     echo " AS-DEP    $(subst $(build_dir)/,,$(1))"; \
 | 
						     echo " AS-DEP    $(subst $(build_dir)/,,$(1))"; \
 | 
				
			||||||
	     echo -n `dirname $(1)`/ > $(1) && \
 | 
						     echo -n `dirname $(1)`/ > $(1) && \
 | 
				
			||||||
	     $(as) $(asflags) $(call dynamic_flags,$(1),$(2))  \
 | 
						     $(AS) $(ASFLAGS) $(call dynamic_flags,$(1),$(2)) \
 | 
				
			||||||
	       -MM $(2) >> $(1) || rm -f $(1)
 | 
						       -MM $(2) >> $(1) || rm -f $(1)
 | 
				
			||||||
compile_as = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
					compile_as = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
				
			||||||
	     echo " AS        $(subst $(build_dir)/,,$(1))"; \
 | 
						     echo " AS        $(subst $(build_dir)/,,$(1))"; \
 | 
				
			||||||
	     $(as) $(asflags) $(call dynamic_flags,$(1),$(2)) -c $(2) -o $(1)
 | 
						     $(AS) $(ASFLAGS) $(call dynamic_flags,$(1),$(2)) -c $(2) -o $(1)
 | 
				
			||||||
compile_ld = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
					compile_ld = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
				
			||||||
	     echo " LD        $(subst $(build_dir)/,,$(1))"; \
 | 
						     echo " LD        $(subst $(build_dir)/,,$(1))"; \
 | 
				
			||||||
	     $(ld) $(3) $(ldflags) -Wl,-T$(2) -o $(1)
 | 
						     $(CC) $(3) $(LDFLAGS) -Wl,-T$(2) -o $(1)
 | 
				
			||||||
compile_ar = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
					compile_ar = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
				
			||||||
	     echo " AR        $(subst $(build_dir)/,,$(1))"; \
 | 
						     echo " AR        $(subst $(build_dir)/,,$(1))"; \
 | 
				
			||||||
	     $(ar) $(arflags) $(1) $(2)
 | 
						     $(AR) $(ARFLAGS) $(1) $(2)
 | 
				
			||||||
compile_objcopy = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
					compile_objcopy = $(CMD_PREFIX)mkdir -p `dirname $(1)`; \
 | 
				
			||||||
	     echo " OBJCOPY   $(subst $(build_dir)/,,$(1))"; \
 | 
						     echo " OBJCOPY   $(subst $(build_dir)/,,$(1))"; \
 | 
				
			||||||
	     $(objcopy) -S -O binary $(2) $(1)
 | 
						     $(OBJCOPY) -S -O binary $(2) $(1)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
targets-y  = $(build_dir)/lib/libsbi.a
 | 
					targets-y  = $(build_dir)/lib/libsbi.a
 | 
				
			||||||
ifdef PLATFORM
 | 
					ifdef PLATFORM
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user