/b-gtk/fix-viz

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/b-gtk/fix-viz

« back to all changes in this revision

Viewing changes to olive/setup.py

  • Committer: Szilveszter Farkas (Phanatic)
  • Date: 2006-08-20 13:02:35 UTC
  • mto: (0.14.1 main) (93.1.1 win32.bialix)
  • mto: This revision was merged to the branch mainline in revision 83.
  • Revision ID: Szilveszter.Farkas@gmail.com-20060820130235-62c9c5753f5d8774
Gettext support added.

2006-08-20  Szilveszter Farkas <Szilveszter.Farkas@gmail.com>

    * po/hu.po: added Hungarian traslation
    * Added gettext support to all files.
    * genpot.sh: added olive-gtk.pot generator script

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/usr/bin/python
2
 
 
3
 
"""GTK+ Frontends for various Bazaar commands."""
4
 
 
5
 
from distutils.core import setup
6
 
from distutils.command.install_data import install_data
7
 
from distutils.dep_util import newer
8
 
from distutils.log import info
9
 
import glob
10
 
import os
11
 
import sys
12
 
 
13
 
 
14
 
class InstallData(install_data):
15
 
 
16
 
    def run(self):
17
 
        import subprocess
18
 
        self.data_files.extend(self._compile_po_files())
19
 
        install_data.run(self)
20
 
        try:
21
 
            subprocess.check_call('gtk-update-icon-cache '
22
 
                                  '-f -t /usr/share/icons/hicolor')
23
 
        except OSError:
24
 
            pass
25
 
 
26
 
    def _compile_po_files(self):
27
 
        data_files = []
28
 
 
29
 
        # Don't install language files on Win32
30
 
        if sys.platform == 'win32':
31
 
            return data_files
32
 
 
33
 
        PO_DIR = 'po'
34
 
        for po in glob.glob(os.path.join(PO_DIR,'*.po')):
35
 
            lang = os.path.basename(po[:-3])
36
 
            # It's necessary to compile in this directory (not in po_dir)
37
 
            # because install_data can't rename file
38
 
            mo = os.path.join('build', 'mo', lang, 'olive-gtk.mo')
39
 
 
40
 
            directory = os.path.dirname(mo)
41
 
            if not os.path.exists(directory):
42
 
                info('creating %s' % directory)
43
 
                os.makedirs(directory)
44
 
            if newer(po, mo):
45
 
                # True if mo doesn't exist
46
 
                cmd = 'msgfmt -o %s %s' % (mo, po)
47
 
                info('compiling %s -> %s' % (po, mo))
48
 
                if os.system(cmd) != 0:
49
 
                    raise SystemExit('Error while running msgfmt')
50
 
                dest = os.path.dirname(
51
 
                    os.path.join('share', 'locale', lang,
52
 
                                 'LC_MESSAGES', 'olive-gtk.mo'))
53
 
                data_files.append((dest, [mo]))
54
 
        return data_files
55
 
 
56
 
 
57
 
if __name__ == '__main__':
58
 
    setup(
59
 
        name = "olive-gtk",
60
 
        version = "0.99.0",
61
 
        description = "GTK+ Explorer for Bazaar",
62
 
        license = "GNU GPL v2 or later",
63
 
        scripts = ['olive-gtk'],
64
 
        url = "http://bazaar-vcs.org/Olive",
65
 
        packages = [
66
 
            "olive",
67
 
        ],
68
 
        data_files=[('share/olive', ['cmenu.ui',]),
69
 
                    ('share/applications', ['olive-gtk.desktop', ]),
70
 
                    ('share/pixmaps', ['icons/olive-gtk.png']),
71
 
                    ],
72
 
        cmdclass={'install_data': InstallData}
73
 
        )