On Mon, 17 Jun 2019 10:26:13 +0200 Vincent Torri <[email protected]> said:
> On Mon, Jun 17, 2019 at 10:10 AM Carsten Haitzler <[email protected]> > wrote: > > > > > > > > > Hello > > > > > > I want to make Evil completely private (it seems that currently, it is > > > possible), but the examples need functions /macro that do not exist on > > > Windows. Namely (for now) : > > > > > > edje/edje-text.c line 57 : setenv > > > edje/edje-textblock-hyphenation.c line 85 : LC_MESSAGES > > > > > > Note that, on Windows, the equivalent of setenv() is _putenv() > > > > > > I can include evil_private.h in these examples. Is it ok for everyone > > > ? Or should I export setenv and LC_MESSAGES in Evil.h (and maybe other > > > stuff ? > > > > Xavi said this already -> if you want evil to be private, then you can't go > > using it in public examples. setenv() already is an issue as I've found it > > to be unportable between unixes in the past. putenv() is portable, BUT has > > the nasty issue of using the VAR=val pointer directly in the env and thus > > becoming an ownership and lifetime nightmare. > > maybe we can add an API in eina, but having an #ifdef in the examples > for seenv/putenv is not a pb for me > > > Luckily... ecore efl now has EFL api's for dealing with env vars ... so this > > becomes a problem for legacy. I'd advise to just use putenv() but kep in > > mind you can't just free the string buffer after the putenv(). It must stay > > valid and be around... I can fix these example. They will get uglier with > > putenv(), but... that's life. mingw32 should provide a putenv() (not > > _putenv())... right? > > yes, putenv() is available in mingw-w64 and is working (I did a test > with putenv("FOO=1"); which returns 0). ok. will change it to putenv then > > Now what about setlocale + LC_MESSAGES? LC_ALL will do? it is just an > > example. I am assuming people will just using MinGW32 when on Windows > > anyway... > > LC_MESSAGES is a bigger problem. setlocale exists but without > LC_MESSAGES support. LC_ALL is available, though : ok. that'll work for the purposes of this example. i'll fix it. > https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/setlocale-wsetlocale?view=vs-2019 > > Vincent > -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- Carsten Haitzler - [email protected] _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
