summaryrefslogtreecommitdiff
path: root/cscript
blob: 4873df654c39cd3edc981139d10922f49bdb5b1d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
import glob

builds = ['ubuntu-12.04-32', 'ubuntu-12.10-32', 'ubuntu-12.04-64', 'ubuntu-12.10-64', 'source', 'windows-32', 'windows-64']

def build(environment, variant, version):
    if environment == 'windows':
        command('./waf configure --target-windows')
        command('./waf clean')
        command('./waf')
        shutil.copyfile('build/windows/installer.%s.nsi' % variant, 'build/windows/installer2.%s.nsi' % variant)
        command('sed -i "s~%%resources%%~%s/windows~g" build/windows/installer2.%s.nsi' % (os.getcwd(), variant))
        command('sed -i "s~%%deps%%~$WINDOWS_PREFIX~g" build/windows/installer2.%s.nsi' % variant)
        command('sed -i "s~%%binaries%%~%s/build~g" build/windows/installer2.%s.nsi' % (os.getcwd(), variant))
        command('sed -i "s~%%bits%%~32~g" build/windows/installer2.%s.nsi' % variant)
        command('makensis build/windows/installer2.%s.nsi' % variant)
        return glob.glob('build/windows/*%s*.exe' % variant)[0]
    elif environment == 'ubuntu':
        v = variant.split('-')
        bits = v[1]
        if bits == '32':
            cpu = 'i386'
        else:
            cpu = 'amd64'

        shutil.copyfile(os.path.join('builds', 'control-%s' % variant), os.path.join('debian', 'control'))
        command('./waf dist')
        f = open(os.path.join('debian', 'files'), 'w')
        print >>f,'dvdomatic_%s-1_%s.deb video extra' % (version, cpu)
        shutil.rmtree('build/deb', ignore_errors=True)
        os.makedirs('build/deb')
        os.chdir('build/deb')
        shutil.move('../../dvdomatic-%s.tar.bz2' % version, 'dvdomatic_%s.orig.tar.bz2' % version)
        command('tar xjf dvdomatic_%s.orig.tar.bz2' % version)
        os.chdir('dvdomatic-%s' % version)
        command('dch -b -v %s-1 "New upstream release."' % version)
        command('dpkg-source -b .')
        command('dpkg-buildpackage')
        return os.path.abspath(glob.glob('../*.deb')[0])

def make_pot():
    command('./waf pot')
    return [os.path.abspath('build/src/lib/libdvdomatic.pot'),
            os.path.abspath('build/src/wx/libdvdomatic-wx.pot'),
	    os.path.abspath('build/src/tools/dvdomatic.pot')]

def make_manual():
    os.chdir('doc/manual')
    command('make')
    return [os.path.abspath('pdf'), os.path.abspath('html')]