Blame view

buildroot/buildroot-2016.08.1/package/mtd/mtd.mk 4.91 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
  ################################################################################
  #
  # mtd
  #
  ################################################################################
  
  MTD_VERSION = 1.5.2
  MTD_SOURCE = mtd-utils-$(MTD_VERSION).tar.bz2
  MTD_SITE = ftp://ftp.infradead.org/pub/mtd-utils
  MTD_LICENSE = GPLv2
  MTD_LICENSE_FILES = COPYING
  
  MTD_INSTALL_STAGING = YES
  
  ifeq ($(BR2_PACKAGE_MTD_MKFSJFFS2),y)
  MTD_DEPENDENCIES = zlib lzo
  endif
  
  ifeq ($(BR2_PACKAGE_MTD_MKFSUBIFS),y)
  MTD_DEPENDENCIES += util-linux zlib lzo host-pkgconf
  define MTD_ADD_MISSING_LINTL
  	$(SED) "/^LDLIBS_mkfs\.ubifs/ s%$$% `$(PKG_CONFIG_HOST_BINARY) --libs uuid`%" \
  		$(@D)/Makefile
  endef
  MTD_POST_PATCH_HOOKS += MTD_ADD_MISSING_LINTL
  endif
  
  ifeq ($(BR2_PACKAGE_BUSYBOX),y)
  MTD_DEPENDENCIES += busybox
  endif
  
  # If extended attributes are required, the acl package must
  # also be enabled which will also include the attr package.
  ifeq ($(BR2_PACKAGE_ACL),y)
  MTD_DEPENDENCIES += acl
  MTD_MAKE_OPTS += WITHOUT_XATTR=0
  else
  MTD_MAKE_OPTS += WITHOUT_XATTR=1
  endif
  
  HOST_MTD_DEPENDENCIES = host-zlib host-lzo host-e2fsprogs
  
  define HOST_MTD_BUILD_CMDS
  	$(HOST_CONFIGURE_OPTS) $(MAKE1) \
  		CROSS= BUILDDIR=$(@D) WITHOUT_XATTR=1 -C $(@D)
  endef
  
  define HOST_MTD_INSTALL_CMDS
  	$(MAKE1) BUILDDIR=$(@D) DESTDIR=$(HOST_DIR) -C $(@D) install
  endef
  
  MKFS_JFFS2 = $(HOST_DIR)/usr/sbin/mkfs.jffs2
  SUMTOOL = $(HOST_DIR)/usr/sbin/sumtool
  
  MTD_STAGING_y = lib/libmtd.a ubi-utils/libubi.a
  MTD_TARGETS_$(BR2_PACKAGE_MTD_DOCFDISK)		+= docfdisk
  MTD_TARGETS_$(BR2_PACKAGE_MTD_DOC_LOADBIOS)	+= doc_loadbios
  MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASHCP)		+= flashcp
  MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASE)	+= flash_erase
  MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_LOCK)	+= flash_lock
  MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_OTP_DUMP)	+= flash_otp_dump
  MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_OTP_INFO)	+= flash_otp_info
  MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_OTP_LOCK)	+= flash_otp_lock
  MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_OTP_WRITE)	+= flash_otp_write
  MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_UNLOCK)	+= flash_unlock
  MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_CHECK)	+= ftl_check
  MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_FORMAT)	+= ftl_format
  MTD_TARGETS_$(BR2_PACKAGE_MTD_JFFS2DUMP)	+= jffs2dump
  MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSJFFS2)	+= mkfs.jffs2
  MTD_TARGETS_$(BR2_PACKAGE_MTD_MTD_DEBUG)	+= mtd_debug
  MTD_TARGETS_$(BR2_PACKAGE_MTD_MTDPART)		+= mtdpart
  MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDDUMP)		+= nanddump
  MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDTEST)		+= nandtest
  MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDWRITE)	+= nandwrite
  MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTLDUMP)		+= nftldump
  MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTL_FORMAT)	+= nftl_format
  MTD_TARGETS_$(BR2_PACKAGE_MTD_RECV_IMAGE)	+= recv_image
  MTD_TARGETS_$(BR2_PACKAGE_MTD_RFDDUMP)		+= rfddump
  MTD_TARGETS_$(BR2_PACKAGE_MTD_RFDFORMAT)	+= rfdformat
  MTD_TARGETS_$(BR2_PACKAGE_MTD_SERVE_IMAGE)	+= serve_image
  MTD_TARGETS_$(BR2_PACKAGE_MTD_SUMTOOL)		+= sumtool
  
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_MTDINFO)	+= mtdinfo
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIATTACH)	+= ubiattach
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBICRC32)	+= ubicrc32
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIDETACH)	+= ubidetach
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIFORMAT)	+= ubiformat
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIMKVOL)	+= ubimkvol
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBINFO)	+= ubinfo
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBINIZE)	+= ubinize
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIRENAME)	+= ubirename
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIRMVOL)	+= ubirmvol
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIRSVOL)	+= ubirsvol
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIUPDATEVOL)	+= ubiupdatevol
  MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIBLOCK)	+= ubiblock
  
  MTD_TARGETS_y += $(addprefix ubi-utils/,$(MTD_TARGETS_UBI_y))
  MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSUBIFS) += mkfs.ubifs/mkfs.ubifs
  
  ifeq ($(BR2_PACKAGE_MTD_INTEGCK),y)
  define MTD_BUILD_INTEGCK
  	$(TARGET_CONFIGURE_OPTS) $(MAKE1) CROSS=$(TARGET_CROSS) \
  		BUILDDIR=$(@D) $(MTD_MAKE_OPTS) -C $(@D)/tests/fs-tests all
  endef
  define MTD_INSTALL_INTEGCK
  	$(INSTALL) -D -m 755 $(@D)/tests/fs-tests/integrity/integck $(TARGET_DIR)/usr/sbin/integck
  endef
  endif
  
  define MTD_BUILD_CMDS
  	$(TARGET_CONFIGURE_OPTS) $(MAKE1) CROSS=$(TARGET_CROSS) \
  		BUILDDIR=$(@D) $(MTD_MAKE_OPTS) -C $(@D) \
  		$(addprefix $(@D)/,$(MTD_TARGETS_y)) \
  		$(addprefix $(@D)/,$(MTD_STAGING_y))
  	$(MTD_BUILD_INTEGCK)
  endef
  
  define MTD_INSTALL_STAGING_CMDS
  	$(INSTALL) -D -m 0755 $(@D)/lib/libmtd.a $(STAGING_DIR)/usr/lib/libmtd.a
  	$(INSTALL) -D -m 0755 $(@D)/ubi-utils/libubi.a $(STAGING_DIR)/usr/lib/libubi.a
  	$(INSTALL) -D -m 0644 $(@D)/include/libmtd.h $(STAGING_DIR)/usr/include/mtd/libmtd.h
  	$(INSTALL) -D -m 0644 $(@D)/ubi-utils/include/libubi.h $(STAGING_DIR)/usr/include/mtd/libubi.h
  	$(INSTALL) -D -m 0644 $(@D)/include/mtd/ubi-media.h $(STAGING_DIR)/usr/include/mtd/ubi-media.h
  endef
  
  define MTD_INSTALL_TARGET_CMDS
  	for f in $(MTD_TARGETS_y) ; do \
  		$(INSTALL) -D -m 0755 $(@D)/$$f $(TARGET_DIR)/usr/sbin/$${f##*/} ; \
  	done
  	$(MTD_INSTALL_INTEGCK)
  endef
  
  $(eval $(generic-package))
  $(eval $(host-generic-package))