summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2020-08-27 20:37:32 +0000
committerCarl Hetherington <cth@carlh.net>2020-09-01 16:34:26 +0200
commitc04fec82d25127fafa73c3daff87bece9aa8c8e8 (patch)
treec52e8156ac0c1a0cfe050c8722dcdd34b7321916
parent63ea8ea5fdfff1158def8c57361bcc3da21e2ad6 (diff)
Build fixes for Boost >= 1.73
Forward-ported-from: d1e9749ca290673639a49d693a8fe5c6557cc2de
-rw-r--r--src/lib/analyse_audio_job.cc3
-rw-r--r--src/lib/butler.cc3
-rw-r--r--src/lib/dcp_video.cc5
-rw-r--r--src/lib/encode_server_finder.cc4
-rw-r--r--src/lib/ffmpeg_encoder.cc3
-rw-r--r--src/lib/ffmpeg_file_encoder.cc3
-rw-r--r--src/lib/hints.cc3
-rw-r--r--src/lib/playlist.cc4
-rw-r--r--src/lib/upload_job.cc3
-rw-r--r--src/lib/verify_dcp_job.cc3
-rw-r--r--src/tools/dcpomatic.cc3
-rw-r--r--src/tools/dcpomatic_batch.cc3
-rw-r--r--src/tools/dcpomatic_playlist.cc3
-rw-r--r--src/tools/dcpomatic_server.cc3
-rw-r--r--src/tools/server_test.cc3
-rw-r--r--src/wx/audio_dialog.cc3
-rw-r--r--src/wx/audio_mapping_view.cc3
-rw-r--r--src/wx/audio_panel.cc3
-rw-r--r--src/wx/barco_alchemy_certificate_panel.cc3
-rw-r--r--src/wx/christie_certificate_panel.cc3
-rw-r--r--src/wx/cinema_dialog.cc3
-rw-r--r--src/wx/config_dialog.cc3
-rw-r--r--src/wx/confirm_kdm_email_dialog.cc3
-rw-r--r--src/wx/content_panel.cc3
-rw-r--r--src/wx/content_sub_panel.cc3
-rw-r--r--src/wx/content_widget.h4
-rw-r--r--src/wx/dcp_panel.cc3
-rw-r--r--src/wx/dolby_doremi_certificate_panel.cc3
-rw-r--r--src/wx/editable_list.h4
-rw-r--r--src/wx/film_editor.cc3
-rw-r--r--src/wx/film_viewer.cc3
-rw-r--r--src/wx/focus_manager.cc4
-rw-r--r--src/wx/full_config_dialog.cc3
-rw-r--r--src/wx/gdc_certificate_panel.cc3
-rw-r--r--src/wx/hints_dialog.cc3
-rw-r--r--src/wx/html_dialog.cc4
-rw-r--r--src/wx/job_manager_view.cc3
-rw-r--r--src/wx/kdm_dialog.cc3
-rw-r--r--src/wx/nag_dialog.cc3
-rw-r--r--src/wx/recreate_chain_dialog.cc3
-rw-r--r--src/wx/save_template_dialog.cc3
-rw-r--r--src/wx/screen_dialog.cc3
-rw-r--r--src/wx/subtitle_appearance_dialog.cc3
-rw-r--r--src/wx/templates_dialog.cc3
-rw-r--r--src/wx/text_view.cc3
-rw-r--r--src/wx/timeline.cc3
-rw-r--r--src/wx/timeline_content_view.cc3
-rw-r--r--src/wx/timeline_dialog.cc3
-rw-r--r--src/wx/timing_panel.cc3
-rw-r--r--src/wx/video_panel.cc3
50 files changed, 157 insertions, 1 deletions
diff --git a/src/lib/analyse_audio_job.cc b/src/lib/analyse_audio_job.cc
index acd730a68..6ba6b5ecf 100644
--- a/src/lib/analyse_audio_job.cc
+++ b/src/lib/analyse_audio_job.cc
@@ -50,6 +50,9 @@ using std::cout;
using boost::shared_ptr;
using boost::dynamic_pointer_cast;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
int const AnalyseAudioJob::_num_points = 1024;
diff --git a/src/lib/butler.cc b/src/lib/butler.cc
index 33938ece4..39da0bd5c 100644
--- a/src/lib/butler.cc
+++ b/src/lib/butler.cc
@@ -39,6 +39,9 @@ using boost::bind;
using boost::optional;
using boost::function;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
/** Minimum video readahead in frames */
#define MINIMUM_VIDEO_READAHEAD 10
diff --git a/src/lib/dcp_video.cc b/src/lib/dcp_video.cc
index d6b9d4f27..36928b3fc 100644
--- a/src/lib/dcp_video.cc
+++ b/src/lib/dcp_video.cc
@@ -62,6 +62,9 @@ using boost::shared_ptr;
using dcp::Size;
using dcp::Data;
using dcp::raw_convert;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
#define DCI_COEFFICENT (48.0 / 52.37)
@@ -120,7 +123,7 @@ DCPVideo::encode_locally ()
{
string const comment = Config::instance()->dcp_j2k_comment();
- Data enc = compress_j2k (
+ Data enc = dcp::compress_j2k (
convert_to_xyz (_frame, boost::bind(&Log::dcp_log, dcpomatic_log.get(), _1, _2)),
_j2k_bandwidth,
_frames_per_second,
diff --git a/src/lib/encode_server_finder.cc b/src/lib/encode_server_finder.cc
index 7297734ec..1c6120257 100644
--- a/src/lib/encode_server_finder.cc
+++ b/src/lib/encode_server_finder.cc
@@ -27,6 +27,7 @@
#include "dcpomatic_socket.h"
#include <dcp/raw_convert.h>
#include <libcxml/cxml.h>
+#include <boost/bind/placeholders.hpp>
#include <boost/lambda/lambda.hpp>
#include <iostream>
@@ -40,6 +41,9 @@ using boost::shared_ptr;
using boost::scoped_array;
using boost::weak_ptr;
using boost::optional;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
using dcp::raw_convert;
EncodeServerFinder* EncodeServerFinder::_instance = 0;
diff --git a/src/lib/ffmpeg_encoder.cc b/src/lib/ffmpeg_encoder.cc
index 786f97dd7..8f9b3defc 100644
--- a/src/lib/ffmpeg_encoder.cc
+++ b/src/lib/ffmpeg_encoder.cc
@@ -43,6 +43,9 @@ using boost::bind;
using boost::weak_ptr;
using boost::optional;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
/** @param key Key to use to encrypt MP4 outputs */
FFmpegEncoder::FFmpegEncoder (
diff --git a/src/lib/ffmpeg_file_encoder.cc b/src/lib/ffmpeg_file_encoder.cc
index d15bdabde..511730185 100644
--- a/src/lib/ffmpeg_file_encoder.cc
+++ b/src/lib/ffmpeg_file_encoder.cc
@@ -40,6 +40,9 @@ using boost::bind;
using boost::weak_ptr;
using boost::optional;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
int FFmpegFileEncoder::_video_stream_index = 0;
int FFmpegFileEncoder::_audio_stream_index_base = 1;
diff --git a/src/lib/hints.cc b/src/lib/hints.cc
index e936332a2..34a7a8392 100644
--- a/src/lib/hints.cc
+++ b/src/lib/hints.cc
@@ -50,6 +50,9 @@ using boost::weak_ptr;
using boost::optional;
using boost::bind;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
Hints::Hints (weak_ptr<const Film> film)
: _film (film)
diff --git a/src/lib/playlist.cc b/src/lib/playlist.cc
index b96b0fbe0..89990a427 100644
--- a/src/lib/playlist.cc
+++ b/src/lib/playlist.cc
@@ -34,6 +34,7 @@
#include "compose.hpp"
#include <libcxml/cxml.h>
#include <libxml++/libxml++.h>
+#include <boost/bind/placeholders.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/foreach.hpp>
#include <iostream>
@@ -52,6 +53,9 @@ using boost::shared_ptr;
using boost::weak_ptr;
using boost::dynamic_pointer_cast;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
Playlist::Playlist ()
: _sequence (true)
diff --git a/src/lib/upload_job.cc b/src/lib/upload_job.cc
index fbfbb92d8..c07e0c3d4 100644
--- a/src/lib/upload_job.cc
+++ b/src/lib/upload_job.cc
@@ -38,6 +38,9 @@ using std::string;
using std::min;
using boost::shared_ptr;
using boost::scoped_ptr;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
UploadJob::UploadJob (shared_ptr<const Film> film)
: Job (film)
diff --git a/src/lib/verify_dcp_job.cc b/src/lib/verify_dcp_job.cc
index c1dcbc792..3d28fe759 100644
--- a/src/lib/verify_dcp_job.cc
+++ b/src/lib/verify_dcp_job.cc
@@ -28,6 +28,9 @@ using std::string;
using std::vector;
using boost::shared_ptr;
using boost::optional;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
VerifyDCPJob::VerifyDCPJob (vector<boost::filesystem::path> directories)
: Job (shared_ptr<Film>())
diff --git a/src/tools/dcpomatic.cc b/src/tools/dcpomatic.cc
index 12b8e71df..60f11752e 100644
--- a/src/tools/dcpomatic.cc
+++ b/src/tools/dcpomatic.cc
@@ -131,6 +131,9 @@ using boost::optional;
using boost::function;
using boost::is_any_of;
using boost::algorithm::find;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
using dcp::raw_convert;
class FilmChangedClosingDialog : public boost::noncopyable
diff --git a/src/tools/dcpomatic_batch.cc b/src/tools/dcpomatic_batch.cc
index e3beb8dc6..3517de9fe 100644
--- a/src/tools/dcpomatic_batch.cc
+++ b/src/tools/dcpomatic_batch.cc
@@ -53,6 +53,9 @@ using boost::shared_ptr;
using boost::thread;
using boost::scoped_array;
using boost::dynamic_pointer_cast;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
static list<boost::filesystem::path> films_to_load;
diff --git a/src/tools/dcpomatic_playlist.cc b/src/tools/dcpomatic_playlist.cc
index b2b5c458a..77dd643d7 100644
--- a/src/tools/dcpomatic_playlist.cc
+++ b/src/tools/dcpomatic_playlist.cc
@@ -49,6 +49,9 @@ using boost::shared_ptr;
using boost::weak_ptr;
using boost::bind;
using boost::dynamic_pointer_cast;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
class ContentDialog : public wxDialog, public ContentStore
{
diff --git a/src/tools/dcpomatic_server.cc b/src/tools/dcpomatic_server.cc
index a4ef0bc62..696fec09a 100644
--- a/src/tools/dcpomatic_server.cc
+++ b/src/tools/dcpomatic_server.cc
@@ -51,6 +51,9 @@ using boost::thread;
using boost::bind;
using boost::optional;
using boost::dynamic_pointer_cast;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
enum {
ID_status = 1,
diff --git a/src/tools/server_test.cc b/src/tools/server_test.cc
index 03a99b2e5..99a6b4caf 100644
--- a/src/tools/server_test.cc
+++ b/src/tools/server_test.cc
@@ -43,6 +43,9 @@ using std::pair;
using boost::shared_ptr;
using boost::optional;
using boost::bind;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
using dcp::Data;
static shared_ptr<Film> film;
diff --git a/src/wx/audio_dialog.cc b/src/wx/audio_dialog.cc
index 0f6bace25..748bd72d0 100644
--- a/src/wx/audio_dialog.cc
+++ b/src/wx/audio_dialog.cc
@@ -44,6 +44,9 @@ using boost::optional;
using boost::const_pointer_cast;
using boost::dynamic_pointer_cast;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
/** @param parent Parent window.
* @param film Film we are using.
diff --git a/src/wx/audio_mapping_view.cc b/src/wx/audio_mapping_view.cc
index e1c96fdeb..438b1e856 100644
--- a/src/wx/audio_mapping_view.cc
+++ b/src/wx/audio_mapping_view.cc
@@ -49,6 +49,9 @@ using std::pair;
using std::make_pair;
using boost::shared_ptr;
using boost::optional;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
using dcp::locale_convert;
#define INDICATOR_SIZE 20
diff --git a/src/wx/audio_panel.cc b/src/wx/audio_panel.cc
index 8c3d6f6ca..76dcbad67 100644
--- a/src/wx/audio_panel.cc
+++ b/src/wx/audio_panel.cc
@@ -46,6 +46,9 @@ using std::pair;
using boost::dynamic_pointer_cast;
using boost::shared_ptr;
using boost::optional;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
AudioPanel::AudioPanel (ContentPanel* p)
: ContentSubPanel (p, _("Audio"))
diff --git a/src/wx/barco_alchemy_certificate_panel.cc b/src/wx/barco_alchemy_certificate_panel.cc
index d105b4a9c..a1d6167aa 100644
--- a/src/wx/barco_alchemy_certificate_panel.cc
+++ b/src/wx/barco_alchemy_certificate_panel.cc
@@ -27,6 +27,9 @@
using std::string;
using boost::optional;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
BarcoAlchemyCertificatePanel::BarcoAlchemyCertificatePanel (DownloadCertificateDialog* dialog)
: CredentialsDownloadCertificatePanel (
diff --git a/src/wx/christie_certificate_panel.cc b/src/wx/christie_certificate_panel.cc
index 2a42a178e..c4584ed3c 100644
--- a/src/wx/christie_certificate_panel.cc
+++ b/src/wx/christie_certificate_panel.cc
@@ -28,6 +28,9 @@
using std::string;
using boost::optional;
using boost::bind;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
ChristieCertificatePanel::ChristieCertificatePanel (DownloadCertificateDialog* dialog)
: CredentialsDownloadCertificatePanel (
diff --git a/src/wx/cinema_dialog.cc b/src/wx/cinema_dialog.cc
index 04391774b..a4372ae77 100644
--- a/src/wx/cinema_dialog.cc
+++ b/src/wx/cinema_dialog.cc
@@ -31,6 +31,9 @@ using std::back_inserter;
using std::list;
using std::cout;
using boost::bind;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
static string
column (string s)
diff --git a/src/wx/config_dialog.cc b/src/wx/config_dialog.cc
index 352c8ae48..7a4bb92c9 100644
--- a/src/wx/config_dialog.cc
+++ b/src/wx/config_dialog.cc
@@ -36,6 +36,9 @@ using boost::bind;
using boost::optional;
using boost::shared_ptr;
using boost::function;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
static
bool
diff --git a/src/wx/confirm_kdm_email_dialog.cc b/src/wx/confirm_kdm_email_dialog.cc
index df6131fe1..5b0c1510f 100644
--- a/src/wx/confirm_kdm_email_dialog.cc
+++ b/src/wx/confirm_kdm_email_dialog.cc
@@ -27,6 +27,9 @@
using std::list;
using std::string;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
ConfirmKDMEmailDialog::ConfirmKDMEmailDialog (wxWindow* parent, list<string> emails)
: QuestionDialog (parent, _("Confirm KDM email"), _("Send emails"), _("Don't send emails"))
diff --git a/src/wx/content_panel.cc b/src/wx/content_panel.cc
index ef770484c..3a162d771 100644
--- a/src/wx/content_panel.cc
+++ b/src/wx/content_panel.cc
@@ -62,6 +62,9 @@ using boost::weak_ptr;
using boost::dynamic_pointer_cast;
using boost::optional;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
class LimitedSplitter : public wxSplitterWindow
{
diff --git a/src/wx/content_sub_panel.cc b/src/wx/content_sub_panel.cc
index e4adc685b..8cf04b93c 100644
--- a/src/wx/content_sub_panel.cc
+++ b/src/wx/content_sub_panel.cc
@@ -30,6 +30,9 @@
using std::list;
using std::string;
using boost::shared_ptr;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
ContentSubPanel::ContentSubPanel (ContentPanel* p, wxString name)
: wxScrolledWindow (p->notebook(), wxID_ANY)
diff --git a/src/wx/content_widget.h b/src/wx/content_widget.h
index de7ebedc5..52a5e5851 100644
--- a/src/wx/content_widget.h
+++ b/src/wx/content_widget.h
@@ -108,7 +108,11 @@ public:
update_from_model ();
for (typename List::iterator i = _content.begin(); i != _content.end(); ++i) {
+#if BOOST_VERSION >= 106100
+ _connections.push_back ((*i)->Change.connect (boost::bind (&ContentWidget::model_changed, this, boost::placeholders::_1, boost::placeholders::_3)));
+#else
_connections.push_back ((*i)->Change.connect (boost::bind (&ContentWidget::model_changed, this, _1, _3)));
+#endif
}
}
diff --git a/src/wx/dcp_panel.cc b/src/wx/dcp_panel.cc
index bed9b97a0..5046c5104 100644
--- a/src/wx/dcp_panel.cc
+++ b/src/wx/dcp_panel.cc
@@ -59,6 +59,9 @@ using std::make_pair;
using boost::lexical_cast;
using boost::shared_ptr;
using boost::weak_ptr;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
using dcp::locale_convert;
DCPPanel::DCPPanel (wxNotebook* n, shared_ptr<Film> film, weak_ptr<FilmViewer> viewer)
diff --git a/src/wx/dolby_doremi_certificate_panel.cc b/src/wx/dolby_doremi_certificate_panel.cc
index 0ad3058c2..e30ef30a4 100644
--- a/src/wx/dolby_doremi_certificate_panel.cc
+++ b/src/wx/dolby_doremi_certificate_panel.cc
@@ -36,6 +36,9 @@ using std::cout;
using std::list;
using boost::function;
using boost::optional;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
using dcp::raw_convert;
DolbyDoremiCertificatePanel::DolbyDoremiCertificatePanel (DownloadCertificateDialog* dialog)
diff --git a/src/wx/editable_list.h b/src/wx/editable_list.h
index ca58009a4..58d0e3885 100644
--- a/src/wx/editable_list.h
+++ b/src/wx/editable_list.h
@@ -136,7 +136,11 @@ public:
_list->Bind (wxEVT_COMMAND_LIST_ITEM_SELECTED, boost::bind (&EditableList::selection_changed, this));
_list->Bind (wxEVT_COMMAND_LIST_ITEM_DESELECTED, boost::bind (&EditableList::selection_changed, this));
+#if BOOST_VERSION >= 106100
+ _list->Bind (wxEVT_SIZE, boost::bind (&EditableList::resized, this, boost::placeholders::_1));
+#else
_list->Bind (wxEVT_SIZE, boost::bind (&EditableList::resized, this, _1));
+#endif
refresh ();
selection_changed ();
diff --git a/src/wx/film_editor.cc b/src/wx/film_editor.cc
index 894d1d4bf..c0d383821 100644
--- a/src/wx/film_editor.cc
+++ b/src/wx/film_editor.cc
@@ -41,6 +41,9 @@ using std::list;
using boost::shared_ptr;
using boost::weak_ptr;
using boost::optional;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
FilmEditor::FilmEditor (wxWindow* parent, weak_ptr<FilmViewer> viewer)
: wxPanel (parent)
diff --git a/src/wx/film_viewer.cc b/src/wx/film_viewer.cc
index 5f609856f..151b578cd 100644
--- a/src/wx/film_viewer.cc
+++ b/src/wx/film_viewer.cc
@@ -69,6 +69,9 @@ using boost::shared_ptr;
using boost::dynamic_pointer_cast;
using boost::weak_ptr;
using boost::optional;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
using dcp::Size;
using namespace dcpomatic;
diff --git a/src/wx/focus_manager.cc b/src/wx/focus_manager.cc
index e10075f3a..b530f7481 100644
--- a/src/wx/focus_manager.cc
+++ b/src/wx/focus_manager.cc
@@ -24,6 +24,10 @@ DCPOMATIC_DISABLE_WARNINGS
#include <wx/textctrl.h>
DCPOMATIC_ENABLE_WARNINGS
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
+
FocusManager* FocusManager::_instance;
FocusManager *
diff --git a/src/wx/full_config_dialog.cc b/src/wx/full_config_dialog.cc
index af1592d26..508d06c67 100644
--- a/src/wx/full_config_dialog.cc
+++ b/src/wx/full_config_dialog.cc
@@ -71,6 +71,9 @@ using boost::bind;
using boost::shared_ptr;
using boost::function;
using boost::optional;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
using dcp::locale_convert;
class FullGeneralPage : public GeneralPage
diff --git a/src/wx/gdc_certificate_panel.cc b/src/wx/gdc_certificate_panel.cc
index ffd7de52f..bc1087fd1 100644
--- a/src/wx/gdc_certificate_panel.cc
+++ b/src/wx/gdc_certificate_panel.cc
@@ -28,6 +28,9 @@
using std::string;
using boost::optional;
using boost::bind;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
GDCCertificatePanel::GDCCertificatePanel (DownloadCertificateDialog* dialog)
: CredentialsDownloadCertificatePanel (
diff --git a/src/wx/hints_dialog.cc b/src/wx/hints_dialog.cc
index c98cbae07..9ceefda4a 100644
--- a/src/wx/hints_dialog.cc
+++ b/src/wx/hints_dialog.cc
@@ -39,6 +39,9 @@ using boost::shared_ptr;
using boost::optional;
using boost::bind;
using boost::dynamic_pointer_cast;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
HintsDialog::HintsDialog (wxWindow* parent, boost::weak_ptr<Film> film, bool ok)
: wxDialog (parent, wxID_ANY, _("Hints"))
diff --git a/src/wx/html_dialog.cc b/src/wx/html_dialog.cc
index 873aa718c..57038f77f 100644
--- a/src/wx/html_dialog.cc
+++ b/src/wx/html_dialog.cc
@@ -29,6 +29,10 @@ DCPOMATIC_DISABLE_WARNINGS
DCPOMATIC_ENABLE_WARNINGS
#include <iostream>
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
+
HTMLDialog::HTMLDialog (wxWindow* parent, wxString title, wxString html)
: wxDialog (parent, wxID_ANY, title)
{
diff --git a/src/wx/job_manager_view.cc b/src/wx/job_manager_view.cc
index 42d5f9dbe..a0430ca81 100644
--- a/src/wx/job_manager_view.cc
+++ b/src/wx/job_manager_view.cc
@@ -42,6 +42,9 @@ using std::cout;
using boost::shared_ptr;
using boost::weak_ptr;
using boost::bind;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
/** @param parent Parent window.
* @param batch true to use BatchJobView, false to use NormalJobView.
diff --git a/src/wx/kdm_dialog.cc b/src/wx/kdm_dialog.cc
index d3bbf02c9..86326cbe6 100644
--- a/src/wx/kdm_dialog.cc
+++ b/src/wx/kdm_dialog.cc
@@ -51,6 +51,9 @@ using std::runtime_error;
using boost::shared_ptr;
using boost::bind;
using boost::optional;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
KDMDialog::KDMDialog (wxWindow* parent, shared_ptr<const Film> film)
: wxDialog (parent, wxID_ANY, _("Make KDMs"))
diff --git a/src/wx/nag_dialog.cc b/src/wx/nag_dialog.cc
index abe460869..a4c881039 100644
--- a/src/wx/nag_dialog.cc
+++ b/src/wx/nag_dialog.cc
@@ -25,6 +25,9 @@
#include <boost/foreach.hpp>
using boost::shared_ptr;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
NagDialog::NagDialog (wxWindow* parent, Config::Nag nag, wxString message, bool can_cancel)
: wxDialog (parent, wxID_ANY, _("Important notice"))
diff --git a/src/wx/recreate_chain_dialog.cc b/src/wx/recreate_chain_dialog.cc
index ae6afdd08..322d5964c 100644
--- a/src/wx/recreate_chain_dialog.cc
+++ b/src/wx/recreate_chain_dialog.cc
@@ -28,6 +28,9 @@
using std::list;
using std::string;
using boost::optional;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
RecreateChainDialog::RecreateChainDialog (wxWindow* parent, wxString title, wxString message, wxString cancel, optional<Config::Nag> nag)
: QuestionDialog (parent, _("Certificate chain"), title, cancel)
diff --git a/src/wx/save_template_dialog.cc b/src/wx/save_template_dialog.cc
index 691d37a1a..044006350 100644
--- a/src/wx/save_template_dialog.cc
+++ b/src/wx/save_template_dialog.cc
@@ -24,6 +24,9 @@
#include <boost/foreach.hpp>
using std::string;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
SaveTemplateDialog::SaveTemplateDialog (wxWindow* parent)
: TableDialog (parent, _("Save template"), 2, 1, true)
diff --git a/src/wx/screen_dialog.cc b/src/wx/screen_dialog.cc
index bc7065f29..f6245f010 100644
--- a/src/wx/screen_dialog.cc
+++ b/src/wx/screen_dialog.cc
@@ -41,6 +41,9 @@ using std::cout;
using std::vector;
using boost::optional;
using boost::bind;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
static string
column (TrustedDevice d)
diff --git a/src/wx/subtitle_appearance_dialog.cc b/src/wx/subtitle_appearance_dialog.cc
index 6d905292e..46edacd97 100644
--- a/src/wx/subtitle_appearance_dialog.cc
+++ b/src/wx/subtitle_appearance_dialog.cc
@@ -44,6 +44,9 @@ using boost::bind;
using boost::dynamic_pointer_cast;
using boost::optional;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
int const SubtitleAppearanceDialog::NONE = 0;
int const SubtitleAppearanceDialog::OUTLINE = 1;
diff --git a/src/wx/templates_dialog.cc b/src/wx/templates_dialog.cc
index 4ddd3ad92..53eb2e422 100644
--- a/src/wx/templates_dialog.cc
+++ b/src/wx/templates_dialog.cc
@@ -28,6 +28,9 @@
using std::string;
using boost::bind;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
TemplatesDialog::TemplatesDialog (wxWindow* parent)
: wxDialog (parent, wxID_ANY, _("Templates"))
diff --git a/src/wx/text_view.cc b/src/wx/text_view.cc
index 271e02d41..66c144628 100644
--- a/src/wx/text_view.cc
+++ b/src/wx/text_view.cc
@@ -36,6 +36,9 @@ using boost::weak_ptr;
using boost::bind;
using boost::dynamic_pointer_cast;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
TextView::TextView (
wxWindow* parent, shared_ptr<Film> film, shared_ptr<Content> content, shared_ptr<TextContent> text, shared_ptr<Decoder> decoder, weak_ptr<FilmViewer> viewer
diff --git a/src/wx/timeline.cc b/src/wx/timeline.cc
index c9a6dc9f1..7b9758feb 100644
--- a/src/wx/timeline.cc
+++ b/src/wx/timeline.cc
@@ -56,6 +56,9 @@ using boost::dynamic_pointer_cast;
using boost::bind;
using boost::optional;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
/* 3 hours in 640 pixels */
double const Timeline::_minimum_pixels_per_second = 640.0 / (60 * 60 * 3);
diff --git a/src/wx/timeline_content_view.cc b/src/wx/timeline_content_view.cc
index 474b8d07f..2af1c28ac 100644
--- a/src/wx/timeline_content_view.cc
+++ b/src/wx/timeline_content_view.cc
@@ -28,6 +28,9 @@
using std::list;
using boost::shared_ptr;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
TimelineContentView::TimelineContentView (Timeline& tl, shared_ptr<Content> c)
: TimelineView (tl)
diff --git a/src/wx/timeline_dialog.cc b/src/wx/timeline_dialog.cc
index 0d0d4f9f9..261177e36 100644
--- a/src/wx/timeline_dialog.cc
+++ b/src/wx/timeline_dialog.cc
@@ -34,6 +34,9 @@ using std::cout;
using std::string;
using boost::shared_ptr;
using boost::weak_ptr;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
TimelineDialog::TimelineDialog (ContentPanel* cp, shared_ptr<Film> film, weak_ptr<FilmViewer> viewer)
: wxDialog (
diff --git a/src/wx/timing_panel.cc b/src/wx/timing_panel.cc
index 8db975d54..97f3beca6 100644
--- a/src/wx/timing_panel.cc
+++ b/src/wx/timing_panel.cc
@@ -54,6 +54,9 @@ using boost::shared_ptr;
using boost::weak_ptr;
using boost::dynamic_pointer_cast;
using boost::optional;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
using dcp::locale_convert;
using namespace dcpomatic;
diff --git a/src/wx/video_panel.cc b/src/wx/video_panel.cc
index 7a892bb74..5d82c17b3 100644
--- a/src/wx/video_panel.cc
+++ b/src/wx/video_panel.cc
@@ -56,6 +56,9 @@ using boost::dynamic_pointer_cast;
using boost::bind;
using boost::optional;
using namespace dcpomatic;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
VideoPanel::VideoPanel (ContentPanel* p)