Your message dated Fri, 22 Apr 2011 12:06:42 +0200
with message-id <20110422120642.49185lw51o1c6...@webdesk.duckcorp.org>
has caused the   report #622013,
regarding gnusound: FTBFS: gnome-app-helper.h:620:2: error: expected 
specifier-qualifier-list before 'GtkCallbackMarshal'
to be marked as having been forwarded to the upstream software
author(s) gnusound-com...@lists.sourceforge.net

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
622013: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=622013
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
tags 622013 + upstream help
thanks


Coin,

I've been maintaining gnusound in Debian for years despite no news from upstream authors. Even without new features and emerging powerfull softwares, it is still in use by a lot of people[1], probably as an easy-to-use tool compared to a full-featured but more complex softwares. Until recently, gnusound built correctly, and it was included in the Squeeze release, without causing a big workload. With recent GNOME/GTK libraries, it is no longuer the case, and its future is now a concern.

I had a look at what is currently causing problems :
  - dependency on libgnomeui, which had been deprecated long ago
  - usage of gnome-config, deprecated long ago too
I made a patch (attached) to remove gnomeui dependency, and rework the menu bar (to be tested), and it now compiles correctly. Nevertheless, the gnome-config functions were removed recently, so it cannot link anymore, and a complete rewrite of this part of the code is needed. Switching over gconf directly to Gsettings is probably the best path to follow, but i really do not have the knownledge and time to work on this part.

Other parts of the software may have such problems in the future of course, like the libglade->GtkBuilder planned migration, but maybe we can save this useful software for a few more years.

So, the goal of this mail was to get your opinions, and your help if we decide to maintain this software a bit longer. If so, a few other patches were added in Debian in order a fix a few bugs and be able to build with recent gcc, which could be included in a maintainance release.

Regards


[1] http://qa.debian.org/popcon.php?package=gnusound
(the number only reflects people agreeing to send back statistical information, but the general trend is useful)

--
Marc Dequènes (Duck)
Index: gnusound-0.7.5/configure.ac
===================================================================
--- gnusound-0.7.5.orig/configure.ac	2011-04-14 23:35:46.565598449 +0200
+++ gnusound-0.7.5/configure.ac	2011-04-14 23:36:18.851388470 +0200
@@ -264,7 +264,7 @@
          fi,
          use_gnome2=yes)
 if test "x$use_gnome2" = "xyes"; then
