From: Josip <jo...@pi...> - 2013-02-09 17:15:25
|
On 09.02.2013 14:48, Helge.Herz wrote: > If there are changes on the way for setup.py I would like suggest some > changes too. > If running setup.py on my windows system I use these changes (using > pocompile.exe instead msgfmt AND prevent using intl): > > Index: setup.py > =================================================================== > --- setup.py (revision 21324) > +++ setup.py (working copy) > @@ -104,7 +104,15 @@ > os.makedirs(mo_dir) > > if newer(po_file, mo_file): > - cmd = 'msgfmt %s -o %s' % (po_file, mo_file) > + import platform > + if platform.system() in ["Windows", "win32"]: > + #for windows there is a translation tool kit there: > + # http://translate.sourceforge.net/wiki/start > + # assumed: the translation toolkit is included in > PATH environment > + # variable > + cmd = 'pocompile.exe %s -o %s' % (po_file, mo_file) > + else: > + cmd = 'msgfmt %s -o %s' % (po_file, mo_file) > if os.system(cmd) != 0: > os.remove(mo_file) > msg = 'ERROR: Building language translation files > failed.' > @@ -168,6 +176,11 @@ > ''' > Merge translation files into desktop and mime files > ''' > + import platform > + if platform.system() in ["Windows", "win32"]: > + #there seems to be an issue using intl in WIndows > + #TODO: I don't know if this is still necessary > + return > + > if intltool_version() < (0, 25, 0): > return > data_files = build_cmd.distribution.data_files > Hi, msgfmt.exe as all other msg*.exe tools are part of gettext package, so available on Windows also (when you build libintl-8.dll, those get buils too) so there is no need for such big difference between win/lin. For intltools: they also work for Windows, they just need you to have Perl interpreter. I just make change to use only Perl himself in checking intltool version instead of shell "head" and "cut". It should be portable and usable in Linux too. As this is big dependency and not usually installed on win computer better just to check in "intltool_version" for availability and return 0.0.0 in no exist/working. -- Josip |