Базы данныхИнтернетКомпьютерыОперационные системыПрограммированиеСетиСвязьРазное
Поиск по сайту:
Подпишись на рассылку:

Назад в раздел

Chapter 16. Примерный 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
    системой CVS при выполнении операции коммитта в наше хранилище.  При
    обновлении порта не приводите эту строку обратно к виду
    "$FreeBSD$".  CVS сделает все автоматически.]
    #
    
    [секция описания собственно порта и основного сервера - сначала всегда
     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
    
    [зависимости -- могут быть пустыми]
    RUN_DEPENDS=   gs:${PORTSDIR}/print/ghostscript
    LIB_DEPENDS=   Xpm.5:${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>
        
По вопросам связанным с системой портов для FreeBSD, пишите по адресу <ports@freebsd.org>.
По вопросам связанным с этом документацией, пишите по адресу <doc@freebsd.org>.

  • Главная
  • Новости
  • Новинки
  • Скрипты
  • Форум
  • Ссылки
  • О сайте




  • Emanual.ru – это сайт, посвящённый всем значимым событиям в IT-индустрии: новейшие разработки, уникальные методы и горячие новости! Тонны информации, полезной как для обычных пользователей, так и для самых продвинутых программистов! Интересные обсуждения на актуальные темы и огромная аудитория, которая может быть интересна широкому кругу рекламодателей. У нас вы узнаете всё о компьютерах, базах данных, операционных системах, сетях, инфраструктурах, связях и программированию на популярных языках!
     Copyright © 2001-2024
    Реклама на сайте