Цель
Я пытаюсь создать порт (Macports) для инструмента с открытым исходным кодом на основе Eclipse, который не требует установки, другими словами, это просто " извлечение и использование ". Пользователи могут скачать инструмент с официального сайта проекта и использовать просто так. Таким образом, переменная DESTROOT не установлена.
Поскольку многие пользователи Mac привыкли к удобству Macports, я бы хотел добавить туда инструмент, чтобы пользователи могли мгновенно установить или удалить его.
** Важное замечание: как только пользователи запускают инструмент, он создает каталог " / workspace " в том же месте, где был установлен инструмент, чтобы сохранить предпочтения пользователей, настройки и другие необходимые файлы. Таким образом, когда пользователь запускает инструмент, программа должна иметь доступ для записи в том же каталоге, в котором она была установлена. Текущая версия инструмента не позволяет выбрать местоположение рабочей области.
Задача
Как мне организовать Portfile?
Я установил следующие конфигурации, где я говорю Macports не использовать configure, build, и destroot phase.
set cm_workspace /workspace
universal_variant no
use_configure no
supported_archs noarch
post-extract {
file mkdir ${worksrcpath}${cm_workspace}
destroot.keepdirs-append ${worksrcpath}${cm_workspace}
}
build {}
destroot {}
Как я понимаю,
- извлечение фаза распаковки файла,
- и устанавливают фазы должны архивировать эти файлы,
- и наконец активировать фаза должна переместить файлы в destroot .
Но я продолжаю получать ошибки.
---> Extracting cubridmanager
---> Configuring cubridmanager
---> Building cubridmanager
---> Staging cubridmanager into destroot
Error: No files have been installed in the destroot directory!
Error: Please make sure that this software supports 'make install DESTDIR=${destroot}' or implement an alternative destroot mechanism in the Portfile.
Error: Files might have been installed directly into your system, check before proceeding.
Error: Target org.macports.destroot returned: Staging cubridmanager into destroot failed
Log for cubridmanager is at: /opt/local/var/macports/logs/_Users_nbp_macports_databases_cubridmanager/cubridmanager/main.log
Error: Status 1 encountered during processing.
To report a bug, see <http://guide.macports.org/#project.tickets>
Я хочу внести свой вклад в это сообщество с открытым исходным кодом, но я не могу пройти этот шаг.