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)
 | 
			
		||||
 | 
			
		||||
# Setup compilation environment
 | 
			
		||||
cpp=$(CROSS_COMPILE)cpp
 | 
			
		||||
cppflags+=$(GENFLAGS)
 | 
			
		||||
cppflags+=$(platform-cppflags-y)
 | 
			
		||||
cppflags+=$(firmware-cppflags-y)
 | 
			
		||||
cc=$(CROSS_COMPILE)gcc
 | 
			
		||||
cflags=-g -Wall -Werror -nostdlib -fno-strict-aliasing -O2
 | 
			
		||||
cflags+=-fno-omit-frame-pointer -fno-optimize-sibling-calls
 | 
			
		||||
cflags+=-mno-save-restore -mstrict-align
 | 
			
		||||
cflags+=$(GENFLAGS)
 | 
			
		||||
cflags+=$(platform-cflags-y)
 | 
			
		||||
cflags+=$(firmware-cflags-y)
 | 
			
		||||
cflags+=$(EXTRA_CFLAGS)
 | 
			
		||||
as=$(CROSS_COMPILE)gcc
 | 
			
		||||
asflags=-g -Wall -nostdlib -D__ASSEMBLY__
 | 
			
		||||
asflags+=-fno-omit-frame-pointer -fno-optimize-sibling-calls
 | 
			
		||||
asflags+=-mno-save-restore -mstrict-align
 | 
			
		||||
asflags+=$(GENFLAGS)
 | 
			
		||||
asflags+=$(platform-asflags-y)
 | 
			
		||||
asflags+=$(firmware-asflags-y)
 | 
			
		||||
asflags+=$(EXTRA_ASFLAGS)
 | 
			
		||||
ar=$(CROSS_COMPILE)ar
 | 
			
		||||
arflags=rcs
 | 
			
		||||
ld=$(CROSS_COMPILE)gcc
 | 
			
		||||
ldflags=-g -Wall -nostdlib -Wl,--build-id=none
 | 
			
		||||
ldflags+=$(platform-ldflags-y)
 | 
			
		||||
ldflags+=$(firmware-ldflags-y)
 | 
			
		||||
merge=$(CROSS_COMPILE)ld
 | 
			
		||||
mergeflags=-r
 | 
			
		||||
objcopy=$(CROSS_COMPILE)objcopy
 | 
			
		||||
CC			?=	$(CROSS_COMPILE)gcc
 | 
			
		||||
CFLAGS		=	-g -Wall -Werror -nostdlib -fno-strict-aliasing -O2
 | 
			
		||||
CFLAGS		+=	-fno-omit-frame-pointer -fno-optimize-sibling-calls
 | 
			
		||||
CFLAGS		+=	-mno-save-restore -mstrict-align
 | 
			
		||||
CFLAGS		+=	$(GENFLAGS)
 | 
			
		||||
CFLAGS		+=	$(platform-cflags-y)
 | 
			
		||||
CFLAGS		+=	$(firmware-cflags-y)
 | 
			
		||||
 | 
			
		||||
CPP			?=	$(CROSS_COMPILE)cpp
 | 
			
		||||
CPPFLAGS	+=	$(GENFLAGS)
 | 
			
		||||
CPPFLAGS	+=	$(platform-cppflags-y)
 | 
			
		||||
CPPFLAGS	+=	$(firmware-cppflags-y)
 | 
			
		||||
 | 
			
		||||
AS			=	$(CC)
 | 
			
		||||
ASFLAGS		=	-g -Wall -nostdlib -D__ASSEMBLY__
 | 
			
		||||
ASFLAGS		+=	-fno-omit-frame-pointer -fno-optimize-sibling-calls
 | 
			
		||||
ASFLAGS		+=	-mno-save-restore -mstrict-align
 | 
			
		||||
ASFLAGS		+=	$(GENFLAGS)
 | 
			
		||||
ASFLAGS		+=	$(platform-asflags-y)
 | 
			
		||||
ASFLAGS		+=	$(firmware-asflags-y)
 | 
			
		||||
 | 
			
		||||
AR			?= $(CROSS_COMPILE)ar
 | 
			
		||||
ARFLAGS		=	rcs
 | 
			
		||||
 | 
			
		||||
LD			?=	$(CROSS_COMPILE)ld
 | 
			
		||||
LDFLAGS		+=	-g -Wall -nostdlib -Wl,--build-id=none -N
 | 
			
		||||
LDFLAGS		+=	$(platform-ldflags-y)
 | 
			
		||||
LDFLAGS		+=	$(firmware-ldflags-y)
 | 
			
		||||
 | 
			
		||||
MERGEFLAGS	+=	-r
 | 
			
		||||
 | 
			
		||||
OBJCOPY	?=	$(CROSS_COMPILE)objcopy
 | 
			
		||||
 | 
			
		||||
# Setup functions for compilation
 | 
			
		||||
define dynamic_flags
 | 
			
		||||
@@ -136,7 +139,7 @@ define dynamic_flags
 | 
			
		||||
endef
 | 
			
		||||
merge_objs = $(CMD_PREFIX)mkdir -p `dirname $(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)`; \
 | 
			
		||||
	     echo " MERGE-DEP $(subst $(build_dir)/,,$(1))"; \
 | 
			
		||||
	     cat $(2) > $(1)
 | 
			
		||||
@@ -162,32 +165,32 @@ inst_header_dir =  $(CMD_PREFIX)mkdir -p $(1); \
 | 
			
		||||
	     cp -rf $(2) $(1)
 | 
			
		||||
compile_cpp = $(CMD_PREFIX)mkdir -p `dirname $(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)`; \
 | 
			
		||||
	     echo " CC-DEP    $(subst $(build_dir)/,,$(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)
 | 
			
		||||
compile_cc = $(CMD_PREFIX)mkdir -p `dirname $(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)`; \
 | 
			
		||||
	     echo " AS-DEP    $(subst $(build_dir)/,,$(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)
 | 
			
		||||
compile_as = $(CMD_PREFIX)mkdir -p `dirname $(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)`; \
 | 
			
		||||
	     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)`; \
 | 
			
		||||
	     echo " AR        $(subst $(build_dir)/,,$(1))"; \
 | 
			
		||||
	     $(ar) $(arflags) $(1) $(2)
 | 
			
		||||
	     $(AR) $(ARFLAGS) $(1) $(2)
 | 
			
		||||
compile_objcopy = $(CMD_PREFIX)mkdir -p `dirname $(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
 | 
			
		||||
ifdef PLATFORM
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user