setup.py 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. __author__ = 'marcos.medeiros'
  2. """Rapid-Django installation script
  3. """
  4. # Always prefer setuptools over distutils
  5. from setuptools import setup, find_packages
  6. # To use a consistent encoding
  7. from codecs import open
  8. import os
  9. from os import path
  10. def _recursive_find(root, p):
  11. full_p = path.join(root, p)
  12. for f in os.listdir(full_p):
  13. full_f = path.join(full_p, f)
  14. val_f = path.join(p, f)
  15. if path.isdir(full_f):
  16. for ff in _recursive_find(root, val_f):
  17. yield ff
  18. else:
  19. yield val_f
  20. here = path.abspath(path.dirname(__file__))
  21. rapid = path.join('src', 'rapid')
  22. rapid_files = list(_recursive_find(os.path.join(here, rapid), ''))
  23. print rapid_files
  24. # Get the long description from the relevant file
  25. with open(path.join(here, 'README.rst'), encoding='utf-8') as f:
  26. long_description = f.read()
  27. setup(
  28. name='rapid-django',
  29. version='0.0.1.dev2',
  30. description='Opionated tools for rapid development of enterprise CRUD portals',
  31. long_description=long_description,
  32. # The project's main homepage.
  33. url='https://marcosdumay.com/rapid-django',
  34. # Author details
  35. author='Marcos Dumay de Medeiros',
  36. author_email='marcos@marcosdumay.com',
  37. # Choose your license
  38. license='MIT',
  39. # See https://pypi.python.org/pypi?%3Aaction=list_classifiers
  40. classifiers=[
  41. 'Development Status :: 2 - Pre-Alpha',
  42. 'Environment :: Web Environment',
  43. 'Framework :: Django :: 1.8',
  44. 'Intended Audience :: Developers',
  45. 'Topic :: Software Development :: Build Tools',
  46. 'License :: OSI Approved :: MIT License',
  47. 'Natural Language :: Portuguese (Brazilian)',
  48. 'Operating System :: OS Independent',
  49. 'Programming Language :: Python :: 2',
  50. 'Programming Language :: Python :: 2.6',
  51. 'Programming Language :: Python :: 2.7',
  52. #'Programming Language :: Python :: 3',
  53. #'Programming Language :: Python :: 3.2',
  54. #'Programming Language :: Python :: 3.3',
  55. #'Programming Language :: Python :: 3.4',
  56. ],
  57. # What does your project relate to?
  58. keywords='CRUD',
  59. # You can just specify the packages manually here if your project is
  60. # simple. Or you can use find_packages().
  61. packages=['rapid'],
  62. package_dir = {'': 'src'},
  63. zip_safe = False,
  64. # List run-time dependencies here. These will be installed by pip when
  65. # your project is installed. For an analysis of "install_requires" vs pip's
  66. # requirements files see:
  67. # https://packaging.python.org/en/latest/requirements.html
  68. install_requires=['django>=1.8'],
  69. # List additional groups of dependencies here (e.g. development
  70. # dependencies). You can install these using the following syntax,
  71. # for example:
  72. # $ pip install -e .[dev,test]
  73. extras_require={},
  74. # If there are data files included in your packages that need to be
  75. # installed, specify them here. If using Python 2.6 or less, then these
  76. # have to be included in MANIFEST.in as well.
  77. #include_package_data=True,
  78. package_data={
  79. 'rapid': rapid_files,
  80. },
  81. # Although 'package_data' is the preferred approach, in some case you may
  82. # need to place data files outside of your packages. See:
  83. # http://docs.python.org/3.4/distutils/setupscript.html#installing-additional-files # noqa
  84. # In this case, 'data_file' will be installed into '<sys.prefix>/my_data'
  85. data_files=[],
  86. # To provide executable scripts, use entry points in preference to the
  87. # "scripts" keyword. Entry points provide cross-platform support and allow
  88. # pip to create the appropriate form of executable for the target platform.
  89. entry_points={
  90. # 'console_scripts': [
  91. # 'sample=sample:main',
  92. # ],
  93. },
  94. )