Per most recent build failure on f19+: /builddir/build/BUILD/kdenetwork-4.10.2/kopete/libkopete/avdevice/videodevice.cpp: In member function 'const char* Kopete::AV::VideoDevice::getUnifiedV4L2StdCtrlName(quint32)': /builddir/build/BUILD/kdenetwork-4.10.2/kopete/libkopete/avdevice/videodevice.cpp:3064:8: error: 'V4L2_CID_HCENTER' was not declared in this scope case V4L2_CID_HCENTER: return I18N_NOOP("Horizontal Center"); ^ /builddir/build/BUILD/kdenetwork-4.10.2/kopete/libkopete/avdevice/videodevice.cpp:3065:8: error: 'V4L2_CID_VCENTER' was not declared in this scope case V4L2_CID_VCENTER: return I18N_NOOP("Vertical Center"); ^
I already told you the obvious fix on IRC: Kopete::AV::VideoDevice::getUnifiedV4L2StdCtrlName just maps v4l control codes to translatable descriptions. So if we build against a v4l which does not support certain controls, we don't need the mapping either. The surrounding code already has several of those: case V4L2_FOO: return I18N_NOOP("Foo"); lines under #ifdef V4L2_FOO, so we just need to do the same here, ergo: +#ifdef V4L2_CID_HCENTER case V4L2_CID_HCENTER: return I18N_NOOP("Horizontal Center"); +#endif +#ifdef V4L2_CID_VCENTER case V4L2_CID_VCENTER: return I18N_NOOP("Vertical Center"); +#endif (or you could use a single #ifdef because those were introduced and removed together).
confirmed this approach fixes the build, thanks.
%changelog * Sun Mar 31 2013 Rex Dieter <rdieter> - 7:4.10.2-1 - 4.10.2 - kopete FTBFS against recent kernels, uses deprecated v4l interfaces (#946924)