This is an automated email from the git hooks/post-receive script. sebastic-guest pushed a commit to branch master in repository osm2pgsql.
commit a0791c0f765996ba6943490efbaf7149ba7bc24c Author: Bas Couwenberg <sebas...@xs4all.nl> Date: Fri Dec 12 01:37:56 2014 +0100 Add patch to not use Boost lockfree queues even for Boost >= 1.53. --- debian/changelog | 7 +++ debian/patches/boost-atomic-get_lock_for.patch | 71 ++++++++++++++++++++++++++ debian/patches/series | 1 + 3 files changed, 79 insertions(+) diff --git a/debian/changelog b/debian/changelog index 5ede6bf..6cfcd98 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +osm2pgsql (0.87.0-1~exp2) UNRELEASED; urgency=medium + + * Add patch to not use Boost lockfree queues even for Boost >= 1.53, + hopefully fixes the FTBFS on arm64, armel, powerpc, ppc64el & s390x. + + -- Bas Couwenberg <sebas...@xs4all.nl> Fri, 12 Dec 2014 01:35:51 +0100 + osm2pgsql (0.87.0-1~exp1) experimental; urgency=medium * New upstream release. diff --git a/debian/patches/boost-atomic-get_lock_for.patch b/debian/patches/boost-atomic-get_lock_for.patch new file mode 100644 index 0000000..a2a2769 --- /dev/null +++ b/debian/patches/boost-atomic-get_lock_for.patch @@ -0,0 +1,71 @@ +Description: Don't use lockfree queues even for Boost >= 1.53 +Author: Paul Norman +Bug: https://github.com/openstreetmap/osm2pgsql/issues/231 + +--- a/osmdata.cpp ++++ b/osmdata.cpp +@@ -10,7 +10,7 @@ + #include <stdexcept> + #include <utility> + +-#if BOOST_VERSION < 105300 ++#if true + #else + #include <boost/atomic.hpp> + #endif +@@ -167,7 +167,7 @@ struct pending_threaded_processor : publ + typedef std::vector<boost::shared_ptr<output_t> > output_vec_t; + typedef std::pair<boost::shared_ptr<const middle_query_t>, output_vec_t> clone_t; + +-#if BOOST_VERSION < 105300 ++#if true + static void do_jobs(output_vec_t const& outputs, pending_queue_t& queue, size_t& ids_done, boost::mutex& mutex, int append, bool ways) { + while (true) { + //get the job off the queue synchronously +@@ -209,7 +209,7 @@ struct pending_threaded_processor : publ + + //starts up count threads and works on the queue + pending_threaded_processor(boost::shared_ptr<middle_query_t> mid, const output_vec_t& outs, size_t thread_count, size_t job_count, int append) +-#if BOOST_VERSION < 105300 ++#if true + //note that we cant hint to the stack how large it should be ahead of time + //we could use a different datastructure like a deque or vector but then + //the outputs the enqueue jobs would need the version check for the push(_back) method +@@ -256,7 +256,7 @@ struct pending_threaded_processor : publ + + //make the threads and start them + for (size_t i = 0; i < clones.size(); ++i) { +-#if BOOST_VERSION < 105300 ++#if true + workers.create_thread(boost::bind(do_jobs, boost::cref(clones[i].second), boost::ref(queue), boost::ref(ids_done), boost::ref(mutex), append, true)); + #else + workers.create_thread(boost::bind(do_jobs, boost::cref(clones[i].second), boost::ref(queue), boost::ref(ids_done), append, true)); +@@ -307,7 +307,7 @@ struct pending_threaded_processor : publ + + //make the threads and start them + for (size_t i = 0; i < clones.size(); ++i) { +-#if BOOST_VERSION < 105300 ++#if true + workers.create_thread(boost::bind(do_jobs, boost::cref(clones[i].second), boost::ref(queue), boost::ref(ids_done), boost::ref(mutex), append, false)); + #else + workers.create_thread(boost::bind(do_jobs, boost::cref(clones[i].second), boost::ref(queue), boost::ref(ids_done), append, false)); +@@ -353,7 +353,7 @@ private: + //job queue + pending_queue_t queue; + +-#if BOOST_VERSION < 105300 ++#if true + //how many ids within the job have been processed + size_t ids_done; + //so the threads can manage some of the shared state +--- a/output.hpp ++++ b/output.hpp +@@ -20,7 +20,7 @@ + #include <utility> + + typedef std::pair<osmid_t, size_t> pending_job_t; +-#if BOOST_VERSION < 105300 ++#if true + #include <stack> + typedef std::stack<pending_job_t> pending_queue_t; + #else diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..a4ea8d5 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1 @@ +boost-atomic-get_lock_for.patch -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/osm2pgsql.git _______________________________________________ Pkg-grass-devel mailing list Pkg-grass-devel@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-grass-devel