Build failure when Cheese is not enabled
If GNOME Control Center is configured to not have cheese enabled (via -Dcheese=false
), GNOME Control Center will fail to compile:
FAILED: panels/user-accounts/user-accounts@sta/um-photo-dialog.c.o
x86_64-solus-linux-gcc -Ipanels/user-accounts/user-accounts@sta -Ipanels/user-accounts -I../panels/user-accounts -I. -I../ -Ishell -I../shell -Ipanels/common -I../panels/common -I/usr/include/glib-2
.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gsettings-desktop-schemas -I/usr/include/gio-unix-2.0/ -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/db
us-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/harfb
uzz -I/usr/include/libdrm -I/usr/include/libpng15 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/accountsservice-1.0 -I/usr/include/gnome-desktop-3.0 -I/usr/include/polkit-1 -fdiagnostics-color=always
-pipe -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -mtune=generic -march=x86-64 -g2 -O2 -fPIC -Wformat -Wformat-security -fno-omit-frame-pointer -fexceptions -D_FORTIFY_SOURCE=2 -fstack-protector --param s
sp-buffer-size=32 -fasynchronous-unwind-tables -ftree-vectorize -feliminate-unused-debug-types -Wall -Wno-error -Wp,-D_REENTRANT -fPIC -pthread '-DG_LOG_DOMAIN="user-accounts-cc-panel"' '-DPANEL_ID="
user-accounts"' '-DGNOMELOCALEDIR="/usr/share/locale"' -DHAVE_LIBPWQUALITY '-DUM_PIXMAP_DIR="/usr/share/gnome-control-center/pixmaps"' -MD -MQ 'panels/user-accounts/user-accounts@sta/um-photo-dialog.
c.o' -MF 'panels/user-accounts/user-accounts@sta/um-photo-dialog.c.o.d' -o 'panels/user-accounts/user-accounts@sta/um-photo-dialog.c.o' -c ../panels/user-accounts/um-photo-dialog.c
In file included from /usr/include/glib-2.0/gobject/gobject.h:27:0,
from /usr/include/glib-2.0/gobject/gbinding.h:29,
from /usr/include/glib-2.0/glib-object.h:23,
from /usr/include/glib-2.0/gio/gioenums.h:28,
from /usr/include/glib-2.0/gio/giotypes.h:28,
from /usr/include/glib-2.0/gio/gio.h:26,
from /usr/include/gtk-3.0/gdk/gdkapplaunchcontext.h:28,
from /usr/include/gtk-3.0/gdk/gdk.h:32,
from /usr/include/gtk-3.0/gtk/gtk.h:30,
from ../panels/user-accounts/um-photo-dialog.c:27:
../panels/user-accounts/um-photo-dialog.c: In function ‘um_photo_dialog_class_init’:
../panels/user-accounts/um-photo-dialog.c:567:58: error: ‘webcam_icon_selected’ undeclared (first use in this function); did you mean ‘g_relation_select’?
gtk_widget_class_bind_template_callback (wclass, webcam_icon_selected);
This is because webcam_icon_selected
is declared between a HAVE_CHEESE
ifdef (declaration at ln 296, where the respective ifdef is ln 264).