mirror of
https://github.com/Ponce/slackbuilds
synced 2024-10-01 06:32:51 +02:00
audio/sooperlooper: Updated for version 1.7.2.
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
parent
538723a8c7
commit
a690951e27
4 changed files with 203 additions and 4 deletions
177
audio/sooperlooper/04-build_with_wx_30.patch
Normal file
177
audio/sooperlooper/04-build_with_wx_30.patch
Normal file
|
@ -0,0 +1,177 @@
|
|||
Author: Jaromír Mikeš <mira.mikes@seznam.cz>, Olly Betts <olly@survex.com>
|
||||
Description: build against wx 3.0.
|
||||
Forwarded: yes
|
||||
|
||||
Index: sooperlooper/src/gui/main_panel.cpp
|
||||
===================================================================
|
||||
--- sooperlooper.orig/src/gui/main_panel.cpp
|
||||
+++ sooperlooper/src/gui/main_panel.cpp
|
||||
@@ -448,7 +448,7 @@ MainPanel::init_loopers (int count)
|
||||
while (count < (int)_looper_panels.size()) {
|
||||
looperpan = _looper_panels.back();
|
||||
_looper_panels.pop_back();
|
||||
- _main_sizer->Remove(looperpan);
|
||||
+ _main_sizer->Detach(looperpan);
|
||||
looperpan->Destroy();
|
||||
}
|
||||
}
|
||||
@@ -1277,7 +1277,7 @@ void MainPanel::misc_action (bool releas
|
||||
}
|
||||
|
||||
|
||||
- wxString filename = do_file_selector (wxT("Choose file to save loop"), wxT("wav"), wxT("WAVE files (*.wav)|*.wav;*.WAV;*.Wav"), wxSAVE|wxCHANGE_DIR|wxOVERWRITE_PROMPT);
|
||||
+ wxString filename = do_file_selector (wxT("Choose file to save loop"), wxT("wav"), wxT("WAVE files (*.wav)|*.wav;*.WAV;*.Wav"), wxFD_SAVE|wxFD_CHANGE_DIR|wxFD_OVERWRITE_PROMPT);
|
||||
|
||||
if ( !filename.empty() )
|
||||
{
|
||||
@@ -1296,7 +1296,7 @@ void MainPanel::misc_action (bool releas
|
||||
index = 0;
|
||||
}
|
||||
|
||||
- wxString filename = do_file_selector (wxT("Choose file to open"), wxT(""), wxT("*.slsess"), wxOPEN|wxCHANGE_DIR);
|
||||
+ wxString filename = do_file_selector (wxT("Choose file to open"), wxT(""), wxT("*.slsess"), wxFD_OPEN|wxFD_CHANGE_DIR);
|
||||
|
||||
if ( !filename.empty() )
|
||||
{
|
||||
@@ -1408,7 +1408,7 @@ void MainPanel::set_curr_loop (int index
|
||||
|
||||
void MainPanel::do_load_session ()
|
||||
{
|
||||
- wxString filename = do_file_selector (wxT("Choose session to load"), wxT("*.slsess"), wxT("*.slsess"), wxOPEN|wxCHANGE_DIR);
|
||||
+ wxString filename = do_file_selector (wxT("Choose session to load"), wxT("*.slsess"), wxT("*.slsess"), wxFD_OPEN|wxFD_CHANGE_DIR);
|
||||
|
||||
if ( !filename.empty() )
|
||||
{
|
||||
@@ -1419,7 +1419,7 @@ void MainPanel::do_load_session ()
|
||||
|
||||
void MainPanel::do_save_session (bool write_audio)
|
||||
{
|
||||
- wxString filename = do_file_selector (wxT("Choose file to save session"), wxT("slsess"), wxT("*.slsess"), wxSAVE|wxCHANGE_DIR|wxOVERWRITE_PROMPT);
|
||||
+ wxString filename = do_file_selector (wxT("Choose file to save session"), wxT("slsess"), wxT("*.slsess"), wxFD_SAVE|wxFD_CHANGE_DIR|wxFD_OVERWRITE_PROMPT);
|
||||
|
||||
if ( !filename.empty() )
|
||||
{
|
||||
Index: sooperlooper/src/gui/pix_button.cpp
|
||||
===================================================================
|
||||
--- sooperlooper.orig/src/gui/pix_button.cpp
|
||||
+++ sooperlooper/src/gui/pix_button.cpp
|
||||
@@ -250,7 +250,7 @@ PixButton::OnMouseEvents (wxMouseEvent &
|
||||
pt.x += bounds.x;
|
||||
pt.y += bounds.y;
|
||||
|
||||
- if (bounds.Inside(pt)) {
|
||||
+ if (bounds.Contains(pt)) {
|
||||
clicked (get_mouse_button(ev)); // emit
|
||||
|
||||
if (ev.MiddleUp() && ev.ControlDown()) {
|
||||
Index: sooperlooper/src/gui/looper_panel.cpp
|
||||
===================================================================
|
||||
--- sooperlooper.orig/src/gui/looper_panel.cpp
|
||||
+++ sooperlooper/src/gui/looper_panel.cpp
|
||||
@@ -1428,7 +1428,7 @@ LooperPanel::clicked_events (int button,
|
||||
if (cmd == wxT("save"))
|
||||
{
|
||||
wxString filename = _mainpanel->do_file_selector (wxT("Choose file to save loop"),
|
||||
- wxT("wav"), wxT("WAVE files (*.wav)|*.wav;*.WAV;*.Wav"), wxSAVE|wxCHANGE_DIR|wxOVERWRITE_PROMPT);
|
||||
+ wxT("wav"), wxT("WAVE files (*.wav)|*.wav;*.WAV;*.Wav"), wxFD_SAVE|wxFD_CHANGE_DIR|wxFD_OVERWRITE_PROMPT);
|
||||
|
||||
if ( !filename.empty() )
|
||||
{
|
||||
@@ -1442,7 +1442,7 @@ LooperPanel::clicked_events (int button,
|
||||
}
|
||||
else if (cmd == wxT("load"))
|
||||
{
|
||||
- wxString filename = _mainpanel->do_file_selector(wxT("Choose file to open"), wxT(""), wxT("Audio files (*.wav,*.aif)|*.wav;*.WAV;*.Wav;*.aif;*.aiff;*.AIF;*.AIFF|All files (*.*)|*.*"), wxOPEN|wxCHANGE_DIR);
|
||||
+ wxString filename = _mainpanel->do_file_selector(wxT("Choose file to open"), wxT(""), wxT("Audio files (*.wav,*.aif)|*.wav;*.WAV;*.Wav;*.aif;*.aiff;*.AIF;*.AIFF|All files (*.*)|*.*"), wxFD_OPEN|wxFD_CHANGE_DIR);
|
||||
|
||||
if ( !filename.empty() )
|
||||
{
|
||||
Index: sooperlooper/src/gui/keyboard_target.cpp
|
||||
===================================================================
|
||||
--- sooperlooper.orig/src/gui/keyboard_target.cpp
|
||||
+++ sooperlooper/src/gui/keyboard_target.cpp
|
||||
@@ -553,10 +553,10 @@ KeyboardTarget::keycode_from_name (const
|
||||
keycode = WXK_RETURN;
|
||||
}
|
||||
else if ( keyname == wxT("PGUP") ) {
|
||||
- keycode = WXK_PRIOR;
|
||||
+ keycode = WXK_PAGEUP;
|
||||
}
|
||||
else if ( keyname == wxT("PGDN") ) {
|
||||
- keycode = WXK_NEXT;
|
||||
+ keycode = WXK_PAGEDOWN;
|
||||
}
|
||||
else if ( keyname == wxT("LEFT") ) {
|
||||
keycode = WXK_LEFT;
|
||||
@@ -630,10 +630,10 @@ wxString KeyboardTarget::name_from_keyco
|
||||
case WXK_RETURN:
|
||||
text += wxT("return");
|
||||
break;
|
||||
- case WXK_PRIOR:
|
||||
+ case WXK_PAGEUP:
|
||||
text += wxT("pageup");
|
||||
break;
|
||||
- case WXK_NEXT:
|
||||
+ case WXK_PAGEDOWN:
|
||||
text += wxT("pagedown");
|
||||
break;
|
||||
case WXK_LEFT:
|
||||
Index: sooperlooper/src/gui/check_box.cpp
|
||||
===================================================================
|
||||
--- sooperlooper.orig/src/gui/check_box.cpp
|
||||
+++ sooperlooper/src/gui/check_box.cpp
|
||||
@@ -237,7 +237,7 @@ CheckBox::OnMouseEvents (wxMouseEvent &e
|
||||
}
|
||||
else if (ev.LeftUp())
|
||||
{
|
||||
- if (bounds.Inside(ev.GetPosition())) {
|
||||
+ if (bounds.Contains(ev.GetPosition())) {
|
||||
// toggle value
|
||||
_value = !_value;
|
||||
|
||||
Index: sooperlooper/src/gui/midi_bind_panel.cpp
|
||||
===================================================================
|
||||
--- sooperlooper.orig/src/gui/midi_bind_panel.cpp
|
||||
+++ sooperlooper/src/gui/midi_bind_panel.cpp
|
||||
@@ -880,7 +880,7 @@ void MidiBindPanel::on_button (wxCommand
|
||||
}
|
||||
else if (ev.GetId() == ID_LoadButton)
|
||||
{
|
||||
- wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to open"), wxT(""), wxT("*.slb"), wxOPEN|wxCHANGE_DIR);
|
||||
+ wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to open"), wxT(""), wxT("*.slb"), wxFD_OPEN|wxFD_CHANGE_DIR);
|
||||
if ( !filename.empty() )
|
||||
{
|
||||
_parent->get_loop_control().load_midi_bindings(filename, _append_check->GetValue());
|
||||
@@ -888,7 +888,7 @@ void MidiBindPanel::on_button (wxCommand
|
||||
}
|
||||
else if (ev.GetId() == ID_SaveButton)
|
||||
{
|
||||
- wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to save"), wxT(""), wxT("*.slb"), wxSAVE|wxCHANGE_DIR|wxOVERWRITE_PROMPT);
|
||||
+ wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to save"), wxT(""), wxT("*.slb"), wxFD_SAVE|wxFD_CHANGE_DIR|wxFD_OVERWRITE_PROMPT);
|
||||
|
||||
if ( !filename.empty() )
|
||||
{
|
||||
Index: sooperlooper/src/gui/config_panel.cpp
|
||||
===================================================================
|
||||
--- sooperlooper.orig/src/gui/config_panel.cpp
|
||||
+++ sooperlooper/src/gui/config_panel.cpp
|
||||
@@ -378,7 +378,7 @@ void ConfigPanel::on_button (wxCommandEv
|
||||
else if (ev.GetId() == ID_MidiBrowseButton) {
|
||||
|
||||
_parent->get_keyboard().set_enabled(false);
|
||||
- wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to use"), wxT(""), wxT("*.slb"), wxOPEN|wxCHANGE_DIR);
|
||||
+ wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to use"), wxT(""), wxT("*.slb"), wxFD_OPEN|wxFD_CHANGE_DIR);
|
||||
_parent->get_keyboard().set_enabled(true);
|
||||
|
||||
if ( !filename.empty() )
|
||||
@@ -389,8 +389,8 @@ void ConfigPanel::on_button (wxCommandEv
|
||||
else if (ev.GetId() == ID_SessionBrowseButton) {
|
||||
|
||||
_parent->get_keyboard().set_enabled(false);
|
||||
- wxString filename = _parent->do_file_selector(wxT("Choose session file to use"), wxT(""), wxT("*.slsess"), wxOPEN|wxCHANGE_DIR);
|
||||
- //wxString filename = wxFileSelector(wxT("Choose session file to use"), wxT(""), wxT(""), wxT(""), wxT("*.slsess"), wxOPEN|wxCHANGE_DIR);
|
||||
+ wxString filename = _parent->do_file_selector(wxT("Choose session file to use"), wxT(""), wxT("*.slsess"), wxFD_OPEN|wxFD_CHANGE_DIR);
|
||||
+ //wxString filename = wxFileSelector(wxT("Choose session file to use"), wxT(""), wxT(""), wxT(""), wxT("*.slsess"), wxFD_OPEN|wxFD_CHANGE_DIR);
|
||||
_parent->get_keyboard().set_enabled(true);
|
||||
|
||||
if ( !filename.empty() )
|
|
@ -3,6 +3,10 @@ recording, overdubbing, multiplying, reversing and more. It allows
|
|||
for multiple simultaneous multi-channel loops limited only by your
|
||||
computer's available memory.
|
||||
|
||||
If you have wxGTK3 installed and would prefer to build sooperlooper
|
||||
with it (instead of the default wxPython 2.8), set WXVER=3.0 in the
|
||||
script's environment.
|
||||
|
||||
This package uses POSIX filesystem capabilities to execute with
|
||||
elevated privileges (required for realtime audio processing). This
|
||||
may be considered a security/stability risk. Please read
|
||||
|
|
|
@ -6,8 +6,14 @@
|
|||
|
||||
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
|
||||
|
||||
# 20140910 bkw:
|
||||
# - update for v1.7.2
|
||||
# - explicitly use the correct config script for wx, instead of relying
|
||||
# on /usr/bin/wx-config
|
||||
# - add option to build against wxGTK3
|
||||
|
||||
PRGNAM=sooperlooper
|
||||
VERSION=${VERSION:-1.7.0}
|
||||
VERSION=${VERSION:-1.7.2}
|
||||
BUILD=${BUILD:-1}
|
||||
TAG=${TAG:-_SBo}
|
||||
|
||||
|
@ -40,6 +46,14 @@ fi
|
|||
|
||||
set -e
|
||||
|
||||
# We can't trust the /usr/bin/wx-config symlink.
|
||||
# Find the correct wx-config, if it exists. User can override by setting WXVER
|
||||
# in the env, or by setting WXCONFIG to the full path.
|
||||
WXVER=${WXVER:-2.8}
|
||||
WXMAYBE="$( ls /usr/lib$LIBDIRSUFFIX/wx/config/*-$WXVER 2>/dev/null | head -1 )"
|
||||
WXCONFIG=${WXCONFIG:-$WXMAYBE}
|
||||
WXCONFIG=${WXCONFIG:-/usr/bin/wx-config}
|
||||
|
||||
rm -rf $PKG
|
||||
mkdir -p $TMP $PKG $OUTPUT
|
||||
cd $TMP
|
||||
|
@ -53,10 +67,14 @@ find -L . \
|
|||
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
|
||||
-exec chmod 644 {} \;
|
||||
|
||||
# allow building with wx 3.0, using a patch from Debian
|
||||
[ "$WXVER" = "3.0" ] && patch -p1 < $CWD/04-build_with_wx_30.patch
|
||||
|
||||
# Note: the CFLAGS are actually ignored here. Oh well.
|
||||
CFLAGS="$SLKCFLAGS" \
|
||||
CXXFLAGS="$SLKCFLAGS" \
|
||||
./configure \
|
||||
--with-wxconfig-path=$WXCONFIG \
|
||||
--prefix=/usr \
|
||||
--libdir=/usr/lib${LIBDIRSUFFIX} \
|
||||
--sysconfdir=/etc \
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
PRGNAM="sooperlooper"
|
||||
VERSION="1.7.0"
|
||||
VERSION="1.7.2"
|
||||
HOMEPAGE="http://essej.net/sooperlooper/"
|
||||
DOWNLOAD="http://essej.net/sooperlooper/sooperlooper-1.7.0.tar.gz"
|
||||
MD5SUM="ce1111ab22e5e8947632101d920ce500"
|
||||
DOWNLOAD="http://essej.net/sooperlooper/sooperlooper-1.7.2.tar.gz"
|
||||
MD5SUM="72fe8e2585a3e0bca641b0ef67d18cd6"
|
||||
DOWNLOAD_x86_64=""
|
||||
MD5SUM_x86_64=""
|
||||
REQUIRES="jack-audio-connection-kit liblo libsigc++-legacy12 rubberband wxPython"
|
||||
|
|
Loading…
Reference in a new issue