|  | # =========================================================================== | 
|  | # arch/um: Generic definitions | 
|  | # =========================================================================== | 
|  |  | 
|  | USER_SINGLE_OBJS := \ | 
|  | $(foreach f,$(patsubst %.o,%,$(obj-y) $(obj-m)),$($(f)-objs)) | 
|  | USER_OBJS += $(filter %_user.o,$(obj-y) $(obj-m)  $(USER_SINGLE_OBJS)) | 
|  | USER_OBJS := $(foreach file,$(USER_OBJS),$(obj)/$(file)) | 
|  |  | 
|  | $(USER_OBJS:.o=.%): \ | 
|  | c_flags = -Wp,-MD,$(depfile) $(USER_CFLAGS) $(CFLAGS_$(basetarget).o) | 
|  | $(USER_OBJS) : CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ \ | 
|  | -Dunix -D__unix__ -D__$(SUBARCH)__ | 
|  |  | 
|  | # These are like USER_OBJS but filter USER_CFLAGS through unprofile instead of | 
|  | # using it directly. | 
|  | UNPROFILE_OBJS := $(foreach file,$(UNPROFILE_OBJS),$(obj)/$(file)) | 
|  |  | 
|  | $(UNPROFILE_OBJS:.o=.%): \ | 
|  | c_flags = -Wp,-MD,$(depfile) $(call unprofile,$(USER_CFLAGS)) $(CFLAGS_$(basetarget).o) | 
|  | $(UNPROFILE_OBJS) : CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ \ | 
|  | -Dunix -D__unix__ -D__$(SUBARCH)__ | 
|  |  | 
|  | # The stubs and unmap.o can't try to call mcount or update basic block data | 
|  | define unprofile | 
|  | $(patsubst -pg,,$(patsubst -fprofile-arcs -ftest-coverage,,$(1))) | 
|  | endef | 
|  |  | 
|  | ifdef subarch-obj-y | 
|  | obj-y += subarch.o | 
|  | subarch-y = $(addprefix ../../$(SUBARCH)/,$(subarch-obj-y)) | 
|  | endif |