# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit autotools shell-completion DESCRIPTION="Partition cloning tool" HOMEPAGE="https://partclone.org" SRC_URI="https://github.com/Thomas-Tsai/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="apfs btrfs +e2fs exfat f2fs fat fuse hfs minix ncurses nilfs2 ntfs static test xfs" RESTRICT="!test? ( test )" REQUIRED_USE="static? ( !fuse )" RDEPEND=" app-arch/zstd:= dev-libs/isa-l dev-libs/openssl:0= sys-apps/util-linux virtual/zlib:= e2fs? ( sys-fs/e2fsprogs ) btrfs? ( sys-apps/util-linux ) fuse? ( sys-fs/fuse:3= ) ncurses? ( sys-libs/ncurses:0= ) nilfs2? ( sys-fs/nilfs-utils ) ntfs? ( sys-fs/ntfs3g:= ) xfs? ( dev-libs/userspace-rcu:= ) static? ( app-arch/zstd:=[static-libs] dev-libs/openssl:0[static-libs] virtual/zlib:=[static-libs] e2fs? ( sys-fs/e2fsprogs[static-libs] ) btrfs? ( sys-apps/util-linux[static-libs] ) ncurses? ( sys-libs/ncurses:0[static-libs] ) nilfs2? ( sys-fs/nilfs-utils[static-libs] ) ntfs? ( sys-fs/ntfs3g:=[static-libs] ) xfs? ( dev-libs/userspace-rcu:=[static-libs] ) ) !static? ( dev-libs/xxhash ) " DEPEND=" ${RDEPEND} " BDEPEND=" test? ( e2fs? ( sys-fs/e2fsprogs ) btrfs? ( sys-fs/btrfs-progs ) exfat? ( sys-fs/exfatprogs ) f2fs? ( sys-fs/f2fs-tools ) fat? ( sys-fs/dosfstools ) xfs? ( sys-fs/xfsprogs ) sys-apps/mlocate ) virtual/pkgconfig " PATCHES=( "${FILESDIR}"/${PN}-fix-ncurses-linking.patch "${FILESDIR}"/${PN}-completions.patch ) DOCS=( AUTHORS ChangeLog HACKING NEWS README.md ) CMDS=( apfs btrfs chkimg dd exfat ext2 ext3 ext4 ext4dev extfs f2fs fat fat12 fat16 fat32 hfs+ hfsp hfsplus imager minix nilfs2 ntfs reiser4 restore vfat xfs ) src_prepare() { default eautoreconf } src_configure() { local myconf=( $(use_enable e2fs extfs) $(use_enable apfs) $(use_enable btrfs) $(use_enable exfat) $(use_enable f2fs) $(use_enable fat) $(use_enable fuse) $(use_enable minix) $(use_enable ncurses ncursesw) $(use_enable nilfs2) $(use_enable ntfs) $(use_enable test fs-test) $(use_enable static static-linking) $(use_enable xfs) --disable-jfs --disable-reiser4 # libdal is no provided by the gentoo ebuild # so we must disable reiserfs. # libufs & vmfs are not available. --disable-reiserfs --disable-ufs --disable-vmfs $(usev static --disable-xxhash) ) econf "${myconf[@]}" } src_install() { default newbashcomp "src/${PN}-completion" "${PN}" local cmd for cmd in "${CMDS[@]}"; do bashcomp_alias "${PN}" "${PN}.${cmd}" || die done } src_test() { local -x TERM=dummy # Skip apfs tests due to sys-fs/apfsprogs not # supporting ~x86. if use apfs; then rm tests/apfs.test || die \ "Failed to delete apfs test" fi # mkfs.hfsplus is required by the test. # mkfs.hfsplus is not available so it should # be skipped as well. if use hfs; then rm tests/hfsplus.test || die \ "Failed to delete hfsplus test" fi default }