diff options
author | Felix Fietkau <nbd@openwrt.org> | 2006-10-24 18:11:33 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2006-10-24 18:11:33 +0000 |
commit | a9cd57af9e7aeb91e8662eccb919a5db55f53475 (patch) | |
tree | d3f253655c5a51066e399a3e04a924951bb3eda1 /package | |
parent | c37691ca2ab222706cb2190c85192f6cbace48f0 (diff) | |
download | upstream-a9cd57af9e7aeb91e8662eccb919a5db55f53475.tar.gz upstream-a9cd57af9e7aeb91e8662eccb919a5db55f53475.tar.bz2 upstream-a9cd57af9e7aeb91e8662eccb919a5db55f53475.zip |
turn target runtime check of mtd into a compile-time check
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@5285 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package')
-rw-r--r-- | package/mtd/Makefile | 9 | ||||
-rw-r--r-- | package/mtd/src/mtd.c | 24 |
2 files changed, 14 insertions, 19 deletions
diff --git a/package/mtd/Makefile b/package/mtd/Makefile index 00d347fad5..b3edb7b1b8 100644 --- a/package/mtd/Makefile +++ b/package/mtd/Makefile @@ -7,11 +7,12 @@ # $Id$ include $(TOPDIR)/rules.mk +include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=mtd PKG_RELEASE:=4 -PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) +PKG_BUILD_DIR := $(KERNEL_BUILD_DIR)/$(PKG_NAME) include $(INCLUDE_DIR)/package.mk @@ -30,6 +31,12 @@ define Build/Prepare $(CP) ./src/* $(PKG_BUILD_DIR)/ endef +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -Dtarget_$(BOARD)=1" +endef + define Package/mtd/install install -d -m0755 $(1)/sbin install -m0755 $(PKG_BUILD_DIR)/mtd $(1)/sbin/ diff --git a/package/mtd/src/mtd.c b/package/mtd/src/mtd.c index 1e9d316e4c..559b937f97 100644 --- a/package/mtd/src/mtd.c +++ b/package/mtd/src/mtd.c @@ -64,8 +64,9 @@ char buf[BUFSIZE]; int buflen; int quiet; +#ifdef target_brcm int -image_check_bcom(int imagefd, const char *mtd) +image_check_brcm(int imagefd, const char *mtd) { struct trx_header *trx = (struct trx_header *) buf; struct mtd_info_user mtdInfo; @@ -121,6 +122,7 @@ image_check_bcom(int imagefd, const char *mtd) close(fd); return 1; } +#endif /* target_brcm */ int image_check(int imagefd, const char *mtd) @@ -130,23 +132,9 @@ image_check(int imagefd, const char *mtd) char *c; FILE *f; - systype = SYSTYPE_UNKNOWN; - f = fopen("/proc/cpuinfo", "r"); - while (!feof(f) && (fgets(buf, BUFSIZE - 1, f) != NULL)) { - if ((strncmp(buf, "system type", 11) == 0) && (c = strchr(buf, ':'))) { - c += 2; - if (strncmp(c, "Broadcom BCM947XX", 17) == 0) - systype = SYSTYPE_BROADCOM; - } - } - fclose(f); - - switch(systype) { - case SYSTYPE_BROADCOM: - return image_check_bcom(imagefd, mtd); - default: - return 1; - } +#ifdef target_brcm + return image_check_brcm(imagefd, mtd); +#endif } int mtd_check(char *mtd) |