u-Boot 顶层Makefile解析(三)
u-Boot -Makefile(三) 声明 : 以下解析大部分来自网络大神之手 所以可以放心阅读 参考地址不可考 有事请留言 Good luck#########################################################################ifeq ($(OBJTREE)/include/config.mk,$(wildcard $(OBJTREE)/include/config.mk))# $(OBJTREE)/include/config.mk # $(wildcard $(OBJTREE)/include/config.mk)# $(wildcard pattern) 参数pattern是一个文件名格式(可使用通配符)# 这个函数的结果是一列和格式匹配且真实存在的文件的名称 文件名之间用空格符隔开# 那 这句的意思是啥 # load ARCH, BOARD, and CPU configuration#加载这些配置include $(OBJTREE)/include/config.mk#把/include/config.mk包含进工程中exportARCH CPU BOARD VENDOR SOC#导出ARCH CPU BOARD VENDOR SOCifndef CROSS_COMPILE#如果没有定义交叉编译工具ifeq ($(HOSTARCH),ppc)#如果他俩一样CROSS_COMPILE =#交叉编译工具为空else#elseifeq ($(ARCH),ppc)#CROSS_COMPILE = powerpc-linux-#endif#ifeq ($(ARCH),arm)#CROSS_COMPILE = arm-linux-#我们要用的交叉编译工具arm-linux-是前缀endif#ifeq ($(ARCH),i386)#ifeq ($(HOSTARCH),i386)#为啥这两个要这样CROSS_COMPILE =#else#CROSS_COMPILE = i386-linux-#endif#endif#ifeq ($(ARCH),mips)#CROSS_COMPILE = mips_4KC-#endif#ifeq ($(ARCH),nios)#CROSS_COMPILE = nios-elf-#endif#ifeq ($(ARCH),nios2)#CROSS_COMPILE = nios2-elf-#endif#ifeq ($(ARCH),m68k)#CROSS_COMPILE = m68k-elf-#endif#ifeq ($(ARCH),microblaze)#CROSS_COMPILE = mb-#endif#ifeq ($(ARCH),blackfin)#CROSS_COMPILE = bfin-elf-#endif#ifeq ($(ARCH),avr32)#CROSS_COMPILE = avr32-#avr32都来了?endif#endif#endif#exportCROSS_COMPILE#export CROSS_COMPILE# load other configuration#加载其他配置include $(TOPDIR)/config.mk#位于$(TOPDIR)/config.mk