aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2016-09-26 10:47:58 +0200
committerRicardo Wurmus <rekado@elephly.net>2016-09-26 10:47:58 +0200
commit204adc301785073bc07a936d4f3c494876f68449 (patch)
tree0c680669c74ace0ec1bbc614d48df8ec877334ae
parent3ef08dceb3689470191e2c74758efc3d3c4219f3 (diff)
downloadguix-204adc301785073bc07a936d4f3c494876f68449.tar
guix-204adc301785073bc07a936d4f3c494876f68449.tar.gz
gnu: azr3: Fix libsigc++ build errors.
* gnu/packages/audio.scm (azr3)[arguments]: Add "-std=gnu++11" flag. [source]: Add patch. * gnu/packages/patches/azr3.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/audio.scm5
-rw-r--r--gnu/packages/patches/azr3.patch151
3 files changed, 156 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 2f06ec46f6..c2cdf8b448 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -458,6 +458,7 @@ dist_patch_DATA = \
%D%/packages/patches/avahi-localstatedir.patch \
%D%/packages/patches/avidemux-install-to-lib.patch \
%D%/packages/patches/awesome-reproducible-png.patch \
+ %D%/packages/patches/azr3.patch \
%D%/packages/patches/bash-completion-directories.patch \
%D%/packages/patches/bigloo-gc-shebangs.patch \
%D%/packages/patches/binutils-ld-new-dtags.patch \
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index d818216047..9699a55030 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -266,12 +266,15 @@ engineers, musicians, soundtrack editors and composers.")
".tar.bz2"))
(sha256
(base32
- "18mdw6nc0vgj6k9rsy0x8w64wvzld0frqshrxxbxfj9qi9843vlc"))))
+ "18mdw6nc0vgj6k9rsy0x8w64wvzld0frqshrxxbxfj9qi9843vlc"))
+ (patches (search-patches "azr3.patch"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no check target
#:make-flags
(list "LV2PEG=ttl2c"
+ "CXXFLAGS=-std=gnu++11"
+ "CFLAGS=-std=gnu++11"
(string-append "prefix=" %output)
(string-append "pkgdatadir=" %output "/share/azr3-jack"))))
(inputs
diff --git a/gnu/packages/patches/azr3.patch b/gnu/packages/patches/azr3.patch
new file mode 100644
index 0000000000..5849383c5b
--- /dev/null
+++ b/gnu/packages/patches/azr3.patch
@@ -0,0 +1,151 @@
+This patch adds the "sigc" and "std" namespace prefixes where needed. It also
+replaces a double single-argument "bind" with a single two-argument "bind",
+because the former would confuse the compiler.
+
+The patch has been sent to the developer on 2016-09-26.
+
+--- azr3-jack-1.2.3/azr3/knob.cpp 2016-09-26 10:29:27.653375902 +0200
++++ azr3-jack-1.2.3/azr3/knob.cpp 2016-09-26 10:29:38.693430647 +0200
+@@ -44,7 +44,7 @@
+ set_size_request(44, 44);
+ add_events(EXPOSURE_MASK | BUTTON1_MOTION_MASK |
+ BUTTON_PRESS_MASK | SCROLL_MASK);
+- m_adj.signal_value_changed().connect(mem_fun(*this, &Knob::queue_draw));
++ m_adj.signal_value_changed().connect(sigc::mem_fun(*this, &Knob::queue_draw));
+ }
+
+
+--- azr3-jack-1.2.3/azr3/drawbar.cpp 2016-09-26 10:27:40.632845216 +0200
++++ azr3-jack-1.2.3/azr3/drawbar.cpp 2016-09-26 10:27:48.952886473 +0200
+@@ -37,7 +37,7 @@
+ set_size_request(22, 150);
+ add_events(EXPOSURE_MASK | BUTTON1_MOTION_MASK |
+ BUTTON_PRESS_MASK | SCROLL_MASK);
+- m_adj.signal_value_changed().connect(mem_fun(*this, &Drawbar::queue_draw));
++ m_adj.signal_value_changed().connect(sigc::mem_fun(*this, &Drawbar::queue_draw));
+ }
+
+
+--- azr3-jack-1.2.3/azr3/switch.cpp 2016-09-26 10:28:48.169180111 +0200
++++ azr3-jack-1.2.3/azr3/switch.cpp 2016-09-26 10:28:55.713217520 +0200
+@@ -49,7 +49,7 @@
+ }
+ set_size_request(m_width, m_height);
+ add_events(EXPOSURE_MASK | BUTTON_PRESS_MASK | SCROLL_MASK);
+- m_adj.signal_value_changed().connect(mem_fun(*this, &Switch::queue_draw));
++ m_adj.signal_value_changed().connect(sigc::mem_fun(*this, &Switch::queue_draw));
+ }
+
+
+--- azr3-jack-1.2.3/azr3/azr3gui.cpp 2016-09-26 09:05:10.106963561 +0200
++++ azr3-jack-1.2.3/azr3/azr3gui.cpp 2016-09-26 10:26:47.480581648 +0200
+@@ -73,19 +73,19 @@
+ m_tbox = add_textbox(m_fbox, pixmap, 391, 19, 3, 140, 39);
+ m_tbox->add_events(SCROLL_MASK);
+ m_tbox->signal_scroll_display.
+- connect(mem_fun(*this, &AZR3GUI::display_scroll));
++ connect(sigc::mem_fun(*this, &AZR3GUI::display_scroll));
+ m_splitpoint_adj = new Adjustment(0, 0, 1);
+ m_adj[n_splitpoint] = m_splitpoint_adj;
+ m_splitpoint_adj->signal_value_changed().
+- connect(mem_fun(*this, &AZR3GUI::splitpoint_changed));
++ connect(sigc::mem_fun(*this, &AZR3GUI::splitpoint_changed));
+ Menu* menu = create_menu();
+ m_tbox->signal_button_press_event().
+- connect(bind(mem_fun(*this, &AZR3GUI::popup_menu), menu));
++ connect(sigc::bind(sigc::mem_fun(*this, &AZR3GUI::popup_menu), menu));
+
+ // keyboard split switch
+ m_splitswitch = add_switch(m_fbox, -1, 537, 49, Switch::Mini);
+ m_splitswitch->get_adjustment().signal_value_changed().
+- connect(mem_fun(*this, &AZR3GUI::splitbox_clicked));
++ connect(sigc::mem_fun(*this, &AZR3GUI::splitbox_clicked));
+
+ // upper knobs
+ add_switch(m_fbox, n_mono, 61, 105, Switch::Mini);
+@@ -141,8 +141,8 @@
+ // mode switcher
+ Widget* eb = add_clickbox(m_fbox, 14, 319, 14, 44);
+ eb->signal_button_press_event().
+- connect(sigc::hide(bind(bind(mem_fun(*this, &AZR3GUI::change_mode),
+- ref(m_fbox)), false)));
++ connect(sigc::hide(sigc::bind(sigc::mem_fun(*this, &AZR3GUI::change_mode),
++ false, std::ref(m_fbox))));
+ m_fx_widgets.push_back(eb);
+
+ // Mr Valve controls
+@@ -182,8 +182,8 @@
+ // mode switcher 2
+ Widget* eb2 = add_clickbox(m_vbox, 14, 53, 14, 44);
+ eb2->signal_button_press_event().
+- connect(sigc::hide(bind(bind(mem_fun(*this, &AZR3GUI::change_mode),
+- ref(m_fbox)), true)));
++ connect(sigc::hide(sigc::bind(sigc::mem_fun(*this, &AZR3GUI::change_mode),
++ true, std::ref(m_fbox))));
+
+ // vibrato controls
+ add_switch(m_vbox, n_1_vibrato, 39, 17, Switch::Green);
+@@ -352,9 +352,9 @@
+ knob->set_style(s);
+ if (port >= 0 && port < m_adj.size()) {
+ knob->get_adjustment().signal_value_changed().
+- connect(compose(bind<0>(mem_fun(*this, &AZR3GUI::control_changed), port),
+- mem_fun(knob->get_adjustment(),
+- &Adjustment::get_value)));
++ connect(compose(sigc::bind<0>(sigc::mem_fun(*this, &AZR3GUI::control_changed), port),
++ sigc::mem_fun(knob->get_adjustment(),
++ &Adjustment::get_value)));
+ assert(m_adj[port] == 0);
+ m_adj[port] = &knob->get_adjustment();
+ }
+@@ -382,8 +382,8 @@
+ db->set_style(s);
+ if (port >= 0 && port < m_adj.size()) {
+ db->get_adjustment().signal_value_changed().
+- connect(compose(bind<0>(mem_fun(*this, &AZR3GUI::control_changed), port),
+- mem_fun(db->get_adjustment(), &Adjustment::get_value)));
++ connect(compose(sigc::bind<0>(sigc::mem_fun(*this, &AZR3GUI::control_changed), port),
++ sigc::mem_fun(db->get_adjustment(), &Adjustment::get_value)));
+ assert(m_adj[port] == 0);
+ m_adj[port] = &db->get_adjustment();
+ }
+@@ -397,8 +397,8 @@
+ fbox.put(*sw, xoffset, yoffset);
+ if (port >= 0 && port < m_adj.size()) {
+ sw->get_adjustment().signal_value_changed().
+- connect(compose(bind<0>(mem_fun(*this, &AZR3GUI::control_changed),port),
+- mem_fun(sw->get_adjustment(), &Adjustment::get_value)));
++ connect(compose(sigc::bind<0>(sigc::mem_fun(*this, &AZR3GUI::control_changed),port),
++ sigc::mem_fun(sw->get_adjustment(), &Adjustment::get_value)));
+ assert(m_adj[port] == 0);
+ m_adj[port] = &sw->get_adjustment();
+ }
+@@ -489,7 +489,7 @@
+ oss<<setw(2)<<setfill('0')<<iter->first<<' '<<iter->second.substr(0, 23);
+ MenuItem* item = manage(new MenuItem(oss.str()));
+ item->signal_activate().
+- connect(bind(mem_fun(*this, &AZR3GUI::program_changed), iter->first));
++ connect(sigc::bind(sigc::mem_fun(*this, &AZR3GUI::program_changed), iter->first));
+ m_program_menu->items().push_back(*item);
+ item->show();
+ item->get_child()->modify_bg(STATE_NORMAL, m_menu_bg);
+@@ -503,8 +503,8 @@
+ for (int i = 0; i < 128; ++i) {
+ MenuItem* item = manage(new MenuItem(note2str(i)));
+ item->signal_activate().
+- connect(bind(mem_fun(*m_splitpoint_adj, &Adjustment::set_value),
+- i / 128.0));
++ connect(sigc::bind(sigc::mem_fun(*m_splitpoint_adj, &Adjustment::set_value),
++ i / 128.0));
+ m_split_menu->items().push_back(*item);
+ item->show();
+ item->get_child()->modify_bg(STATE_NORMAL, m_menu_bg);
+@@ -533,7 +533,7 @@
+
+ MenuItem* save_item = manage(new MenuItem("Save program"));
+ save_item->signal_activate().
+- connect(mem_fun(*this, &AZR3GUI::save_program));
++ connect(sigc::mem_fun(*this, &AZR3GUI::save_program));
+ save_item->show();
+ save_item->get_child()->modify_fg(STATE_NORMAL, m_menu_bg);
+ save_item->get_child()->modify_fg(STATE_NORMAL, m_menu_fg);