Переглянути джерело

add prereq checks for target/linux/* and target/image/*, check for fdisk for the x86 builds

SVN-Revision: 5569
Felix Fietkau 19 роки тому
батько
коміт
aef03f09b5

+ 11 - 3
Makefile

@@ -49,7 +49,7 @@ endif
 
 ifeq ($(FORCE),)
   .config scripts/config/conf scripts/config/mconf: tmp/.prereq-build
-  world: tmp/.prereq-packages
+  world: tmp/.prereq-packages tmp/.prereq-target
 endif
 
 tmp/.pkginfo:
@@ -133,8 +133,16 @@ tmp/.prereq-packages: include/prereq.mk tmp/.pkginfo .config
 		false; \
 	}
 	@touch $@
-	
-prereq: tmp/.prereq-build tmp/.prereq-packages FORCE
+
+tmp/.prereq-target: include/prereq.mk tmp/.targetinfo .config
+	@mkdir -p tmp
+	@$(NO_TRACE_MAKE) -s -C target prereq 2>/dev/null || { \
+		echo "Prerequisite check failed. Use FORCE=1 to override."; \
+		false; \
+	}
+	@touch $@
+
+prereq: tmp/.prereq-build tmp/.prereq-packages tmp/.prereq-target FORCE
 
 download: .config FORCE
 	$(MAKE) tools/download

+ 1 - 0
include/image.mk

@@ -5,6 +5,7 @@
 # See /LICENSE for more information.
 #
 
+include $(INCLUDE_DIR)/prereq.mk
 include $(INCLUDE_DIR)/kernel.mk
 KDIR:=$(BUILD_DIR)/linux-$(KERNEL)-$(BOARD)
 

+ 2 - 0
include/kernel-build.mk

@@ -6,6 +6,8 @@
 #
 KERNEL_BUILD:=1
 
+include $(INCLUDE_DIR)/prereq.mk
+
 # For target profile selection - the default set
 DEFAULT_PACKAGES:=base-files libgcc uclibc bridge busybox dnsmasq dropbear iptables mtd ppp ppp-mod-pppoe mtd
 

+ 4 - 0
target/Makefile

@@ -25,6 +25,10 @@ compile: linux-compile image_compile
 install: image_clean $(patsubst %,%-install,$(TARGETS-y)) image_install
 clean: $(patsubst %,%-clean,$(TARGETS-y)) image_clean
 
+prereq: FORCE
+	$(MAKE) -C linux/$(BOARD)-$(KERNEL) prereq
+	$(MAKE) -C image/$(BOARD) prereq
+
 image_clean: FORCE
 	$(MAKE) -C image/$(BOARD) clean
 	rm -f $(BIN_DIR)/openwrt-*

+ 4 - 1
target/image/x86/Makefile

@@ -54,5 +54,8 @@ define Image/Build
 	cp $(LINUX_DIR)/arch/i386/boot/bzImage $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-vmlinuz
 endef
 
-
 $(eval $(call BuildImage))
+
+$(eval $(call RequireCommand,fdisk, \
+	Please install fdisk \
+))

+ 2 - 0
target/linux/x86-2.6/Makefile

@@ -16,4 +16,6 @@ LINUX_RELEASE:=1
 LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
 
 include $(INCLUDE_DIR)/kernel-build.mk
+
 $(eval $(call BuildKernel))
+