blob: b521daaefc92b2c4b1a1c4bf243ed677e9bcdb16 [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001#
2# Copyright (C) 2008-2012 OpenWrt.org
3#
4# This is free software, licensed under the GNU General Public License v2.
5# See /LICENSE for more information.
6#
7
8include $(TOPDIR)/rules.mk
9
10PKG_NAME:=mdadm
11PKG_VERSION:=4.3
12PKG_RELEASE:=2
13
14PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
15PKG_SOURCE_URL:=@KERNEL/linux/utils/raid/mdadm
16PKG_HASH:=416727ae1f1080ea6e3090cea36dd076826fc369151e36ab736557ba92196f9f
17
18PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
19PKG_CPE_ID:=cpe:/a:mdadm_project:mdadm
20
21PKG_BUILD_PARALLEL:=1
22PKG_BUILD_FLAGS:=gc-sections
23
24include $(INCLUDE_DIR)/package.mk
25
26define Package/mdadm
27 SECTION:=utils
28 CATEGORY:=Utilities
29 SUBMENU:=Disc
30 TITLE:=A tool for managing Soft RAID under Linux
31 URL:=https://www.kernel.org/pub/linux/utils/raid/mdadm/
32 DEPENDS:=+libpthread +kmod-md-mod +kmod-md-raid0 +kmod-md-raid10 +kmod-md-raid1
33endef
34
35define Package/mdadm/description
36 A tool for managing Linux Software RAID arrays.
37 RAID 0, 1 and 10 support included.
38 If you need RAID 4,5 or 6 functionality please
39 install kmod-md-raid456 .
40endef
41
42define Package/mdadm/conffiles
43/etc/config/mdadm
44endef
45
46TARGET_CFLAGS += \
47 -DHAVE_STDINT_H -DNO_COROSYNC -DNO_DLM -DUSE_PTHREADS \
48 -DCONFFILE='\"/var/etc/mdadm.conf\"' \
49 -DMAP_DIR='\"/var/run/mdadm\"' \
50 -DMDMON_DIR='\"/var/run/mdadm\"' \
51 -DFAILED_SLOTS_DIR='\"/var/run/mdadm/failed-slots\"' \
52 -DNO_LIBUDEV \
53 -D_LARGEFILE64_SOURCE
54
55TARGET_CXFLAGS = -DNO_LIBUDEV
56
57MAKE_FLAGS += \
58 CHECK_RUN_DIR=0 \
59 CXFLAGS="$(TARGET_CXFLAGS)"
60
61define Build/Compile
62 $(call Build/Compile/Default,mdadm)
63endef
64
65define Package/mdadm/install
66 $(INSTALL_DIR) $(1)/sbin
67 $(INSTALL_BIN) $(PKG_BUILD_DIR)/mdadm $(1)/sbin
68 $(INSTALL_DIR) $(1)/etc/init.d
69 $(INSTALL_BIN) ./files/mdadm.init $(1)/etc/init.d/mdadm
70 $(INSTALL_DIR) $(1)/etc/config
71 $(INSTALL_CONF) ./files/mdadm.config $(1)/etc/config/mdadm
72endef
73
74$(eval $(call BuildPackage,mdadm))