Allow setting of mirror hash for Git kernel tree. Signed-off-by: Petr Štetiar <ynezz@true.cz>
		
			
				
	
	
		
			113 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			113 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
# 
 | 
						|
# Copyright (C) 2006-2009 OpenWrt.org
 | 
						|
#
 | 
						|
# This is free software, licensed under the GNU General Public License v2.
 | 
						|
# See /LICENSE for more information.
 | 
						|
#
 | 
						|
include $(TOPDIR)/rules.mk
 | 
						|
 | 
						|
KERNEL_BUILD_DIR := $(BUILD_DIR_TOOLCHAIN)
 | 
						|
BUILD_DIR := $(KERNEL_BUILD_DIR)
 | 
						|
 | 
						|
override QUILT:=
 | 
						|
override HOST_QUILT:=
 | 
						|
 | 
						|
include $(INCLUDE_DIR)/kernel.mk
 | 
						|
 | 
						|
PKG_NAME:=linux
 | 
						|
PKG_VERSION:=$(LINUX_VERSION)
 | 
						|
PKG_SOURCE:=$(LINUX_SOURCE)
 | 
						|
ifneq ($(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI)),)
 | 
						|
  PKG_SOURCE_PROTO:=git
 | 
						|
  PKG_SOURCE_URL:=$(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI))
 | 
						|
  PKG_SOURCE_VERSION:=$(call qstrip,$(CONFIG_KERNEL_GIT_REF))
 | 
						|
  PKG_MIRROR_HASH:=$(call qstrip,$(CONFIG_KERNEL_GIT_MIRROR_HASH))
 | 
						|
ifdef CHECK
 | 
						|
  include $(INCLUDE_DIR)/kernel-version.mk
 | 
						|
  PKG_VERSION:=$(LINUX_VERSION)
 | 
						|
else
 | 
						|
  PKG_SOURCE:=$(LINUX_SOURCE)
 | 
						|
endif
 | 
						|
else
 | 
						|
  PKG_SOURCE:=$(LINUX_SOURCE)
 | 
						|
  PKG_SOURCE_URL:=$(LINUX_SITE)
 | 
						|
endif
 | 
						|
HOST_BUILD_DIR:=$(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION)
 | 
						|
PKG_HASH:=$(LINUX_KERNEL_HASH)
 | 
						|
LINUX_DIR := $(HOST_BUILD_DIR)
 | 
						|
FILES_DIR := 
 | 
						|
PATCH_DIR := ./patches$(if $(wildcard ./patches-$(LINUX_VERSION)),-$(LINUX_VERSION))
 | 
						|
 | 
						|
include $(INCLUDE_DIR)/toolchain-build.mk
 | 
						|
include $(INCLUDE_DIR)/kernel-defaults.mk
 | 
						|
 | 
						|
ifeq ($(strip $(BOARD)),uml)
 | 
						|
  LINUX_KARCH:=$(subst x86_64,x86,$(subst i386,x86,$(ARCH)))
 | 
						|
endif
 | 
						|
 | 
						|
HOST_EXTRACFLAGS=
 | 
						|
 | 
						|
LINUX_HAS_HEADERS_INSTALL:=y
 | 
						|
 | 
						|
HOST_KMAKE := $(MAKE) -C $(HOST_BUILD_DIR) \
 | 
						|
	$(KERNEL_MAKE_FLAGS) \
 | 
						|
	CC="$(KERNEL_CC)" \
 | 
						|
	HOSTCFLAGS="$(HOST_CFLAGS)"
 | 
						|
 | 
						|
define Host/Configure/all
 | 
						|
	mkdir -p $(BUILD_DIR_TOOLCHAIN)/linux-dev
 | 
						|
	$(HOST_KMAKE) \
 | 
						|
		INSTALL_HDR_PATH="$(BUILD_DIR_TOOLCHAIN)/linux-dev/" \
 | 
						|
		headers_install
 | 
						|
endef
 | 
						|
 | 
						|
# XXX: the following is needed to build lzma-loader
 | 
						|
ifneq ($(CONFIG_mips)$(CONFIG_mipsel),)
 | 
						|
  define Host/Configure/lzma
 | 
						|
	$(CP) \
 | 
						|
		$(HOST_BUILD_DIR)/arch/mips/include/asm/asm.h \
 | 
						|
		$(HOST_BUILD_DIR)/arch/mips/include/asm/regdef.h \
 | 
						|
		$(HOST_BUILD_DIR)/arch/mips/include/asm/asm-eva.h \
 | 
						|
		$(BUILD_DIR_TOOLCHAIN)/linux-dev/include/asm/
 | 
						|
  endef
 | 
						|
endif
 | 
						|
 | 
						|
define Host/Configure/post/mips
 | 
						|
	$(call Host/Configure/lzma)
 | 
						|
endef
 | 
						|
 | 
						|
define Host/Configure/post/mipsel
 | 
						|
	$(call Host/Configure/lzma)
 | 
						|
endef
 | 
						|
 | 
						|
define Host/Prepare
 | 
						|
	rm -rf $(BUILD_DIR_TOOLCHAIN)/linux-*
 | 
						|
	$(call Kernel/Prepare/Default)
 | 
						|
	rm -f $(BUILD_DIR_TOOLCHAIN)/linux
 | 
						|
	ln -s linux-$(LINUX_VERSION) $(BUILD_DIR_TOOLCHAIN)/linux
 | 
						|
	$(SED) 's/@expr length/@-expr length/' $(HOST_BUILD_DIR)/Makefile
 | 
						|
endef
 | 
						|
 | 
						|
define Host/Configure
 | 
						|
	env
 | 
						|
	yes '' | $(HOST_KMAKE) oldconfig
 | 
						|
	$(call Host/Configure/all)
 | 
						|
	$(call Host/Configure/post/$(ARCH))
 | 
						|
endef
 | 
						|
 | 
						|
define Host/Compile
 | 
						|
endef
 | 
						|
 | 
						|
define Host/Install
 | 
						|
	$(CP) $(BUILD_DIR_TOOLCHAIN)/linux-dev/* $(TOOLCHAIN_DIR)/
 | 
						|
endef
 | 
						|
 | 
						|
define Host/Clean
 | 
						|
	rm -rf \
 | 
						|
		$(HOST_BUILD_DIR) \
 | 
						|
		$(BUILD_DIR_TOOLCHAIN)/linux \
 | 
						|
		$(BUILD_DIR_TOOLCHAIN)/linux-dev
 | 
						|
endef
 | 
						|
 | 
						|
$(eval $(call HostBuild))
 |