Bug#1075366: pcsxr: ftbfs with GCC-14
Patrice Duroux
patrice.duroux at gmail.com
Fri Nov 15 20:12:42 GMT 2024
Package: pcsxr
Version: 1.9.94-6
Followup-For: Bug #1075366
Hi,
Here is a patch to solve those building issues.
Best regards,
Patrice
-- System Information:
Debian Release: trixie/sid
APT prefers unstable-debug
APT policy: (500, 'unstable-debug'), (500, 'unstable'), (1, 'experimental-debug'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 6.12-rc6-amd64 (SMP w/12 CPU threads; PREEMPT)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages pcsxr depends on:
ii libc6 2.40-3
ii libgdk-pixbuf-2.0-0 2.42.12+dfsg-1+b1
ii libgl1 1.7.0-1+b2
ii libglib2.0-0t64 2.82.2-2
ii libgtk-3-0t64 3.24.43-4
ii libpango-1.0-0 1.54.0+ds-3
ii libsdl2-2.0-0 2.30.9+dfsg-1
ii libx11-6 2:1.8.10-2
ii libxext6 2:1.3.4-1+b2
ii libxtst6 2:1.2.3-1.1+b2
ii libxv1 2:1.0.11-1.1+b2
ii libxxf86vm1 1:1.1.4-1+b3
ii zlib1g 1:1.3.dfsg+really1.3.1-1+b1
pcsxr recommends no packages.
pcsxr suggests no packages.
-- no debconf information
-------------- next part --------------
diff --git a/debian/patches/g++14.patch b/debian/patches/g++14.patch
new file mode 100644
index 0000000..7ef5b95
--- /dev/null
+++ b/debian/patches/g++14.patch
@@ -0,0 +1,336 @@
+--- a/plugins/dfsound/spucfg-0.1df/main.c
++++ b/plugins/dfsound/spucfg-0.1df/main.c
+@@ -47,7 +47,7 @@
+
+ void OnConfigClose(GtkWidget *widget, gpointer user_data)
+ {
+- gtk_widget_destroy(gtk_builder_get_object(builder, "CfgWnd"));
++ gtk_widget_destroy(GTK_WIDGET(gtk_builder_get_object(builder, "CfgWnd")));
+ exit(0);
+ }
+
+@@ -103,7 +103,7 @@
+ return 0;
+ }
+
+- MainWindow = gtk_builder_get_object(builder, "CfgWnd");
++ MainWindow = GTK_WIDGET(gtk_builder_get_object(builder, "CfgWnd"));
+
+ strcpy(cfg, CONFIG_FILENAME);
+
+@@ -222,11 +222,11 @@
+ if (pB)
+ free(pB);
+
+- widget = gtk_builder_get_object(builder, "CfgWnd");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "CfgWnd"));
+ g_signal_connect_data(G_OBJECT(widget), "destroy",
+ G_CALLBACK(SaveConfig), builder, NULL, 0);
+
+- widget = gtk_builder_get_object(builder, "btn_close");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "btn_close"));
+ g_signal_connect_data(G_OBJECT(widget), "clicked",
+ G_CALLBACK(OnConfigClose), builder, NULL, G_CONNECT_AFTER);
+
+--- a/plugins/dfxvideo/gpucfg-0.1df/main.c
++++ b/plugins/dfxvideo/gpucfg-0.1df/main.c
+@@ -61,41 +61,41 @@
+ {
+ GtkWidget *check, *resCombo2;
+
+- check = gtk_builder_get_object(builder, "checkFullscreen");
+- resCombo2 = gtk_builder_get_object(builder, "resCombo2");
++ check = GTK_WIDGET(gtk_builder_get_object(builder, "checkFullscreen"));
++ resCombo2 = GTK_WIDGET(gtk_builder_get_object(builder, "resCombo2"));
+
+- gtk_widget_set_sensitive(resCombo2, !gtk_toggle_button_get_active(check));
++ gtk_widget_set_sensitive(resCombo2, !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check)));
+ }
+
+ void on_use_fixes_toggled(GtkWidget *widget, gpointer user_data)
+ {
+ GtkWidget *check, *table_fixes;
+- check = gtk_builder_get_object(builder,"checkUseFixes");
++ check = GTK_WIDGET(gtk_builder_get_object(builder,"checkUseFixes"));
+
+- table_fixes = gtk_builder_get_object(builder,"table_fixes");
++ table_fixes = GTK_WIDGET(gtk_builder_get_object(builder,"table_fixes"));
+
+ /* Set the state of each of the fixes to the value of the use fixes toggle */
+ gtk_container_foreach (GTK_CONTAINER (table_fixes), (GtkCallback) gtk_widget_set_sensitive,
+- (gpointer)gtk_toggle_button_get_active (check));
++ (gpointer)gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(check)));
+ }
+
+ void on_fps_toggled(GtkWidget *widget, gpointer user_data)
+ {
+ GtkWidget *checkSetFPS, *checkAutoFPSLimit, *entryFPS;
+
+- checkSetFPS = gtk_builder_get_object(builder, "checkSetFPS");
+- checkAutoFPSLimit = gtk_builder_get_object(builder, "checkAutoFPSLimit");
+- entryFPS = gtk_builder_get_object(builder, "entryFPS");
++ checkSetFPS = GTK_WIDGET(gtk_builder_get_object(builder, "checkSetFPS"));
++ checkAutoFPSLimit = GTK_WIDGET(gtk_builder_get_object(builder, "checkAutoFPSLimit"));
++ entryFPS = GTK_WIDGET(gtk_builder_get_object(builder, "entryFPS"));
+
+ gtk_widget_set_sensitive(entryFPS,
+- gtk_toggle_button_get_active(checkSetFPS) &&
+- !gtk_toggle_button_get_active(checkAutoFPSLimit));
+- gtk_widget_set_sensitive(checkAutoFPSLimit, gtk_toggle_button_get_active(checkSetFPS));
++ gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkSetFPS)) &&
++ !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkAutoFPSLimit)));
++ gtk_widget_set_sensitive(checkAutoFPSLimit, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkSetFPS)));
+ }
+
+ void OnConfigClose(GtkWidget *widget, gpointer user_data)
+ {
+- gtk_widget_destroy(gtk_builder_get_object(builder, "CfgWnd"));
++ gtk_widget_destroy(GTK_WIDGET(gtk_builder_get_object(builder, "CfgWnd")));
+ exit(0);
+ }
+
+@@ -272,7 +272,7 @@
+ if(valf>500) valf=500;
+ }
+ sprintf(tempstr,"%.1f",valf);
+- gtk_entry_set_text(gtk_builder_get_object(builder, "entryFPS"),tempstr);
++ gtk_entry_set_text(GTK_ENTRY(gtk_builder_get_object(builder, "entryFPS")),tempstr);
+
+ val=0;
+ if(pB)
+@@ -300,27 +300,27 @@
+
+ if(pB) free(pB);
+
+- widget = gtk_builder_get_object(builder, "CfgWnd");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "CfgWnd"));
+ g_signal_connect_data(G_OBJECT(widget), "destroy",
+ G_CALLBACK(SaveConfig), NULL, NULL, 0);
+
+- widget = gtk_builder_get_object(builder, "btn_close");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "btn_close"));
+ g_signal_connect_data(G_OBJECT(widget), "clicked",
+ G_CALLBACK(OnConfigClose), NULL, NULL, G_CONNECT_AFTER);
+
+- widget = gtk_builder_get_object(builder, "checkFullscreen");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "checkFullscreen"));
+ g_signal_connect_data(G_OBJECT(widget), "clicked",
+ G_CALLBACK(on_fullscreen_toggled), NULL, NULL, G_CONNECT_AFTER);
+
+- widget = gtk_builder_get_object(builder, "checkUseFixes");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "checkUseFixes"));
+ g_signal_connect_data(G_OBJECT(widget), "clicked",
+ G_CALLBACK(on_use_fixes_toggled), NULL, NULL, G_CONNECT_AFTER);
+
+- widget = gtk_builder_get_object(builder, "checkSetFPS");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "checkSetFPS"));
+ g_signal_connect_data(G_OBJECT(widget), "clicked",
+ G_CALLBACK(on_fps_toggled), NULL, NULL, G_CONNECT_AFTER);
+
+- widget = gtk_builder_get_object(builder, "checkAutoFPSLimit");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "checkAutoFPSLimit"));
+ g_signal_connect_data(G_OBJECT(widget), "clicked",
+ G_CALLBACK(on_fps_toggled), NULL, NULL, G_CONNECT_AFTER);
+
+@@ -422,7 +422,7 @@
+ SetCfgVal(pB,"\nUseFrameSkip",val);
+
+ //Framerate stored *10
+- val = atof(gtk_entry_get_text(gtk_builder_get_object(builder, "entryFPS"))) * 10;
++ val = atof(gtk_entry_get_text(GTK_ENTRY(gtk_builder_get_object(builder, "entryFPS")))) * 10;
+ SetCfgVal(pB,"\nFrameRate",val);
+
+ val = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object(builder,"checkUseFixes")));
+--- a/plugins/dfcdrom/cdrcfg-0.1df/main.c
++++ b/plugins/dfcdrom/cdrcfg-0.1df/main.c
+@@ -178,23 +178,23 @@
+ }
+
+ static void OnConfigExit(GtkWidget *widget, gpointer user_data) {
+- widget = gtk_builder_get_object(builder, "cddev_comboboxentry");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "cddev_comboboxentry"));
+ strncpy(CdromDev, gtk_entry_get_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(widget)))), 255);
+ CdromDev[255] = '\0';
+
+- widget = gtk_builder_get_object(builder, "readmode_combobox");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "readmode_combobox"));
+ ReadMode = gtk_combo_box_get_active(GTK_COMBO_BOX(widget));
+
+- widget = gtk_builder_get_object(builder, "subQ_button");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "subQ_button"));
+ UseSubQ = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
+
+- widget = gtk_builder_get_object(builder, "spinCacheSize");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "spinCacheSize"));
+ CacheSize = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(widget));
+
+- widget = gtk_builder_get_object(builder, "spinCdrSpeed");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "spinCdrSpeed"));
+ CdrSpeed = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(widget));
+
+- widget = gtk_builder_get_object(builder, "comboSpinDown");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "comboSpinDown"));
+ SpinDown = gtk_combo_box_get_active(GTK_COMBO_BOX(widget));
+
+ SaveConf();
+@@ -213,34 +213,34 @@
+ return 0;
+ }
+
+- MainWindow = gtk_builder_get_object(builder, "CfgWnd");
++ MainWindow = GTK_WIDGET(gtk_builder_get_object(builder, "CfgWnd"));
+ gtk_window_set_title(GTK_WINDOW(MainWindow), _("CDR configuration"));
+
+- widget = gtk_builder_get_object(builder, "CfgWnd");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "CfgWnd"));
+ g_signal_connect_data(G_OBJECT(widget), "delete_event",
+ G_CALLBACK(OnConfigExit), NULL, NULL, G_CONNECT_AFTER);
+
+- widget = gtk_builder_get_object(builder, "cfg_closebutton");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "cfg_closebutton"));
+ g_signal_connect_data(G_OBJECT(widget), "clicked",
+ G_CALLBACK(OnConfigExit), NULL, NULL, G_CONNECT_AFTER);
+
+- widget = gtk_builder_get_object(builder, "cddev_comboboxentry");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "cddev_comboboxentry"));
+ fill_drives_list(widget);
+ gtk_entry_set_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(widget))), CdromDev);
+
+- widget = gtk_builder_get_object(builder, "readmode_combobox");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "readmode_combobox"));
+ gtk_combo_box_set_active(GTK_COMBO_BOX(widget), ReadMode);
+
+- widget = gtk_builder_get_object(builder, "subQ_button");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "subQ_button"));
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), UseSubQ);
+
+- widget = gtk_builder_get_object(builder, "spinCacheSize");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "spinCacheSize"));
+ gtk_spin_button_set_value(GTK_SPIN_BUTTON(widget), (float)CacheSize);
+
+- widget = gtk_builder_get_object(builder, "spinCdrSpeed");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "spinCdrSpeed"));
+ gtk_spin_button_set_value(GTK_SPIN_BUTTON(widget), (float)CdrSpeed);
+
+- widget = gtk_builder_get_object(builder, "comboSpinDown");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "comboSpinDown"));
+ gtk_combo_box_set_active(GTK_COMBO_BOX(widget), SpinDown);
+
+ gtk_widget_show(MainWindow);
+--- a/plugins/dfnet/gui.c
++++ b/plugins/dfnet/gui.c
+@@ -108,36 +108,36 @@
+ return 0;
+ }
+
+- MainWindow = gtk_builder_get_object(builder, "dlgStart");
++ MainWindow = GTK_WIDGET(gtk_builder_get_object(builder, "dlgStart"));
+ gtk_window_set_title(GTK_WINDOW(MainWindow), _("NetPlay"));
+
+- widget = gtk_builder_get_object(builder, "btnCopyIP");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "btnCopyIP"));
+ g_signal_connect_data(G_OBJECT(widget), "clicked",
+ G_CALLBACK(OnCopyIP), NULL, NULL, G_CONNECT_AFTER);
+
+- widget = gtk_builder_get_object(builder, "tbServerIP");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "tbServerIP"));
+ gtk_entry_set_text(GTK_ENTRY(widget), conf.ipAddress);
+
+- widget = gtk_builder_get_object(builder, "tbPort");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "tbPort"));
+ sprintf(buf, "%d", conf.PortNum);
+ gtk_entry_set_text(GTK_ENTRY(widget), buf);
+
+ if (conf.PlayerNum == 1) {
+- widget = gtk_builder_get_object(builder, "rbServer");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "rbServer"));
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), TRUE);
+ } else {
+- widget = gtk_builder_get_object(builder, "rbClient");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "rbClient"));
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), TRUE);
+ }
+
+ if (gtk_dialog_run(GTK_DIALOG(MainWindow)) == GTK_RESPONSE_OK) {
+- widget = gtk_builder_get_object(builder, "tbServerIP");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "tbServerIP"));
+ strcpy(conf.ipAddress, gtk_entry_get_text(GTK_ENTRY(widget)));
+
+- widget = gtk_builder_get_object(builder, "tbPort");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "tbPort"));
+ conf.PortNum = atoi(gtk_entry_get_text(GTK_ENTRY(widget)));
+
+- widget = gtk_builder_get_object(builder, "rbServer");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "rbServer"));
+ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget))) {
+ conf.PlayerNum = 1;
+ } else {
+--- a/plugins/bladesio1/gui.c
++++ b/plugins/bladesio1/gui.c
+@@ -128,44 +128,44 @@
+
+ settingsRead();
+
+- MainWindow = gtk_builder_get_object(builder, "dlgStart");
++ MainWindow = GTK_WIDGET(gtk_builder_get_object(builder, "dlgStart"));
+ gtk_window_set_title(GTK_WINDOW(MainWindow), _("Link Cable Configuration"));
+
+- widget = gtk_builder_get_object(builder, "btnCopyIP");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "btnCopyIP"));
+ g_signal_connect_data(G_OBJECT(widget), "clicked",
+ G_CALLBACK(OnCopyIP), NULL, NULL, G_CONNECT_AFTER);
+
+ switch(settings.player) {
+ case PLAYER_DISABLED:
+- widget = gtk_builder_get_object(builder, "rbDisabled");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "rbDisabled"));
+ break;
+ case PLAYER_MASTER:
+- widget = gtk_builder_get_object(builder, "rbServer");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "rbServer"));
+ break;
+ case PLAYER_SLAVE:
+- widget = gtk_builder_get_object(builder, "rbClient");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "rbClient"));
+ break;
+ }
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), TRUE);
+
+- widget = gtk_builder_get_object(builder, "tbServerIP");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "tbServerIP"));
+ gtk_entry_set_text(GTK_ENTRY(widget), settings.ip);
+
+- widget = gtk_builder_get_object(builder, "tbPort");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "tbPort"));
+ gtk_spin_button_set_value(GTK_SPIN_BUTTON(widget), settings.port);
+
+ if(gtk_dialog_run(GTK_DIALOG(MainWindow)) == GTK_RESPONSE_OK) {
+- widget = gtk_builder_get_object(builder, "tbServerIP");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "tbServerIP"));
+ strncpy(settings.ip, gtk_entry_get_text(GTK_ENTRY(widget)), sizeof(settings.ip) - 1);
+
+- widget = gtk_builder_get_object(builder, "tbPort");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "tbPort"));
+ settings.port = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(widget));
+
+- widget = gtk_builder_get_object(builder, "rbDisabled");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "rbDisabled"));
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)))
+ settings.player = PLAYER_DISABLED;
+ else {
+- widget = gtk_builder_get_object(builder, "rbServer");
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, "rbServer"));
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)))
+ settings.player = PLAYER_MASTER;
+ else
+--- a/plugins/peopsxgl/gpu.c
++++ b/plugins/peopsxgl/gpu.c
+@@ -1091,7 +1091,7 @@
+ #if defined (_MACGL)
+ *disp = display;
+ #else
+- *disp=(unsigned long *)display; // return display ID to main emu
++ *disp=(unsigned long)display; // return display ID to main emu
+ #endif
+ }
+
diff --git a/debian/patches/series b/debian/patches/series
index c56f17f..b5572ed 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -10,3 +10,4 @@
10_cross.patch
11_implicit-function-declaration.patch
12_sdl-joystick.patch
+g++14.patch
More information about the Pkg-games-devel
mailing list