Control: tags -1 patch

Hello Andreas,

I have taken on the ball FTBFS again, and have backported more fixes
from the github upstream.  It can now compile on a fresh sid.

The patches 0001-missingSigned.patch and gcc5.diff are not necessary any
more, so I removed them, but I left nopsboxit.patch,
link_against_x11.patch and findsip.patch untouched.


I had to disable the building of the binary
source/APPLICATIONS/UTILITIES/assign_positions_from_template, but since
this binary was not previously installed into any package, I don't think
this is a problem.


All patches are taken from github upstream unless explicitly noted, and
I expect they will be included in the next release, but this may help
the Debian package back onto its feet right now.

The attached patch is based directly on master in collab-maint.

Cheers,

- Danny
From 93eb17ca031d7a5d225d8c33feacafe49b2675fb Mon Sep 17 00:00:00 2001
From: Danny Edel <m...@danny-edel.de>
Date: Sun, 10 Apr 2016 11:57:18 +0200
Subject: [PATCH] Rework patches for sid

This fixes FTBFS.  Also, enable tests in d/rules.
---
 debian/patches/0001-missingSigned.patch            |  32 ------
 .../adjust-PoseClustering_Test-boost-1.58.patch    |  13 +++
 .../disable-assign-positions-from-template.patch   |  10 ++
 .../fix-FingerprintSimilarityClustering.patch      |  54 +++++++++++
 debian/patches/fix-PoseClustering_Test.patch       |  17 ++++
 ...pilation-of-BinaryFingerprintMethods_test.patch |  81 ++++++++++++++++
 .../fix-poseClustering-with-boost-1.60.patch       | 108 +++++++++++++++++++++
 debian/patches/fix-string-gcc5.patch               |  73 ++++++++++++++
 debian/patches/gcc5.diff                           |  18 ----
 debian/patches/series                              |   9 +-
 debian/rules                                       |  12 ++-
 11 files changed, 373 insertions(+), 54 deletions(-)
 delete mode 100644 debian/patches/0001-missingSigned.patch
 create mode 100644 debian/patches/adjust-PoseClustering_Test-boost-1.58.patch
 create mode 100644 debian/patches/disable-assign-positions-from-template.patch
 create mode 100644 debian/patches/fix-FingerprintSimilarityClustering.patch
 create mode 100644 debian/patches/fix-PoseClustering_Test.patch
 create mode 100644 debian/patches/fix-compilation-of-BinaryFingerprintMethods_test.patch
 create mode 100644 debian/patches/fix-poseClustering-with-boost-1.60.patch
 create mode 100644 debian/patches/fix-string-gcc5.patch
 delete mode 100644 debian/patches/gcc5.diff

