Estoy intentando crear una distribución de Python con distutils
. Por desgracia, mi estructura de directorios es el siguiente:¿Cómo puedo obtener mi setup.py para usar una ruta relativa a mis archivos?
/code /mypackage __init__.py file1.py file2.py /subpackage __init__.py /build setup.py
Aquí es mi setup.py
archivo:
from distutils.core import setup
setup(
name = 'MyPackage',
description = 'This is my package',
packages = ['mypackage', 'mypackage.subpackage'],
package_dir = { 'mypackage' : '../mypackage' },
version = '1',
url = 'http://www.mypackage.org/',
author = 'Me',
author_email = '[email protected]',
)
Cuando corro python setup.py sdist
genera correctamente el archivo de manifiesto, pero no incluye mis archivos de origen en la distribución . Aparentemente, crea un directorio para contener los archivos fuente (es decir, mypackage1
) y luego copia cada uno de los archivos de origen en mypackage1/../mypackage
, lo que los pone en fuera de de la distribución.
¿Cómo puedo corregir esto, sin forzar a que mi estructura de directorios se ajuste a lo que espera distutils
?
No me importa cómo se ve la estructura en el archivo de distribución, siempre y cuando haga lo correcto cuando los usuarios intenten instalarlo usando easy_install. Pero la documentación de Python es absolutamente horrible cuando se trata de estos detalles: no tengo idea de cómo se supone que debe verse la estructura. Y todavía estoy pensando en la idea de ejecutar un script en la distribución antes de instalarlo para instalar la distribución. –