~ubuntu-branches/ubuntu/vivid/debmake/vivid-proposed

« back to all changes in this revision

Viewing changes to debmake/dist.py

  • Committer: Package Import Robot
  • Author(s): Osamu Aoki
  • Date: 2014-02-25 01:09:15 UTC
  • mfrom: (1.1.9)
  • Revision ID: package-import@ubuntu.com-20140225010915-klo9rohqofvgunvv
Tags: 4.0.9-1
* Fix regression of 4.0.8 for -d and add safegurd of VCS for untar.
  Closes: #739692
* Introduce javahelper and gem2deb support.
* Support configure.in.
* -yy is always no.
* Add ${shlibs:Depends} for bin and lib
* Support URL for -a
* Support package description from the upstream -s
* Update package dependency.
* Clean up generated files.
* Add HTML documentation (not finished but useful).

Show diffs side-by-side

added added

removed removed

Lines of Context:
37
37
    #######################################################################
38
38
    if os.path.isfile('configure.ac') and os.path.isfile('Makefile.am'):
39
39
        command = 'autoreconf -ivf && ./configure --prefix "/usr" && make distcheck'
40
 
        print('I: {}'.format(command), file=sys.stderr)
 
40
        print('I: $ {}'.format(command), file=sys.stderr)
41
41
        if subprocess.call(command, shell=True) != 0:
42
42
            print('E: autotools failed.', file=sys.stderr)
43
43
            exit(1)
55
55
        else:
56
56
            # http://docs.python.org/2/distutils/
57
57
            command = 'python setup.py sdist'
58
 
        print('I: {}'.format(command), file=sys.stderr)
 
58
        print('I: $ {}'.format(command), file=sys.stderr)
59
59
        if subprocess.call(command, shell=True) != 0:
60
60
            print('E: setup.py failed.', file=sys.stderr)
61
61
            exit(1)
66
66
    elif os.path.isfile('Build.PL'):
67
67
        # perl Build.PL
68
68
        command = 'perl Build.PL && ./Build distcheck && ./Build disttest && ./Build dist'
69
 
        print('I: {}'.format(command), file=sys.stderr)
 
69
        print('I: $ {}'.format(command), file=sys.stderr)
70
70
        if subprocess.call(command, shell=True) != 0:
71
71
            print('E: perl Build.PL failed.', file=sys.stderr)
72
72
            exit(1)
77
77
    elif os.path.isfile('Makefile.PL'):
78
78
        # perl Makefile.PL
79
79
        command = 'perl Makefile.PL && make dist'
80
 
        print('I: {}'.format(command), file=sys.stderr)
 
80
        print('I: $ {}'.format(command), file=sys.stderr)
81
81
        if subprocess.call(command, shell=True) != 0:
82
82
            print('E: perl Makefile.PL failed.', file=sys.stderr)
83
83
            exit(1)
89
89
        if os.path.isfile('CMakeLists.txt'):
90
90
            # CMake source tree
91
91
            print('E: CMake. Use --tar (-t).', file=sys.stderr)
 
92
            exit(1)
92
93
        else:
93
94
            # Non standard source tree
94
95
            print('E: unsupported for --dist (-d). Use --tar (-t).', file=sys.stderr)
95
 
        exit(1)
 
96
            exit(1)
96
97
    #######################################################################
97
98
    # set version by the tarball name
98
99
    #######################################################################
136
137
    # cd ..
137
138
    os.chdir('..')
138
139
    print('I: pwd = "{}"'.format(os.getcwd()), file=sys.stderr)
 
140
    # cp -f parent/dist/foo-1.0.tar.gz foo-1.0.tar.gz
 
141
    command = 'cp -f ' + para['parent'] + '/' + distdir + '/' + para['tarball'] + ' ' + para['tarball']
 
142
    print('I: $ {}'.format(command), file=sys.stderr)
 
143
    if subprocess.call(command, shell=True) != 0:
 
144
        print('E: failed to copy', file=sys.stderr)
 
145
        exit(1)
139
146
    para['srcdir'] = para['package'] + '-' + para['version']
 
147
    if para['srcdir'] == para['parent']:
 
148
        # avoid erasing VCS in untar process.
 
149
        print('E: the parent directory should be like {} (never {}).'.format(para['package'], para['srcdir']), file=sys.stderr)
 
150
        print('E: terminate to protect the VCS data possibly in the original directory.', file=sys.stderr)
 
151
        exit(1)
140
152
    return para
141
153
 
142
154
if __name__ == '__main__':