diff --git a/debian/patches/0001-missingSigned.patch b/debian/patches/0001-missingSigned.patch
deleted file mode 100644
index 6801495..0000000
--- a/debian/patches/0001-missingSigned.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From: Andreas Hildebrandt <ahild...@uni-mainz.de>
-Date: Tue, 14 Aug 2012 17:14:31 +0200
-Subject: missingSigned
-
-===================================================================
----
- include/BALL/DATATYPE/hashGrid.h |    2 +-
- source/DATATYPE/hashGrid.C       |    2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
---- a/include/BALL/DATATYPE/hashGrid.h
-+++ b/include/BALL/DATATYPE/hashGrid.h
-@@ -37,7 +37,7 @@ namespace BALL
- {
- 	namespace __private
- 	{
--		extern const char BALL_EXPORT neighbour_table_[27][3];
-+		extern const signed char BALL_EXPORT neighbour_table_[27][3];
- 	}
- 
- 	template <typename Item> class HashGrid3;
---- a/source/DATATYPE/hashGrid.C
-+++ b/source/DATATYPE/hashGrid.C
-@@ -9,7 +9,7 @@ namespace BALL
- {
- 	namespace __private
- 	{
--		const char neighbour_table_[27][3] =
-+		const signed char neighbour_table_[27][3] =
- 		{
- 			{ 0,  0,  0 }, { 0,  0, -1 }, { 0,  0,  1 },
- 			{ 0, -1, -1 }, { 0, -1,  0 }, { 0, -1,  1 },
diff --git a/debian/patches/adjust-PoseClustering_Test-boost-1.58.patch b/debian/patches/adjust-PoseClustering_Test-boost-1.58.patch
new file mode 100644
index 0000000..d4cd089
--- /dev/null
+++ b/debian/patches/adjust-PoseClustering_Test-boost-1.58.patch
@@ -0,0 +1,13 @@
+Subject: Adjust boost::archive for boost-1.58 version
+Author: Danny Edel <deb...@danny-edel.de>
+
+The archive format of boost-1.58 (currently in sid) and the
+version 1.60, which the upstream patch is for, only differs
+in the "version" field.
+
+Delete this patch once 1.60 is in sid.
+--- a/source/TEST/data/PoseClustering_wardtree.dat
++++ b/source/TEST/data/PoseClustering_wardtree.dat
+@@ -1 +1 @@
+-22 serialization::archive 13 0 0 15 14 0 0 1 0 0 1 0.000000000e+00 1 0 1 1 0.000000000e+00 1 0 2 1 0.000000000e+00 1 0 3 1 0.000000000e+00 1 0 4 1 0.000000000e+00 1 0 5 1 0.000000000e+00 1 0 6 1 0.000000000e+00 1 0 7 1 0.000000000e+00 0 0 2 2.930124538e-05 0 0 3 1.017511487e+00 0 0 4 2.349177122e+00 0 0 2 9.453108311e-01 0 0 2 1.095688367e-05 0 0 4 5.062472916e+01 0 0 8 5.839497375e+01 8 1 0 0 8 0 9 3 9 8 10 2 10 9 11 7 11 6 12 4 12 5 13 12 13 11 14 13 14 10 14
++22 serialization::archive 12 0 0 15 14 0 0 1 0 0 1 0.000000000e+00 1 0 1 1 0.000000000e+00 1 0 2 1 0.000000000e+00 1 0 3 1 0.000000000e+00 1 0 4 1 0.000000000e+00 1 0 5 1 0.000000000e+00 1 0 6 1 0.000000000e+00 1 0 7 1 0.000000000e+00 0 0 2 2.930124538e-05 0 0 3 1.017511487e+00 0 0 4 2.349177122e+00 0 0 2 9.453108311e-01 0 0 2 1.095688367e-05 0 0 4 5.062472916e+01 0 0 8 5.839497375e+01 8 1 0 0 8 0 9 3 9 8 10 2 10 9 11 7 11 6 12 4 12 5 13 12 13 11 14 13 14 10 14
diff --git a/debian/patches/disable-assign-positions-from-template.patch b/debian/patches/disable-assign-positions-from-template.patch
new file mode 100644
index 0000000..262e61a
--- /dev/null
+++ b/debian/patches/disable-assign-positions-from-template.patch
@@ -0,0 +1,10 @@
+--- a/source/APPLICATIONS/UTILITIES/BALLUtilities.cmake
++++ b/source/APPLICATIONS/UTILITIES/BALLUtilities.cmake
+@@ -8,7 +8,6 @@
+ 	assign_charges_from_rules
+ 	assign_radii_from_rules
+ 	assign_typenames_from_rules
+-	assign_positions_from_template
+ 	atomtyper
+ 	calculate_RMSD
+ 	clip_protein_around_ligand
diff --git a/debian/patches/fix-FingerprintSimilarityClustering.patch b/debian/patches/fix-FingerprintSimilarityClustering.patch
new file mode 100644
index 0000000..1350aca
--- /dev/null
+++ b/debian/patches/fix-FingerprintSimilarityClustering.patch
@@ -0,0 +1,54 @@
+From 8ff1d1ba6b1963a9fa839ce28fb2a54139920648 Mon Sep 17 00:00:00 2001
+From: Daniel Stoeckel <dstoec...@bioinf.uni-sb.de>
+Date: Thu, 2 Apr 2015 21:37:21 +0200
+Subject: [PATCH] FingerPrintSim: Fix build under clang 3.6
+
+Explicitly use boost::unordered_map, as both
+    using namespace std;
+and
+    using namespace boost;
+is present.
+---
+ source/APPLICATIONS/TOOLS/FingerprintSimilarityClustering.C | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/source/APPLICATIONS/TOOLS/FingerprintSimilarityClustering.C b/source/APPLICATIONS/TOOLS/FingerprintSimilarityClustering.C
+index 05bcd01..114fc68 100644
+--- a/source/APPLICATIONS/TOOLS/FingerprintSimilarityClustering.C
++++ b/source/APPLICATIONS/TOOLS/FingerprintSimilarityClustering.C
+@@ -233,7 +233,7 @@ void uniqueFingerprintsFilter(vector<vector<unsigned short> >& mol_features, con
+ }
+ 
+ 
+-void readMoleculeIdentifiers(unordered_map<unsigned int, set<String> >& mol_identifiers)
++void readMoleculeIdentifiers(boost::unordered_map<unsigned int, set<String> >& mol_identifiers)
+ {
+ 	File in("FFC_1_fingerprint_duplicates.txt", File::MODE_IN);
+ 	
+@@ -275,7 +275,7 @@ void writeConnectedComponents(const vector<unsigned int>& m_indices,
+ 	out << "# CMPD_IDS:   Comma separated list of original compound id(s) which map onto this SRC_NODE_ID." << endl;
+ 	out << "SRC_NODE_ID DST_NODE_INDEX TANIMOTO_SIM CMPD_IDS" << endl;
+ 	
+-	unordered_map<unsigned int, set<String> > mol_identifiers;
++	boost::unordered_map<unsigned int, set<String> > mol_identifiers;
+ 	readMoleculeIdentifiers(mol_identifiers);
+ 
+ 	String cids;
+@@ -321,7 +321,7 @@ void writeConnectedComponents(const vector<unsigned int>& m_indices,
+ 	out << "# CMPD_IDS:   Comma separated list of original compound id(s) which map onto this SRC_NODE_ID." << endl;
+ 	out << "SRC_NODE_INDEX DST_NODE_INDEX TANIMOTO_SIM CMPD_IDS" << endl;
+ 
+-	unordered_map<unsigned int, set<String> > mol_identifiers;
++	boost::unordered_map<unsigned int, set<String> > mol_identifiers;
+ 	readMoleculeIdentifiers(mol_identifiers);
+ 
+ 	set<String>::iterator it;
+@@ -888,7 +888,7 @@ $ FingerprintSimilarityClustering -t target.sdf -fp_tag FPRINT -f 1 -id_tag NAME
+ 	Log.level(10) << "++ STEP 5: Remap fingerprint duplicates" << endl;
+ 
+ 
+-	unordered_map<unsigned int, set<String> > identifiers;
++	boost::unordered_map<unsigned int, set<String> > identifiers;
+ 	readMoleculeIdentifiers(identifiers);
+ 
+ 	// Store final cluster information
diff --git a/debian/patches/fix-PoseClustering_Test.patch b/debian/patches/fix-PoseClustering_Test.patch
new file mode 100644
index 0000000..bc6e323
--- /dev/null
+++ b/debian/patches/fix-PoseClustering_Test.patch
@@ -0,0 +1,17 @@
+From 7bb01662db40ede50ae5472cc54cc3324aa99778 Mon Sep 17 00:00:00 2001
+From: Oliver Kohlbacher <oliver.kohlbac...@uni-tuebingen.de>
+Date: Fri, 11 Dec 2015 12:09:13 +0100
+Subject: [PATCH] Fixed PoseClustering test to account for changes in boost
+ serialization of floating point numbers.
+
+---
+ source/TEST/data/PoseClustering_wardtree.dat | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/source/TEST/data/PoseClustering_wardtree.dat b/source/TEST/data/PoseClustering_wardtree.dat
+index bac5592..064a09e 100644
+--- a/source/TEST/data/PoseClustering_wardtree.dat
++++ b/source/TEST/data/PoseClustering_wardtree.dat
+@@ -1 +1 @@
+-22 serialization::archive 10 0 0 15 14 0 0 1 0 0 1 0 1 0 1 1 0 1 0 2 1 0 1 0 3 1 0 1 0 4 1 0 1 0 5 1 0 1 0 6 1 0 1 0 7 1 0 0 0 2 2.9301245e-05 0 0 3 1.0175115 0 0 4 2.3491771 0 0 2 0.94531083 0 0 2 1.0956884e-05 0 0 4 50.624729 0 0 8 58.394974 8 1 0 0 8 0 9 3 9 8 10 2 10 9 11 7 11 6 12 4 12 5 13 12 13 11 14 13 14 10 14
++22 serialization::archive 13 0 0 15 14 0 0 1 0 0 1 0.000000000e+00 1 0 1 1 0.000000000e+00 1 0 2 1 0.000000000e+00 1 0 3 1 0.000000000e+00 1 0 4 1 0.000000000e+00 1 0 5 1 0.000000000e+00 1 0 6 1 0.000000000e+00 1 0 7 1 0.000000000e+00 0 0 2 2.930124538e-05 0 0 3 1.017511487e+00 0 0 4 2.349177122e+00 0 0 2 9.453108311e-01 0 0 2 1.095688367e-05 0 0 4 5.062472916e+01 0 0 8 5.839497375e+01 8 1 0 0 8 0 9 3 9 8 10 2 10 9 11 7 11 6 12 4 12 5 13 12 13 11 14 13 14 10 14
diff --git a/debian/patches/fix-compilation-of-BinaryFingerprintMethods_test.patch b/debian/patches/fix-compilation-of-BinaryFingerprintMethods_test.patch
new file mode 100644
index 0000000..0a2ee38
--- /dev/null
+++ b/debian/patches/fix-compilation-of-BinaryFingerprintMethods_test.patch
@@ -0,0 +1,81 @@
+From 3170b38ae1adac22c66a2b56df2456623be8ff58 Mon Sep 17 00:00:00 2001
+From: Daniel Stoeckel <dstoec...@bioinf.uni-sb.de>
+Date: Fri, 1 May 2015 16:16:18 +0200
+Subject: [PATCH] Fix compilation of BinaryFingerprintMethods_test under gcc
+ 4.9/clang 3.6
+
+Use boost::unordered_map to disambiguate between std:: and boost::
+versions. Hopefully we will be able to rely on std:: in the not to distant
+future.
+---
+ source/TEST/BinaryFingerprintMethods_test.C | 22 +++++++++++-----------
+ 1 file changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/source/TEST/BinaryFingerprintMethods_test.C b/source/TEST/BinaryFingerprintMethods_test.C
+index 1f0bb53..e776f12 100644
+--- a/source/TEST/BinaryFingerprintMethods_test.C
++++ b/source/TEST/BinaryFingerprintMethods_test.C
+@@ -331,7 +331,7 @@ CHECK(cutoffSearch())
+ 	
+ 	float sim;
+ 	String key;
+-	unordered_map<string, float> results;
++	boost::unordered_map<string, float> results;
+ 	LineBasedFile lbf(BALL_TEST_DATA_PATH(BinaryFingerprintMethods_SimSearchResults.csv), File::MODE_IN);
+ 	while(lbf.readLine())
+ 	{
+@@ -347,8 +347,8 @@ CHECK(cutoffSearch())
+ 	
+ 	float cutoff = 0.0;
+ 	String outfile_name = "_BALL_CUTOFF_SEARCH_TEST.tmp";
+-	unordered_map<string, float>::iterator it;
+-	unordered_map<string, float> results_subset;
++	boost::unordered_map<string, float>::iterator it;
++	boost::unordered_map<string, float> results_subset;
+ 	
+ 	while (cutoff <= 1.0)
+ 	{
+@@ -391,9 +391,9 @@ CHECK(connectedComponents(store_nns=true))
+ 	unsigned int id, min_id, int_cutoff;
+ 	map<string, float> tmp_cc;
+ 	map<string, float>::iterator cc_it;
+-	unordered_map<unsigned int, map<string, float> > ccs_results;
+-	unordered_map<unsigned int, map<string, float> >::iterator ccs_it;
+-	unordered_map<unsigned int, unordered_map<unsigned int, map<string, float> > > all_ccs;
++	boost::unordered_map<unsigned int, map<string, float> > ccs_results;
++	boost::unordered_map<unsigned int, map<string, float> >::iterator ccs_it;
++	boost::unordered_map<unsigned int, boost::unordered_map<unsigned int, map<string, float> > > all_ccs;
+ 	
+ 	LineBasedFile lbf(BALL_TEST_DATA_PATH(BinaryFingerprintMethods_ConnectedComponents.csv), File::MODE_IN);
+ 	while(lbf.readLine())
+@@ -409,7 +409,7 @@ CHECK(connectedComponents(store_nns=true))
+ 			}
+ 			
+ 			int_cutoff = lbf.getField(1).toUnsignedInt();
+-			all_ccs[int_cutoff] = unordered_map<unsigned int, map<string, float> >();
++			all_ccs[int_cutoff] = boost::unordered_map<unsigned int, map<string, float> >();
+ 			
+ 			continue;
+ 		}
+@@ -539,9 +539,9 @@ CHECK(connectedComponents(store_nns=false))
+ 	unsigned int id, int_cutoff;
+ 	map<string, float> tmp_cc;
+ 	map<string, float>::iterator cc_it;
+-	unordered_map<unsigned int, map<string, float> > ccs_results;
+-	unordered_map<unsigned int, map<string, float> >::iterator ccs_it;
+-	unordered_map<unsigned int, unordered_map<unsigned int, map<string, float> > > all_ccs;
++	boost::unordered_map<unsigned int, map<string, float> > ccs_results;
++	boost::unordered_map<unsigned int, map<string, float> >::iterator ccs_it;
++	boost::unordered_map<unsigned int, boost::unordered_map<unsigned int, map<string, float> > > all_ccs;
+ 	
+ 	LineBasedFile lbf(BALL_TEST_DATA_PATH(BinaryFingerprintMethods_ConnectedComponents.csv), File::MODE_IN);
+ 	while(lbf.readLine())
+@@ -557,7 +557,7 @@ CHECK(connectedComponents(store_nns=false))
+ 			}
+ 			
+ 			int_cutoff = lbf.getField(1).toUnsignedInt();
+-			all_ccs[int_cutoff] = unordered_map<unsigned int, map<string, float> >();
++			all_ccs[int_cutoff] = boost::unordered_map<unsigned int, map<string, float> >();
+ 			
+ 			continue;
+ 		}
diff --git a/debian/patches/fix-poseClustering-with-boost-1.60.patch b/debian/patches/fix-poseClustering-with-boost-1.60.patch
new file mode 100644
index 0000000..5613351
--- /dev/null
+++ b/debian/patches/fix-poseClustering-with-boost-1.60.patch
@@ -0,0 +1,108 @@
+From 029fd2b9a0365e5926bcb4e2c227533efb356423 Mon Sep 17 00:00:00 2001
+From: Daniel Stoeckel <dstoec...@bioinf.uni-sb.de>
+Date: Thu, 18 Feb 2016 22:23:21 +0100
+Subject: [PATCH] Fix building PoseClustering with Boost versions >= 1.60
+
+A VertexProperty must be Copy Constructible, Assignable, and
+Default Constructible. Additionally in newer Boost versions also
+Move Constructible and Assignable are required.
+---
+ include/BALL/DOCKING/COMMON/poseClustering.h |  9 ++++
+ source/DOCKING/COMMON/poseClustering.C       | 64 ++++++++++++++++++++++++++++
+ 2 files changed, 73 insertions(+)
+
+diff --git a/include/BALL/DOCKING/COMMON/poseClustering.h b/include/BALL/DOCKING/COMMON/poseClustering.h
+index 5ffce0b..9d1a7ca 100644
+--- a/include/BALL/DOCKING/COMMON/poseClustering.h
++++ b/include/BALL/DOCKING/COMMON/poseClustering.h
+@@ -218,6 +218,15 @@ namespace BALL
+ 			class BALL_EXPORT ClusterProperties
+ 			{
+ 				public:
++						ClusterProperties();
++						ClusterProperties(const ClusterProperties&);
++
++						ClusterProperties& operator=(const ClusterProperties&);
++
++#ifdef BALL_HAS_RVALUE_REFERENCES
++						ClusterProperties(ClusterProperties&&) noexcept;
++						ClusterProperties& operator=(ClusterProperties&&) noexcept;
++#endif
+ 					/** Serialization method
+ 					 */
+ 					template <class Archive>
+diff --git a/source/DOCKING/COMMON/poseClustering.C b/source/DOCKING/COMMON/poseClustering.C
+index bb2ae7d..1c25888 100644
+--- a/source/DOCKING/COMMON/poseClustering.C
++++ b/source/DOCKING/COMMON/poseClustering.C
+@@ -1717,6 +1717,70 @@ std::cout << current_level << " " << num_poses << " " << percentage << std::endl
+ 	}
+ #endif
+ 
++		PoseClustering::ClusterProperties::ClusterProperties()
++				: size(0),
++					merged_at(0.0f)
++#ifdef POSECLUSTERING_DEBUG
++				,	current_cluster_id(0.0f)
++#endif
++		{
++
++		}
++
++		PoseClustering::ClusterProperties::ClusterProperties(const PoseClustering::ClusterProperties& o)
++				: poses(o.poses),
++				  size(o.size),
++				  center(o.center),
++				  merged_at(o.merged_at)
++#ifdef POSECLUSTERING_DEBUG
++				, current_cluster_id(o.current_cluster_id)
++#endif
++		{
++		}
++
++		PoseClustering::ClusterProperties&
++		PoseClustering::ClusterProperties::operator=(const PoseClustering::ClusterProperties& o)
++		{
++				if(&o != this)
++				{
++						poses = o.poses;
++						size = o.size;
++						center = o.center;
++						merged_at = o.merged_at;
++#ifdef POSECLUSTERING_DEBUG
++						current_cluster_id = o.current_cluster_id;
++#endif
++				}
++
++				return *this;
++		}
++
++#ifdef BALL_HAS_RVALUE_REFERENCES
++		PoseClustering::ClusterProperties::ClusterProperties(ClusterProperties&& o) noexcept
++				: poses(std::move(o.poses)),
++				  size(o.size),
++				  center(std::move(o.center)),
++				  merged_at(o.merged_at)
++#ifdef POSECLUSTERING_DEBUG
++				,	current_cluster_id(o.current_cluster_id)
++#endif
++		{
++		}
++
++		PoseClustering::ClusterProperties&
++		PoseClustering::ClusterProperties::operator=(ClusterProperties&& o) noexcept
++		{
++				poses = std::move(o.poses);
++				size = o.size;
++				center = std::move(o.center);
++				merged_at = o.merged_at;
++#ifdef POSECLUSTERING_DEBUG
++				current_cluster_id = o.current_cluster_id;
++#endif
++				return *this;
++		}
++#endif
++
+ 	template <class Archive>
+ 	void PoseClustering::ClusterProperties::serialize(Archive& ar, const unsigned int /*version*/)
+ 	{
diff --git a/debian/patches/fix-string-gcc5.patch b/debian/patches/fix-string-gcc5.patch
new file mode 100644
index 0000000..8d68299
--- /dev/null
+++ b/debian/patches/fix-string-gcc5.patch
@@ -0,0 +1,73 @@
+From b3679aa7e996962623772daa5f9db2d4a7d0d581 Mon Sep 17 00:00:00 2001
+From: Thomas Kemmer <tho...@binaryden.de>
+Date: Fri, 11 Dec 2015 16:51:39 +0100
+Subject: [PATCH] Fix: String failed to compile with newer GCC versions
+
+---
+ cmake/BALLConfigStdStringFeatures.cmake | 12 ++++++++++++
+ cmake/config.h.in                       |  1 +
+ include/BALL/DATATYPE/string.h          |  2 +-
+ include/BALL/DATATYPE/string.iC         |  2 +-
+ 4 files changed, 15 insertions(+), 2 deletions(-)
+
+diff --git a/cmake/BALLConfigStdStringFeatures.cmake b/cmake/BALLConfigStdStringFeatures.cmake
+index 08b1207..12bfaf2 100644
+--- a/cmake/BALLConfigStdStringFeatures.cmake
++++ b/cmake/BALLConfigStdStringFeatures.cmake
+@@ -26,6 +26,18 @@ CHECK_CXX_SOURCE_COMPILES(
+ 	int main(int, char**)
+ 	{
+ 		std::string s;
++		std::string::const_iterator c_it = s.cbegin();
++		std::string::iterator result = s.insert(c_it, {'a', 'b'});
++
++		return 0;
++	}" BALL_HAS_STD_STRING_CONST_ITERATOR_INITLIST_INSERT
++)
++
++CHECK_CXX_SOURCE_COMPILES(
++	"#include <string>
++	int main(int, char**)
++	{
++		std::string s;
+ 		s.shrink_to_fit();
+ 
+ 		return 0;
+diff --git a/cmake/config.h.in b/cmake/config.h.in
+index 6742032..51768a7 100755
+--- a/cmake/config.h.in
++++ b/cmake/config.h.in
+@@ -229,6 +229,7 @@
+ 
+ // Defines whether the c++ std lib implementation supports const_iterators in insert, replace, ...
+ #cmakedefine BALL_HAS_STD_STRING_CONST_ITERATOR_FUNCTIONS
++#cmakedefine BALL_HAS_STD_STRING_CONST_ITERATOR_INITLIST_INSERT
+ 
+ // Defines whether the c++ std lib implementation supports shrink_to_fit in string
+ #cmakedefine BALL_HAS_STD_STRING_SHRINK_TO_FIT
+diff --git a/include/BALL/DATATYPE/string.h b/include/BALL/DATATYPE/string.h
+index c6a8618..51135e6 100644
+--- a/include/BALL/DATATYPE/string.h
++++ b/include/BALL/DATATYPE/string.h
+@@ -1219,7 +1219,7 @@ namespace BALL
+ 		///
+ 		template <class InputIterator>
+ 		iterator insert(iterator p, InputIterator first, InputIterator last);
+-#if defined(BALL_HAS_INITIALIZER_LISTS) && defined(BALL_HAS_STD_STRING_CONST_ITERATOR_FUNCTIONS)
++#if defined(BALL_HAS_INITIALIZER_LISTS) && defined(BALL_HAS_STD_STRING_CONST_ITERATOR_INITLIST_INSERT)
+ 		///
+ 		String& insert(const_iterator p, std::initializer_list<char> li);
+ #endif
+diff --git a/include/BALL/DATATYPE/string.iC b/include/BALL/DATATYPE/string.iC
+index 954d15b..f0e9b3c 100644
+--- a/include/BALL/DATATYPE/string.iC
++++ b/include/BALL/DATATYPE/string.iC
+@@ -1372,7 +1372,7 @@ String::iterator String::insert(iterator p, InputIterator first, InputIterator l
+ 	return str_.insert(p, first, last);
+ }
+ 
+-#if defined(BALL_HAS_INITIALIZER_LISTS) && defined(BALL_HAS_STD_STRING_CONST_ITERATOR_FUNCTIONS)
++#if defined(BALL_HAS_INITIALIZER_LISTS) && defined(BALL_HAS_STD_STRING_CONST_ITERATOR_INITLIST_INSERT)
+ BALL_INLINE
+ String& String::insert(const_iterator p, std::initializer_list<char> li)
+ {
diff --git a/debian/patches/gcc5.diff b/debian/patches/gcc5.diff
deleted file mode 100644
index b3eabe6..0000000
--- a/debian/patches/gcc5.diff
+++ /dev/null
@@ -1,18 +0,0 @@
-Author: Matthias Klose <d...@debian.org>
-Last-Update: Thu, 09 Jul 2015 12:17:06 +0200
-Bug-Debian: https://bugs.debian.org/755225
-Description: Fix some build errors with GCC 5 and clang++
- (Most hunks of original patch taken over in upstream version 1.4.3~beta1
-
---- a/include/BALL/DATATYPE/string.h
-+++ b/include/BALL/DATATYPE/string.h
-@@ -47,6 +47,9 @@ namespace BALL
- {
- 	// forward declaration
- 	class Substring;
-+    class String;
-+    BALL_EXPORT
-+	std::istream& getline(std::istream& s,  String& string,  char delimiter = '\n');
- 
- 	/**	\defgroup String String
- 			An improved version of STL string.
diff --git a/debian/patches/series b/debian/patches/series
index 79b5a78..0a5cff1 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,5 +1,10 @@
-0001-missingSigned.patch
+fix-compilation-of-BinaryFingerprintMethods_test.patch
+fix-string-gcc5.patch
+fix-poseClustering-with-boost-1.60.patch
 nopsboxit.patch
 link_against_x11.patch
 findsip.patch
-gcc5.diff
+fix-PoseClustering_Test.patch
+adjust-PoseClustering_Test-boost-1.58.patch
+disable-assign-positions-from-template.patch
+fix-FingerprintSimilarityClustering.patch
diff --git a/debian/rules b/debian/rules
index da751c8..9753f4a 100755
--- a/debian/rules
+++ b/debian/rules
@@ -17,13 +17,21 @@ PYTHON_VERSION=2.6
 PYTHON_SITE_PATH=$(shell python -c "import distutils.sysconfig; print distutils.sysconfig.get_python_lib(0,0)[4:];")
 
 %:
-	dh $@ --buildsystem=cmake
+	dh $@ --buildsystem=cmake --builddirectory=build
 
 override_dh_auto_configure:
 	mkdir -p build
 	cd build && LDFLAGS="$(LDFLAGS)" CXXFLAGS="$(CXXFLAGS)" CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" \
 	            cmake .. -DCMAKE_SOURCE_DIR=$(CURDIR) -DCMAKE_INSTALL_PREFIX=./usr -DBALL_PATH=/usr -DBALL_DATA_PATH=/usr/share/BALL-$(SOVERSION)/data
 
+# Set BALL_DATA_PATH so that test scripts find it
+export BALL_DATA_PATH=$(CURDIR)/data
+# Make sure HOME exists (for Directory_test)
+export HOME=/tmp
+
+# Disable test for arch-indep builds
+override_dh_auto_test-indep:
+
 override_dh_auto_build-arch:
 	## Fix upstream issue of missing UI files
 	uic-qt4 source/VIEW/DIALOGS/assignBondOrderConfigurationDialog.ui > include/BALL/VIEW/UIC/ui_assignBondOrderConfigurationDialog.h
@@ -37,7 +45,7 @@ override_dh_auto_build-arch:
 	## Somehow the code
 	##   ADD_BALL_UIFILES("VIEW/DIALOGS" "${UI_LIST}")
 	## needs to be called before the build code below can be started
-	make -C build BALL VIEW BALLView install
+	make -C build BALL VIEW BALLView build_tests install
 
 override_dh_auto_build-indep:
 	make -C build doc doc_tutorial install
-- 
2.8.0.rc3

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to