Control: tags -1 + patch fixed-upstream On Sat, 23 Oct 2021 at 20:53:39 +0200, Lucas Nussbaum wrote: > > /usr/include/c++/11/type_traits:44:3: error: template with C linkage > > 44 | template<typename... _Elements> > > | ^~~~~~~~ > > run-passwd.cpp:10:1: note: ‘extern "C"’ linkage started here > > 10 | extern "C" { > > | ^~~~~~~~~~
This appears to be fixed by the attached patch from upstream. (Compiled successfully on amd64, not otherwise tested.) To avoid this sort of thing happening whenever a new GLib version has a behaviour change, it would also be a good idea to choose a target version of GLib and define the GLIB_VERSION_MIN_REQUIRED and GLIB_VERSION_MAX_ALLOWED macros, similar to <https://gitlab.gnome.org/GNOME/pan/-/merge_requests/16>. I do not use UKUI myself and I do not intend to NMU this. smcv
From: Z-bin <1134636...@qq.com> Date: Sat, 6 Mar 2021 16:06:13 +0800 Subject: fix: Not include glib's headers in an 'extern "C"' context MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Description: Not include glib's headers in an 'extern "C"' context Log: 去除extern "C" Origin: upstream, commit:291c510087cc2443fb4f49cdb61d0de5e66417ca Bug-Debian: https://bugs.debian.org/997137 --- checkUserPwd/main.cpp | 5 ----- plugins/account/userinfo/changefacedialog.h | 2 -- plugins/account/userinfo/changepwddialog.cpp | 3 --- plugins/account/userinfo/qtdbus/userdispatcher.h | 2 -- plugins/account/userinfo/run-passwd.cpp | 3 --- plugins/account/userinfo/userinfo.cpp | 2 -- plugins/devices/audio/ukmedia_main_widget.h | 3 ++- plugins/devices/keyboard/kbdlayoutmanager.cpp | 2 -- plugins/devices/mouse/mousecontrol.cpp | 2 -- plugins/devices/shortcut/realizeshortcutwheel.h | 2 -- plugins/devices/shortcut/shortcut.cpp | 3 --- plugins/devices/touchpad/touchpad.cpp | 2 -- plugins/messages-task/notice/notice.h | 2 -- plugins/messages-task/notice/realizenotice.h | 2 -- plugins/network/proxy/proxy.h | 2 -- plugins/personalized/desktop/realizedesktop.h | 2 -- plugins/personalized/fonts/fonts.h | 2 -- plugins/personalized/screensaver/screensaver.h | 2 -- plugins/personalized/wallpaper/wallpaper.h | 2 -- plugins/security-updates/backup/backup.cpp | 2 -- plugins/system/autoboot/addautoboot.h | 2 -- plugins/system/autoboot/autoboot.cpp | 2 -- plugins/system/defaultapp/addappdialog.h | 2 -- plugins/system/defaultapp/defaultapp.h | 2 -- plugins/time-language/area/area.h | 2 -- plugins/time-language/datetime/changtime.h | 2 -- plugins/time-language/datetime/datetime.h | 2 -- shell/mainwindow.cpp | 2 -- 28 files changed, 2 insertions(+), 61 deletions(-) diff --git a/checkUserPwd/main.cpp b/checkUserPwd/main.cpp index a352f07..1ed17b0 100644 --- a/checkUserPwd/main.cpp +++ b/checkUserPwd/main.cpp @@ -18,16 +18,11 @@ * */ -extern "C" { - #include <stdio.h> #include <stdbool.h> #include <cstring> - #include <crypt.h> -} - #define SHADOW_FILE "/etc/shadow" #define BUFF_SIZE 256 #define SIZE 256 diff --git a/plugins/account/userinfo/changefacedialog.h b/plugins/account/userinfo/changefacedialog.h index 4686165..609e6a7 100644 --- a/plugins/account/userinfo/changefacedialog.h +++ b/plugins/account/userinfo/changefacedialog.h @@ -35,10 +35,8 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> -} namespace Ui { class ChangeFaceDialog; diff --git a/plugins/account/userinfo/changepwddialog.cpp b/plugins/account/userinfo/changepwddialog.cpp index 9156b79..630ab7c 100644 --- a/plugins/account/userinfo/changepwddialog.cpp +++ b/plugins/account/userinfo/changepwddialog.cpp @@ -36,12 +36,9 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> -} - #include "run-passwd.h" #define PWD_LOW_LENGTH 6 diff --git a/plugins/account/userinfo/qtdbus/userdispatcher.h b/plugins/account/userinfo/qtdbus/userdispatcher.h index 401d45c..b7e243a 100644 --- a/plugins/account/userinfo/qtdbus/userdispatcher.h +++ b/plugins/account/userinfo/qtdbus/userdispatcher.h @@ -34,11 +34,9 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <glib/gstdio.h> #include <gio/gio.h> -} class UserInfo; diff --git a/plugins/account/userinfo/run-passwd.cpp b/plugins/account/userinfo/run-passwd.cpp index 6407929..d95490d 100644 --- a/plugins/account/userinfo/run-passwd.cpp +++ b/plugins/account/userinfo/run-passwd.cpp @@ -7,7 +7,6 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> @@ -16,8 +15,6 @@ extern "C" { #include <errno.h> #include <sys/wait.h> -} - #include "run-passwd.h" /* Buffer size for backend output */ diff --git a/plugins/account/userinfo/userinfo.cpp b/plugins/account/userinfo/userinfo.cpp index 8488fef..29d5af6 100644 --- a/plugins/account/userinfo/userinfo.cpp +++ b/plugins/account/userinfo/userinfo.cpp @@ -43,10 +43,8 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> -} #define DEFAULTFACE "/usr/share/ukui/faces/default.png" #define ITEMHEIGH 52 diff --git a/plugins/devices/audio/ukmedia_main_widget.h b/plugins/devices/audio/ukmedia_main_widget.h index 491ca40..f424088 100644 --- a/plugins/devices/audio/ukmedia_main_widget.h +++ b/plugins/devices/audio/ukmedia_main_widget.h @@ -34,10 +34,11 @@ #include <glib/gi18n.h> #include <gobject/gparamspecs.h> #include <glib/gstdio.h> +#include <glib/gmain.h> + extern "C" { #include <dconf/dconf.h> #include <canberra.h> -#include <glib/gmain.h> #include <pulse/ext-stream-restore.h> #include <pulse/glib-mainloop.h> #include <pulse/error.h> diff --git a/plugins/devices/keyboard/kbdlayoutmanager.cpp b/plugins/devices/keyboard/kbdlayoutmanager.cpp index e289fc5..8464421 100644 --- a/plugins/devices/keyboard/kbdlayoutmanager.cpp +++ b/plugins/devices/keyboard/kbdlayoutmanager.cpp @@ -27,10 +27,8 @@ #include <QDebug> -extern "C" { #include <libxklavier/xklavier.h> #include <libmatekbd/matekbd-keyboard-config.h> -} #define MAXNUM 4 #define KBD_LAYOUTS_SCHEMA "org.mate.peripherals-keyboard-xkb.kbd" diff --git a/plugins/devices/mouse/mousecontrol.cpp b/plugins/devices/mouse/mousecontrol.cpp index 1f06a0f..3d3c03f 100644 --- a/plugins/devices/mouse/mousecontrol.cpp +++ b/plugins/devices/mouse/mousecontrol.cpp @@ -38,11 +38,9 @@ #undef signals #endif -extern "C" { #include <X11/Xlib.h> #include <glib.h> #include <gio/gio.h> -} #define MOUSE_SCHEMA "org.ukui.peripherals-mouse" #define HAND_KEY "left-handed" diff --git a/plugins/devices/shortcut/realizeshortcutwheel.h b/plugins/devices/shortcut/realizeshortcutwheel.h index 2db263d..1f0cdf0 100644 --- a/plugins/devices/shortcut/realizeshortcutwheel.h +++ b/plugins/devices/shortcut/realizeshortcutwheel.h @@ -30,11 +30,9 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> #include <dconf/dconf.h> -} #define KEYBINDINGS_DESKTOP_SCHEMA "org.ukui.SettingsDaemon.plugins.media-keys" #define KEYBINDINGS_SYSTEM_SCHEMA "org.gnome.desktop.wm.keybindings" diff --git a/plugins/devices/shortcut/shortcut.cpp b/plugins/devices/shortcut/shortcut.cpp index 2d14acc..7704eac 100644 --- a/plugins/devices/shortcut/shortcut.cpp +++ b/plugins/devices/shortcut/shortcut.cpp @@ -36,11 +36,8 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <glib/gi18n.h> -} - #define ITEMHEIGH 36 #define TITLEWIDGETHEIGH 40 diff --git a/plugins/devices/touchpad/touchpad.cpp b/plugins/devices/touchpad/touchpad.cpp index 0ccd1b1..8889971 100644 --- a/plugins/devices/touchpad/touchpad.cpp +++ b/plugins/devices/touchpad/touchpad.cpp @@ -30,10 +30,8 @@ #undef signals #endif -extern "C" { #include <X11/extensions/XInput.h> #include <X11/Xatom.h> -} #define TOUCHPAD_SCHEMA "org.ukui.peripherals-touchpad" #define ACTIVE_TOUCHPAD_KEY "touchpad-enabled" diff --git a/plugins/messages-task/notice/notice.h b/plugins/messages-task/notice/notice.h index 903c13f..48a9d26 100644 --- a/plugins/messages-task/notice/notice.h +++ b/plugins/messages-task/notice/notice.h @@ -37,11 +37,9 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> #include <gio/gdesktopappinfo.h> -} QT_BEGIN_NAMESPACE namespace Ui { class Notice; } diff --git a/plugins/messages-task/notice/realizenotice.h b/plugins/messages-task/notice/realizenotice.h index c4b402d..10e8265 100644 --- a/plugins/messages-task/notice/realizenotice.h +++ b/plugins/messages-task/notice/realizenotice.h @@ -31,11 +31,9 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> #include <dconf/dconf.h> -} #define NOTICE_SCHEMA "org.ukui.control-center.notice" #define NEW_FEATURE_KEY "show-new-feature" diff --git a/plugins/network/proxy/proxy.h b/plugins/network/proxy/proxy.h index 3fa0f21..90798bc 100644 --- a/plugins/network/proxy/proxy.h +++ b/plugins/network/proxy/proxy.h @@ -40,10 +40,8 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> -} struct GSData { diff --git a/plugins/personalized/desktop/realizedesktop.h b/plugins/personalized/desktop/realizedesktop.h index bf3f3bb..d678df0 100644 --- a/plugins/personalized/desktop/realizedesktop.h +++ b/plugins/personalized/desktop/realizedesktop.h @@ -31,11 +31,9 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> #include <dconf/dconf.h> -} #define TRAY_SCHEMA "org.ukui.panel.tray" #define TRAY_SCHEMA_PATH "/org/ukui/tray/keybindings/" diff --git a/plugins/personalized/fonts/fonts.h b/plugins/personalized/fonts/fonts.h index 8bfe6ef..2645275 100644 --- a/plugins/personalized/fonts/fonts.h +++ b/plugins/personalized/fonts/fonts.h @@ -39,11 +39,9 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> #include <stdlib.h> -} namespace Ui { class Fonts; diff --git a/plugins/personalized/screensaver/screensaver.h b/plugins/personalized/screensaver/screensaver.h index d36c37a..cdfe1d5 100644 --- a/plugins/personalized/screensaver/screensaver.h +++ b/plugins/personalized/screensaver/screensaver.h @@ -44,11 +44,9 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> #include <gio/gdesktopappinfo.h> -} typedef struct _SSThemeInfo{ QString name; diff --git a/plugins/personalized/wallpaper/wallpaper.h b/plugins/personalized/wallpaper/wallpaper.h index f5722b8..865c0f2 100644 --- a/plugins/personalized/wallpaper/wallpaper.h +++ b/plugins/personalized/wallpaper/wallpaper.h @@ -48,10 +48,8 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> -} #define BACKGROUND "org.mate.background" diff --git a/plugins/security-updates/backup/backup.cpp b/plugins/security-updates/backup/backup.cpp index be835da..c4a0d2a 100644 --- a/plugins/security-updates/backup/backup.cpp +++ b/plugins/security-updates/backup/backup.cpp @@ -28,9 +28,7 @@ #undef signals #endif -extern "C" { #include <gio/gdesktopappinfo.h> -} Backup::Backup() { diff --git a/plugins/system/autoboot/addautoboot.h b/plugins/system/autoboot/addautoboot.h index 6469066..65592a8 100644 --- a/plugins/system/autoboot/addautoboot.h +++ b/plugins/system/autoboot/addautoboot.h @@ -32,12 +32,10 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <glib/gstdio.h> #include <gio/gio.h> #include <gio/gdesktopappinfo.h> -} namespace Ui { class AddAutoBoot; diff --git a/plugins/system/autoboot/autoboot.cpp b/plugins/system/autoboot/autoboot.cpp index 24b1178..1218148 100644 --- a/plugins/system/autoboot/autoboot.cpp +++ b/plugins/system/autoboot/autoboot.cpp @@ -38,12 +38,10 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <glib/gstdio.h> #include <gio/gio.h> #include <gio/gdesktopappinfo.h> -} #define ITEMWIDTH 522 #define ITEMHEIGHT 62 diff --git a/plugins/system/defaultapp/addappdialog.h b/plugins/system/defaultapp/addappdialog.h index 4a2c21c..03f0ee6 100644 --- a/plugins/system/defaultapp/addappdialog.h +++ b/plugins/system/defaultapp/addappdialog.h @@ -31,11 +31,9 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> #include <gio/gdesktopappinfo.h> -} namespace Ui { class AddAppDialog; diff --git a/plugins/system/defaultapp/defaultapp.h b/plugins/system/defaultapp/defaultapp.h index bad7321..cd228d3 100644 --- a/plugins/system/defaultapp/defaultapp.h +++ b/plugins/system/defaultapp/defaultapp.h @@ -37,11 +37,9 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> #include <gio/gdesktopappinfo.h> -} typedef struct _Applist { diff --git a/plugins/time-language/area/area.h b/plugins/time-language/area/area.h index 02fde01..8ba972a 100644 --- a/plugins/time-language/area/area.h +++ b/plugins/time-language/area/area.h @@ -44,10 +44,8 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> -} namespace Ui { class Area; diff --git a/plugins/time-language/datetime/changtime.h b/plugins/time-language/datetime/changtime.h index 4afeb28..7bdaf19 100644 --- a/plugins/time-language/datetime/changtime.h +++ b/plugins/time-language/datetime/changtime.h @@ -43,10 +43,8 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> -} namespace Ui { class changtimedialog; diff --git a/plugins/time-language/datetime/datetime.h b/plugins/time-language/datetime/datetime.h index aa03f92..13a4a09 100644 --- a/plugins/time-language/datetime/datetime.h +++ b/plugins/time-language/datetime/datetime.h @@ -51,10 +51,8 @@ #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> -} #define TZ_DATA_FILE "/usr/share/zoneinfo/zoneUtc" #define DEFAULT_TZ "Asia/Shanghai" diff --git a/shell/mainwindow.cpp b/shell/mainwindow.cpp index efdabc9..6cbc145 100644 --- a/shell/mainwindow.cpp +++ b/shell/mainwindow.cpp @@ -53,11 +53,9 @@ const QByteArray kVinoSchemas = "org.gnome.Vino"; #undef signals #endif -extern "C" { #include <glib.h> #include <gio/gio.h> #include <libmatemixer/matemixer.h> -} const int dbWitdth = 50; extern void qt_blurImage(QImage &blurImage, qreal radius, bool quality, int transposed);