summaryrefslogtreecommitdiff
path: root/audio/bmp
diff options
context:
space:
mode:
authorjmmv <jmmv@pkgsrc.org>2004-04-11 18:11:06 +0000
committerjmmv <jmmv@pkgsrc.org>2004-04-11 18:11:06 +0000
commitb56b2d350da8dcfe11d554195578f9f5402663e4 (patch)
tree617e6345206792999bf37783f0d6ecad4662e253 /audio/bmp
parent37b37cb3fbab5de383ea8cdc37f7515230f852e5 (diff)
downloadpkgsrc-b56b2d350da8dcfe11d554195578f9f5402663e4.tar.gz
Initial import of bmp, version 0.9.6:
Beep Media Player is a fork of XMMS. Its primary goals are interface and usability, all based on the technology provided by GTK2+, while maintaining the skinned user interface. Slightly based on the beep-media-player package found in pkgsrc-wip.
Diffstat (limited to 'audio/bmp')
-rw-r--r--audio/bmp/Makefile.common61
-rw-r--r--audio/bmp/patches/patch-ab65
-rw-r--r--audio/bmp/patches/patch-ac39
-rw-r--r--audio/bmp/patches/patch-ad73
-rw-r--r--audio/bmp/patches/patch-ae22
-rw-r--r--audio/bmp/patches/patch-af13
-rw-r--r--audio/bmp/patches/patch-ag15
-rw-r--r--audio/bmp/patches/patch-ah159
-rw-r--r--audio/bmp/patches/patch-ai21
-rw-r--r--audio/bmp/patches/patch-aj45
-rw-r--r--audio/bmp/patches/patch-ak16
-rw-r--r--audio/bmp/patches/patch-al17
-rw-r--r--audio/bmp/patches/patch-am14
13 files changed, 560 insertions, 0 deletions
diff --git a/audio/bmp/Makefile.common b/audio/bmp/Makefile.common
new file mode 100644
index 00000000000..3a9ed7488b1
--- /dev/null
+++ b/audio/bmp/Makefile.common
@@ -0,0 +1,61 @@
+# $NetBSD: Makefile.common,v 1.1.1.1 2004/04/11 18:11:06 jmmv Exp $
+#
+
+DISTNAME= bmp-0.9.6
+CATEGORIES= audio
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=beepmp/}
+
+MAINTAINER= jmmv@NetBSD.org
+HOMEPAGE= http://beepmp.sourceforge.net/
+COMMENT= Beep Media Player (fork of XMMS to work with GTK+ 2.x)
+
+DEPENDS+= xdg-dirs>=1.1:../../misc/xdg-dirs
+
+DISTINFO_FILE= ${.CURDIR}/../../audio/bmp/distinfo
+FILESDIR= ${.CURDIR}/../../audio/xmms/files
+PATCHDIR= ${.CURDIR}/../../audio/bmp/patches
+
+GNU_CONFIGURE= yes
+USE_BUILDLINK3= yes
+USE_LIBTOOL= yes
+USE_PKGLOCALEDIR= yes
+USE_X11= yes
+
+CONFIGURE_ARGS+= --disable-alsa
+CONFIGURE_ARGS+= --disable-esd
+CONFIGURE_ARGS+= --disable-opengl
+CONFIGURE_ARGS+= --disable-oss
+CONFIGURE_ARGS+= --disable-vorbis
+
+PKGCONFIG_OVERRIDE+= beep.pc
+
+.include "../../mk/bsd.prefs.mk"
+
+PTHREAD_OPTS+= require
+
+.if ${OPSYS} == "NetBSD"
+RAWPART!= /sbin/sysctl -n kern.rawpartition | ${TR} 0-9 a-j
+CONFIGURE_ARGS+= --with-dev-dsp=${DEVOSSSOUND} \
+ --with-cdda-device=/dev/rcd0${RAWPART} \
+ --with-cdda-dir=/cdrom/
+
+. if ${MACHINE_ARCH} == "i386"
+post-patch:
+. if ${OBJECT_FMT} == "a.out"
+ ${CP} ${FILESDIR}/decode_i586_.s ${WRKSRC}/Input/mpg123/decode_i586.s
+. endif
+ cd ${WRKSRC}/Input/mpg123 && \
+ ${MV} decode_i586.s decode_i586.s.orig && \
+ ${SED} -e 's@^/@#/@g' <decode_i586.s.orig >decode_i586.s
+. endif
+.endif
+
+.include "../../audio/libmikmod/buildlink3.mk"
+.include "../../converters/libiconv/buildlink3.mk"
+.include "../../devel/gettext-lib/buildlink3.mk"
+.include "../../devel/glib2/buildlink3.mk"
+.include "../../devel/pkgconfig/buildlink3.mk"
+.include "../../x11/gtk2/buildlink3.mk"
+
+.include "../../mk/ossaudio.buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
diff --git a/audio/bmp/patches/patch-ab b/audio/bmp/patches/patch-ab
new file mode 100644
index 00000000000..7be3b2d644a
--- /dev/null
+++ b/audio/bmp/patches/patch-ab
@@ -0,0 +1,65 @@
+$NetBSD: patch-ab,v 1.1.1.1 2004/04/11 18:11:06 jmmv Exp $
+
+--- Input/mpg123/fileinfo.c.orig Wed Dec 24 13:55:45 2003
++++ Input/mpg123/fileinfo.c
+@@ -308,6 +308,11 @@ void mpg123_file_info_box(char *filename
+ bool_label[1] = _("Yes");
+
+ if (!window) {
++ GtkWidget *pixmapwid, *test_table;
++ GtkWidget *urk, *blark;
++ GdkPixbuf *pixbuf;
++ PangoAttrList *attrs;
++ PangoAttribute *attr;
+
+ window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_policy(GTK_WINDOW(window), FALSE, FALSE, FALSE);
+@@ -323,8 +328,6 @@ void mpg123_file_info_box(char *filename
+ filename_vbox = gtk_hbox_new(FALSE, 5);
+ gtk_box_pack_start(GTK_BOX(vbox), filename_vbox, FALSE, TRUE, 0);
+
+- GtkWidget *pixmapwid;
+- GdkPixbuf *pixbuf;
+ pixbuf = gdk_pixbuf_new_from_xpm_data((const char **)
+ gnome_mime_audio_xpm);
+ pixmapwid = gtk_image_new_from_pixbuf(pixbuf);
+@@ -335,8 +338,6 @@ void mpg123_file_info_box(char *filename
+
+ label = gtk_label_new(NULL);
+
+- PangoAttrList *attrs;
+- PangoAttribute *attr;
+
+ attrs = pango_attr_list_new();
+
+@@ -382,7 +383,7 @@ void mpg123_file_info_box(char *filename
+ //// MPEG Layer Info
+
+ // FIXME: Obvious...
+- GtkWidget *test_table = gtk_table_new(2, 10, FALSE);
++ test_table = gtk_table_new(2, 10, FALSE);
+ gtk_container_set_border_width(GTK_CONTAINER(test_table), 0);
+ gtk_container_add(GTK_CONTAINER(mpeg_box), test_table);
+
+@@ -457,8 +458,6 @@ void mpg123_file_info_box(char *filename
+ gtk_table_attach(GTK_TABLE(test_table), mpeg_filesize_val, 1, 2, 4,
+ 5, GTK_FILL, GTK_FILL, 10, 2);
+
+- GtkWidget *urk, *blark;
+-
+ urk = gtk_label_new("");
+ blark = gtk_label_new("");
+ gtk_misc_set_alignment(GTK_MISC(urk), 1, 0.5);
+@@ -756,10 +755,12 @@ void mpg123_file_info_box(char *filename
+ return;
+ }
+
++ {
+ struct stat mstat;
+ stat(filename, &mstat);
+ gtk_widget_set_sensitive(id3_frame,
+ ((mstat.st_mode & S_IWRITE) == S_IWRITE));
++ }
+ /* FIXME: Check for UID/GID too? */
+
+ fill_entries(NULL, NULL);
diff --git a/audio/bmp/patches/patch-ac b/audio/bmp/patches/patch-ac
new file mode 100644
index 00000000000..e57340d03ef
--- /dev/null
+++ b/audio/bmp/patches/patch-ac
@@ -0,0 +1,39 @@
+$NetBSD: patch-ac,v 1.1.1.1 2004/04/11 18:11:06 jmmv Exp $
+
+--- Input/mpg123/mpg123.c.orig Wed Dec 24 13:55:45 2003
++++ Input/mpg123/mpg123.c
+@@ -669,12 +669,13 @@ void mpg123_return_tag_value_by_name(gch
+ if (!id3) {
+
+
++ int result_read;
+ int result_seek = fseek(file, -1 * sizeof(id3v1tag), SEEK_END);
+ if (result_seek)
+ return;
+
+
+- int result_read = fread(&id3v1tag, 1, sizeof(id3v1tag), file);
++ result_read = fread(&id3v1tag, 1, sizeof(id3v1tag), file);
+ if (result_read != sizeof(id3v1tag))
+ return;
+ if (strncmp(id3v1tag.tag, "TAG", 3) != 0)
+@@ -1111,6 +1112,7 @@ static void *decode_loop(void *arg)
+
+ static void play_file(char *filename)
+ {
++ pthread_attr_t pta;
+ memset(&fr, 0, sizeof(struct frame));
+ memset(&temp_fr, 0, sizeof(struct frame));
+
+@@ -1124,9 +1126,10 @@ static void play_file(char *filename)
+ output_opened = FALSE;
+ dopause = FALSE;
+
+- pthread_attr_t pta;
+ (void) pthread_attr_init(&pta);
++#if defined(_POSIX_PRIORITY_SCHEDULING)
+ (void) pthread_attr_setschedpolicy(&pta, PTHREAD_INHERIT_SCHED);
++#endif
+ (void) pthread_attr_setscope(&pta, PTHREAD_SCOPE_SYSTEM);
+
+ pthread_create(&decode_thread, &pta, decode_loop, g_strdup(filename));
diff --git a/audio/bmp/patches/patch-ad b/audio/bmp/patches/patch-ad
new file mode 100644
index 00000000000..19733c89783
--- /dev/null
+++ b/audio/bmp/patches/patch-ad
@@ -0,0 +1,73 @@
+$NetBSD: patch-ad,v 1.1.1.1 2004/04/11 18:11:06 jmmv Exp $
+
+--- Input/vorbis/fileinfo.c.orig Wed Dec 24 13:57:29 2003
++++ Input/vorbis/fileinfo.c
+@@ -494,6 +494,11 @@ void vorbis_file_info_box(char *fn)
+ if (!window) {
+ GtkWidget *hbox, *label, *filename_hbox, *vbox, *left_vbox;
+ GtkWidget *table, *bbox, *cancel_button;
++ GtkWidget *pixmapwid, *test_table, *boxx;
++ GtkImage *img;
++ GdkPixbuf *pixbuf;
++ PangoAttrList *attrs;
++ PangoAttribute *attr;
+
+ window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_policy(GTK_WINDOW(window), FALSE, FALSE, FALSE);
+@@ -508,16 +513,13 @@ void vorbis_file_info_box(char *fn)
+ filename_hbox = gtk_hbox_new(FALSE, 5);
+ gtk_box_pack_start(GTK_BOX(vbox), filename_hbox, FALSE, TRUE, 0);
+
+- GtkWidget *pixmapwid;
+- GdkPixbuf *pixbuf = gdk_pixbuf_new_from_xpm_data((const char **)
++ pixbuf = gdk_pixbuf_new_from_xpm_data((const char **)
+ gnome_mime_audio_ogg_xpm);
+ pixmapwid = gtk_image_new_from_pixbuf(pixbuf);
+ gtk_misc_set_alignment(GTK_MISC(pixmapwid), 0, 0);
+ gtk_box_pack_start(GTK_BOX(filename_hbox), pixmapwid, FALSE, FALSE,
+ 0);
+
+- PangoAttrList *attrs;
+- PangoAttribute *attr;
+
+ attrs = pango_attr_list_new();
+
+@@ -722,7 +724,6 @@ void vorbis_file_info_box(char *fn)
+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 5);
+ #endif
+
+- GtkWidget *boxx;
+ boxx = gtk_hbutton_box_new();
+ gtk_hbutton_box_set_layout_default(GTK_BUTTONBOX_SPREAD);
+
+@@ -739,7 +740,7 @@ void vorbis_file_info_box(char *fn)
+ gtk_table_attach(table, boxx, 0, 5, 6, 7, GTK_FILL, 0, 0, 8);
+
+ rg_show_button = gtk_toggle_button_new();
+- GtkImage *img = gtk_image_new_from_stock(GTK_STOCK_GO_FORWARD,
++ img = gtk_image_new_from_stock(GTK_STOCK_GO_FORWARD,
+ GTK_ICON_SIZE_MENU);
+ gtk_container_add(rg_show_button, img);
+ g_signal_connect(G_OBJECT(rg_show_button), "toggled",
+@@ -832,7 +833,7 @@ void vorbis_file_info_box(char *fn)
+ gtk_box_set_spacing(GTK_BOX(info_box), 0);
+
+ // FIXME: Obvious...
+- GtkWidget *test_table = gtk_table_new(2, 10, FALSE);
++ test_table = gtk_table_new(2, 10, FALSE);
+ gtk_container_set_border_width(GTK_CONTAINER(test_table), 0);
+ gtk_container_add(GTK_CONTAINER(info_box), test_table);
+
+@@ -1073,10 +1074,12 @@ void vorbis_file_info_box(char *fn)
+ gtk_window_set_title(GTK_WINDOW(window), tmp);
+ // rg_show_cb(rg_show_button, NULL);
+
++ {
+ struct stat mstat;
+ stat(fn, &mstat);
+ gtk_widget_set_sensitive(tag_frame,
+ ((mstat.st_mode & S_IWRITE) == S_IWRITE));
++ }
+
+ g_signal_connect_swapped(title_entry, "changed", change_buttons,
+ save_button);
diff --git a/audio/bmp/patches/patch-ae b/audio/bmp/patches/patch-ae
new file mode 100644
index 00000000000..dc956c8ad64
--- /dev/null
+++ b/audio/bmp/patches/patch-ae
@@ -0,0 +1,22 @@
+$NetBSD: patch-ae,v 1.1.1.1 2004/04/11 18:11:06 jmmv Exp $
+
+--- Input/vorbis/vorbis.c.orig Wed Dec 24 13:57:29 2003
++++ Input/vorbis/vorbis.c
+@@ -521,14 +521,16 @@ static void *vorbis_play_loop(void *arg)
+
+ static void vorbis_play(char *filename)
+ {
++ pthread_attr_t pta;
+ vorbis_playing = 1;
+ vorbis_bytes_streamed = 0;
+ vorbis_eos = 0;
+ output_error = FALSE;
+
+- pthread_attr_t pta;
+ (void) pthread_attr_init(&pta);
++#if defined(_POSIX_PRIORITY_SCHEDULING)
+ (void) pthread_attr_setschedpolicy(&pta, PTHREAD_INHERIT_SCHED);
++#endif
+ (void) pthread_attr_setscope(&pta, PTHREAD_SCOPE_SYSTEM);
+
+ pthread_create(&tid, &pta, vorbis_play_loop, g_strdup(filename));
diff --git a/audio/bmp/patches/patch-af b/audio/bmp/patches/patch-af
new file mode 100644
index 00000000000..62f165f9669
--- /dev/null
+++ b/audio/bmp/patches/patch-af
@@ -0,0 +1,13 @@
+$NetBSD: patch-af,v 1.1.1.1 2004/04/11 18:11:06 jmmv Exp $
+
+--- beep/about.c.orig Wed Dec 24 17:30:09 2003
++++ beep/about.c
+@@ -249,7 +249,7 @@ void show_about_window(void)
+ if (!beep_logo_pmap)
+ beep_logo_pmap =
+ gdk_pixmap_create_from_xpm_d(about_window->window,
+- &beep_logo_mask, NULL, beep_logo);
++ &beep_logo_mask, NULL, beep_logo_xpm);
+
+ about_credits_logo_box = gtk_hbox_new(TRUE, 0);
+ gtk_box_pack_start(GTK_BOX(about_vbox), about_credits_logo_box,
diff --git a/audio/bmp/patches/patch-ag b/audio/bmp/patches/patch-ag
new file mode 100644
index 00000000000..cb2eb190a64
--- /dev/null
+++ b/audio/bmp/patches/patch-ag
@@ -0,0 +1,15 @@
+$NetBSD: patch-ag,v 1.1.1.1 2004/04/11 18:11:06 jmmv Exp $
+
+--- beep/beep.desktop.in.orig Sat Nov 29 04:13:49 2003
++++ beep/beep.desktop.in
+@@ -2,8 +2,8 @@
+ Name=Beep
+ Comment=Beep media player
+ Exec=beep-media-player
+-Icon=beep.svg
++Icon=@prefix@/share/bmp/beep.svg
+ MimeType=audio/x-scpls;audio/x-mpegurl;audio/mpegurl;audio/mp3;audio/x-mp3;audio/mpeg;audio/x-mpeg;audio/x-wav;application/x-ogg
+-Categories=GTK;AudioVideo;Player
++Categories=Application;AudioVideo;
+ Terminal=0
+ Type=Application
diff --git a/audio/bmp/patches/patch-ah b/audio/bmp/patches/patch-ah
new file mode 100644
index 00000000000..e3d2208fc25
--- /dev/null
+++ b/audio/bmp/patches/patch-ah
@@ -0,0 +1,159 @@
+$NetBSD: patch-ah,v 1.1.1.1 2004/04/11 18:11:14 jmmv Exp $
+
+--- beep/dirbrowser.c.orig Wed Dec 24 17:17:01 2003
++++ beep/dirbrowser.c
+@@ -263,15 +263,16 @@ static guint64 bmp_db_get_nodeidx_from_i
+ static gchar *bmp_db_sanify_tag(gchar * value)
+ {
+
+- if (!value)
+- return "(unknown)";
+-
+ gchar *frag = NULL;
+ gchar **branches;
+ guint ctr = 0;
+ gboolean bracket_open = FALSE;
++ GString *chunk;
++
++ if (!value)
++ return "(unknown)";
+
+- GString *chunk = g_string_new(NULL);
++ chunk = g_string_new(NULL);
+ branches = g_strsplit(g_strstrip(value), " ", 0);
+
+ while (frag || (ctr == 0)) {
+@@ -346,6 +347,7 @@ static void bmp_db_create_dirtree(GtkTre
+ GList *list = NULL;
+ gboolean first = TRUE;
+ gchar *from_real;
++ GdkPixbuf *buf_dir, *buf_file, *buf_cda;
+
+ from = g_locale_from_utf8(from, -1, NULL, NULL, NULL);
+ from_real = bmp_db_get_path_real(from, model, &parent_iter);
+@@ -354,17 +356,17 @@ static void bmp_db_create_dirtree(GtkTre
+ /* It's not really a waste creating both beforehand since we will
+ * certainly need the folder one at least once, and most probably
+ * the audio one too anyway */
+- GdkPixbuf *buf_dir = gdk_pixbuf_new_from_inline(sizeof(folder_pixbuf),
++ buf_dir = gdk_pixbuf_new_from_inline(sizeof(folder_pixbuf),
+ folder_pixbuf,
+ TRUE,
+ NULL);
+
+- GdkPixbuf *buf_file = gdk_pixbuf_new_from_inline(sizeof(audio_pixbuf),
++ buf_file = gdk_pixbuf_new_from_inline(sizeof(audio_pixbuf),
+ audio_pixbuf,
+ TRUE,
+ NULL);
+
+- GdkPixbuf *buf_cda = gdk_pixbuf_new_from_inline(sizeof(cda_pixbuf),
++ buf_cda = gdk_pixbuf_new_from_inline(sizeof(cda_pixbuf),
+ cda_pixbuf,
+ TRUE,
+ NULL);
+@@ -647,6 +649,7 @@ static void bmp_db_row_activated(GtkTree
+ GtkTreeIter iter;
+ GList *paths = NULL;
+ GList *paths_f = NULL;
++ GtkWidget *store;
+
+ gchar *node_name;
+ gchar *path;
+@@ -681,7 +684,7 @@ static void bmp_db_row_activated(GtkTree
+ paths = paths->next;
+ }
+
+- GtkWidget *store =
++ store =
+ GTK_WIDGET(bmp_db_return_filestore_model_fresh(paths_f));
+
+ gtk_tree_view_set_model(user_data, GTK_TREE_MODEL(store));
+@@ -733,9 +736,9 @@ static void bmp_db_filestore_row_activat
+
+ if (entry_type == IS_ALBUM) {
+ if (gtk_tree_model_iter_children(model, &iter_child, &iter)) {
++ gboolean valid = TRUE;
+ if (click_play)
+ playlist_clear();
+- gboolean valid = TRUE;
+ while (valid) {
+ gtk_tree_model_get(GTK_TREE_MODEL(model), &iter_child,
+ FILENAME_COL, &node_name, -1);
+@@ -1308,12 +1311,15 @@ static GtkTreeModel *bmp_db_return_files
+ {
+
+ GtkTreeStore *file_store;
++ GtkTreeModel *sort_model;
++ gdouble length_pl;
++ int ctr = 0;
+
+
+ file_store =
+ gtk_tree_store_new(5, GDK_TYPE_PIXBUF, G_TYPE_STRING, G_TYPE_INT,
+ G_TYPE_STRING, G_TYPE_INT);
+- GtkTreeModel *sort_model =
++ sort_model =
+ gtk_tree_model_sort_new_with_model(GTK_TREE_MODEL(file_store));
+
+
+@@ -1321,17 +1327,16 @@ static GtkTreeModel *bmp_db_return_files
+ bmp_db_mdb_sort_func, NULL, NULL);
+
+
+- gdouble length_pl = g_list_length(paths);
++ length_pl = g_list_length(paths);
+ gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(progressbar_db), 0.0);
+
+- int ctr = 0;
+-
+ while (paths) {
+
+ gchar *path = paths->data;
+- ctr++;
+
+ GList *files = bmp_db_return_files_from_path(path);
++ gdouble frac;
++ ctr++;
+
+ while (files) {
+ gchar *title;
+@@ -1356,7 +1361,7 @@ static GtkTreeModel *bmp_db_return_files
+ files = files->next;
+ }
+
+- gdouble frac = 1 / length_pl;
++ frac = 1 / length_pl;
+ gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(progressbar_db),
+ frac * ctr);
+ while (gtk_events_pending()) {
+@@ -1413,6 +1418,9 @@ GtkWidget *bmp_db_create(gchar * current
+ GtkWidget *paned;
+
+ if (!window) {
++ GtkWidget *fstore;
++ GList *paths;
++ GtkTreeSelection *sel;
+
+ /* create window, etc */
+ /* yes this is all messed up */
+@@ -1489,17 +1497,16 @@ GtkWidget *bmp_db_create(gchar * current
+ G_CALLBACK(bmp_db_keypress), window);
+
+ gtk_container_add(GTK_CONTAINER(sw), treeview);
+- GtkWidget *fstore;
+
+ /* FIXME: clean up variables, move them to start */
+
+ /* FIXME: paths is not freed, and is resetted every iteration */
+- GList *paths = NULL;
++ paths = NULL;
+ paths = g_list_append(paths, g_strdup(g_get_home_dir()));
+ fstore = bmp_db_return_filestore_fresh(paths);
+ gtk_container_add(GTK_CONTAINER(sw_right), fstore);
+
+- GtkTreeSelection *sel =
++ sel =
+ gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview));
+ g_signal_connect(G_OBJECT(sel), "changed",
+ G_CALLBACK(bmp_db_row_activated), fstore);
diff --git a/audio/bmp/patches/patch-ai b/audio/bmp/patches/patch-ai
new file mode 100644
index 00000000000..8de8cc9e685
--- /dev/null
+++ b/audio/bmp/patches/patch-ai
@@ -0,0 +1,21 @@
+$NetBSD: patch-ai,v 1.1.1.1 2004/04/11 18:11:14 jmmv Exp $
+
+--- beep/playlist_list.c.orig Wed Dec 24 14:03:17 2003
++++ beep/playlist_list.c
+@@ -449,6 +449,7 @@ void playlist_list_draw(Widget * w)
+ guint t_width;
+ guint len_tail;
+ guint len;
++ gchar **frags;
+
+ tail = g_strdup_printf("%s%s", qstr, length);
+
+@@ -507,7 +508,7 @@ void playlist_list_draw(Widget * w)
+
+
+
+- gchar **frags = g_strsplit(tail, ":", 0);
++ frags = g_strsplit(tail, ":", 0);
+
+ layout =
+ gtk_widget_create_pango_layout(GTK_WIDGET(playlistwin),
diff --git a/audio/bmp/patches/patch-aj b/audio/bmp/patches/patch-aj
new file mode 100644
index 00000000000..22be2cff9e0
--- /dev/null
+++ b/audio/bmp/patches/patch-aj
@@ -0,0 +1,45 @@
+$NetBSD: patch-aj,v 1.1.1.1 2004/04/11 18:11:14 jmmv Exp $
+
+--- beep/skin.c.orig Wed Dec 24 14:03:17 2003
++++ beep/skin.c
+@@ -168,6 +168,7 @@ static gboolean skin_load_pixmap_id(Skin
+ const SMID_Mapping *sm_inf;
+ GdkPixmap *gpm;
+ gboolean retval = FALSE;
++ SkinPixmap *pm;
+
+ if (id >= SKIN_PMID_LAST) {
+ g_warning("skin pixmap id out of range (%u).", id);
+@@ -201,7 +202,7 @@ static gboolean skin_load_pixmap_id(Skin
+ }
+ g_free(tmpstr);
+
+- SkinPixmap *pm = &sk->pixmaps[id];
++ pm = &sk->pixmaps[id];
+ gpm = read_bmp(filename);
+
+ if (!gpm) {
+@@ -733,10 +734,10 @@ static SkinPixmap *get_skin_pixmap(SkinI
+ GdkBitmap *skin_get_mask(MaskIndex mi, gboolean doublesize,
+ gboolean shaded)
+ {
+- g_assert(skin != NULL);
+-
+ GdkBitmap **masks;
+
++ g_assert(skin != NULL);
++
+ g_assert(mi < SKIN_MID_LAST);
+ masks = (doublesize ? skin->ds_masks : skin->masks);
+ return masks[mi];
+@@ -813,8 +814,9 @@ void skin_get_eq_spline_colors(guint32(*
+ gint i;
+ GdkPixmap *pixmap;
+ GdkImage *img;
++ SkinPixmap *eqmainpm;
+ g_assert(skin != NULL);
+- SkinPixmap *eqmainpm = &skin->pixmaps[SKIN_EQMAIN];
++ eqmainpm = &skin->pixmaps[SKIN_EQMAIN];
+ if (eqmainpm->pixmap != NULL &&
+ eqmainpm->current_width >= 116 && eqmainpm->current_height >= 313)
+ pixmap = eqmainpm->pixmap;
diff --git a/audio/bmp/patches/patch-ak b/audio/bmp/patches/patch-ak
new file mode 100644
index 00000000000..a7477c2d125
--- /dev/null
+++ b/audio/bmp/patches/patch-ak
@@ -0,0 +1,16 @@
+$NetBSD: patch-ak,v 1.1.1.1 2004/04/11 18:11:14 jmmv Exp $
+
+--- beep/skinwin.c.orig Wed Dec 24 14:03:17 2003
++++ beep/skinwin.c
+@@ -217,10 +217,10 @@ void update_skins(GtkWidget * w, gpointe
+ char *str, *skinsdir;
+ gchar **list;
+
+- gtk_widget_set_sensitive(scrolled_win, FALSE);
+ GtkTreeView *treeview = GTK_TREE_VIEW(data);
+ GtkTreeSelection *selection = NULL;
+ GtkListStore *store;
++ gtk_widget_set_sensitive(scrolled_win, FALSE);
+
+ selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview));
+ store = GTK_LIST_STORE(gtk_tree_view_get_model(treeview));
diff --git a/audio/bmp/patches/patch-al b/audio/bmp/patches/patch-al
new file mode 100644
index 00000000000..acddc74c51a
--- /dev/null
+++ b/audio/bmp/patches/patch-al
@@ -0,0 +1,17 @@
+$NetBSD: patch-al,v 1.1.1.1 2004/04/11 18:11:14 jmmv Exp $
+
+--- beep/softvolume.c.orig Wed Dec 24 14:03:17 2003
++++ beep/softvolume.c
+@@ -27,11 +27,11 @@ gint soft_volume_right;
+ void soft_volume_load(char *section, SoftVolumeConfig * c)
+ {
+ ConfigFile *cfgfile;
++ char *sec = (section == NULL ? "xmms" : section);
+
+ if (c == NULL)
+ return;
+
+- char *sec = (section == NULL ? "xmms" : section);
+
+ c->enabled = FALSE;
+ c->volume_left = 0;
diff --git a/audio/bmp/patches/patch-am b/audio/bmp/patches/patch-am
new file mode 100644
index 00000000000..9cf6dbc535b
--- /dev/null
+++ b/audio/bmp/patches/patch-am
@@ -0,0 +1,14 @@
+$NetBSD: patch-am,v 1.1.1.1 2004/04/11 18:11:06 jmmv Exp $
+
+--- beep/textbox.c.orig Wed Dec 24 14:03:17 2003
++++ beep/textbox.c
+@@ -143,8 +143,8 @@ static gboolean textbox_should_scroll(Te
+ void textbox_set_text(TextBox * tb, gchar * text)
+ {
+
+- lock_widget(tb);
+ gchar *utf8text;
++ lock_widget(tb);
+ if (tb->tb_text) {
+ if (!strcmp(text, tb->tb_text)) {
+ unlock_widget(tb);