3 # Setup script for pyplnet
5 # Daniel Hokka Zakrisson <daniel@hozac.com>
6 # Copyright (C) 2008 The Trustees of Princeton University
12 from distutils.core import setup, Extension
13 from distutils.cmd import Command
14 from distutils.command.sdist import sdist
16 extra_dist = ['pyplnet.spec']
18 class my_sdist(sdist):
19 def add_defaults(self):
20 sdist.add_defaults(self)
21 if self.distribution.has_data_files():
22 for data in self.distribution.data_files:
23 self.filelist.extend(data[1])
24 self.filelist.extend(extra_dist)
26 class bdist_rpmspec(Command):
27 user_options = [("rpmdef=", None, "define variables")]
28 def initialize_options(self):
30 def finalize_options(self):
33 saved_dist_files = self.distribution.dist_files[:]
34 sdist = self.reinitialize_command('sdist')
35 sdist.formats = ['gztar']
36 self.run_command('sdist')
37 self.distribution.dist_files = saved_dist_files
38 command = ["rpmbuild", "-tb"]
39 if self.rpmdef is not None:
40 command.extend(["--define", self.rpmdef])
41 command.append(sdist.get_archive_files()[0])
42 print "running '%s'" % "' '".join(command)
44 os.spawnvp(os.P_WAIT, "rpmbuild", command)
50 Extension('sioc', ['sioc.c']),
56 cmdclass={'sdist': my_sdist, 'bdist_rpmspec': bdist_rpmspec},