-  PKG_CHECK_MODULES(GNOME2,libgnomeui-2.0 >= 2.0.0 libglade-2.0 gthread-2.0,
+  PKG_CHECK_MODULES(GNOME2,libgnome-2.0 libglade-2.0 gthread-2.0,
         AC_DEFINE(HAVE_GNOME2,,[use GNOME2])
         CFLAGS="$CFLAGS -rdynamic $GNOME2_CFLAGS"
         LIBS="$LIBS -rdynamic $GNOME2_LIBS",
Index: gnusound-0.7.5/src/shell.h
===================================================================
--- gnusound-0.7.5.orig/src/shell.h	2011-04-15 02:38:38.379823388 +0200
+++ gnusound-0.7.5/src/shell.h	2011-04-15 02:38:43.987437734 +0200
@@ -26,7 +26,6 @@
 #include <math.h>
 #include <sys/time.h>
 #include <unistd.h>
-#include <gnome.h>
 #include <pthread.h>
 #include <audiofile.h>
 #include "snd.h"
Index: gnusound-0.7.5/src/cmd_events.c
===================================================================
--- gnusound-0.7.5.orig/src/cmd_events.c	2011-04-15 02:42:08.805346731 +0200
+++ gnusound-0.7.5/src/cmd_events.c	2011-04-15 02:42:26.324141116 +0200
@@ -22,6 +22,7 @@
 #include <config.h>
 #include "arbiter.h"
 #include "cmd.h"
+#include <gdk/gdkkeysyms-compat.h>
 
 /**
  * @file
Index: gnusound-0.7.5/src/dialog_format.c
===================================================================
--- gnusound-0.7.5.orig/src/dialog_format.c	2011-04-15 02:43:49.686404355 +0200
+++ gnusound-0.7.5/src/dialog_format.c	2011-04-15 02:43:51.594273068 +0200
@@ -20,7 +20,6 @@
  */
 
 #include <config.h>
-#include <gnome.h>
 #include <combo_box.h>
 #include "lib/misc.h"
 #include "gui.h"
Index: gnusound-0.7.5/src/dialog_mixdown.c
===================================================================
--- gnusound-0.7.5.orig/src/dialog_mixdown.c	2011-04-15 02:43:35.271396345 +0200
+++ gnusound-0.7.5/src/dialog_mixdown.c	2011-04-15 02:43:37.743226242 +0200
@@ -20,7 +20,6 @@
  */
 
 #include <config.h>
-#include <gnome.h>
 #include "gui.h"
 #include "shell.h"
 #include "pane.h"
Index: gnusound-0.7.5/src/dialog_props.c
===================================================================
--- gnusound-0.7.5.orig/src/dialog_props.c	2011-04-15 02:43:23.992172545 +0200
+++ gnusound-0.7.5/src/dialog_props.c	2011-04-15 02:43:26.360009596 +0200
@@ -20,7 +20,6 @@
  */
 
 #include <config.h>
-#include <gnome.h>
 #include "shell.h"
 #include "pane.h"
 #include "resample.h"
Index: gnusound-0.7.5/src/draw.c
===================================================================
--- gnusound-0.7.5.orig/src/draw.c	2011-04-15 02:40:59.238134300 +0200
+++ gnusound-0.7.5/src/draw.c	2011-04-15 02:41:02.601902805 +0200
@@ -26,7 +26,6 @@
 
 #include <config.h>
 #include <math.h>
-#include <gnome.h>
 #include <gtk/gtk.h>
 #include "pref.h"
 #include "shell.h"
Index: gnusound-0.7.5/src/file.c
===================================================================
--- gnusound-0.7.5.orig/src/file.c	2011-04-15 03:53:00.808790849 +0200
+++ gnusound-0.7.5/src/file.c	2011-04-15 03:53:02.776655468 +0200
@@ -35,7 +35,6 @@
 #include <sys/time.h>
 #include <unistd.h>
 #include <stdio.h>
-#include <gnome.h>
 #include "lib/misc.h"
 #include "pref.h"
 #include "mem.h"
Index: gnusound-0.7.5/src/grid.c
===================================================================
--- gnusound-0.7.5.orig/src/grid.c	2011-04-15 02:40:49.358814198 +0200
+++ gnusound-0.7.5/src/grid.c	2011-04-15 02:40:51.294680969 +0200
@@ -25,7 +25,6 @@
 #include <stdio.h>
 #include <math.h>
 #include <audiofile.h>
-#include <gnome.h>
 #include "grid.h"
 
 void
Index: gnusound-0.7.5/src/gui.c
===================================================================
--- gnusound-0.7.5.orig/src/gui.c	2011-04-15 02:42:37.651361599 +0200
+++ gnusound-0.7.5/src/gui.c	2011-04-15 02:42:59.613850161 +0200
@@ -36,8 +36,6 @@
 #include <math.h>
 #include <signal.h>
 #include <gdk/gdk.h>
-#include <gnome.h>
-#include <libgnomeui/gnome-window-icon.h>
 #include "lib/misc.h"
 #include "pref.h"
 #include "mem.h"
Index: gnusound-0.7.5/src/marker.c
===================================================================
--- gnusound-0.7.5.orig/src/marker.c	2011-04-15 02:40:05.929802331 +0200
+++ gnusound-0.7.5/src/marker.c	2011-04-15 02:40:10.793467845 +0200
@@ -27,7 +27,6 @@
 #include <string.h>
 #include <glib.h>
 #include <audiofile.h>
-#include <gnome.h>
 #include <config.h>
 #include "mem.h"
 #include "marker.h"
Index: gnusound-0.7.5/src/mixer.c
===================================================================
--- gnusound-0.7.5.orig/src/mixer.c	2011-04-15 02:40:34.511835975 +0200
+++ gnusound-0.7.5/src/mixer.c	2011-04-15 02:40:37.127655951 +0200
@@ -31,7 +31,6 @@
 #include <unistd.h>
 #include <fcntl.h>
 #include <audiofile.h>
-#include <gnome.h>
 #include "mem.h"
 #include "sample.h"
 #include "snd.h"
Index: gnusound-0.7.5/src/pane.c
===================================================================
--- gnusound-0.7.5.orig/src/pane.c	2011-04-15 02:43:08.433243265 +0200
+++ gnusound-0.7.5/src/pane.c	2011-04-15 02:43:15.176779193 +0200
@@ -26,7 +26,6 @@
  */
 
 #include <config.h>
-#include <gnome.h>
 #include <glade/glade.h>
 #include <glib.h>
 #include <gtk/gtk.h>
Index: gnusound-0.7.5/src/pref.c
===================================================================
--- gnusound-0.7.5.orig/src/pref.c	2011-04-15 02:39:47.123095714 +0200
+++ gnusound-0.7.5/src/pref.c	2011-04-15 02:39:51.658783789 +0200
@@ -22,7 +22,6 @@
 #undef GNOME_DISABLE_DEPRECATED
 
 #include <config.h>
-#include <gnome.h>
 #include "tests.h"
 #include "lib/misc.h"
 #include "mem.h"
Index: gnusound-0.7.5/src/view.c
===================================================================
--- gnusound-0.7.5.orig/src/view.c	2011-04-15 02:44:35.863226658 +0200
+++ gnusound-0.7.5/src/view.c	2011-04-15 03:52:13.724030107 +0200
@@ -42,6 +42,9 @@
 #include "history.h"
 #include "tool.h"
 #include "dialog_props.h"
+#ifdef HAVE_GNOME2
+#include <libgnome/libgnome.h>
+#endif
 
 
 void
@@ -1223,6 +1226,50 @@
 
 void 
 view_setup_help_menu(struct view *view) {
+#ifdef HAVE_GNOME2
+    static GtkActionEntry entries[] = {
+        { "HelpMenu", NULL, "_Help" },
+        { "Content", GTK_STOCK_HELP, "_Contents", NULL, "Help Manual", G_CALLBACK(gnome_help_display) },
+        { "About", GTK_STOCK_ABOUT, "_About GNUsound", NULL, "Application information", G_CALLBACK(view_about_activate) }
+    };
+    static const char *ui_description =
+        "<ui>"
+        "  <menubar name='MainMenu'>"
+        "    <menu action='HelpMenu'>"
+        "      <menuitem action='Help'/>"
+        "      <separator/>"
+        "      <menuitem action='About'/>"
+        "    </menu>"
+        "  </menubar>"
+        "</ui>";
+    GtkWindow *window;
+    GtkActionGroup *action_group;
+    GtkUIManager *ui_manager;
+    GtkAccelGroup *accel_group;
+    GError *error;
+    GtkWidget *menu_widget;
+
+    window = GTK_WINDOW(view_get_widget(view, "shell"));
+
+    register_my_stock_icons();
+    action_group = gtk_action_group_new("MenuActions");
+    gtk_action_group_add_actions(action_group, entries, G_N_ELEMENTS (entries), window);
+    ui_manager = gtk_ui_manager_new();
+    gtk_ui_manager_insert_action_group(ui_manager, action_group, 0);
+    accel_group = gtk_ui_manager_get_accel_group (ui_manager);
+    gtk_window_add_accel_group(GTK_WINDOW (window), accel_group);
+
+    error = NULL;
+    if (!gtk_ui_manager_add_ui_from_string(ui_manager, ui_description, -1, &error)) {
+        g_message ("building menus failed: %s", error->message);
+        g_error_free (error);
+        exit (EXIT_FAILURE);
+    }
+
+    menu_widget = gtk_ui_manager_get_widget(ui_manager, "/MainMenu/HelpMenu");
+    gtk_menu_item_set_submenu(GTK_MENU_ITEM(view_get_widget(view, "help")),
+                              menu_widget);
+#else
     static GnomeUIInfo help_menu[] = {
         GNOMEUIINFO_HELP("gnusound"),
         GNOMEUIINFO_SEPARATOR,
@@ -1237,7 +1284,7 @@
                         1, 0);
     gtk_menu_item_set_submenu(GTK_MENU_ITEM(view_get_widget(view, "help")),
                               GTK_WIDGET(help));
-    
+#endif
 }
 
 void
Index: gnusound-0.7.5/src/view_callbacks.c
===================================================================
--- gnusound-0.7.5.orig/src/view_callbacks.c	2011-04-15 03:52:43.713966907 +0200
+++ gnusound-0.7.5/src/view_callbacks.c	2011-04-15 03:52:49.385576722 +0200
@@ -20,7 +20,6 @@
  */
 
 #include <config.h>
-#include <gnome.h>
 #include <combo_box.h>
 #include "lib/misc.h"
 #include "gui.h"
Index: gnusound-0.7.5/src/view_callbacks.h
===================================================================
--- gnusound-0.7.5.orig/src/view_callbacks.h	2011-04-15 02:44:01.361600913 +0200
+++ gnusound-0.7.5/src/view_callbacks.h	2011-04-15 02:44:03.901426132 +0200
@@ -6,7 +6,6 @@
  */
 
 #include <config.h>
-#include <gnome.h>
 #include "view.h"
 
 #ifndef VIEW_CALLBACKS_H
Index: gnusound-0.7.5/src/view.h
===================================================================
--- gnusound-0.7.5.orig/src/view.h	2011-04-15 02:39:29.900280171 +0200
+++ gnusound-0.7.5/src/view.h	2011-04-15 02:39:34.367972916 +0200
@@ -22,7 +22,6 @@
 #define VIEW_H
 
 #include <config.h>
-#include <gnome.h>
 #include "shell.h"
 #include "draw.h"
 #include "draw_hooks.h"
Index: gnusound-0.7.5/src/main.c
===================================================================
--- gnusound-0.7.5.orig/src/main.c	2011-04-15 12:36:55.250899278 +0200
+++ gnusound-0.7.5/src/main.c	2011-04-15 12:45:14.056593513 +0200
@@ -27,6 +27,7 @@
 #include "arbiter.h"
 #include "clipboard.h"
 #include "emergency.h"
+#include <libgnome/libgnome.h>
 
 int
 main(int argc, 
@@ -42,7 +43,7 @@
 
 #ifdef HAVE_GNOME2
     gdk_threads_init();
-    gnome_program_init(PACKAGE, VERSION, LIBGNOMEUI_MODULE, argc, argv, 
+    gnome_program_init(PACKAGE, VERSION, LIBGNOME_MODULE, argc, argv, 
                        GNOME_PROGRAM_STANDARD_PROPERTIES, NULL);
 
 #else

Attachment: pgpOE3JopayC3.pgp
Description: PGP Digital Signature


--- End Message ---

Reply via email to