Date: Tue, 24 Dec 2013 04:01:44 +0000 (UTC) From: Alexey Dokuchaev <danfe@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r337319 - head/audio/ardour/files Message-ID: <201312240401.rBO41if0095908@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: danfe Date: Tue Dec 24 04:01:44 2013 New Revision: 337319 URL: http://svnweb.freebsd.org/changeset/ports/337319 Log: - Add a proxy method to access protected IO::connecting_legal field from Session::add_routes(); no idea why it worked before with GCC 4.2 - Switch from using non-standard STL slist container (which is not available with libc++) to the one provided by boost::container::slist, it allows to build Ardour on all supported FreeBSD versions/compilers - Fix remaining cases of boost::shared_ptr to fix the build against Clang Added: head/audio/ardour/files/patch-gtk2_ardour-connection_editor.cc (contents, props changed) head/audio/ardour/files/patch-gtk2_ardour-connection_editor.h (contents, props changed) head/audio/ardour/files/patch-gtk2_ardour-io_selector.cc (contents, props changed) head/audio/ardour/files/patch-gtk2_ardour-io_selector.h (contents, props changed) head/audio/ardour/files/patch-libs-ardour-ardour-io.h (contents, props changed) head/audio/ardour/files/patch-libs-surfaces-mackie-mackie_control_protocol.cc (contents, props changed) Modified: head/audio/ardour/files/patch-libs-ardour-session.cc Added: head/audio/ardour/files/patch-gtk2_ardour-connection_editor.cc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/audio/ardour/files/patch-gtk2_ardour-connection_editor.cc Tue Dec 24 04:01:44 2013 (r337319) @@ -0,0 +1,23 @@ +--- gtk2_ardour/connection_editor.cc.orig ++++ gtk2_ardour/connection_editor.cc +@@ -502,9 +502,9 @@ ConnectionEditor::display_connection_sta + frame_label += _("\""); + port_frame.set_label (frame_label); + +- for (slist<ScrolledWindow *>::iterator i = port_displays.begin(); i != port_displays.end(); ) { ++ for (boost::container::slist<ScrolledWindow *>::iterator i = port_displays.begin(); i != port_displays.end(); ) { + +- slist<ScrolledWindow *>::iterator tmp; ++ boost::container::slist<ScrolledWindow *>::iterator tmp; + + tmp = i; + tmp++; +@@ -612,7 +612,7 @@ ConnectionEditor::connection_port_button + + tview->set_name ("ConnectionEditorPortListSelected"); + +- for (slist<ScrolledWindow *>::iterator i = port_displays.begin(); i != port_displays.end(); ++i) { ++ for (boost::container::slist<ScrolledWindow *>::iterator i = port_displays.begin(); i != port_displays.end(); ++i) { + + Widget *child = (*i)->get_child(); + Added: head/audio/ardour/files/patch-gtk2_ardour-connection_editor.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/audio/ardour/files/patch-gtk2_ardour-connection_editor.h Tue Dec 24 04:01:44 2013 (r337319) @@ -0,0 +1,25 @@ +--- gtk2_ardour/connection_editor.h.orig ++++ gtk2_ardour/connection_editor.h +@@ -20,12 +20,7 @@ + #ifndef __ardour_gtk_connection_editor_h__ + #define __ardour_gtk_connection_editor_h__ + +-#if __GNUC__ >= 3 +-#include <ext/slist> +-using __gnu_cxx::slist; +-#else +-#include <slist.h> +-#endif ++#include <boost/container/slist.hpp> + + #include <gtkmm/box.h> + #include <gtkmm/window.h> +@@ -116,7 +111,7 @@ class ConnectionEditor : public ArdourDi + Gtk::Button add_port_button; + + Glib::Mutex port_display_lock; +- slist<Gtk::ScrolledWindow *> port_displays; ++ boost::container::slist<Gtk::ScrolledWindow *> port_displays; + + Gtk::Button ok_button; + Gtk::Button cancel_button; Added: head/audio/ardour/files/patch-gtk2_ardour-io_selector.cc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/audio/ardour/files/patch-gtk2_ardour-io_selector.cc Tue Dec 24 04:01:44 2013 (r337319) @@ -0,0 +1,39 @@ +--- gtk2_ardour/io_selector.cc.orig ++++ gtk2_ardour/io_selector.cc +@@ -389,9 +389,9 @@ IOSelector::display_ports () + limit = io->n_outputs(); + } + +- for (slist<TreeView *>::iterator i = port_displays.begin(); i != port_displays.end(); ) { ++ for (boost::container::slist<TreeView *>::iterator i = port_displays.begin(); i != port_displays.end(); ) { + +- slist<TreeView *>::iterator tmp; ++ boost::container::slist<TreeView *>::iterator tmp; + + tmp = i; + ++tmp; +@@ -632,13 +632,13 @@ IOSelector::connection_button_release (G + void + IOSelector::select_next_treeview () + { +- slist<TreeView*>::iterator next; ++ boost::container::slist<TreeView*>::iterator next; + + if (port_displays.empty() || port_displays.size() == 1) { + return; + } + +- for (slist<TreeView *>::iterator i = port_displays.begin(); i != port_displays.end(); ++i) { ++ for (boost::container::slist<TreeView *>::iterator i = port_displays.begin(); i != port_displays.end(); ++i) { + + if ((*i)->get_name() == "IOSelectorPortListSelected") { + +@@ -681,7 +681,7 @@ IOSelector::select_treeview (TreeView* t + gtk_widget_queue_draw (ccol->button); + } + +- for (slist<TreeView*>::iterator i = port_displays.begin(); i != port_displays.end(); ++i) { ++ for (boost::container::slist<TreeView*>::iterator i = port_displays.begin(); i != port_displays.end(); ++i) { + if (*i == tview) { + continue; + } Added: head/audio/ardour/files/patch-gtk2_ardour-io_selector.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/audio/ardour/files/patch-gtk2_ardour-io_selector.h Tue Dec 24 04:01:44 2013 (r337319) @@ -0,0 +1,25 @@ +--- gtk2_ardour/io_selector.h.orig ++++ gtk2_ardour/io_selector.h +@@ -20,12 +20,7 @@ + #ifndef __ardour_ui_io_selector_h__ + #define __ardour_ui_io_selector_h__ + +-#if __GNUC__ >= 3 +-#include <ext/slist> +-using __gnu_cxx::slist; +-#else +-#include <slist.h> +-#endif ++#include <boost/container/slist.hpp> + + #include <string> + +@@ -110,7 +105,7 @@ class IOSelector : public Gtk::VBox { + Gtk::ScrolledWindow port_display_scroller; + + Glib::Mutex port_display_lock; +- slist<Gtk::TreeView *> port_displays; ++ boost::container::slist<Gtk::TreeView *> port_displays; + void display_ports (); + + void rescan (); Added: head/audio/ardour/files/patch-libs-ardour-ardour-io.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/audio/ardour/files/patch-libs-ardour-ardour-io.h Tue Dec 24 04:01:44 2013 (r337319) @@ -0,0 +1,13 @@ +--- libs/ardour/ardour/io.h.orig ++++ libs/ardour/ardour/io.h +@@ -288,6 +288,10 @@ class IO : public PBD::StatefulDestructi + XMLNode *pending_state_node; + int ports_became_legal (); + ++ static bool connecting_is_legal() { ++ return connecting_legal; ++ } ++ + private: + mutable Glib::Mutex io_lock; + Modified: head/audio/ardour/files/patch-libs-ardour-session.cc ============================================================================== --- head/audio/ardour/files/patch-libs-ardour-session.cc Tue Dec 24 03:30:22 2013 (r337318) +++ head/audio/ardour/files/patch-libs-ardour-session.cc Tue Dec 24 04:01:44 2013 (r337319) @@ -162,6 +162,15 @@ r->insert (r->end(), new_routes.begin(), new_routes.end()); resort_routes_using (r); } +@@ -2150,7 +2149,7 @@ Session::add_routes (RouteList& new_rout + } + } + +- if (_control_out && IO::connecting_legal) { ++ if (_control_out && IO::connecting_is_legal()) { + + vector<string> cports; + uint32_t ni = _control_out->n_inputs(); @@ -2198,14 +2197,14 @@ Session::add_diskstream (boost::shared_p } Added: head/audio/ardour/files/patch-libs-surfaces-mackie-mackie_control_protocol.cc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/audio/ardour/files/patch-libs-surfaces-mackie-mackie_control_protocol.cc Tue Dec 24 04:01:44 2013 (r337319) @@ -0,0 +1,29 @@ +--- libs/surfaces/mackie/mackie_control_protocol.cc.orig ++++ libs/surfaces/mackie/mackie_control_protocol.cc +@@ -64,8 +64,6 @@ using namespace sigc; + using namespace Mackie; + using namespace PBD; + +-using boost::shared_ptr; +- + #include "i18n.h" + + MackieMidiBuilder builder; +@@ -200,7 +198,7 @@ MackieControlProtocol::port_for_id( uint + // predicate for sort call in get_sorted_routes + struct RouteByRemoteId + { +- bool operator () ( const shared_ptr<Route> & a, const shared_ptr<Route> & b ) const { ++ bool operator () ( const boost::shared_ptr<Route> & a, const boost::shared_ptr<Route> & b ) const { + return a->remote_control_id() < b->remote_control_id(); + } + +@@ -680,7 +678,7 @@ MackieControlProtocol::create_ports() + } + } + +-shared_ptr<Route> ++boost::shared_ptr<Route> + MackieControlProtocol::master_route() + { + boost::shared_ptr<IO> mo = session->master_out ();
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201312240401.rBO41if0095908>