building nvidia-settings-190.42 gives compilation errors due to bad #ifdefs Reproducible: Always Steps to Reproduce: 1. emerge nvidia-settings-190.XX Actual Results: src/libXNVCtrlAttributes/NvCtrlAttributesVidMode.c: In function 'NvCtrlInitVidModeAttributes': src/libXNVCtrlAttributes/NvCtrlAttributesVidMode.c:214: error: 'prev_error_handler' undeclared (first use in this function) src/libXNVCtrlAttributes/NvCtrlAttributesVidMode.c:214: error: (Each undeclared identifier is reported only once src/libXNVCtrlAttributes/NvCtrlAttributesVidMode.c:214: error: for each function it appears in.) Expected Results: clean compile. a quick patch for achieving this is given below (call prev_error_handler only when its context X_XF86VidModeGetGammaRampSize is defined) --- NvCtrlAttributesVidMode.c.orig 2009-11-02 13:36:19.000000000 +0200 +++ NvCtrlAttributesVidMode.c 2009-11-02 13:52:30.000000000 +0200 @@ -210,11 +210,12 @@ if (vm) free(vm); /* restore the original error handler, if we overrode it */ - +#if defined(X_XF86VidModeGetGammaRampSize) if (prev_error_handler) { XSetErrorHandler(prev_error_handler); prev_error_handler = NULL; } +#endif return NULL;
Created attachment 209022 [details, diff] nvidia-settings-190.42 compilation errors fix
relation to bug 289744 (before marking current as a dup): properly including xf86vmproto.h will just mask current leaving it hidden
In portage. Let's hope this one is correct finally...
(In reply to comment #3) > In portage. Let's hope this one is correct finally... > src/libXNVCtrlAttributes/NvCtrlAttributesVidMode.c:32:40: Fehler: X11/extensions/xf86vmproto.h: Datei oder Verzeichnis nicht gefunden ( TRANSLATION : " File or Directory not found " )
(In reply to comment #4) > (In reply to comment #3) RETRACT: Works for me. SORRY for the noise - presumably my mirror was not full in sync before.