2 # This is free software, licensed under the GNU General Public License v2.
3 # See /LICENSE for more information.
6 include $(TOPDIR
)/rules.mk
12 PKG_SOURCE
:=$(PKG_NAME
)-v
$(PKG_VERSION
).
tar.xz
13 PKG_SOURCE_URL
:=@KERNEL
/linux
/kernel
/people
/kdave
/btrfs-progs
14 PKG_HASH
:=ff9ae91521303a90d87e1c4be230f0121f39c44ddbe52c2aeae263c6fecfa099
15 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)-v
$(PKG_VERSION
)
17 PKG_MAINTAINER
:=Karel Kočí
<karel.koci@nic.cz
>
18 PKG_LICENSE
:=GPL-2.0
-only
19 PKG_LICENSE_FILES
:=COPYING
23 PKG_BUILD_DEPENDS
:=acl
24 PKG_BUILD_FLAGS
:=gc-sections
26 include $(INCLUDE_DIR
)/package.mk
28 define Package
/btrfs-progs
32 TITLE
:=Btrfs filesystems utilities
33 URL
:=https
://btrfs.readthedocs.io
43 +BTRFS_PROGS_ZSTD
:libzstd
46 define Package
/btrfs-progs
/description
47 Btrfs is a new copy on write filesystem for Linux aimed at implementing
48 advanced features while focusing on fault tolerance
, repair and easy
49 administration. Initially developed by Oracle
, Btrfs is licensed under the
50 GPL and open for contribution from anyone.
53 define Package
/btrfs-progs
/config
54 source
"$(SOURCE)/Config.in"
57 boxprogs
= btrfsck mkfs.btrfs btrfs-image btrfstune btrfs-find-root
58 progs
= btrfs-map-logical btrfs-select-super
60 TARGET_LDFLAGS
+= -Wl
,--as-needed
62 EXTRA_CFLAGS
=$(TARGET_CPPFLAGS
)
67 --disable-documentation \
70 ifneq ($(CONFIG_BTRFS_PROGS_ZSTD
),y
)
71 CONFIGURE_ARGS
+= --disable-zstd
74 MAKE_INSTALL_FLAGS
+= BUILD_PROGRAMS
=0
76 Build
/Compile
=$(call Build
/Compile
/Default
,btrfs.box
$(progs
))
78 define Build
/InstallDev
79 $(INSTALL_DIR
) $(1)/usr
/include $(1)/usr
/lib
80 $(CP
) $(PKG_INSTALL_DIR
)/usr
/include/* $(1)/usr
/include/
81 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libbtrfs
* $(1)/usr
/lib
/
84 define Package
/btrfs-progs
/install
85 $(INSTALL_DIR
) $(1)/usr
/lib
86 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libbtrfs.so
* $(1)/usr
/lib
87 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libbtrfsutil.so
* $(1)/usr
/lib
88 $(INSTALL_DIR
) $(1)/usr
/bin
89 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/btrfs.box
$(1)/usr
/bin
/btrfs
90 $(foreach prog
,$(boxprogs
),$(LN
) btrfs
$(1)/usr
/bin
/$(prog
);)
91 $(foreach prog
,$(progs
),$(INSTALL_BIN
) $(PKG_BUILD_DIR
)/$(prog
) $(1)/usr
/bin
/;)
92 $(INSTALL_DIR
) $(1)/lib
/preinit
93 $(INSTALL_BIN
) .
/files
/btrfs-scan.init
$(1)/lib
/preinit
/85_btrfs_scan
96 $(eval
$(call BuildPackage
,btrfs-progs
))