Your message dated Wed, 06 Apr 2016 05:02:32 +0000
with message-id <[email protected]>
and subject line Bug#819927: Removed package(s) from unstable
has caused the Debian Bug report #746385,
regarding libjson-spirit-dev: Using JSON Spirit with Multiple Threads
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
746385: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=746385
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: libjson-spirit-dev
Version: 4.05-1.1
Severity: normal
Tags: patch
Dear Maintainer,
As mentionned on the upstream's page¹, using JSON Spirit with multiple
threads is not possible
if the BOOST_SPIRIT_THREADSAFE macro is not set.
¹
http://www.codeproject.com/Articles/20027/JSON-Spirit-A-C-JSON-Parser-Generator-Implemented#threads
In fact, a usage of this library in at least two separate threads (even
without links between them)
causes nondeterministic SEGFAULTs.
Would it be possible to compile the lib so that we can use several
threads? Another solution is to
provide a second package with the thread-safe support.
You will find attached a patch for the version 4.05 of the upstream. The
#define BOOST_SPIRIT_THREADSAFE
is uncommented in json_spirit_reader_template.h and CMakeLists.txt in
the demo folders now link
boost_system and boost_thread to executables. So the main consequence
for the package is a
dependence to libboost-thread-dev and libboost-system-dev.
Regards,
ju.
diff -cr json_spirit_v4.05/json_demo/CMakeLists.txt json_spirit_v4.05_thread-safe/json_demo/CMakeLists.txt
*** json_spirit_v4.05/json_demo/CMakeLists.txt 2010-01-08 20:50:36.000000000 +0100
--- json_spirit_v4.05_thread-safe/json_demo/CMakeLists.txt 2014-04-29 15:58:30.260431589 +0200
***************
*** 5,9 ****
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
ADD_EXECUTABLE(json_demo ${JSON_DEMO_SRCS})
! TARGET_LINK_LIBRARIES(json_demo json_spirit)
--- 5,9 ----
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
ADD_EXECUTABLE(json_demo ${JSON_DEMO_SRCS})
! TARGET_LINK_LIBRARIES(json_demo json_spirit boost_system boost_thread)
diff -cr json_spirit_v4.05/json_headers_only_demo/CMakeLists.txt json_spirit_v4.05_thread-safe/json_headers_only_demo/CMakeLists.txt
*** json_spirit_v4.05/json_headers_only_demo/CMakeLists.txt 2010-01-08 20:50:36.000000000 +0100
--- json_spirit_v4.05_thread-safe/json_headers_only_demo/CMakeLists.txt 2014-04-29 15:58:30.256431559 +0200
***************
*** 5,9 ****
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
ADD_EXECUTABLE(json_headers_only_demo ${JSON_HEADERS_ONLY_DEMO_SRCS})
! TARGET_LINK_LIBRARIES(json_headers_only_demo json_spirit)
--- 5,9 ----
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
ADD_EXECUTABLE(json_headers_only_demo ${JSON_HEADERS_ONLY_DEMO_SRCS})
! TARGET_LINK_LIBRARIES(json_headers_only_demo json_spirit boost_system boost_thread)
diff -cr json_spirit_v4.05/json_map_demo/CMakeLists.txt json_spirit_v4.05_thread-safe/json_map_demo/CMakeLists.txt
*** json_spirit_v4.05/json_map_demo/CMakeLists.txt 2010-01-08 20:50:36.000000000 +0100
--- json_spirit_v4.05_thread-safe/json_map_demo/CMakeLists.txt 2014-04-29 15:58:30.256431559 +0200
***************
*** 5,9 ****
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
ADD_EXECUTABLE(json_map_demo ${JSON_MAP_DEMO_SRCS})
! TARGET_LINK_LIBRARIES(json_map_demo json_spirit)
--- 5,9 ----
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
ADD_EXECUTABLE(json_map_demo ${JSON_MAP_DEMO_SRCS})
! TARGET_LINK_LIBRARIES(json_map_demo json_spirit boost_system boost_thread)
diff -cr json_spirit_v4.05/json_spirit/json_spirit_reader_template.h json_spirit_v4.05_thread-safe/json_spirit/json_spirit_reader_template.h
*** json_spirit_v4.05/json_spirit/json_spirit_reader_template.h 2011-08-04 20:28:16.000000000 +0200
--- json_spirit_v4.05_thread-safe/json_spirit/json_spirit_reader_template.h 2014-04-29 15:58:30.256431559 +0200
***************
*** 13,19 ****
#include "json_spirit_value.h"
#include "json_spirit_error_position.h"
! //#define BOOST_SPIRIT_THREADSAFE // uncomment for multithreaded use, requires linking to boost.thread
#include <boost/bind.hpp>
#include <boost/function.hpp>
--- 13,19 ----
#include "json_spirit_value.h"
#include "json_spirit_error_position.h"
! #define BOOST_SPIRIT_THREADSAFE // uncomment for multithreaded use, requires linking to boost.thread
#include <boost/bind.hpp>
#include <boost/function.hpp>
diff -cr json_spirit_v4.05/json_test/CMakeLists.txt json_spirit_v4.05_thread-safe/json_test/CMakeLists.txt
*** json_spirit_v4.05/json_test/CMakeLists.txt 2011-08-07 20:55:10.000000000 +0200
--- json_spirit_v4.05_thread-safe/json_test/CMakeLists.txt 2014-04-29 15:58:30.256431559 +0200
***************
*** 11,15 ****
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
ADD_EXECUTABLE(json_test ${JSON_TEST_SRCS})
! TARGET_LINK_LIBRARIES(json_test json_spirit)
--- 11,15 ----
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
ADD_EXECUTABLE(json_test ${JSON_TEST_SRCS})
! TARGET_LINK_LIBRARIES(json_test json_spirit boost_system boost_thread)
--- End Message ---
--- Begin Message ---
Version: 4.05-1.1+rm
Dear submitter,
as the package json-spirit has just been removed from the Debian archive
unstable we hereby close the associated bug reports. We are sorry
that we couldn't deal with your issue properly.
For details on the removal, please see https://bugs.debian.org/819927
The version of this package that was in Debian prior to this removal
can still be found using http://snapshot.debian.org/.
This message was generated automatically; if you believe that there is
a problem with it please contact the archive administrators by mailing
[email protected].
Debian distribution maintenance software
pp.
Scott Kitterman (the ftpmaster behind the curtain)
--- End Message ---