ЭЛЕКТРОННАЯ БИБЛИОТЕКА КОАПП |
Сборники Художественной, Технической, Справочной, Английской, Нормативной, Исторической, и др. литературы. |
4.4.1. MakefileНаиболее важной частью каркаса является Makefile. В нем находятся разлицные спецификации, показывающие как надо компилировать и устанавливать порт. Например, возьмем Makefile для bash:# New ports collection makefile for: bash # Version required: 1.14.5 # Date created: 21 August 1994 # Whom: jkh # # Makefile,v 1.13 1995/10/04 14:45:01 asami Exp # DISTNAME= bash-1.14.5 CATEGORIES= shells MASTER_SITES= ftp://slc2.ins.cwru.edu/pub/dist/ MAINTAINER= ache@FreeBSD.ORG post-install: .if !defined(NOMANCOMPRESS) gzip -9nf ${PREFIX}/man/man1/bash.1 ${PREFIX}/man/man1/bash_builtins.1 .endif .include <bsd.port.mk>Строки начинающиеся с символа "#" sign - это комментарии, использующиеся только для удобства человека (как и в большинстве файлов со скриптами в Unix). `DISTNAME" указывает имя tarball, но без суффикса. `CATEGORIES" описывает категорию, к которой принадлежит эта программы. `MASTER_SITES" это список адресов FTP-узлов, которые используются для того чтобы скачать tarball, если его нет на локальной машине. Эти узлы обычно имеют хорошую репутацию, и, почти всегда, один из них - это узел с которого эта программа оффициально распространяется (конечно, если она вообще "оффициально" распостраняется по Интернет) `MAINTAINER" - это email человека, который ответственнен за освежение этого каркаса, например, в случае выхода новой версии программы. (Замечание: звание "maintainer" - в основном чисто административный; это не означает, что этот человек занимается поддержкой этой программы. Если у вас есть какие-нибудь проблемы с портом, то, пожалуйста пишите в список рассылки FreeBSD freebsd-ports@FreeBSD.ORG , а не по email, указанному в этом поле. Спасибо!) Давайте ненадолго пропустим несколько следующих строчек, и посмотрим на строку .include <bsd.port.mk>в которой говорится что все прочие команды и правила необходимые для того, чтобы создать порт находятся в стандартном файле `bsd.port.mk". Так как они одинаковы для всех портов, то нет необходимости повторять их в каждом файле, поэтому они и хранятся в отдельном стандартном файле. Это скорее всего не самое правильное место для того, чтобы лезть в детали того, как работают эти Makefile; Достаточно сказать, что строки, начиная с ost-install" переопределяют инструкции в bsd.port.mk о том что делать после установки программы, так что справочная информация может быть сжата после того, как ее уже положили на место назначения. |