public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-block/thin-provisioning-tools/files/, sys-block/thin-provisioning-tools/
@ 2016-05-09  2:57 Mike Frysinger
  0 siblings, 0 replies; 7+ messages in thread
From: Mike Frysinger @ 2016-05-09  2:57 UTC (permalink / raw
  To: gentoo-commits

commit:     c4285bddae1c772e8919edad4fed026ffbbd30fa
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Mon May  9 02:56:50 2016 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Mon May  9 02:56:50 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c4285bdd

sys-block/thin-provisioning-tools: drop old <0.4.1 versions

 sys-block/thin-provisioning-tools/Manifest         |   3 -
 ...guity-between-boost-uint64_t-and-uint64_t.patch | 214 ---------------------
 .../thin-provisioning-tools-0.2.8-r1.ebuild        |  48 -----
 .../thin-provisioning-tools-0.3.2-r1.ebuild        |  51 -----
 .../thin-provisioning-tools-0.4.0.ebuild           |  52 -----
 5 files changed, 368 deletions(-)

diff --git a/sys-block/thin-provisioning-tools/Manifest b/sys-block/thin-provisioning-tools/Manifest
index 1429ff0..c969384 100644
--- a/sys-block/thin-provisioning-tools/Manifest
+++ b/sys-block/thin-provisioning-tools/Manifest
@@ -1,5 +1,2 @@
-DIST thin-provisioning-tools-0.2.8.tar.gz 158332 SHA256 8a5d87b929095a383594b7141b89e51ae42046d7dd254d544330d789b6744344 SHA512 6534bf42ae936f6f32ce05b89eaeb731938b3761e74366d21282a69d74875d1f9d5084590b19969894c9908726e96f17714f051f050a040dd934533830eddfa9 WHIRLPOOL 16bcc268b450938ccec450323ce6dee97a4851c97438115c250c674b930ef8dfd0c7f6507d6c5204b72250da685d35ff57cf72f297abeec6704fb09520307ef2
-DIST thin-provisioning-tools-0.3.2.tar.gz 175049 SHA256 1b9d8e9269cffe06f3c87214d35436225e12599debefbf1a50194c69cc3404ca SHA512 d6e18c303769b39c5bd48ef30d2819adc57d2d87b3c9b56d5d72468fb35f9b7b2309d35c6c12eabc36d653dd85338b9ad2fca9eed5c738a87b932b71f3a6da4f WHIRLPOOL b1bd87aa1995ba0616001837247c962c492d0029cb8a89b97aa326eb63d8a89113905f5d34490593e0cfcca33ef074e02a50679d22c3b1859d8fe5b97368c608
-DIST thin-provisioning-tools-0.4.0.tar.gz 186925 SHA256 6af8b9d31013e1dc3e59b9bd90803cb25f60b3d2e0a44c3ee2e1fb6cdf63e7d0 SHA512 ebbb616e1a06b6437232058de007ad63c7711c78c8e47559280b27b0072087a8cd6ab5f3013247058add6a9e3e51f37a9b8ea3e86458ac3656a2f01fc6da1809 WHIRLPOOL 53679193f24c1216935f7f45107bf3642b66781b8170dca55a11646c82c46387796f76bd50578a6b2b149addcb497209586e79c1e261e267bf653da7d3496b69
 DIST thin-provisioning-tools-0.4.1.tar.gz 186979 SHA256 59c8a787df8d4828bf9ca1b6310584f2b7723068901e20aa609015ce85df1d46 SHA512 e148296b55f7ff4ab85dc3b4679c7eab0ee8d56e61415397fc2e46f17bcc16a6a582c17343381320f8582bc4f12311af622d43aabe60e7abb25a882446016b7e WHIRLPOOL a7e5da6879dfdc64d5e60e9072d43db21fb8f328d268366a6e4892cad9b2d55e907d564240f9bd67da0d726d80eab9d45e151bbe6d89272887703a8ae8b66c8c
 DIST thin-provisioning-tools-0.5.3.tar.gz 191431 SHA256 6d6856dbca2f0fcf23ece171a8e68a4a7054350a3810958da37615358695597e SHA512 c36f85fc59b98195b7b6fa635b0d18da06b5798d735887dfa3af96bf6fa88bac0d353968ceae00de5960eb5360db70bc166fdd254a88b2246c36f6868c190e6d WHIRLPOOL cc85ff4c0bd0a9f7010bbbdfb9e9dd08d9dd1370ce5ca6ebc60626e05a2bfc52dec187dca546a8e6f4d9eb5dc786ea7063322b1b2bbfaec7cd022022fe428c3f

diff --git a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.3.2-Remove-ambiguity-between-boost-uint64_t-and-uint64_t.patch b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.3.2-Remove-ambiguity-between-boost-uint64_t-and-uint64_t.patch
deleted file mode 100644
index 9dd9780..0000000
--- a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.3.2-Remove-ambiguity-between-boost-uint64_t-and-uint64_t.patch
+++ /dev/null
@@ -1,214 +0,0 @@
-From e77e8715b0a91a60cf2c4b85933b1063385da122 Mon Sep 17 00:00:00 2001
-From: Joe Thornber <ejt@redhat.com>
-Date: Wed, 2 Jul 2014 08:19:20 +0000
-Subject: Remove ambiguity between boost::uint64_t and ::uint64_t.
-
-This has been causing people problems on uclibc builds.
----
- caching/cache_metadata_size.cc            | 15 +++++++--------
- caching/xml_format.cc                     |  7 +++----
- era/superblock.cc                         |  5 ++---
- era/writeset_tree.cc                      |  5 ++---
- persistent-data/data-structures/bitset.cc |  7 +++----
- thin-provisioning/device_tree.h           |  4 +---
- thin-provisioning/metadata_dumper.cc      |  2 +-
- 7 files changed, 19 insertions(+), 26 deletions(-)
-
-diff --git a/caching/cache_metadata_size.cc b/caching/cache_metadata_size.cc
-index 7584da6..5792c49 100644
---- a/caching/cache_metadata_size.cc
-+++ b/caching/cache_metadata_size.cc
-@@ -7,7 +7,6 @@
- #include <stdint.h>
- #include <stdexcept>
- 
--using namespace boost;
- using namespace std;
- 
- //----------------------------------------------------------------
-@@ -18,9 +17,9 @@ namespace {
- 			: max_hint_width(4) {
- 		}
- 
--		optional<uint64_t> device_size;
--		optional<uint32_t> block_size;
--		optional<uint64_t> nr_blocks;
-+		boost::optional<uint64_t> device_size;
-+		boost::optional<uint32_t> block_size;
-+		boost::optional<uint64_t> nr_blocks;
- 		uint32_t max_hint_width;
- 	};
- 
-@@ -58,19 +57,19 @@ namespace {
- 		while ((c = getopt_long(argc, argv, short_opts, long_opts, NULL)) != -1) {
- 			switch (c) {
- 			case 0:
--				fs.block_size = lexical_cast<uint32_t>(optarg);
-+				fs.block_size = boost::lexical_cast<uint32_t>(optarg);
- 				break;
- 
- 			case 1:
--				fs.device_size = lexical_cast<uint64_t>(optarg);
-+				fs.device_size = boost::lexical_cast<uint64_t>(optarg);
- 				break;
- 
- 			case 2:
--				fs.nr_blocks = lexical_cast<uint64_t>(optarg);
-+				fs.nr_blocks = boost::lexical_cast<uint64_t>(optarg);
- 				break;
- 
- 			case 3:
--				fs.max_hint_width = lexical_cast<uint32_t>(optarg);
-+				fs.max_hint_width = boost::lexical_cast<uint32_t>(optarg);
- 				break;
- 
- 			case 'h':
-diff --git a/caching/xml_format.cc b/caching/xml_format.cc
-index cb03018..84d6fc2 100644
---- a/caching/xml_format.cc
-+++ b/caching/xml_format.cc
-@@ -5,7 +5,6 @@
- #include <boost/lexical_cast.hpp>
- #include <expat.h>
- 
--using namespace boost;
- using namespace caching;
- using namespace persistent_data;
- using namespace std;
-@@ -189,14 +188,14 @@ namespace {
- 
- 		block_address cblock = get_attr<uint64_t>(attr, "cache_block");
- 		decoded_or_error doe = base64_decode(get_attr<string>(attr, "data"));
--		if (!get<vector<unsigned char> >(&doe)) {
-+		if (!boost::get<vector<unsigned char> >(&doe)) {
- 			ostringstream msg;
- 			msg << "invalid base64 encoding of hint for cache block "
--			    << cblock << ": " << get<string>(doe);
-+			    << cblock << ": " << boost::get<string>(doe);
- 			throw runtime_error(msg.str());
- 		}
- 
--		e->hint(cblock, get<vector<unsigned char> >(doe));
-+		e->hint(cblock, boost::get<vector<unsigned char> >(doe));
- 	}
- 
- 	// FIXME: why passing e by ptr?
-diff --git a/era/superblock.cc b/era/superblock.cc
-index 1bd1a4f..c319e9b 100644
---- a/era/superblock.cc
-+++ b/era/superblock.cc
-@@ -4,7 +4,6 @@
- #include "persistent-data/errors.h"
- 
- using namespace base;
--using namespace boost;
- using namespace era;
- using namespace superblock_damage;
- using namespace persistent_data;
-@@ -149,8 +148,8 @@ superblock_traits::unpack(disk_type const &disk, value_type &value)
- 
- 	block_address ms = to_cpu<uint64_t>(disk.metadata_snap);
- 	value.metadata_snap = (ms == SUPERBLOCK_LOCATION) ?
--		optional<block_address>() :
--		optional<block_address>(ms);
-+		boost::optional<block_address>() :
-+		boost::optional<block_address>(ms);
- }
- 
- void
-diff --git a/era/writeset_tree.cc b/era/writeset_tree.cc
-index 54aa6a1..4e2c478 100644
---- a/era/writeset_tree.cc
-+++ b/era/writeset_tree.cc
-@@ -2,7 +2,6 @@
- #include "persistent-data/data-structures/btree_damage_visitor.h"
- #include "persistent-data/data-structures/bitset.h"
- 
--using namespace boost;
- using namespace era;
- using namespace writeset_tree_detail;
- using namespace persistent_data;
-@@ -90,8 +89,8 @@ namespace {
- 	private:
- 		template <typename T>
- 		run<uint32_t> to_uint32(run<T> const &r) {
--			return run<uint32_t>(optional<uint32_t>(r.begin_),
--					     optional<uint32_t>(r.end_));
-+			return run<uint32_t>(boost::optional<uint32_t>(r.begin_),
-+					     boost::optional<uint32_t>(r.end_));
- 		}
- 
- 		damage_visitor &v_;
-diff --git a/persistent-data/data-structures/bitset.cc b/persistent-data/data-structures/bitset.cc
-index 5851e28..e49e19f 100644
---- a/persistent-data/data-structures/bitset.cc
-+++ b/persistent-data/data-structures/bitset.cc
-@@ -2,7 +2,6 @@
- #include "persistent-data/data-structures/bitset.h"
- #include "persistent-data/math_utils.h"
- 
--using namespace boost;
- using namespace persistent_data;
- using namespace persistent_data::bitset_detail;
- using namespace std;
-@@ -12,7 +11,7 @@ using namespace std;
- namespace {
- 	struct bitset_traits {
- 		typedef base::le64 disk_type;
--		typedef uint64_t value_type;
-+		typedef ::uint64_t value_type;
- 		typedef no_op_ref_counter<uint64_t> ref_counter;
- 
- 		static void unpack(disk_type const &disk, value_type &value) {
-@@ -118,11 +117,11 @@ namespace persistent_data {
- 				}
- 
- 			private:
--				optional<uint32_t> lifted_mult64(optional<uint32_t> const &m) {
-+				boost::optional<uint32_t> lifted_mult64(boost::optional<uint32_t> const &m) {
- 					if (!m)
- 						return m;
- 
--					return optional<uint32_t>(*m * 64);
-+					return boost::optional<uint32_t>(*m * 64);
- 				}
- 
- 				bitset_visitor &v_;
-diff --git a/thin-provisioning/device_tree.h b/thin-provisioning/device_tree.h
-index 320eb73..23ae924 100644
---- a/thin-provisioning/device_tree.h
-+++ b/thin-provisioning/device_tree.h
-@@ -4,8 +4,6 @@
- #include "persistent-data/data-structures/btree.h"
- #include "persistent-data/run.h"
- 
--using namespace boost;
--
- //----------------------------------------------------------------
- 
- namespace thin_provisioning {
-@@ -50,7 +48,7 @@ namespace thin_provisioning {
- 
- 		class damage_visitor {
- 		public:
--			typedef shared_ptr<damage_visitor> ptr;
-+			typedef boost::shared_ptr<damage_visitor> ptr;
- 
- 			virtual ~damage_visitor() {}
- 
-diff --git a/thin-provisioning/metadata_dumper.cc b/thin-provisioning/metadata_dumper.cc
-index dfe18e0..0bd284e 100644
---- a/thin-provisioning/metadata_dumper.cc
-+++ b/thin-provisioning/metadata_dumper.cc
-@@ -226,7 +226,7 @@ thin_provisioning::metadata_dump(metadata::ptr md, emitter::ptr e, bool repair)
- 			    md->sb_.trans_id_,
- 			    md->sb_.data_block_size_,
- 			    md->data_sm_->get_nr_blocks(),
--			    optional<block_address>());
-+			    boost::optional<block_address>());
- 
- 	{
- 		mapping_tree_detail::damage_visitor::ptr md_policy(mapping_damage_policy(repair));
--- 
-2.0.2
-

diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.2.8-r1.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.2.8-r1.ebuild
deleted file mode 100644
index 90a96de..0000000
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.2.8-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-inherit autotools
-
-DESCRIPTION="A suite of tools for thin provisioning on Linux"
-HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
-EXT=.tar.gz
-SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}${EXT} -> ${P}${EXT}"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux"
-IUSE="test"
-
-RDEPEND="dev-libs/expat"
-# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
-DEPEND="${RDEPEND}
-	test? (
-		|| ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 dev-lang/ruby:2.0 dev-lang/ruby:1.9 dev-lang/ruby:1.8 )
-		dev-cpp/gmock
-		dev-util/cucumber
-		dev-util/aruba
-		)
-	dev-libs/boost"
-
-src_prepare() {
-	eautoreconf
-}
-
-src_configure() {
-	econf \
-		--prefix="${EPREFIX}"/ \
-		--bindir="${EPREFIX}"/sbin \
-		--with-optimisation='' \
-		$(use_enable test testing)
-}
-
-src_install() {
-	emake install DESTDIR="${D}" MANDIR=/usr/share/man
-	dodoc README.md TODO.org
-}
-
-src_test() {
-	emake unit-test
-}

diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.3.2-r1.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.3.2-r1.ebuild
deleted file mode 100644
index e875eba..0000000
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.3.2-r1.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-inherit autotools eutils
-
-DESCRIPTION="A suite of tools for thin provisioning on Linux"
-HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
-EXT=.tar.gz
-BASE_A=${P}${EXT}
-SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}${EXT} -> ${BASE_A}"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux"
-IUSE="test"
-
-RDEPEND="dev-libs/expat"
-# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
-DEPEND="${RDEPEND}
-	test? (
-		|| ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 dev-lang/ruby:2.0 dev-lang/ruby:1.9 dev-lang/ruby:1.8 )
-		dev-cpp/gmock
-		dev-util/cucumber
-		dev-util/aruba
-		)
-	dev-libs/boost"
-
-src_prepare() {
-	epatch "${FILESDIR}"/${P}-Remove-ambiguity-between-boost-uint64_t-and-uint64_t.patch
-	epatch_user
-	eautoreconf
-}
-
-src_configure() {
-	econf \
-		--prefix="${EPREFIX}"/ \
-		--bindir="${EPREFIX}"/sbin \
-		--with-optimisation='' \
-		$(use_enable test testing)
-}
-
-src_install() {
-	emake install DESTDIR="${D}" MANDIR=/usr/share/man
-	dodoc README.md TODO.org
-}
-
-src_test() {
-	emake unit-test
-}

diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.4.0.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.4.0.ebuild
deleted file mode 100644
index 83d07fc..0000000
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.4.0.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-inherit autotools eutils
-
-DESCRIPTION="A suite of tools for thin provisioning on Linux"
-HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
-EXT=.tar.gz
-BASE_A=${P}${EXT}
-SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}${EXT} -> ${BASE_A}"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="test"
-
-RDEPEND="dev-libs/expat
-	dev-libs/libaio"
-# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
-DEPEND="${RDEPEND}
-	test? (
-		|| ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 dev-lang/ruby:2.0 dev-lang/ruby:1.9 dev-lang/ruby:1.8 )
-		dev-cpp/gmock
-		dev-util/cucumber
-		dev-util/aruba
-		)
-	dev-libs/boost"
-
-src_prepare() {
-	sed -i -e '/^INSTALL_PROGRAM/s:-s::' Makefile.in || die
-	epatch_user
-	eautoreconf
-}
-
-src_configure() {
-	econf \
-		--prefix="${EPREFIX}"/ \
-		--bindir="${EPREFIX}"/sbin \
-		--with-optimisation='' \
-		$(use_enable test testing)
-}
-
-src_install() {
-	emake DESTDIR="${D}" MANPATH="${D}"/usr/share/man install
-	dodoc README.md TODO.org
-}
-
-src_test() {
-	emake unit-test
-}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-block/thin-provisioning-tools/files/, sys-block/thin-provisioning-tools/
@ 2016-12-28 10:47 Justin Lecher
  0 siblings, 0 replies; 7+ messages in thread
From: Justin Lecher @ 2016-12-28 10:47 UTC (permalink / raw
  To: gentoo-commits

commit:     a121971a2a828064776d338ed771bdfc5b852052
Author:     Justin Lecher <jlec <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 28 10:45:36 2016 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Wed Dec 28 10:47:02 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a121971a

sys-block/thin-provisioning-tools: Version Bump and Fixes for gcc-6

Thanks Jon for the ebuild and patch

Gentoo-Bug: https://bugs.gentoo.org/show_bug.cgi?id=598424

Package-Manager: Portage-2.3.3, Repoman-2.3.1
Signed-off-by: Justin Lecher <jlec <AT> gentoo.org>

 sys-block/thin-provisioning-tools/Manifest         |  1 +
 ...thin-provisioning-tools-0.6.3-build-fixes.patch | 57 ++++++++++++++++++++
 sys-block/thin-provisioning-tools/metadata.xml     | 22 ++++----
 .../thin-provisioning-tools-0.6.3.ebuild           | 60 ++++++++++++++++++++++
 4 files changed, 129 insertions(+), 11 deletions(-)

diff --git a/sys-block/thin-provisioning-tools/Manifest b/sys-block/thin-provisioning-tools/Manifest
index 5ab8254..037df3a 100644
--- a/sys-block/thin-provisioning-tools/Manifest
+++ b/sys-block/thin-provisioning-tools/Manifest
@@ -1,3 +1,4 @@
 DIST thin-provisioning-tools-0.4.1.tar.gz 186979 SHA256 59c8a787df8d4828bf9ca1b6310584f2b7723068901e20aa609015ce85df1d46 SHA512 e148296b55f7ff4ab85dc3b4679c7eab0ee8d56e61415397fc2e46f17bcc16a6a582c17343381320f8582bc4f12311af622d43aabe60e7abb25a882446016b7e WHIRLPOOL a7e5da6879dfdc64d5e60e9072d43db21fb8f328d268366a6e4892cad9b2d55e907d564240f9bd67da0d726d80eab9d45e151bbe6d89272887703a8ae8b66c8c
 DIST thin-provisioning-tools-0.5.3.tar.gz 191431 SHA256 6d6856dbca2f0fcf23ece171a8e68a4a7054350a3810958da37615358695597e SHA512 c36f85fc59b98195b7b6fa635b0d18da06b5798d735887dfa3af96bf6fa88bac0d353968ceae00de5960eb5360db70bc166fdd254a88b2246c36f6868c190e6d WHIRLPOOL cc85ff4c0bd0a9f7010bbbdfb9e9dd08d9dd1370ce5ca6ebc60626e05a2bfc52dec187dca546a8e6f4d9eb5dc786ea7063322b1b2bbfaec7cd022022fe428c3f
 DIST thin-provisioning-tools-0.6.1.tar.gz 197190 SHA256 4e7bf95e05176660250b63a5b26245d199a8510e1fede7287612c95aa54cc3f0 SHA512 7db37ac325fdecf69157896333fdd1b48b33c1a0bcf6b810b68be1ea2eb4dcd658db7ad668c3920ffb958527a5f75bd742f9fc0bc408a0858a8c5cb96ccde9d5 WHIRLPOOL d5fe4ae278bc9552259b628566505e145eed8ece77809986fff1f01be2d96240649f7f142537ff2217ac11e9470380cfa461f1cc44d5e5120c8584c4299c3b59
+DIST thin-provisioning-tools-0.6.3.tar.gz 198697 SHA256 52d808c29dcaa83c142ceb2b418d01e9423811b082eff63fa0336bb7f0590c45 SHA512 ccebf5bb1ac2da56a3dab5b7ce8d61f6a71f84b5168c2680618d724340bbf8cf97c935c1bce966a296331d9dc048a855d81775d2a39f10b4096ab3ee835286d9 WHIRLPOOL b83c0aa081a27bfd0652d3d2d9786849e998487ce70864b8996b1e5f780b56753e52fa6a3243f62183692d9393643a0a30978069672fd4272e692dea98b93d88

diff --git a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.6.3-build-fixes.patch b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.6.3-build-fixes.patch
new file mode 100644
index 00000000..ae1148a
--- /dev/null
+++ b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.6.3-build-fixes.patch
@@ -0,0 +1,57 @@
+diff -purN a/Makefile.in b/Makefile.in
+--- a/Makefile.in	2016-07-21 15:42:52.000000000 +0100
++++ b/Makefile.in	2016-10-28 22:45:54.292931031 +0100
+@@ -108,7 +108,7 @@ CFLAGS?=@CFLAGS@
+ CFLAGS+=-Wall
+ CFLAGS+=@LFS_FLAGS@
+ CXXFLAGS?=@CXXFLAGS@
+-CXXFLAGS+=-Wall -fno-strict-aliasing -std=gnu++98
++CXXFLAGS+=-Wall -fno-strict-aliasing
+ CXXFLAGS+=@CXXOPTIMISE_FLAG@
+ CXXFLAGS+=@CXXDEBUG_FLAG@
+ CXXFLAGS+=@CXX_STRERROR_FLAG@
+diff -purN a/thin-provisioning/restore_emitter.cc b/thin-provisioning/restore_emitter.cc
+--- a/thin-provisioning/restore_emitter.cc	2016-07-21 15:42:52.000000000 +0100
++++ b/thin-provisioning/restore_emitter.cc	2016-10-28 22:49:32.662189111 +0100
+@@ -142,7 +142,7 @@ namespace {
+ 		bool device_exists(thin_dev_t dev) const {
+ 			uint64_t key[1] = {dev};
+ 			device_tree::maybe_value v = md_->details_->lookup(key);
+-			return v;
++			return v.is_initialized();
+ 		}
+ 
+ 		metadata::ptr md_;
+diff -purN a/thin-provisioning/thin_pool.cc b/thin-provisioning/thin_pool.cc
+--- a/thin-provisioning/thin_pool.cc	2016-07-21 15:42:52.000000000 +0100
++++ b/thin-provisioning/thin_pool.cc	2016-10-28 22:50:26.999256645 +0100
+@@ -232,7 +232,7 @@ bool
+ thin_pool::device_exists(thin_dev_t dev) const
+ {
+ 	uint64_t key[1] = {dev};
+-	return md_->details_->lookup(key);
++	return md_->details_->lookup(key).is_initialized();
+ }
+ 
+ //----------------------------------------------------------------
+diff -purN a/unit-tests/Makefile.in b/unit-tests/Makefile.in
+--- a/unit-tests/Makefile.in	2016-07-21 15:42:52.000000000 +0100
++++ b/unit-tests/Makefile.in	2016-10-28 22:45:20.985893955 +0100
+@@ -25,7 +25,7 @@ GMOCK_FLAGS=\
+ 	-Wno-unused-local-typedefs
+ 
+ GMOCK_LIBS=\
+-	-Llib -lpdata -lgmock -lpthread -laio
++	-Llib -lpdata -lgmock -lpthread -laio -lgtest
+ 
+ GMOCK_DEPS=\
+ 	$(wildcard $(GMOCK_DIR)/include/*.h) \
+@@ -80,7 +80,7 @@ TEST_OBJECTS=$(subst .cc,.gmo,$(TEST_SOU
+ 	sed 's,\([^ :]*\)\.o[ :]*,\1.o \1.gmo $* : Makefile ,g' < $*.$$$$ > $*.d; \
+ 	$(RM) $*.$$$$
+ 
+-unit-tests/unit_tests: $(TEST_OBJECTS) lib/libgmock.a lib/libpdata.a
++unit-tests/unit_tests: $(TEST_OBJECTS)  lib/libpdata.a
+ 	@echo "    [LD]  $<"
+ 	$(V)g++ $(CXXFLAGS) $(LDFLAGS) -o $@ $(TEST_OBJECTS) $(LIBS) $(GMOCK_LIBS) $(LIBEXPAT)
+ 

diff --git a/sys-block/thin-provisioning-tools/metadata.xml b/sys-block/thin-provisioning-tools/metadata.xml
index dafa005..24ce9f1 100644
--- a/sys-block/thin-provisioning-tools/metadata.xml
+++ b/sys-block/thin-provisioning-tools/metadata.xml
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-<maintainer type="person">
-	<email>robbat2@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
-	<email>base-system@gentoo.org</email>
-	<name>Gentoo Base System</name>
-</maintainer>
-<longdescription lang="en">
+	<maintainer type="person">
+		<email>robbat2@gentoo.org</email>
+	</maintainer>
+	<maintainer type="project">
+		<email>base-system@gentoo.org</email>
+		<name>Gentoo Base System</name>
+	</maintainer>
+	<longdescription lang="en">
 A suite of tools for thin provisioning on Linux.
 </longdescription>
-<upstream>
-	<remote-id type="github">jthornber/thin-provisioning-tools</remote-id>
-</upstream>
+	<upstream>
+		<remote-id type="github">jthornber/thin-provisioning-tools</remote-id>
+	</upstream>
 </pkgmetadata>

diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.6.3.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.6.3.ebuild
new file mode 100644
index 00000000..2945158
--- /dev/null
+++ b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.6.3.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="A suite of tools for thin provisioning on Linux"
+HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
+SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static test"
+
+LIB_DEPEND="dev-libs/expat[static-libs(+)]
+	dev-libs/libaio[static-libs(+)]"
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
+# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
+DEPEND="${RDEPEND}
+	static? ( ${LIB_DEPEND} )
+	test? (
+		|| ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 dev-lang/ruby:2.0 )
+		>=dev-cpp/gmock-1.6
+		>=dev-cpp/gtest-1.6
+		dev-util/cucumber
+		dev-util/aruba
+	)
+	dev-libs/boost"
+
+PATCHES=( "${FILESDIR}"/${P}-build-fixes.patch )
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	use static && append-ldflags -static
+	STRIP=true econf \
+		--prefix="${EPREFIX}"/ \
+		--bindir="${EPREFIX}"/sbin \
+		--with-optimisation='' \
+		$(use_enable test testing)
+}
+
+src_compile() {
+	MAKEOPTS+=" V="
+	default
+}
+
+src_test() {
+	emake unit-test
+}
+
+src_install() {
+	emake DESTDIR="${D}" DATADIR="${ED}/usr/share" install
+	dodoc README.md TODO.org
+}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-block/thin-provisioning-tools/files/, sys-block/thin-provisioning-tools/
@ 2017-08-14 13:36 Lars Wendler
  0 siblings, 0 replies; 7+ messages in thread
From: Lars Wendler @ 2017-08-14 13:36 UTC (permalink / raw
  To: gentoo-commits

commit:     6037364d00c2ba884af59a2145fde1db1cf98dd8
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 14 12:28:43 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Aug 14 13:35:51 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6037364d

sys-block/thin-provisioning-tools: Bump to version 0.7.0

Package-Manager: Portage-2.3.7, Repoman-2.3.3

 sys-block/thin-provisioning-tools/Manifest         |  1 +
 ...thin-provisioning-tools-0.7.0-build-fixes.patch | 34 ++++++++++++
 .../thin-provisioning-tools-0.7.0.ebuild           | 60 ++++++++++++++++++++++
 3 files changed, 95 insertions(+)

diff --git a/sys-block/thin-provisioning-tools/Manifest b/sys-block/thin-provisioning-tools/Manifest
index 037df3ab19b..f3ec6b88e16 100644
--- a/sys-block/thin-provisioning-tools/Manifest
+++ b/sys-block/thin-provisioning-tools/Manifest
@@ -2,3 +2,4 @@ DIST thin-provisioning-tools-0.4.1.tar.gz 186979 SHA256 59c8a787df8d4828bf9ca1b6
 DIST thin-provisioning-tools-0.5.3.tar.gz 191431 SHA256 6d6856dbca2f0fcf23ece171a8e68a4a7054350a3810958da37615358695597e SHA512 c36f85fc59b98195b7b6fa635b0d18da06b5798d735887dfa3af96bf6fa88bac0d353968ceae00de5960eb5360db70bc166fdd254a88b2246c36f6868c190e6d WHIRLPOOL cc85ff4c0bd0a9f7010bbbdfb9e9dd08d9dd1370ce5ca6ebc60626e05a2bfc52dec187dca546a8e6f4d9eb5dc786ea7063322b1b2bbfaec7cd022022fe428c3f
 DIST thin-provisioning-tools-0.6.1.tar.gz 197190 SHA256 4e7bf95e05176660250b63a5b26245d199a8510e1fede7287612c95aa54cc3f0 SHA512 7db37ac325fdecf69157896333fdd1b48b33c1a0bcf6b810b68be1ea2eb4dcd658db7ad668c3920ffb958527a5f75bd742f9fc0bc408a0858a8c5cb96ccde9d5 WHIRLPOOL d5fe4ae278bc9552259b628566505e145eed8ece77809986fff1f01be2d96240649f7f142537ff2217ac11e9470380cfa461f1cc44d5e5120c8584c4299c3b59
 DIST thin-provisioning-tools-0.6.3.tar.gz 198697 SHA256 52d808c29dcaa83c142ceb2b418d01e9423811b082eff63fa0336bb7f0590c45 SHA512 ccebf5bb1ac2da56a3dab5b7ce8d61f6a71f84b5168c2680618d724340bbf8cf97c935c1bce966a296331d9dc048a855d81775d2a39f10b4096ab3ee835286d9 WHIRLPOOL b83c0aa081a27bfd0652d3d2d9786849e998487ce70864b8996b1e5f780b56753e52fa6a3243f62183692d9393643a0a30978069672fd4272e692dea98b93d88
+DIST thin-provisioning-tools-0.7.0.tar.gz 230595 SHA256 68a815860fce3f09f64ef241fd4ba45713f4c7be384fe116ec1dbea467684b32 SHA512 cb6c44c7215aadd72292d73e2374d8c0c28566adcb10c7a3de83576dbd28649ebba6e2cc59945a28921e423540969cb21f648c37e375d68f48e56a8be4a4c7b8 WHIRLPOOL 80201034dafd00617951a30369fc617a9c91b4408ec5c5272b4406c8f86caf0ff738938d6ef92d27a9ac96c3110edfa16609f0777c8592e6a100aeb3e02d3837

diff --git a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.7.0-build-fixes.patch b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.7.0-build-fixes.patch
new file mode 100644
index 00000000000..df0831f1a23
--- /dev/null
+++ b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.7.0-build-fixes.patch
@@ -0,0 +1,34 @@
+--- thin-provisioning-tools-0.7.0/Makefile.in
++++ thin-provisioning-tools-0.7.0/Makefile.in
+@@ -142,9 +142,9 @@
+ 
+ TOP_DIR:=@top_srcdir@
+ TOP_BUILDDIR:=@top_builddir@
+-CFLAGS+=-g -Wall -O3 -fPIC
++CFLAGS+=-fPIC
+ CFLAGS+=@LFS_FLAGS@
+-CXXFLAGS+=-g -Wall -fPIC -fno-strict-aliasing -std=c++11
++CXXFLAGS+=-fPIC -fno-strict-aliasing -std=c++11
+ 
+ ifeq ("@DEVTOOLS@", "yes")
+ CXXFLAGS+=-DDEV_TOOLS
+--- thin-provisioning-tools-0.7.0/unit-tests/Makefile.in
++++ thin-provisioning-tools-0.7.0/unit-tests/Makefile.in
+@@ -25,7 +25,7 @@
+ 	-Wno-unused-local-typedefs
+ 
+ GMOCK_LIBS=\
+-	-Llib -lpdata -lgmock -lpthread -laio
++	-Llib -lpdata -lgmock -lpthread -laio -lgtest
+ 
+ GMOCK_DEPS=\
+ 	$(wildcard $(GMOCK_DIR)/googlemock/include/*.h) \
+@@ -83,7 +83,7 @@
+ 	sed 's,\([^ :]*\)\.o[ :]*,\1.o \1.gmo $* : Makefile ,g' < $*.$$$$ > $*.d; \
+ 	$(RM) $*.$$$$
+ 
+-unit-tests/unit_tests: $(TEST_OBJECTS) lib/libgmock.a lib/libpdata.a
++unit-tests/unit_tests: $(TEST_OBJECTS) lib/libpdata.a
+ 	@echo "    [LD]  $<"
+ 	$(V)g++ $(CXXFLAGS) $(LDFLAGS) -o $@ $(TEST_OBJECTS) $(LIBS) $(GMOCK_LIBS) $(LIBEXPAT)
+ 

diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.0.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.0.ebuild
new file mode 100644
index 00000000000..36d3cd79766
--- /dev/null
+++ b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.0.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="A suite of tools for thin provisioning on Linux"
+HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
+SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static test"
+
+LIB_DEPEND="dev-libs/expat[static-libs(+)]
+	dev-libs/libaio[static-libs(+)]"
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
+# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
+DEPEND="${RDEPEND}
+	static? ( ${LIB_DEPEND} )
+	test? (
+		|| ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 )
+		>=dev-cpp/gmock-1.6
+		>=dev-cpp/gtest-1.6
+		dev-util/cucumber
+		dev-util/aruba
+	)
+	dev-libs/boost"
+
+PATCHES=( "${FILESDIR}"/${PN}-0.7.0-build-fixes.patch )
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	use static && append-ldflags -static
+	STRIP=true econf \
+		--prefix="${EPREFIX}"/ \
+		--bindir="${EPREFIX}"/sbin \
+		--with-optimisation='' \
+		$(use_enable test testing)
+}
+
+src_compile() {
+	MAKEOPTS+=" V="
+	default
+}
+
+src_test() {
+	emake unit-test
+}
+
+src_install() {
+	emake DESTDIR="${D}" DATADIR="${ED%/}/usr/share" install
+	dodoc README.md TODO.org
+}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-block/thin-provisioning-tools/files/, sys-block/thin-provisioning-tools/
@ 2018-05-03 12:52 Lars Wendler
  0 siblings, 0 replies; 7+ messages in thread
From: Lars Wendler @ 2018-05-03 12:52 UTC (permalink / raw
  To: gentoo-commits

commit:     189cd57cc50067f918769c9526f740820db841e6
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu May  3 12:50:59 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu May  3 12:51:59 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=189cd57c

sys-block/thin-provisioning-tools: Removed old.

Package-Manager: Portage-2.3.31, Repoman-2.3.9

 sys-block/thin-provisioning-tools/Manifest         |  2 -
 ...ning-tools-0.7.4-disabled-tests_build_fix.patch | 32 -----------
 .../thin-provisioning-tools-0.7.2.ebuild           | 59 --------------------
 .../thin-provisioning-tools-0.7.4.ebuild           | 62 ----------------------
 4 files changed, 155 deletions(-)

diff --git a/sys-block/thin-provisioning-tools/Manifest b/sys-block/thin-provisioning-tools/Manifest
index c90c4bb0d73..94797e60e21 100644
--- a/sys-block/thin-provisioning-tools/Manifest
+++ b/sys-block/thin-provisioning-tools/Manifest
@@ -1,7 +1,5 @@
 DIST thin-provisioning-tools-0.4.1.tar.gz 186979 BLAKE2B d7e60b67f716c1398c4fa7230b3e0b57f62aa47cf6253806e4e3b932b0a71a489cf367ec9eb1e0a620dfab5a7ef0f4c2049a8ee5f5da0d94855fc3618dd03feb SHA512 e148296b55f7ff4ab85dc3b4679c7eab0ee8d56e61415397fc2e46f17bcc16a6a582c17343381320f8582bc4f12311af622d43aabe60e7abb25a882446016b7e
 DIST thin-provisioning-tools-0.6.3.tar.gz 198697 BLAKE2B 0bc9ae1ee650f4f2c553ca72e0569bcf2590174cde2b89084ff4347d78f0dbd08c29bbc9629498f2b8fe2149fb27eeee2e0b5928890224b9ead224fd1a3161d1 SHA512 ccebf5bb1ac2da56a3dab5b7ce8d61f6a71f84b5168c2680618d724340bbf8cf97c935c1bce966a296331d9dc048a855d81775d2a39f10b4096ab3ee835286d9
 DIST thin-provisioning-tools-0.7.0.tar.gz 230595 BLAKE2B 00238a682f80600e3a5bb6d0d2a9662bd0fd3ae5404d5895427f169640b469780f554c22c6a93187058e6399c76ba14a6fa8d73f2bb09aa79927dd458b58ffa9 SHA512 cb6c44c7215aadd72292d73e2374d8c0c28566adcb10c7a3de83576dbd28649ebba6e2cc59945a28921e423540969cb21f648c37e375d68f48e56a8be4a4c7b8
-DIST thin-provisioning-tools-0.7.2.tar.gz 265819 BLAKE2B ccaecd37b1bfc2c7da6682651b51a9bdf7ececee806155b31b5342d3009109a510409a853ae54432fc810c4dd8f4a6207eb3cb84fa56bee273ef04ed0e5b34e6 SHA512 563363842ab0b92f563ac7fcaedb18b8fca70b0894ff30d55cc40487d53b035c32d3ef711adb7102ef1a55b26a75510239da2542b791d850a5cbccf1ddf1acdd
-DIST thin-provisioning-tools-0.7.4.tar.gz 276652 BLAKE2B 5ed00d6c2b34524656e37e9db5f41e09e2a17970edfe89a7539cea8bdc87474c1a7f52841aa5ef07dfa5a1792dec3d01aa1e3c2a6bc56ae0556e89edad3a9fb3 SHA512 cf7f15efc1dca4e4961ae72a1cafa46985639619da90d0ef192d14e0c45ae7996365f3f87846cce6d27259f72caf14cba653254414876687e4d14f500687b3cb
 DIST thin-provisioning-tools-0.7.5.tar.gz 278856 BLAKE2B f554a9001bc9dde3510e3702f184d48cd77ddfc04f16c7e054fea8a3a47fdce7796ca4fcdb8d155e3d22526535ae965e344b3c2735f6275a7702044536dff923 SHA512 65268cc0c68428fa89f039c097794f574ef79b1862de3208715b9180ba73b197f37d879b386b110c52d9f2d3e80fb069a8d48ee2939aa1fd2b88f2513babc763
 DIST thin-provisioning-tools-0.7.6.tar.gz 285428 BLAKE2B af74eff6d435f00e347872786fee8627f02844af122a9f1bf9ffd00234ce5275d3a61d9b4204313a19813cadbc0197bbeb9a1bd92d55992c6d9a03a299579e29 SHA512 395035b6f59fafb1c0f3e68750611e04f10223bc8d57b257e25c28c928647d1d2c6e94014b64ed90eeae1151fc7e5d23cf1aa428716e343338cb3c8fe55ed704

diff --git a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.7.4-disabled-tests_build_fix.patch b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.7.4-disabled-tests_build_fix.patch
deleted file mode 100644
index f9a64b2188d..00000000000
--- a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.7.4-disabled-tests_build_fix.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 8d75be81120b9cf172c95d0153c5f845ed804234 Mon Sep 17 00:00:00 2001
-From: Adam Sampson <ats-github@offog.org>
-Date: Mon, 16 Oct 2017 13:07:36 +0100
-Subject: [PATCH] [functional-tests] fix build with testing disabled (#88)
-
-The rule for lib/libft.so is only enabled with --enable-testing,
-so the default target shouldn't depend unconditionally on it.
-With the default configure options, the build failed with:
-make: *** No rule to make target 'lib/libft.so', needed by 'all'.  Stop.
----
- Makefile.in | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index e745739..02b75dd 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -21,8 +21,13 @@ V=@
- PROGRAMS=\
- 	bin/pdata_tools
- 
-+ifeq ("@TESTING@", "yes")
-+TESTLIBS=\
-+	lib/libft.so
-+endif
-+
- .PHONY: all
--all: $(PROGRAMS) lib/libft.so
-+all: $(PROGRAMS) $(TESTLIBS)
- 
- SOURCE=\
- 	base/output_file_requirements.cc \

diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.2.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.2.ebuild
deleted file mode 100644
index bb0eec198af..00000000000
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.2.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A suite of tools for thin provisioning on Linux"
-HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
-SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="static test"
-
-LIB_DEPEND="dev-libs/expat[static-libs(+)]
-	dev-libs/libaio[static-libs(+)]"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
-DEPEND="${RDEPEND}
-	static? ( ${LIB_DEPEND} )
-	test? (
-		|| ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 )
-		>=dev-cpp/gtest-1.8.0
-		dev-util/cucumber
-		dev-util/aruba
-	)
-	dev-libs/boost"
-
-PATCHES=( "${FILESDIR}"/${PN}-0.7.0-build-fixes.patch )
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	STRIP=true econf \
-		--prefix="${EPREFIX}"/ \
-		--bindir="${EPREFIX}"/sbin \
-		--with-optimisation='' \
-		$(use_enable test testing)
-}
-
-src_compile() {
-	MAKEOPTS+=" V="
-	default
-}
-
-src_test() {
-	emake unit-test
-}
-
-src_install() {
-	emake DESTDIR="${D}" DATADIR="${ED%/}/usr/share" install
-	dodoc README.md TODO.org
-}

diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.4.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.4.ebuild
deleted file mode 100644
index 5df59e2f922..00000000000
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.4.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A suite of tools for thin provisioning on Linux"
-HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
-SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="static test"
-
-LIB_DEPEND="dev-libs/expat[static-libs(+)]
-	dev-libs/libaio[static-libs(+)]"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-# || ( ) is a non-future proof workaround for Portage unefficiency wrt #477050
-DEPEND="${RDEPEND}
-	static? ( ${LIB_DEPEND} )
-	test? (
-		|| ( dev-lang/ruby:2.9 dev-lang/ruby:2.8 dev-lang/ruby:2.7 dev-lang/ruby:2.6 dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 )
-		>=dev-cpp/gtest-1.8.0
-		dev-util/cucumber
-		dev-util/aruba
-	)
-	dev-libs/boost"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-0.7.0-build-fixes.patch
-	"${FILESDIR}/${P}-disabled-tests_build_fix.patch" #634868
-)
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	STRIP=true econf \
-		--prefix="${EPREFIX}"/ \
-		--bindir="${EPREFIX}"/sbin \
-		--with-optimisation='' \
-		$(use_enable test testing)
-}
-
-src_compile() {
-	MAKEOPTS+=" V="
-	default
-}
-
-src_test() {
-	emake unit-test
-}
-
-src_install() {
-	emake DESTDIR="${D}" DATADIR="${ED%/}/usr/share" install
-	dodoc README.md TODO.org
-}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-block/thin-provisioning-tools/files/, sys-block/thin-provisioning-tools/
@ 2021-05-23 11:48 David Seifert
  0 siblings, 0 replies; 7+ messages in thread
From: David Seifert @ 2021-05-23 11:48 UTC (permalink / raw
  To: gentoo-commits

commit:     9cd7b5e94ec54f4df7ed62ab0ed1f1143ef24926
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sun May 23 11:48:02 2021 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sun May 23 11:48:02 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9cd7b5e9

sys-block/thin-provisioning-tools: drop 0.7.6, 0.8.5

Signed-off-by: David Seifert <soap <AT> gentoo.org>

 sys-block/thin-provisioning-tools/Manifest         |  2 -
 ...n-provisioning-tools-0.8.5-libaio-0.3.112.patch | 84 ----------------------
 .../thin-provisioning-tools-0.7.6.ebuild           | 61 ----------------
 .../thin-provisioning-tools-0.8.5.ebuild           | 73 -------------------
 4 files changed, 220 deletions(-)

diff --git a/sys-block/thin-provisioning-tools/Manifest b/sys-block/thin-provisioning-tools/Manifest
index 361327268ea..07f841d0218 100644
--- a/sys-block/thin-provisioning-tools/Manifest
+++ b/sys-block/thin-provisioning-tools/Manifest
@@ -1,4 +1,2 @@
 DIST thin-provisioning-tools-0.7.0.tar.gz 230595 BLAKE2B 00238a682f80600e3a5bb6d0d2a9662bd0fd3ae5404d5895427f169640b469780f554c22c6a93187058e6399c76ba14a6fa8d73f2bb09aa79927dd458b58ffa9 SHA512 cb6c44c7215aadd72292d73e2374d8c0c28566adcb10c7a3de83576dbd28649ebba6e2cc59945a28921e423540969cb21f648c37e375d68f48e56a8be4a4c7b8
-DIST thin-provisioning-tools-0.7.6.tar.gz 285428 BLAKE2B af74eff6d435f00e347872786fee8627f02844af122a9f1bf9ffd00234ce5275d3a61d9b4204313a19813cadbc0197bbeb9a1bd92d55992c6d9a03a299579e29 SHA512 395035b6f59fafb1c0f3e68750611e04f10223bc8d57b257e25c28c928647d1d2c6e94014b64ed90eeae1151fc7e5d23cf1aa428716e343338cb3c8fe55ed704
-DIST thin-provisioning-tools-0.8.5.tar.gz 305585 BLAKE2B 7e4bde537535db79e97ddab3cba775c89854362dac7da491c040badf5e3546d2e6ac4b8da8462edb59f50a2ecd95fe9c5e3349fca5e9acd588efaaf990617ca4 SHA512 1f9a1b6b9059f0b23ec3a00ddef223599292d447894316525f13b9c1e4f29d0371cb901d199cb503be4342555e016e5e6eb2d6e0e10c44b08e6c9478c573e1d4
 DIST thin-provisioning-tools-0.9.0.tar.gz 500998 BLAKE2B ac269fb6dfd1baf1572da27582ac2cd763b07aaac130a9467d05581e7a0ba1309d7dbf4c6095407111667e57af2e8183318d558ed23853f9c84b9c151c0878d9 SHA512 e1796fb3948847d72ca8247cae58017507c0a847a00201b93668eeb8fbfea4107c4c2affa5c211c149798a89b10474e83d2bd61a5545a668299be97aed591e0f

diff --git a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.8.5-libaio-0.3.112.patch b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.8.5-libaio-0.3.112.patch
deleted file mode 100644
index af31b90a40b..00000000000
--- a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.8.5-libaio-0.3.112.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From 6332962ee866f5289de87ab70cd3db863298982c Mon Sep 17 00:00:00 2001
-From: Joe Thornber <ejt@redhat.com>
-Date: Wed, 5 Jun 2019 15:02:05 +0100
-Subject: [PATCH] [ft-lib/bcache] rename raise() -> raise_()
-
-Name clash with signal.h on Debian and Gentoo.
----
- ft-lib/bcache.c | 16 ++++++++--------
- 1 file changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/ft-lib/bcache.c b/ft-lib/bcache.c
-index 0dca5031..ee5b6c59 100644
---- a/ft-lib/bcache.c
-+++ b/ft-lib/bcache.c
-@@ -31,7 +31,7 @@ static void warn(const char *fmt, ...)
- }
- 
- // FIXME: raise a condition somehow?
--static void raise(const char *fmt, ...)
-+static void raise_(const char *fmt, ...)
- {
- 	va_list ap;
- 
-@@ -51,7 +51,7 @@ static inline struct list_head *list_pop(struct list_head *head)
- 	struct list_head *l;
- 
- 	if (head->next == head)
--		raise("list is empty\n");
-+		raise_("list is empty\n");
- 
- 	l = head->next;
- 	list_del(l);
-@@ -98,7 +98,7 @@ static struct cb_set *cb_set_create(unsigned nr)
- static void cb_set_destroy(struct cb_set *cbs)
- {
- 	if (!list_empty(&cbs->allocated))
--		raise("async io still in flight");
-+		raise_("async io still in flight");
- 
- 	free(cbs->vec);
- 	free(cbs);
-@@ -713,13 +713,13 @@ struct bcache *bcache_simple(const char *path, unsigned nr_cache_blocks)
- 	uint64_t s;
- 
- 	if (fd < 0) {
--		raise("couldn't open cache file");
-+		raise_("couldn't open cache file");
- 		return NULL;
- 	}
- 
- 	r = fstat(fd, &info);
- 	if (r < 0) {
--		raise("couldn't stat cache file");
-+		raise_("couldn't stat cache file");
- 		return NULL;
- 	}
- 
-@@ -751,7 +751,7 @@ void bcache_destroy(struct bcache *cache)
- static void check_index(struct bcache *cache, block_address index)
- {
- 	if (index >= cache->nr_data_blocks)
--		raise("block out of bounds (%llu >= %llu)",
-+		raise_("block out of bounds (%llu >= %llu)",
- 		      (unsigned long long) index,
- 		      (unsigned long long) cache->nr_data_blocks);
- }
-@@ -802,7 +802,7 @@ static struct block *lookup_or_read_block(struct bcache *cache,
- 		// FIXME: this is insufficient.  We need to also catch a read
- 		// lock of a write locked block.  Ref count needs to distinguish.
- 		if (b->ref_count && (flags & (GF_DIRTY | GF_ZERO)))
--			raise("concurrent write lock attempt");
-+			raise_("concurrent write lock attempt");
- 
- 		if (test_flags(b, BF_IO_PENDING)) {
- 			miss(cache, flags);
-@@ -858,7 +858,7 @@ struct block *get_block(struct bcache *cache, block_address index, unsigned flag
- 		return b;
- 	}
- 
--	raise("couldn't get block");
-+	raise_("couldn't get block");
- 	return NULL;
- }
- 

diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.6.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.6.ebuild
deleted file mode 100644
index 9488fd97cf6..00000000000
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.7.6.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A suite of tools for thin provisioning on Linux"
-HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
-SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="static test"
-RESTRICT="!test? ( test )"
-
-LIB_DEPEND="dev-libs/expat[static-libs(+)]
-	dev-libs/libaio[static-libs(+)]"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-DEPEND="${RDEPEND}
-	static? ( ${LIB_DEPEND} )
-	test? (
-		dev-lang/ruby:2.5
-		>=dev-cpp/gtest-1.8.0
-		dev-util/cucumber
-		dev-util/aruba
-	)
-	dev-libs/boost"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-0.7.0-build-fixes.patch
-)
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	STRIP=true econf \
-		--prefix="${EPREFIX}"/ \
-		--bindir="${EPREFIX}"/sbin \
-		--with-optimisation='' \
-		$(use_enable test testing)
-}
-
-src_compile() {
-	MAKEOPTS+=" V="
-	default
-}
-
-src_test() {
-	emake unit-test
-}
-
-src_install() {
-	emake DESTDIR="${D}" DATADIR="${ED%/}/usr/share" install
-	dodoc README.md TODO.org
-}

diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.8.5.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.8.5.ebuild
deleted file mode 100644
index 67967d50aa6..00000000000
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.8.5.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools flag-o-matic
-
-DESCRIPTION="A suite of tools for thin provisioning on Linux"
-HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
-
-if [[ ${PV} != *9999 ]]; then
-	SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-else
-	inherit git-r3
-	EGIT_REPO_URI='https://github.com/jthornber/thin-provisioning-tools.git'
-fi
-
-LICENSE="GPL-3"
-SLOT="0"
-IUSE="static test"
-RESTRICT="!test? ( test )"
-
-LIB_DEPEND="dev-libs/expat[static-libs(+)]
-	dev-libs/libaio[static-libs(+)]"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-DEPEND="${RDEPEND}
-	static? ( ${LIB_DEPEND} )
-	test? (
-		|| (
-			dev-lang/ruby:2.6
-			dev-lang/ruby:2.5
-		)
-		>=dev-cpp/gtest-1.8.0
-		dev-util/cucumber
-		dev-util/aruba
-	)
-	dev-libs/boost"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-0.7.0-build-fixes.patch
-	"${FILESDIR}"/${PN}-0.8.5-libaio-0.3.112.patch
-)
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	local myeconfargs=(
-		--prefix="${EPREFIX}"/
-		--bindir="${EPREFIX}"/sbin
-		--with-optimisation=''
-		$(use_enable test testing)
-	)
-	STRIP=true econf "${myeconfargs[@]}"
-}
-
-src_compile() {
-	MAKEOPTS+=" V="
-	default
-}
-
-src_test() {
-	emake unit-test
-}
-
-src_install() {
-	emake DESTDIR="${D}" DATADIR="${D}/usr/share" install
-	dodoc README.md TODO.org
-}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-block/thin-provisioning-tools/files/, sys-block/thin-provisioning-tools/
@ 2023-09-06  8:39 Sam James
  0 siblings, 0 replies; 7+ messages in thread
From: Sam James @ 2023-09-06  8:39 UTC (permalink / raw
  To: gentoo-commits

commit:     da73f74fca7c8f4c3eb015e762bb23c737fda85d
Author:     Peter Levine <plevine457 <AT> gmail <DOT> com>
AuthorDate: Sun Sep  3 08:43:56 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Sep  6 08:36:01 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=da73f74f

sys-block/thin-provisioning-tools: don't use emake to install binary

For USE=debug to work, portage needs to run cargo_src_compile(), but
if `emake` is used in src_install(), it will trigger a rebuild without
debug.  If cargo_src_install() is used instead, manpages and symlinks
won't be installed and the binary would have to be moved since there's
no way to make cargo install to /usr/sbin. So remove $(PDATA_TOOLS)
dependency in Makefile instead.  Might as well patch out $(STRIP) too.

Signed-off-by: Peter Levine <plevine457 <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...-provisioning-tools-1.0.6-build-with-cargo.patch | 21 +++++++++++++++++++++
 .../thin-provisioning-tools-9999.ebuild             |  8 +++++++-
 2 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-1.0.6-build-with-cargo.patch b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-1.0.6-build-with-cargo.patch
new file mode 100644
index 000000000000..5e06583164f8
--- /dev/null
+++ b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-1.0.6-build-with-cargo.patch
@@ -0,0 +1,21 @@
+For USE=debug to work, portage needs to run cargo_src_compile(), but if `emake`
+is used in src_install(), it will trigger a rebuild without debug.  If
+cargo_src_install() is used instead, manpages and symlinks won't be installed
+and the binary would have to be moved since there's no way to make cargo install
+to /usr/sbin. So remove $(PDATA_TOOLS) dependency in Makefile instead.  Might as
+well patch out $(STRIP) too.
+
+--- a/Makefile
++++ b/Makefile
+@@ -56,10 +56,9 @@
+ 
+ MANPAGES:=$(patsubst %,man8/%.8,$(TOOLS))
+ 
+-install: $(PDATA_TOOLS) $(MANPAGES)
++install: $(MANPAGES)
+ 	$(INSTALL_DIR) $(BINDIR)
+ 	$(INSTALL_PROGRAM) $(PDATA_TOOLS) $(BINDIR)
+-	$(STRIP) $(BINDIR)/pdata_tools
+ 	ln -s -f pdata_tools $(BINDIR)/cache_check
+ 	ln -s -f pdata_tools $(BINDIR)/cache_dump
+ 	ln -s -f pdata_tools $(BINDIR)/cache_metadata_size

diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-9999.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-9999.ebuild
index 92ce1cf581dd..74337833b2ca 100644
--- a/sys-block/thin-provisioning-tools/thin-provisioning-tools-9999.ebuild
+++ b/sys-block/thin-provisioning-tools/thin-provisioning-tools-9999.ebuild
@@ -153,6 +153,8 @@ LICENSE="Apache-2.0 BSD GPL-3 MIT Unicode-DFS-2016"
 SLOT="0"
 IUSE="io-uring"
 
+PATCHES=( "${FILESDIR}/${PN}-1.0.6-build-with-cargo.patch" )
+
 # Rust
 QA_FLAGS_IGNORED="usr/sbin/pdata_tools"
 
@@ -171,5 +173,9 @@ src_configure() {
 }
 
 src_install() {
-	emake V= DESTDIR="${D}" DATADIR="${ED}/usr/share" STRIP=true install
+	emake \
+		DESTDIR="${D}" \
+		DATADIR="${ED}/usr/share" \
+		PDATA_TOOLS="target/$(usex debug debug release)/pdata_tools" \
+		install
 }


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-block/thin-provisioning-tools/files/, sys-block/thin-provisioning-tools/
@ 2023-09-06  8:39 Sam James
  0 siblings, 0 replies; 7+ messages in thread
From: Sam James @ 2023-09-06  8:39 UTC (permalink / raw
  To: gentoo-commits

commit:     898bc97f64af4b18e2863216cf4239070388dbb5
Author:     Gwendal Grignou <gwendal <AT> chromium <DOT> org>
AuthorDate: Tue Jul 11 16:08:38 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Sep  6 08:34:01 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=898bc97f

sys-block/thin-provisioning-tools: Allow valid flag combination

Prevent issue with activating thinvolume with valid but dangerous flag
setting.

See https://bugzilla.redhat.com/show_bug.cgi?id=2028905.

The fix includes 2 upstream patches:

commit 1fe8a0dbde9f5 ("[thin_check] Allow using --clear-needs-check and --skip-mappings together")
commit 9f3823c97dc0b ("[metadata_checker] Rename function to reflect command line changes")

In the first patch, the test code (thin_check.rs) is removed since 0.9.0 does
not support rust yet.

Closes: https://bugs.gentoo.org/910223
Signed-off-by: Gwendal Grignou <gwendal <AT> chromium.org>
Closes: https://github.com/gentoo/gentoo/pull/31885
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...ecker-Rename-function-to-reflect-command-.patch |  66 ++++++++
 ...Allow-using-clear-needs-check-and-skip-ma.patch | 187 +++++++++++++++++++++
 .../thin-provisioning-tools-0.9.0-r3.ebuild        |  69 ++++++++
 3 files changed, 322 insertions(+)

diff --git a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.9.0-metadata_checker-Rename-function-to-reflect-command-.patch b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.9.0-metadata_checker-Rename-function-to-reflect-command-.patch
new file mode 100644
index 000000000000..b8f73fd2d6d5
--- /dev/null
+++ b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.9.0-metadata_checker-Rename-function-to-reflect-command-.patch
@@ -0,0 +1,66 @@
+From 9f3823c97dc0b5d4a94a6179d45a3b45c045cff8 Mon Sep 17 00:00:00 2001
+From: Ming-Hung Tsai <mtsai@redhat.com>
+Date: Wed, 12 Aug 2020 23:25:24 +0800
+Subject: [PATCH] [metadata_checker] Rename function to reflect command line
+ changes
+
+---
+ thin-provisioning/metadata_checker.cc | 6 +++---
+ thin-provisioning/metadata_checker.h  | 2 +-
+ thin-provisioning/thin_check.cc       | 2 +-
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/thin-provisioning/metadata_checker.cc b/thin-provisioning/metadata_checker.cc
+index e81e22c..0b26eca 100644
+--- a/thin-provisioning/metadata_checker.cc
++++ b/thin-provisioning/metadata_checker.cc
+@@ -603,8 +603,9 @@ void check_options::set_ignore_non_fatal() {
+ 	ignore_non_fatal_ = true;
+ }
+ 
+-void check_options::set_fix_metadata_leaks() {
++void check_options::set_auto_repair() {
+ 	fix_metadata_leaks_ = true;
++	clear_needs_check_ = true;
+ }
+ 
+ void check_options::set_clear_needs_check() {
+@@ -650,8 +651,7 @@ thin_provisioning::check_metadata(std::string const &path,
+ 	checker.check();
+ 	if (check_opts.fix_metadata_leaks_)
+ 		checker.fix_metadata_leaks(check_opts.open_transaction_);
+-	if (check_opts.fix_metadata_leaks_ ||
+-	    check_opts.clear_needs_check_)
++	if (check_opts.clear_needs_check_)
+ 		checker.clear_needs_check_flag();
+ 
+ 	return checker.get_status();
+diff --git a/thin-provisioning/metadata_checker.h b/thin-provisioning/metadata_checker.h
+index 5569d27..b4afbdc 100644
+--- a/thin-provisioning/metadata_checker.h
++++ b/thin-provisioning/metadata_checker.h
+@@ -45,7 +45,7 @@ namespace thin_provisioning {
+ 		void set_override_mapping_root(bcache::block_address b);
+ 		void set_metadata_snap();
+ 		void set_ignore_non_fatal();
+-		void set_fix_metadata_leaks();
++		void set_auto_repair();
+ 		void set_clear_needs_check();
+ 
+ 		bool use_metadata_snap_;
+diff --git a/thin-provisioning/thin_check.cc b/thin-provisioning/thin_check.cc
+index 60f7838..e3c9db3 100644
+--- a/thin-provisioning/thin_check.cc
++++ b/thin-provisioning/thin_check.cc
+@@ -166,7 +166,7 @@ thin_check_cmd::run(int argc, char **argv)
+ 
+ 		case 6:
+ 			// auto-repair
+-			fs.check_opts.set_fix_metadata_leaks();
++			fs.check_opts.set_auto_repair();
+ 			break;
+ 
+ 		default:
+-- 
+2.41.0.255.g8b1d071c50-goog
+

diff --git a/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.9.0-thin_check-Allow-using-clear-needs-check-and-skip-ma.patch b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.9.0-thin_check-Allow-using-clear-needs-check-and-skip-ma.patch
new file mode 100644
index 000000000000..42f819aa9f74
--- /dev/null
+++ b/sys-block/thin-provisioning-tools/files/thin-provisioning-tools-0.9.0-thin_check-Allow-using-clear-needs-check-and-skip-ma.patch
@@ -0,0 +1,187 @@
+From 1fe8a0dbde9f5e004b11430a9097a61b327967fe Mon Sep 17 00:00:00 2001
+From: Ming-Hung Tsai <mtsai@redhat.com>
+Date: Fri, 21 Aug 2020 18:26:48 +0800
+Subject: [PATCH] [thin_check] Allow using --clear-needs-check and
+ --skip-mappings together
+
+Although it is not recommended to clear the flag without a full
+examination, however, the usage has been documented as an approach
+to reduce lvchange run time [1]. For the purpose of backward
+compatibility and avoiding boot failure after upgrading thin_check [2],
+the limitation is now removed.
+
+[1] https://wiki.archlinux.org/index.php/LVM#Thinly-provisioned_root_volume_device_times_out
+[2] Community feedback on previous commit:
+    https://github.com/jthornber/thin-provisioning-tools/commit/b278f4f
+---
+ tests/thin_check.rs                   | 18 +++++--
+ thin-provisioning/metadata_checker.cc | 71 ++++++++++++++-------------
+ thin-provisioning/metadata_checker.h  |  3 ++
+ 3 files changed, 53 insertions(+), 39 deletions(-)
+
+diff --git a/thin-provisioning/metadata_checker.cc b/thin-provisioning/metadata_checker.cc
+index 0b26eca..a398ce8 100644
+--- a/thin-provisioning/metadata_checker.cc
++++ b/thin-provisioning/metadata_checker.cc
+@@ -371,7 +371,8 @@ namespace {
+ 			  out_(cerr, 2),
+ 			  info_out_(cout, 0),
+ 			  expected_rc_(true), // set stop on the first error
+-			  err_(NO_ERROR) {
++			  err_(NO_ERROR),
++			  metadata_checked_(false) {
+ 
+ 			if (output_opts == OUTPUT_QUIET) {
+ 				out_.disable();
+@@ -381,6 +382,22 @@ namespace {
+ 			sb_location_ = get_superblock_location();
+ 		}
+ 
++		void check_and_repair() {
++			check();
++			if (options_.fix_metadata_leaks_)
++				fix_metadata_leaks(options_.open_transaction_);
++			if (options_.clear_needs_check_)
++				clear_needs_check_flag();
++		}
++
++		bool get_status() const {
++			if (options_.ignore_non_fatal_)
++				return (err_ == FATAL) ? false : true;
++
++			return (err_ == NO_ERROR) ? true : false;
++		}
++
++	private:
+ 		void check() {
+ 			block_manager::ptr bm = open_bm(path_, block_manager::READ_ONLY,
+ 							!options_.use_metadata_snap_);
+@@ -419,10 +436,12 @@ namespace {
+ 			} else
+ 				err_ << examine_data_mappings(tm, sb, options_.data_mapping_opts_, out_,
+ 							      optional<space_map::ptr>());
++
++			metadata_checked_ = true;
+ 		}
+ 
+ 		bool fix_metadata_leaks(bool open_transaction) {
+-			if (!verify_preconditions_before_fixing()) {
++			if (!metadata_checked_) {
+ 				out_ << "metadata has not been fully examined" << end_message();
+ 				return false;
+ 			}
+@@ -458,7 +477,7 @@ namespace {
+ 		}
+ 
+ 		bool clear_needs_check_flag() {
+-			if (!verify_preconditions_before_fixing()) {
++			if (!metadata_checked_) {
+ 				out_ << "metadata has not been fully examined" << end_message();
+ 				return false;
+ 			}
+@@ -480,14 +499,6 @@ namespace {
+ 			return true;
+ 		}
+ 
+-		bool get_status() const {
+-			if (options_.ignore_non_fatal_)
+-				return (err_ == FATAL) ? false : true;
+-
+-			return (err_ == NO_ERROR) ? true : false;
+-		}
+-
+-	private:
+ 		block_address
+ 		get_superblock_location() {
+ 			block_address sb_location = superblock_detail::SUPERBLOCK_LOCATION;
+@@ -545,19 +556,6 @@ namespace {
+ 			return err;
+ 		}
+ 
+-		bool verify_preconditions_before_fixing() const {
+-			if (options_.use_metadata_snap_ ||
+-			    !!options_.override_mapping_root_ ||
+-			    options_.sm_opts_ != check_options::SPACE_MAP_FULL ||
+-			    options_.data_mapping_opts_ != check_options::DATA_MAPPING_LEVEL2)
+-				return false;
+-
+-			if (!expected_rc_.get_counts().size())
+-				return false;
+-
+-			return true;
+-		}
+-
+ 		std::string const &path_;
+ 		check_options options_;
+ 		nested_output out_;
+@@ -565,6 +563,7 @@ namespace {
+ 		block_address sb_location_;
+ 		block_counter expected_rc_;
+ 		base::error_state err_; // metadata state
++		bool metadata_checked_;
+ 	};
+ }
+ 
+@@ -628,12 +627,22 @@ bool check_options::check_conformance() {
+ 			cerr << "cannot perform fix with an overridden mapping root" << endl;
+ 			return false;
+ 		}
++	}
++
++	if (fix_metadata_leaks_ &&
++	    (data_mapping_opts_ != DATA_MAPPING_LEVEL2 || sm_opts_ != SPACE_MAP_FULL)) {
++		cerr << "cannot perform fix without a full examination" << endl;
++		return false;
++	}
+ 
+-		if (data_mapping_opts_ != DATA_MAPPING_LEVEL2 ||
+-		    sm_opts_ != SPACE_MAP_FULL) {
+-			cerr << "cannot perform fix without a full examination" << endl;
++	if (clear_needs_check_) {
++		if (data_mapping_opts_ == DATA_MAPPING_NONE) {
++			cerr << "cannot perform fix without partially examination" << endl;
+ 			return false;
+ 		}
++
++		if (data_mapping_opts_ != DATA_MAPPING_LEVEL2 || sm_opts_ != SPACE_MAP_FULL)
++			cerr << "clearing needs_check without a full examination is not suggested" << endl;
+ 	}
+ 
+ 	return true;
+@@ -647,13 +656,7 @@ thin_provisioning::check_metadata(std::string const &path,
+ 				  output_options output_opts)
+ {
+ 	metadata_checker checker(path, check_opts, output_opts);
+-
+-	checker.check();
+-	if (check_opts.fix_metadata_leaks_)
+-		checker.fix_metadata_leaks(check_opts.open_transaction_);
+-	if (check_opts.clear_needs_check_)
+-		checker.clear_needs_check_flag();
+-
++	checker.check_and_repair();
+ 	return checker.get_status();
+ }
+ 
+diff --git a/thin-provisioning/metadata_checker.h b/thin-provisioning/metadata_checker.h
+index b4afbdc..ea66dc3 100644
+--- a/thin-provisioning/metadata_checker.h
++++ b/thin-provisioning/metadata_checker.h
+@@ -48,11 +48,14 @@ namespace thin_provisioning {
+ 		void set_auto_repair();
+ 		void set_clear_needs_check();
+ 
++		// flags for checking
+ 		bool use_metadata_snap_;
+ 		data_mapping_options data_mapping_opts_;
+ 		space_map_options sm_opts_;
+ 		boost::optional<bcache::block_address> override_mapping_root_;
+ 		bool ignore_non_fatal_;
++
++		// flags for repairing
+ 		bool fix_metadata_leaks_;
+ 		bool clear_needs_check_;
+ 		bool open_transaction_;
+-- 
+2.41.0.255.g8b1d071c50-goog
+

diff --git a/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.9.0-r3.ebuild b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.9.0-r3.ebuild
new file mode 100644
index 000000000000..d7a56afeef32
--- /dev/null
+++ b/sys-block/thin-provisioning-tools/thin-provisioning-tools-0.9.0-r3.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="A suite of tools for thin provisioning on Linux"
+HOMEPAGE="https://github.com/jthornber/thin-provisioning-tools"
+
+if [[ ${PV} != *9999 ]]; then
+	SRC_URI="https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+else
+	inherit git-r3
+	EGIT_REPO_URI='https://github.com/jthornber/thin-provisioning-tools.git'
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="static test"
+RESTRICT="!test? ( test )"
+
+LIB_DEPEND="dev-libs/expat[static-libs(+)]
+	dev-libs/libaio[static-libs(+)]"
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
+DEPEND="${RDEPEND}
+	static? ( ${LIB_DEPEND} )
+	test? (
+		>=dev-cpp/gtest-1.8.0
+	)
+	dev-libs/boost"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-0.7.0-build-fixes.patch
+	"${FILESDIR}"/${PN}-0.9.0-build-fixes.patch
+	"${FILESDIR}"/0.9.0-remove-boost_iostreams.patch
+	"${FILESDIR}"/${PN}-0.9.0-metadata_checker-Rename-function-to-reflect-command-.patch
+	"${FILESDIR}"/${PN}-0.9.0-thin_check-Allow-using-clear-needs-check-and-skip-ma.patch
+)
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	use static && append-ldflags -static
+	local myeconfargs=(
+		--prefix="${EPREFIX}"/
+		--bindir="${EPREFIX}"/sbin
+		--with-optimisation=''
+		$(use_enable test testing)
+	)
+	STRIP=true econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+	emake V=
+}
+
+src_test() {
+	emake V= unit-test
+}
+
+src_install() {
+	emake V= DESTDIR="${D}" DATADIR="${ED}/usr/share" install
+	dodoc README.md TODO.org
+}


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-09-06  8:39 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-06  8:39 [gentoo-commits] repo/gentoo:master commit in: sys-block/thin-provisioning-tools/files/, sys-block/thin-provisioning-tools/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2023-09-06  8:39 Sam James
2021-05-23 11:48 David Seifert
2018-05-03 12:52 Lars Wendler
2017-08-14 13:36 Lars Wendler
2016-12-28 10:47 Justin Lecher
2016-05-09  2:57 Mike Frysinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox