-"""Piezo: tools for controlling piezoelectric actuators
+# Copyright (C) 2009-2011 W. Trevor King <wking@drexel.edu>
+#
+# This file is part of pypiezo.
+#
+# pypiezo is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation, either version 3 of the License, or (at your
+# option) any later version.
+#
+# pypiezo is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with pypiezo. If not, see <http://www.gnu.org/licenses/>.
-Requires
- * pycomedi
- * data_logger
- * curses_check_for_keypress
+"Tools for controlling piezoelectric actuators."
+
+from distutils.core import setup
+from os import walk
+import os.path
+
+from pypiezo import __version__
-Git repository:
-http://www.physics.drexel.edu/~wking/code/git/piezo.git
-"""
classifiers = """\
Development Status :: 2 - Pre-Alpha
Topic :: Software Development :: Libraries :: Python Modules
"""
-# http://peak.telecommunity.com/DevCenter/setuptools#using-setuptools-without-bundling-it
-import ez_setup
-ez_setup.use_setuptools()
-
-from setuptools import setup, find_packages
+def find_packages(root='pypiezo'):
+ packages = []
+ prefix = '.'+os.path.sep
+ for dirpath,dirnames,filenames in walk(root):
+ if '__init__.py' in filenames:
+ if dirpath.startswith(prefix):
+ dirpath = dirpath[len(prefix):]
+ packages.append(dirpath.replace(os.path.sep, '.'))
+ return packages
-# patch distutils if it can't cope with the "classifiers" or
-# "download_url" keywords
-from sys import version
-if version < '2.2.3':
- from distutils.dist import DistributionMetadata
- DistributionMetadata.classifiers = None
- DistributionMetadata.download_url = None
+_this_dir = os.path.dirname(__file__)
+packages = find_packages()
-import piezo
-__version__ = piezo.__version__
-
-doclines = __doc__.split("\n")
-
-setup(name="piezo",
+setup(name='pypiezo',
version=__version__,
- maintainer="W. Trevor King",
- maintainer_email="wking@drexel.edu",
- url = "http://www.physics.drexel.edu/~wking/code/python/",
- download_url = "http://www.physics.drexel.edu/~wking/code/python/piezo-%s.tar.gz" % __version__,
- license = "GNU General Public License (GPL)",
- platforms = ["all"],
- description = doclines[0],
- long_description = "\n".join(doclines[2:]),
- classifiers = filter(None, classifiers.split("\n")),
- py_modules = ['ez_setup'],
- packages = find_packages(),
- dependency_links = [
- "http://www.physics.drexel.edu/~wking/code/python/"
- ],
- install_requires = ['pycomedi >= 0.2',
- 'data_logger >= 0.4',
- 'curses_check_for_keypress'],
+ maintainer='W. Trevor King',
+ maintainer_email='wking@drexel.edu',
+ url='http://www.physics.drexel.edu/~wking/unfolding-disasters/pypiezo/',
+ download_url='http://www.physics.drexel.edu/~wking/code/python/pypiezo-%s.tar.gz' % __version__,
+ license='GNU General Public License (GPL)',
+ platforms=['all'],
+ description=__doc__,
+ long_description=open(os.path.join(_this_dir, 'README'), 'r').read(),
+ classifiers=filter(None, classifiers.split('\n')),
+ packages=packages,
+ provides=['pypiezo (%s)' % __version__],
+ requires=['pycomedi (>= 0.3)'],
)
-
-# use packages to include subdirectory packages
-# use py_modules to include single-module packages
-# use ext_modules to include extension modules
-# see
-# http://www.python.org/doc/2.5.2/dist/listing-modules.html
-# http://www.python.org/doc/2.5.2/dist/describing-extensions.html