Я работаю над расширениями Swift для Python 2. Поскольку distutils / setuptools поддерживают только расширения C / C ++, я нахожусь на крючке, чтобы изменить команды сборки, чтобы они создавали код Swift.
Мои прогоны python setup.py build
и python setup.py install
выглядят успешными: пакет и его содержимое находятся в правильном расположении, а собственные расширения правильно загружаются на import
.
Однако моя команда предпочитает использовать pip install -e .
, что в конечном итоге делает python setup.py develop
, чтобы немного ускорить разработку; и setup.py
не знает, как скопировать нативные библиотеки, которые build
компилирует в исходные каталоги.
В моей текущей настройке:
- класс
SwiftBuildExt
(который расширяет возможности Cython, потому что мы поддерживаем языковое разнообразие) ...
- ... переопределяет
run
для создания модулей Swift, которые динамически обнаруживаются с помощью glob
.
run
добавляет записи в список, который я назову swift_modules
;
get_output
после выполнения run
переопределяется для возврата файлов базы и swift_modules
.
Что мне нужно изменить, чтобы develop
заработал?