summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Harder <radhermit@gentoo.org>2011-10-27 04:45:11 +0000
committerTim Harder <radhermit@gentoo.org>2011-10-27 04:45:11 +0000
commitb38059ccd22dd895c89f13999e52fa8c31486b63 (patch)
tree4e98630e94781d5aa2e02d462a5d06823a531417 /media-sound/seq24
parentDepend on same slot of libnl as wimax-tools. (diff)
downloadhistorical-b38059ccd22dd895c89f13999e52fa8c31486b63.tar.gz
historical-b38059ccd22dd895c89f13999e52fa8c31486b63.tar.bz2
historical-b38059ccd22dd895c89f13999e52fa8c31486b63.zip
Revbump. Update to EAPI 4 and apply fix for lash segfault issue (bug #356201 by Rob Couto).
Package-Manager: portage-2.2.0_alpha70/cvs/Linux x86_64
Diffstat (limited to 'media-sound/seq24')
-rw-r--r--media-sound/seq24/ChangeLog9
-rw-r--r--media-sound/seq24/Manifest18
-rw-r--r--media-sound/seq24/files/seq24-0.9.2-lash-fix.patch248
-rw-r--r--media-sound/seq24/seq24-0.9.2-r1.ebuild41
4 files changed, 307 insertions, 9 deletions
diff --git a/media-sound/seq24/ChangeLog b/media-sound/seq24/ChangeLog
index c11b4d34b2c1..2bd65e776840 100644
--- a/media-sound/seq24/ChangeLog
+++ b/media-sound/seq24/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for media-sound/seq24
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/seq24/ChangeLog,v 1.44 2011/10/25 17:53:52 radhermit Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-sound/seq24/ChangeLog,v 1.45 2011/10/27 04:45:11 radhermit Exp $
+
+*seq24-0.9.2-r1 (27 Oct 2011)
+
+ 27 Oct 2011; Tim Harder <radhermit@gentoo.org> +seq24-0.9.2-r1.ebuild,
+ +files/seq24-0.9.2-lash-fix.patch:
+ Revbump. Update to EAPI 4 and apply fix for lash segfault issue (bug #356201
+ by Rob Couto).
25 Oct 2011; Tim Harder <radhermit@gentoo.org> -seq24-0.9.0.ebuild:
Remove old.
diff --git a/media-sound/seq24/Manifest b/media-sound/seq24/Manifest
index e5fdf343400b..06bfa9831e9f 100644
--- a/media-sound/seq24/Manifest
+++ b/media-sound/seq24/Manifest
@@ -1,18 +1,20 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
+AUX seq24-0.9.2-lash-fix.patch 6333 RMD160 5a4c86078b57bda0c915db3d0844e0324239ae27 SHA1 0d906473a989bbe2f382a599ac539d38517ad9b2 SHA256 7bb74e3df46bb93021144a937b45c28aa6d633e30c5fffc156230a58bfa822cc
DIST seq24-0.9.2.tar.bz2 213059 RMD160 bc2b2712a3a3da900438972a78f3348af9f242f8 SHA1 3fa279136f2de684569bf79cbdd2cbcd463f1450 SHA256 dbcfd18b7744ae739717588dd71a9923e5c08cf8fe1d3e71c897515cab875b0a
+EBUILD seq24-0.9.2-r1.ebuild 1017 RMD160 4a5072833b4d27088cf4c0dba423f303f9996cb7 SHA1 28d9c9d6bcd09d4c8891df18b271b82d1b1b56ae SHA256 c8b392169b24d4b6961a797b56b0082c51443f9159984ce60d1fe76d150efa8e
EBUILD seq24-0.9.2.ebuild 1000 RMD160 7a8dd41a730d55ebced2a73b9594a4837cda91ea SHA1 3917e3f21a1c828b71120e6b43435471f3d61bcf SHA256 a3e622dc2e9bf5cc360423056af6e38c842d7ca4473769eda3e0ded9dbdcda21
-MISC ChangeLog 5307 RMD160 93567110de8b7327a9f4c2eb763d4df62000bc10 SHA1 bb9d5256ff944d6b21dc4aa2d9002df03d955b9c SHA256 438ad3346d3d6238f82fce1755d67ff49f4f960a0ded90cad0cfc11abef140f4
+MISC ChangeLog 5545 RMD160 32c70adc7c8f0884a51069f6bf33c37139d080f8 SHA1 a5103158b61f2acdfe1e4d9c8c7a113b8293a324 SHA256 d96c5630d31705124b47241cd8924a432be2b057780f0517ea04e978daa7c9e6
MISC metadata.xml 161 RMD160 2738d17827a71b5ccbadae4c4f909d2b57d147b0 SHA1 90201ddb830142147774cc7b7b5178fbd0a9af0c SHA256 0ba191421eefd954d1efe9f6c3384e8c8d7455d35a7e79457272e1c29211b09e
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.18 (GNU/Linux)
-iQEcBAEBCgAGBQJOpve2AAoJEEqz6FtPBkyjWyYH/21gaXAMNamsrVeK99I2QgXo
-VX5pQdAhkleAAdVxRsqzVEgOKE9Mb8aihxOYUYRMO4MKQ3w0tpZh//4eKXSzbUgX
-Wkhy9vzaO++aOE4ucpNhEsw+99VtHcj/FHedieUnOxPUfkicppBc51TNlxICmag2
-EZ89wKffP2oh4+ppFnkTC+TOPDWwOKfnm5/k7i4xj0ltjg5OEeUmaPQRczN2H96G
-x6im40Jox//ZCFX8dUogHc2Xc2UOS6tq/PzBbG9Sua7djwCC0F8/HkRo7vidL49a
-r6/oqiEJeDuhIgCLY597IGYGgTMJedw6exO78PLsUoO6v2CKrKVFPGzNcNlZcFE=
-=SSIE
+iQEcBAEBCgAGBQJOqOHgAAoJEEqz6FtPBkyj94IIALqoUeiQ7EU2F9Hk1CRkzBMN
+EAmgCKuGFsQD+4t3i/RTjGkDJ+Oz4ql1S4cu3X06a9hOtESbhy5ddz1K3Fea/Zif
+Xjrj/nEo7feE+k6BePJTpuqydsQWDtBtYLRuOyDbb92FkyMXtiyEA1SQsxSQl/cb
+IsJqCq8qWkV1gf//8aUdA4nY8nHdBxBQJZIbhxu5j2kI11JaH1yxPl1rF1gAj67t
+7/BmsQ+Dgnx446rrP1gZAaP9kBqgMKvj3XzVgpZpJsztWcvR29/YOOwSco5EoYLW
+oTjVBnzrFqyf8MbGvEhKHi8aUaqGb5wwa+ZL4R2fJjQSwO1GbQAFD572K4P3ffA=
+=GxdF
-----END PGP SIGNATURE-----
diff --git a/media-sound/seq24/files/seq24-0.9.2-lash-fix.patch b/media-sound/seq24/files/seq24-0.9.2-lash-fix.patch
new file mode 100644
index 000000000000..8b0efadb7b55
--- /dev/null
+++ b/media-sound/seq24/files/seq24-0.9.2-lash-fix.patch
@@ -0,0 +1,248 @@
+Upstream fix for segfault when built with lash support.
+https://bugs.launchpad.net/seq24/+bug/696371
+
+=== modified file 'src/lash.cpp'
+--- old/src/lash.cpp
++++ new/src/lash.cpp
+@@ -29,17 +29,9 @@
+ lash::lash(int *argc, char ***argv)
+ {
+ #ifdef LASH_SUPPORT
+- m_lash_args = lash_extract_args(argc, argv);
+-#endif // LASH_SUPPORT
+-}
+-
+-
+-void lash::init(perform* perform)
+-{
+-#ifdef LASH_SUPPORT
+- m_perform = perform;
+-
+- m_client = lash_init(m_lash_args, PACKAGE_NAME,
++ m_perform = NULL;
++
++ m_client = lash_init(lash_extract_args(argc, argv), PACKAGE_NAME,
+ LASH_Config_File, LASH_PROTOCOL(2, 0));
+
+ if (m_client == NULL) {
+@@ -65,9 +57,10 @@
+
+
+ void
+-lash::start()
++lash::start(perform* perform)
+ {
+ #ifdef LASH_SUPPORT
++ m_perform = perform;
+ /* Process any LASH events every 250 msec (arbitrarily chosen interval) */
+ Glib::signal_timeout().connect(sigc::mem_fun(*this, &lash::process_events), 250);
+ #endif // LASH_SUPPORT
+
+=== modified file 'src/lash.h'
+--- old/src/lash.h
++++ new/src/lash.h
+@@ -43,7 +43,6 @@
+ #ifdef LASH_SUPPORT
+ perform *m_perform;
+ lash_client_t *m_client;
+- lash_args_t *m_lash_args;
+
+ bool process_events();
+ void handle_event(lash_event_t* conf);
+@@ -54,13 +53,12 @@
+ public:
+ lash(int *argc, char ***argv);
+
+- void init(perform* perform);
+ void set_alsa_client_id(int id);
+- void start();
++ void start(perform* perform);
+ };
+
+
+-/* global lash driver, defined in seq24.cpp */
++/* global lash driver, defined in seq24.cpp and used in midibus.cpp*/
+ extern lash *lash_driver;
+
+
+
+=== modified file 'src/midibus.cpp'
+--- old/src/midibus.cpp
++++ new/src/midibus.cpp
+@@ -877,11 +877,11 @@
+
+ /* set up our clients queue */
+ m_queue = snd_seq_alloc_queue( m_alsa_seq );
+-#endif
+ #ifdef LASH_SUPPORT
+ /* notify lash of our client ID so it can restore connections */
+ lash_driver->set_alsa_client_id(snd_seq_client_id(m_alsa_seq));
+ #endif
++#endif
+ }
+
+
+
+=== modified file 'src/perform.cpp'
+--- old/src/perform.cpp
++++ new/src/perform.cpp
+@@ -1342,6 +1342,7 @@
+ stats_last_clock_us= (last.tv_sec * 1000000) + (last.tv_nsec / 1000);
+ #else
+ /* get start time position */
++ /* timeGetTime() returns a "DWORD" type (= unsigned long)*/
+ last = timeGetTime();
+
+ if ( global_stats )
+
+=== modified file 'src/seq24.cpp'
+--- old/src/seq24.cpp
++++ new/src/seq24.cpp
+@@ -108,12 +108,66 @@
+ * GTK+. */
+ Gtk::Main kit(argc, argv);
+
+- /* Init the lash driver (strips lash specific command line
+- * arguments, but does not connect to daemon) */
++ /*prepare global MIDI definitions*/
++ for ( int i=0; i<c_maxBuses; i++ )
++ {
++ for ( int j=0; j<16; j++ )
++ global_user_midi_bus_definitions[i].instrument[j] = -1;
++ }
++
++ for ( int i=0; i<c_max_instruments; i++ )
++ {
++ for ( int j=0; j<128; j++ )
++ global_user_instrument_definitions[i].controllers_active[j] = false;
++ }
++
++
++ /* Init the lash driver (strip lash specific command line
++ * arguments and connect to daemon) */
+ #ifdef LASH_SUPPORT
+ lash_driver = new lash(&argc, &argv);
+ #endif
+
++ /* the main performance object */
++ /* lash must be initialized here because mastermidibus uses the global
++ * lash_driver variable*/
++ perform p;
++
++ /* read user preferences files */
++ if ( getenv( HOME ) != NULL )
++ {
++ Glib::ustring home( getenv( HOME ));
++ last_used_dir = home;
++ Glib::ustring total_file = home + SLASH + config_filename;
++
++ if (Glib::file_test(total_file, Glib::FILE_TEST_EXISTS))
++ {
++ printf( "Reading [%s]\n", total_file.c_str());
++
++ optionsfile options( total_file );
++
++ if ( !options.parse( &p ) ){
++ printf( "Error Reading [%s]\n", total_file.c_str());
++ }
++ }
++
++ total_file = home + SLASH + user_filename;
++ if (Glib::file_test(total_file, Glib::FILE_TEST_EXISTS))
++ {
++ printf( "Reading [%s]\n", total_file.c_str());
++
++ userfile user( total_file );
++
++ if ( !user.parse( &p ) ){
++ printf( "Error Reading [%s]\n", total_file.c_str());
++ }
++ }
++
++ }
++ else
++ printf( "Error calling getenv( \"%s\" )\n", HOME );
++
++
+ /* parse parameters */
+ int c;
+
+@@ -229,65 +283,14 @@
+ } /* end while */
+
+
+- /*prepare global MIDI definitions*/
+- for ( int i=0; i<c_maxBuses; i++ )
+- {
+- for ( int j=0; j<16; j++ )
+- global_user_midi_bus_definitions[i].instrument[j] = -1;
+- }
+-
+- for ( int i=0; i<c_max_instruments; i++ )
+- {
+- for ( int j=0; j<128; j++ )
+- global_user_instrument_definitions[i].controllers_active[j] = false;
+- }
+-
+-
+- /* the main performance object */
+- perform p;
+-
+- p_font_renderer = new font();
+-
+-
+- if ( getenv( HOME ) != NULL )
+- {
+- Glib::ustring home( getenv( HOME ));
+- last_used_dir = home;
+- Glib::ustring total_file = home + SLASH + config_filename;
+-
+- if (Glib::file_test(total_file, Glib::FILE_TEST_EXISTS))
+- {
+- printf( "Reading [%s]\n", total_file.c_str());
+-
+- optionsfile options( total_file );
+-
+- if ( !options.parse( &p ) ){
+- printf( "Error Reading [%s]\n", total_file.c_str());
+- }
+- }
+-
+- total_file = home + SLASH + user_filename;
+- if (Glib::file_test(total_file, Glib::FILE_TEST_EXISTS))
+- {
+- printf( "Reading [%s]\n", total_file.c_str());
+-
+- userfile user( total_file );
+-
+- if ( !user.parse( &p ) ){
+- printf( "Error Reading [%s]\n", total_file.c_str());
+- }
+- }
+-
+- }
+- else
+- printf( "Error calling getenv( \"%s\" )\n", HOME );
+-
+ p.init();
+ p.launch_input_thread();
+ p.launch_output_thread();
+ p.init_jack();
+
+
++ p_font_renderer = new font();
++
+ mainwnd seq24_window( &p );
+ if (optind < argc)
+ {
+@@ -299,8 +302,7 @@
+
+ /* connect to lash daemon and poll events*/
+ #ifdef LASH_SUPPORT
+- lash_driver->init(&p);
+- lash_driver->start();
++ lash_driver->start(&p);
+ #endif
+ kit.run(seq24_window);
+
+
diff --git a/media-sound/seq24/seq24-0.9.2-r1.ebuild b/media-sound/seq24/seq24-0.9.2-r1.ebuild
new file mode 100644
index 000000000000..f611d868e9d9
--- /dev/null
+++ b/media-sound/seq24/seq24-0.9.2-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-sound/seq24/seq24-0.9.2-r1.ebuild,v 1.1 2011/10/27 04:45:11 radhermit Exp $
+
+EAPI=4
+inherit eutils
+
+DESCRIPTION="Seq24 is a loop based MIDI sequencer with focus on live performances."
+HOMEPAGE="https://edge.launchpad.net/seq24/"
+SRC_URI="http://edge.launchpad.net/seq24/trunk/${PV}/+download/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="jack lash"
+
+RDEPEND="media-libs/alsa-lib
+ >=dev-cpp/gtkmm-2.4:2.4
+ >=dev-libs/libsigc++-2.2:2
+ jack? ( >=media-sound/jack-audio-connection-kit-0.90 )
+ lash? ( >=media-sound/lash-0.5 )"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig"
+
+DOCS=( AUTHORS ChangeLog README RTC SEQ24 )
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-lash-fix.patch
+}
+
+src_configure() {
+ econf \
+ $(use_enable jack) \
+ $(use_enable lash)
+}
+
+src_install() {
+ default
+ newicon src/pixmaps/seq24_32.xpm seq24.xpm
+ make_desktop_entry seq24
+}