Глава 13. Примерный `Makefile`
Пред. |  | След.

## Глава 13. Примерный `Makefile`

Вот примерный `Makefile`, который можно использовать при создании нового порта. Обязательно удалите все дополнительные комментарии (те, которые в скобках)!

Вам рекомендуется следовать этому формату (соблюдая порядок следования переменных, пустые строки между разделами, и так далее). Этот формат разработан для того, чтобы важная информация была легко найдена. Мы рекомендуем вам воспользоваться утилитой portlint для проверки файла `Makefile`.

[заголовок...просто чтобы нам было легче идентифицировать порт.] # New ports collection makefile for: xdvi [строчка "version required" необходима только тогда, когда переменная PORTVERSION недостаточно конкретна для описания порта.] # Date created: 26 May 1995 [Это человек, который сделал первоначальный порт для FreeBSD, в частности, тот, кто создал первую версию этого файла Makefile. Запомните, что позже при обновлении порта эта строка меняться не должна.] # Whom: Satoshi Asami <asami@FreeBSD.org> # # $FreeBSD$ [ ^^^^^^^^^ Эта строка будет автоматически заменена со строчкой RCS ID системой SVN при выполнении операции коммита в наше хранилище. При обновлении порта не приводите эту строку обратно к виду "$FreeBSD$". SVN сделает это автоматически.] # [секция описания собственно порта и основного сервера - сначала всегда PORTNAME и PORTVERSIONA, за ним следует CATEGORIES, а затем MASTER_SITES, за которым может идти MASTER_SITE_SUBDIR. PKGNAMEPREFIX и PKGNAMESUFFIX, если они нужны, следуют за ними. Затем следует DISTNAME, EXTRACT_SUFX и/или DISTFILES, а потом, если это нужно, EXTRACT_ONLY.] PORTNAME= xdvi PORTVERSION= 18.2.] CATEGORIES= print [не забывайте лидирующий слэш ("/")! если вы не используете макросы MASTER_SITE_*] MASTER_SITES= ${MASTER_SITE_XCONTRIB} MASTER_SITE_SUBDIR= applications PKGNAMEPREFIX= ja- DISTNAME= xdvi-pl18 [задайте это, если исходный код поставляется не в виде стандартного файла ".tar.gz"] EXTRACT_SUFX= .tar.Z [секция патчей -- может быть пустой] PATCH_SITES= ftp://ftp.sra.co.jp/pub/X11/japanese/ PATCHFILES= xdvi-18.patch1.gz xdvi-18.patch2.gz [сопровождающий; *обязательное поле*! Это человек, который добровольно занимается обновлениями порта и неисправностями при построении, и которому пользователь может направлять вопросы и сообщения об ошибках. Для сохранения как можно более высокого качества Коллекции Портов мы больше не принимаем новые порты, назначенные на "ports@FreeBSD.org".] MAINTAINER= asami@FreeBSD.org COMMENT= A DVI Previewer for the X Window System [зависимости -- могут быть пустыми] RUN_DEPENDS= gs:${PORTSDIR}/print/ghostscript LIB_DEPENDS= Xpm:${PORTSDIR}/graphics/xpm [этот раздел для остальных стандартных переменных из bsd.port.mk, кроме тех, что перечислены выше] [Если порт задает вопросы во время этапов настройки, построения, установки...] IS_INTERACTIVE= yes [Если распаковка происходит в каталог, отличных от ${DISTNAME}...] WRKSRC= ${WRKDIR}/xdvi-new [Если патчи делались не относительно ${WRKSRC}, вам, может быть, не придется изменять эту переменную] PATCH_DIST_STRIP= -p1 [Если порт требует скрипта "configure", генерируемого GNU-версией программы autoconf] GNU_CONFIGURE= yes [Если для построения порту требуется GNU-версия утилиты make, а не /usr/bin/make...] USE_GMAKE= yes [Если это приложение X и требует запуска "xmkmf -a"...] USE_IMAKE= yes [и так далее] [В правилах ниже используются нестандартные переменные] MY_FAVORITE_RESPONSE= "yeah, right" [теперь специальные правила, в порядке их вызова] pre-fetch: я что-то выкачиваю, точно post-patch: мне кое-что сделать после применения патча, великолепно pre-install: и потом еще кое-что перед установкой, ого [и, наконец, эпилог] .include <bsd.port.mk>

Пред. |  | След.
12.20. Разное | Начало | Глава 14. Актуализация

Этот, и другие документы, могут быть скачаны с http://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам, связанным с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам, связанным с этой документацией, пишите в рассылку <doc@FreeBSD.org>.