forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Marek Szuba <[email protected]>
- Loading branch information
Marek Szuba
committed
Sep 7, 2023
1 parent
034e637
commit 8125410
Showing
2 changed files
with
132 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
DIST libblockdev-2.28.tar.gz 925698 BLAKE2B 63ac7ab5bd02c1ef1848d0b252e09fe721cfe86258f063b7bab616766cbc56311707dcb2dd3a1fadf0e0840187f121aa178fd5959500cd590b846238a9d3e36e SHA512 9e01c41db4f728c8e81e710c6bb4725bbe34b3a7de25ff7f57b7b88ca6b7b5debbe858947585d314770036b2c3c533f9f8ff3d038b7ca50eee3d18f9fbe0d392 | ||
DIST libblockdev-3.0.2.tar.gz 1067300 BLAKE2B 97170434d98a66b90ff3da3d094ce6cbf29b338967e9b2dbc9edee9bdd730a63678efbd15c94c4c6604b1499956d744c102d26c116794c4e44fcfb871afd252d SHA512 5285aaa4a8e66aacc70461b2c0b0ffe57121ee6136bfa7c46c3ebbd1da517278f8760207f983d69707096c8293e6f7a1d59caf03e742c3d8009ceed25b8c3e89 | ||
DIST libblockdev-3.0.3.tar.gz 1048628 BLAKE2B c26a806797effc7231a0eb92f1b8cd74e548da5b1800cddd75a21e7df327be8371edabc2e9a39a727291f365b6a4f6242f78b66396adc4526b41749219f0429f SHA512 f2cc6fbe1df6fd9886016177a4a94984d704f3b402c7090344c581afb89f7cb050c9516c52974157a99ea6c6239f6a1f6079cde0b43a2336af0daca7311ca788 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,131 @@ | ||
# Copyright 1999-2023 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=8 | ||
|
||
PYTHON_COMPAT=( python3_{10..11} ) | ||
inherit autotools python-single-r1 toolchain-funcs xdg-utils | ||
|
||
DESCRIPTION="A library for manipulating block devices" | ||
HOMEPAGE="https://github.com/storaged-project/libblockdev" | ||
if [[ "${PV}" == *9999 ]] ; then | ||
inherit git-r3 | ||
EGIT_REPO_URI="https://github.com/storaged-project/libblockdev.git" | ||
BDEPEND=" | ||
sys-devel/autoconf-archive | ||
" | ||
else | ||
MY_PV="${PV}-1" | ||
SRC_URI="https://github.com/storaged-project/${PN}/releases/download/${MY_PV}/${P}.tar.gz" | ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~x86" | ||
fi | ||
LICENSE="LGPL-2+" | ||
SLOT="0/3" # subslot is SOVERSION | ||
IUSE="+cryptsetup device-mapper escrow gtk-doc introspection lvm +nvme test +tools" | ||
# Tests require root. In a future release, we may be able to run a smaller | ||
# subset with new run_tests.py arguments. | ||
RESTRICT="!test? ( test ) test" | ||
|
||
RDEPEND=" | ||
>=dev-libs/glib-2.42.2 | ||
dev-libs/libbytesize | ||
sys-apps/gptfdisk | ||
>=sys-apps/kmod-19 | ||
>=sys-apps/util-linux-2.27 | ||
>=sys-block/parted-3.1 | ||
cryptsetup? ( | ||
escrow? ( | ||
>=dev-libs/nss-3.18.0 | ||
dev-libs/volume_key | ||
) | ||
>=sys-apps/keyutils-1.5.0:= | ||
>=sys-fs/cryptsetup-2.3.0:= | ||
) | ||
device-mapper? ( sys-fs/lvm2 ) | ||
lvm? ( | ||
sys-fs/lvm2 | ||
virtual/udev | ||
) | ||
nvme? ( sys-libs/libnvme ) | ||
${PYTHON_DEPS} | ||
$(python_gen_cond_dep ' | ||
dev-python/pygobject:3[${PYTHON_USEDEP}] | ||
') | ||
" | ||
|
||
DEPEND="${RDEPEND}" | ||
|
||
BDEPEND+=" | ||
dev-util/gtk-doc-am | ||
gtk-doc? ( dev-util/gtk-doc ) | ||
introspection? ( >=dev-libs/gobject-introspection-1.3.0 ) | ||
test? ( | ||
$(python_gen_cond_dep ' | ||
dev-libs/libbytesize[python,${PYTHON_USEDEP}] | ||
') | ||
sys-block/targetcli-fb | ||
) | ||
" | ||
|
||
REQUIRED_USE="${PYTHON_REQUIRED_USE} | ||
escrow? ( cryptsetup )" | ||
|
||
pkg_setup() { | ||
python-single-r1_pkg_setup | ||
} | ||
|
||
src_prepare() { | ||
xdg_environment_reset #623992 | ||
default | ||
|
||
# https://bugs.gentoo.org/744289 | ||
find -type f \( -name "Makefile.am" -o -name "configure.ac" \) -print0 \ | ||
| xargs --null sed "s@ -Werror@@" -i || die | ||
|
||
eautoreconf | ||
} | ||
|
||
src_configure() { | ||
# Bug #910487 | ||
if tc-ld-is-lld; then | ||
tc-ld-force-bfd | ||
fi | ||
|
||
local myeconfargs=( | ||
--with-btrfs | ||
--with-fs | ||
--with-part | ||
--with-python3 | ||
--without-mpath | ||
--without-nvdimm | ||
$(use_enable introspection) | ||
$(use_enable test tests) | ||
$(use_with cryptsetup crypto) | ||
$(use_with device-mapper dm) | ||
$(use_with escrow) | ||
$(use_with gtk-doc) | ||
$(use_with lvm lvm) | ||
$(use_with lvm lvm-dbus) | ||
$(use_with nvme) | ||
$(use_with tools) | ||
) | ||
econf "${myeconfargs[@]}" | ||
} | ||
|
||
src_test() { | ||
# See http://storaged.org/libblockdev/ch03.html | ||
# The 'check' target just does Pylint. | ||
# ... but it needs root. | ||
emake test | ||
} | ||
|
||
src_install() { | ||
default | ||
find "${ED}" -type f -name "*.la" -delete || die | ||
# This is installed even with USE=-lvm, but libbd_lvm are omitted so it | ||
# doesn't work at all. | ||
if ! use lvm ; then | ||
rm -f "${ED}"/usr/bin/lvm-cache-stats || die | ||
fi | ||
python_optimize #718576 | ||
} |