I never said the rest of the code was doing the right thing, either. I think you're missing my point. Instead of manually including config.h in every file that needs NLS, why not simply put add_definitions(-DENABLE_NLS=1) in CMakeLists.txt? Seems much less error prone.
On Aug 25, 2011, at 1:57 AM, Peter Åstrand <astr...@cendio.se> wrote: > > Manually including config.h in every file is the approach that's used for the > rest of the code. Look in /common etc. One alternative could be to use a > -include option to GCC, but I'm not sure this is much better. > > Rgds, > Peter > > > On Wed, 24 Aug 2011, DRC wrote: > >> I think that such a critical #define really needs to be #defined on the >> command line. Manually #including it in every file that needs it is a >> recipe for errors-- in this case, silent ones. >> >> >> On 8/24/11 1:18 AM, Peter Åstrand wrote: >>> >>>> Can you please explain this further? >>> >>> If you don't include config.h, then ENABLE_NLS won't be defined, meaning >>> that gettext.h will use dummy translation routines. >>> >>> Rgds, >>> Peter >>>> >>>> >>>> On 8/23/11 7:04 AM, astr...@users.sourceforge.net wrote: >>>>> Revision: 4646 >>>>> >>>>> http://tigervnc.svn.sourceforge.net/tigervnc/?rev=4646&view=rev >>>>> Author: astrand >>>>> Date: 2011-08-23 12:04:46 +0000 (Tue, 23 Aug 2011) >>>>> Log Message: >>>>> ----------- >>>>> Make sure to include config.h in every compilation unit. Otherwise, >>>>> the necessary defines will only be visible as a side effect of >>>>> including other headers, leading to problems with things like >>>>> translations, which will fail in various places. >>>>> >>>>> Modified Paths: >>>>> -------------- >>>>> trunk/vncviewer/CConn.cxx >>>>> trunk/vncviewer/DesktopWindow.cxx >>>>> trunk/vncviewer/OSXPixelBuffer.cxx >>>>> trunk/vncviewer/OptionsDialog.cxx >>>>> trunk/vncviewer/ServerDialog.cxx >>>>> trunk/vncviewer/UserDialog.cxx >>>>> trunk/vncviewer/Viewport.cxx >>>>> trunk/vncviewer/Win32PixelBuffer.cxx >>>>> trunk/vncviewer/X11PixelBuffer.cxx >>>>> trunk/vncviewer/parameters.cxx >>>>> trunk/vncviewer/vncviewer.cxx >>>>> >>>>> Modified: trunk/vncviewer/CConn.cxx >>>>> =================================================================== >>>>> --- trunk/vncviewer/CConn.cxx 2011-08-22 11:38:35 UTC (rev 4645) >>>>> +++ trunk/vncviewer/CConn.cxx 2011-08-23 12:04:46 UTC (rev 4646) >>>>> @@ -17,6 +17,10 @@ >>>>> * USA. >>>>> */ >>>>> >>>>> +#ifdef HAVE_CONFIG_H >>>>> +#include <config.h> >>>>> +#endif >>>>> + >>>>> #include <assert.h> >>>>> #ifndef _WIN32 >>>>> #include <unistd.h> >>>>> >>>>> Modified: trunk/vncviewer/DesktopWindow.cxx >>>>> =================================================================== >>>>> --- trunk/vncviewer/DesktopWindow.cxx 2011-08-22 11:38:35 UTC (rev >>>>> 4645) >>>>> +++ trunk/vncviewer/DesktopWindow.cxx 2011-08-23 12:04:46 UTC (rev >>>>> 4646) >>>>> @@ -17,6 +17,10 @@ >>>>> * USA. >>>>> */ >>>>> >>>>> +#ifdef HAVE_CONFIG_H >>>>> +#include <config.h> >>>>> +#endif >>>>> + >>>>> #include <assert.h> >>>>> #include <stdio.h> >>>>> #include <string.h> >>>>> >>>>> Modified: trunk/vncviewer/OSXPixelBuffer.cxx >>>>> =================================================================== >>>>> --- trunk/vncviewer/OSXPixelBuffer.cxx 2011-08-22 11:38:35 UTC >>>>> (rev 4645) >>>>> +++ trunk/vncviewer/OSXPixelBuffer.cxx 2011-08-23 12:04:46 UTC >>>>> (rev 4646) >>>>> @@ -16,6 +16,10 @@ >>>>> * USA. >>>>> */ >>>>> >>>>> +#ifdef HAVE_CONFIG_H >>>>> +#include <config.h> >>>>> +#endif >>>>> + >>>>> #include <assert.h> >>>>> >>>>> #include <ApplicationServices/ApplicationServices.h> >>>>> >>>>> Modified: trunk/vncviewer/OptionsDialog.cxx >>>>> =================================================================== >>>>> --- trunk/vncviewer/OptionsDialog.cxx 2011-08-22 11:38:35 UTC (rev >>>>> 4645) >>>>> +++ trunk/vncviewer/OptionsDialog.cxx 2011-08-23 12:04:46 UTC (rev >>>>> 4646) >>>>> @@ -16,6 +16,10 @@ >>>>> * USA. >>>>> */ >>>>> >>>>> +#ifdef HAVE_CONFIG_H >>>>> +#include <config.h> >>>>> +#endif >>>>> + >>>>> #include <stdlib.h> >>>>> >>>>> #include <list> >>>>> >>>>> Modified: trunk/vncviewer/ServerDialog.cxx >>>>> =================================================================== >>>>> --- trunk/vncviewer/ServerDialog.cxx 2011-08-22 11:38:35 UTC (rev >>>>> 4645) >>>>> +++ trunk/vncviewer/ServerDialog.cxx 2011-08-23 12:04:46 UTC (rev >>>>> 4646) >>>>> @@ -16,6 +16,10 @@ >>>>> * USA. >>>>> */ >>>>> >>>>> +#ifdef HAVE_CONFIG_H >>>>> +#include <config.h> >>>>> +#endif >>>>> + >>>>> #include <FL/Fl.H> >>>>> #include <FL/Fl_Input.H> >>>>> #include <FL/Fl_Button.H> >>>>> >>>>> Modified: trunk/vncviewer/UserDialog.cxx >>>>> =================================================================== >>>>> --- trunk/vncviewer/UserDialog.cxx 2011-08-22 11:38:35 UTC (rev 4645) >>>>> +++ trunk/vncviewer/UserDialog.cxx 2011-08-23 12:04:46 UTC (rev 4646) >>>>> @@ -16,6 +16,10 @@ >>>>> * USA. >>>>> */ >>>>> >>>>> +#ifdef HAVE_CONFIG_H >>>>> +#include <config.h> >>>>> +#endif >>>>> + >>>>> #include <assert.h> >>>>> #include <stdio.h> >>>>> #include <string.h> >>>>> >>>>> Modified: trunk/vncviewer/Viewport.cxx >>>>> =================================================================== >>>>> --- trunk/vncviewer/Viewport.cxx 2011-08-22 11:38:35 UTC (rev 4645) >>>>> +++ trunk/vncviewer/Viewport.cxx 2011-08-23 12:04:46 UTC (rev 4646) >>>>> @@ -17,6 +17,10 @@ >>>>> * USA. >>>>> */ >>>>> >>>>> +#ifdef HAVE_CONFIG_H >>>>> +#include <config.h> >>>>> +#endif >>>>> + >>>>> #include <assert.h> >>>>> #include <stdio.h> >>>>> #include <string.h> >>>>> >>>>> Modified: trunk/vncviewer/Win32PixelBuffer.cxx >>>>> =================================================================== >>>>> --- trunk/vncviewer/Win32PixelBuffer.cxx 2011-08-22 11:38:35 UTC >>>>> (rev 4645) >>>>> +++ trunk/vncviewer/Win32PixelBuffer.cxx 2011-08-23 12:04:46 UTC >>>>> (rev 4646) >>>>> @@ -17,6 +17,10 @@ >>>>> * USA. >>>>> */ >>>>> >>>>> +#ifdef HAVE_CONFIG_H >>>>> +#include <config.h> >>>>> +#endif >>>>> + >>>>> #include <assert.h> >>>>> #include <stdlib.h> >>>>> >>>>> >>>>> Modified: trunk/vncviewer/X11PixelBuffer.cxx >>>>> =================================================================== >>>>> --- trunk/vncviewer/X11PixelBuffer.cxx 2011-08-22 11:38:35 UTC >>>>> (rev 4645) >>>>> +++ trunk/vncviewer/X11PixelBuffer.cxx 2011-08-23 12:04:46 UTC >>>>> (rev 4646) >>>>> @@ -17,6 +17,10 @@ >>>>> * USA. >>>>> */ >>>>> >>>>> +#ifdef HAVE_CONFIG_H >>>>> +#include <config.h> >>>>> +#endif >>>>> + >>>>> #include <assert.h> >>>>> #include <stdlib.h> >>>>> >>>>> >>>>> Modified: trunk/vncviewer/parameters.cxx >>>>> =================================================================== >>>>> --- trunk/vncviewer/parameters.cxx 2011-08-22 11:38:35 UTC (rev 4645) >>>>> +++ trunk/vncviewer/parameters.cxx 2011-08-23 12:04:46 UTC (rev 4646) >>>>> @@ -17,6 +17,10 @@ >>>>> * USA. >>>>> */ >>>>> >>>>> +#ifdef HAVE_CONFIG_H >>>>> +#include <config.h> >>>>> +#endif >>>>> + >>>>> #include "parameters.h" >>>>> >>>>> using namespace rfb; >>>>> >>>>> Modified: trunk/vncviewer/vncviewer.cxx >>>>> =================================================================== >>>>> --- trunk/vncviewer/vncviewer.cxx 2011-08-22 11:38:35 UTC (rev 4645) >>>>> +++ trunk/vncviewer/vncviewer.cxx 2011-08-23 12:04:46 UTC (rev 4646) >>>>> @@ -18,6 +18,10 @@ >>>>> * USA. >>>>> */ >>>>> >>>>> +#ifdef HAVE_CONFIG_H >>>>> +#include <config.h> >>>>> +#endif >>>>> + >>>>> #include <string.h> >>>>> #include <stdio.h> >>>>> #include <stdlib.h> >>>>> >>>>> This was sent by the SourceForge.net collaborative development >>>>> platform, the world's largest Open Source development site. >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> >>>>> Get a FREE DOWNLOAD! and learn more about uberSVN rich system, >>>>> user administration capabilities and model configuration. Take >>>>> the hassle out of deploying and managing Subversion and the >>>>> tools developers use with it. http://p.sf.net/sfu/wandisco-d2d-2 >>>>> _______________________________________________ >>>>> Tigervnc-commits mailing list >>>>> tigervnc-comm...@lists.sourceforge.net >>>>> https://lists.sourceforge.net/lists/listinfo/tigervnc-commits >>>> >>>> ------------------------------------------------------------------------------ >>>> >>>> Get a FREE DOWNLOAD! and learn more about uberSVN rich system, >>>> user administration capabilities and model configuration. Take >>>> the hassle out of deploying and managing Subversion and the >>>> tools developers use with it. http://p.sf.net/sfu/wandisco-d2d-2 >>>> _______________________________________________ >>>> Tigervnc-devel mailing list >>>> Tigervnc-devel@lists.sourceforge.net >>>> https://lists.sourceforge.net/lists/listinfo/tigervnc-devel >>>> >>> >>> >>> --- >>> Peter Åstrand ThinLinc Chief Developer >>> Cendio AB http://www.cendio.com >>> Wallenbergs gata 4 >>> 583 30 Linköping Phone: +46-13-21 46 00 >> > > > --- > Peter Åstrand ThinLinc Chief Developer > Cendio AB http://www.cendio.com > Wallenbergs gata 4 > 583 30 Linköping Phone: +46-13-21 46 00 ------------------------------------------------------------------------------ EMC VNX: the world's simplest storage, starting under $10K The only unified storage solution that offers unified management Up to 160% more powerful than alternatives and 25% more efficient. Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev _______________________________________________ Tigervnc-devel mailing list Tigervnc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tigervnc-devel