| Index: third_party/psutil/setup.py | 
| diff --git a/third_party/psutil/setup.py b/third_party/psutil/setup.py | 
| index fb944bf54f30555d66fa075765a6bfbaed8be05b..d7383cb80a26e003d9fe6b28546eea2ee4ee909b 100644 | 
| --- a/third_party/psutil/setup.py | 
| +++ b/third_party/psutil/setup.py | 
| @@ -1,22 +1,34 @@ | 
| #!/usr/bin/env python | 
| # | 
| -# $Id: setup.py 748 2010-10-29 12:51:58Z g.rodola $ | 
| +# $Id: setup.py 1142 2011-10-05 18:45:49Z g.rodola $ | 
| # | 
| +# Copyright (c) 2009, Jay Loden, Giampaolo Rodola'. All rights reserved. | 
| +# Use of this source code is governed by a BSD-style license that can be | 
| +# found in the LICENSE file. | 
|  | 
| import sys | 
| import os | 
| -import shutil | 
| -from distutils.core import setup, Extension | 
| +try: | 
| +    from setuptools import setup, Extension | 
| +except ImportError: | 
| +    from distutils.core import setup, Extension | 
| + | 
| +__ver__ = "0.3.1" | 
|  | 
| # Hack for Python 3 to tell distutils to run 2to3 against the files | 
| # copied in the build directory before installing. | 
| -# Reference: http://osdir.com/ml/python.python-3000.cvs/2008-03/msg00127.html | 
| +# Reference: http://docs.python.org/dev/howto/pyporting.html#during-installation | 
| try: | 
| from distutils.command.build_py import build_py_2to3 as build_py | 
| except ImportError: | 
| from distutils.command.build_py import build_py | 
|  | 
|  | 
| +if os.name == 'posix': | 
| +    posix_extension = Extension('_psutil_posix', | 
| +                                sources = ['psutil/_psutil_posix.c']) | 
| + | 
| + | 
| # Windows | 
| if sys.platform.lower().startswith("win"): | 
|  | 
| @@ -24,31 +36,41 @@ if sys.platform.lower().startswith("win"): | 
| maj,min = sys.getwindowsversion()[0:2] | 
| return '0x0%s' % ((maj * 100) + min) | 
|  | 
| -    extensions = Extension('_psutil_mswindows', | 
| -                           sources=['psutil/_psutil_mswindows.c', | 
| -                                    'psutil/arch/mswindows/process_info.c', | 
| -                                    'psutil/arch/mswindows/process_handles.c', | 
| -                                    'psutil/arch/mswindows/security.c'], | 
| -                           define_macros=[('_WIN32_WINNT', get_winver()), | 
| -                                          ('_AVAIL_WINVER_', get_winver())], | 
| -                           libraries=["psapi", "kernel32", "advapi32", "shell32", | 
| -                                      "netapi32"] | 
| -                           ) | 
| +    extensions = [Extension('_psutil_mswindows', | 
| +                            sources=['psutil/_psutil_mswindows.c', | 
| +                                     'psutil/_psutil_common.c', | 
| +                                     'psutil/arch/mswindows/process_info.c', | 
| +                                     'psutil/arch/mswindows/process_handles.c', | 
| +                                     'psutil/arch/mswindows/security.c'], | 
| +                            define_macros=[('_WIN32_WINNT', get_winver()), | 
| +                                           ('_AVAIL_WINVER_', get_winver())], | 
| +                            libraries=["psapi", "kernel32", "advapi32", "shell32", | 
| +                                       "netapi32"] | 
| +                            )] | 
| # OS X | 
| elif sys.platform.lower().startswith("darwin"): | 
| -    extensions = Extension('_psutil_osx', | 
| -                           sources = ['psutil/_psutil_osx.c', | 
| -                                      'psutil/arch/osx/process_info.c'] | 
| -                           ) | 
| +    extensions = [Extension('_psutil_osx', | 
| +                            sources = ['psutil/_psutil_osx.c', | 
| +                                       'psutil/_psutil_common.c', | 
| +                                       'psutil/arch/osx/process_info.c'], | 
| +                            extra_link_args=['-framework', 'CoreFoundation', '-framework', 'IOKit'] | 
| +                            ), | 
| +                  posix_extension] | 
| # FreeBSD | 
| elif sys.platform.lower().startswith("freebsd"): | 
| -    extensions = Extension('_psutil_bsd', | 
| -                           sources = ['psutil/_psutil_bsd.c', | 
| -                                      'psutil/arch/bsd/process_info.c'] | 
| -                           ) | 
| -# Others | 
| +    extensions = [Extension('_psutil_bsd', | 
| +                            sources = ['psutil/_psutil_bsd.c', | 
| +                                       'psutil/_psutil_common.c', | 
| +                                       'psutil/arch/bsd/process_info.c'] | 
| +                            ), | 
| +                  posix_extension] | 
| +# Linux | 
| elif sys.platform.lower().startswith("linux"): | 
| -    extensions = None | 
| +    extensions = [Extension('_psutil_linux', | 
| +                            sources=['psutil/_psutil_linux.c'], | 
| +                            ), | 
| +                  posix_extension] | 
| + | 
| else: | 
| raise NotImplementedError('platform %s is not supported' % sys.platform) | 
|  | 
| @@ -56,14 +78,17 @@ else: | 
| def main(): | 
| setup_args = dict( | 
| name='psutil', | 
| -        version="0.2.0", | 
| +        version=__ver__, | 
| +        download_url="http://psutil.googlecode.com/files/psutil-%s.tar.gz" % __ver__, | 
| description='A process utilities module for Python', | 
| -        long_description=""" | 
| -psutil is a module providing convenience functions for managing processes in a | 
| -portable way by using Python.""", | 
| -        keywords=['psutil', 'ps', 'top', 'process', 'utility'], | 
| -        author='Giampaolo Rodola, Dave Daeschler, Jay Loden', | 
| -        author_email='psutil-dev@googlegroups.com', | 
| +        long_description="""\ | 
| +psutil is a module providing convenience functions for monitoring | 
| +system and processes in a portable way by using Python.""", | 
| +        keywords=['ps', 'top', 'kill', 'free', 'lsof', 'netstat', 'nice', | 
| +                  'tty', 'ionice', 'uptime', 'taskmgr', 'process', 'df', | 
| +                  'monitoring'], | 
| +        author='Giampaolo Rodola, Jay Loden', | 
| +        author_email='psutil@googlegroups.com', | 
| url='http://code.google.com/p/psutil/', | 
| platforms='Platform Independent', | 
| license='License :: OSI Approved :: BSD License', | 
| @@ -100,7 +125,7 @@ portable way by using Python.""", | 
| ], | 
| ) | 
| if extensions is not None: | 
| -        setup_args["ext_modules"] = [extensions] | 
| +        setup_args["ext_modules"] = extensions | 
|  | 
| setup(**setup_args) | 
|  | 
|  |