FreeBSD port ºîÀ®¼Ô¤Î¤¿¤á¤Î¥Ï¥ó¥É¥Ö¥Ã¥¯

FreeBSD ¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¥×¥í¥¸¥§¥¯¥È

¤³¤Î¥Ï¥ó¥É¥Ö¥Ã¥¯¤Ï FreeBSD ¤Î port ºîÀ®¼Ô (porter) ¸þ¤±¤Ë¡¢ ¶ñÂÎŪ¤Ê port ¤ÎºîÀ®ÊýË¡¤äÃí°ÕÅÀ¤Ê¤É¤ò¤Þ¤È¤á¤¿¤â¤Î¤Ç¤¹¡£

ÆüËܸìÈǤκîÀ®¤Ï FreeBSD ÆüËܸì¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó ¥×¥í¥¸¥§¥¯¥È (FreeBSD doc-jp) ¤¬¹Ô¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ ÆüËܸìÌõ¤ª¤è¤Ó¡¢ÆüËܸìÈǤΤߤ˴ؤ¹¤ë¤³¤È¤Ï FreeBSD ÆüËܸì¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¥×¥í¥¸¥§¥¯¥È ¤Ë ¤ª¤¤¤ÆÆüËܸì¤ÇµÄÏÀ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

ʸ½ñ¤ÎÆüËܸìÌõ¤Ë´Ø¤¹¤ë¤ªÌ䤤¹ç¤ï¤»¤ä¡¢ ʸ½ñ¤Î¸¶Ê¸¤Ë´Ø¤¹¤ëÌ䤤¹ç¤ï¤»¤ò¤·¤¿¤¤¤¬±Ñ¸ì¤¬ÆÀ°Õ¤Ç¤Ê¤¤¤È¤¤¤¦Êý¤Ï¡¢ FreeBSD ÆüËܸì¥É¥­¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¥×¥í¥¸¥§¥¯¥È ¤Þ¤ÇÆüËܸì¤Ç¥³¥á¥ó¥È¤ò¤ª´ó¤»¤¯¤À¤µ¤¤¡£

Redistribution and use in source (SGML DocBook) and 'compiled' forms (SGML, HTML, PDF, PostScript, RTF and so forth) with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code (SGML DocBook) must retain the above copyright notice, this list of conditions and the following disclaimer as the first lines of this file unmodified.

  2. Redistributions in compiled form (transformed to other DTDs, converted to PDF, PostScript, RTF and other formats) must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

Important: THIS DOCUMENTATION IS PROVIDED BY THE FREEBSD DOCUMENTATION PROJECT "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD DOCUMENTATION PROJECT BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


Table of Contents
1 ¼«Ê¬¤Ç port ¤òºîÀ®¤¹¤ë¤Ë¤Ï
2 3 ʬ´Ö porting
2.1 Makefile ¤ÎºîÀ®
2.2 package µ­½Ò¥Õ¥¡¥¤¥ë¤ÎºîÀ®
2.2.1 pkg-descr
2.2.2 pkg-plist
2.3 ¥Á¥§¥Ã¥¯¥µ¥à¥Õ¥¡¥¤¥ë¤ÎºîÀ®
2.4 port ¤Î¥Æ¥¹¥È
2.5 portlint ¤Ë¤è¤ë¥Á¥§¥Ã¥¯
2.6 port ¤ÎÄó½Ð
3 ËܳÊŪ¤Ê port
3.1 port ¹½ÃۤξܺÙ
3.2 ¥ª¥ê¥¸¥Ê¥ë¤Î¥½¡¼¥¹¤ÎÆþ¼ê
3.3 port ¤Î½¤Àµ
3.4 ¥Ñ¥Ã¥Á¤ÎŬÍÑ
3.5 ¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó
3.6 ¥æ¡¼¥¶¤«¤é¤ÎÆþÎϤΰ·¤¤
4 Makefile ¤ÎºîÀ®
4.1 ¥ª¥ê¥¸¥Ê¥ë¤Î¥½¡¼¥¹
4.2 ̾Á°¤ÎÉÕ¤±Êý
4.2.1 PORTNAME ¤ª¤è¤Ó PORTVERSION
4.2.2 PORTREVISION ¤ª¤è¤Ó PORTEPOCH
4.2.3 PKGNAMEPREFIX ¤ª¤è¤Ó PKGNAMESUFFIX
4.2.4 package ̾¤Ë¤Ä¤¤¤Æ¤Îµ¬Â§
4.3 ¥«¥Æ¥´¥êʬÎà
4.3.1 CATEGORIES
4.3.2 ¸½ºß¤Î¥«¥Æ¥´¥ê¤Î¥ê¥¹¥È
4.3.3 ŬÀڤʥ«¥Æ¥´¥ê¤ÎÁªÂò
4.4 ÇÛÉÛ¥Õ¥¡¥¤¥ë
4.4.1 DISTNAME
4.4.2 MASTER_SITES
4.4.3 EXTRACT_SUFX
4.4.4 DISTFILES
4.4.5 EXTRACT_ONLY
4.4.6 PATCHFILES
4.4.7 °Û¤Ê¤ë¥µ¥¤¥È¤ä¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÊ£¿ô¤ÎÇÛÉÛ¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥Ñ¥Ã¥Á (MASTER_SITES:n)
4.4.8 DIST_SUBDIR
4.5 MAINTAINER
4.6 COMMENT
4.7 °Í¸´Ø·¸
4.7.1 LIB_DEPENDS
4.7.2 RUN_DEPENDS
4.7.3 BUILD_DEPENDS
4.7.4 FETCH_DEPENDS
4.7.5 DEPENDS
4.7.6 USE_*
4.7.7 °Í¸´Ø·¸¤Ë´Ø¤¹¤ëÃí°Õ
4.7.8 ¥ª¥×¥·¥ç¥óÁªÂò²Äǽ¤Ê°Í¸¥é¥¤¥Ö¥é¥ê
4.8 ºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤Î»ØÄê
4.8.1 WRKSRC
4.8.2 NO_WRKSUBDIR
4.9 ¥Ó¥ë¥É¤Î¥á¥«¥Ë¥º¥à
5 ÆÃÊ̤ÊÇÛθ
5.1 ¶¦Í­¥é¥¤¥Ö¥é¥ê
5.2 ÇÛÉÛÀ©¸Â¤¬¤¢¤ë ports
5.2.1 NO_PACKAGE
5.2.2 NO_CDROM
5.2.3 RESTRICTED
5.2.4 RESTRICTED_FILES
5.3 Perl ¤ÎÍøÍÑ
5.4 X11 ¤ÎÍøÍÑ
5.5 automake, autoconf ¤ª¤è¤Ó libtool ¤ÎÍøÍÑ
5.6 GNOME ¤ÎÍøÍÑ
5.7 KDE ¤ÎÍøÍÑ
5.8 Bison ¤ÎÍøÍÑ
5.9 Java ¤ÎÍøÍÑ
5.10 Python ¤ÎÍøÍÑ
5.11 Emacs ¤ÎÍøÍÑ
5.12 Ruby ¤ÎÍøÍÑ
6 MASTERDIR
7 ¶¦Í­¥é¥¤¥Ö¥é¥ê¤Î¥Ð¡¼¥¸¥ç¥ó
8 ¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸
9 Motif ¤òɬÍפȤ¹¤ë port
9.1 USE_MOTIF
9.2 MOTIFLIB
10 X11 ¤Î¥Õ¥©¥ó¥È
11 Info ¥Õ¥¡¥¤¥ë
12 pkg-* ¥Õ¥¡¥¤¥ë
12.1 pkg-message
12.2 pkg-install
12.3 pkg-req
12.4 make ¤ÎÊÑ¿ô¤Ë¤¢¤ï¤»¤¿ pkg-plist ¤ÎÊѹ¹
12.5 pkg-* ¥Õ¥¡¥¤¥ë¤Î̾Á°Êѹ¹
13 port ¤Î¥Æ¥¹¥È
13.1 portlint
13.2 PREFIX
13.3 FreshPorts ÀµÅöÀ­¥Æ¥¹¥È
14 ¥¢¥Ã¥×¥°¥ì¡¼¥É
15 ¤ä¤Ã¤Æ¤¤¤¤¤³¤È¤È¤¤¤±¤Ê¤¤¤³¤È
15.1 ¥Ð¥¤¥Ê¥ê¤Î strip
15.2 INSTALL_* ¥Þ¥¯¥í
15.3 WRKDIR
15.4 WRKDIRPREFIX
15.5 OS ¤Î¼ïÎà¤ä¥Ð¡¼¥¸¥ç¥ó¤Î¼±ÊÌ
15.6 __FreeBSD_version ¤ÎÃÍ
15.7 bsd.port.mk ¤Î¸å¤Ë½ñ¤¯¤³¤È
15.8 ÉÕ²ÃŪ¤Êʸ½ñ¤Î¥¤¥ó¥¹¥È¡¼¥ë
15.9 ¥Ç¥£¥ì¥¯¥È¥ê¹½À®
15.10 ¶õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Îºï½ü
15.11 UID
15.12 ¹çÍýŪ¤Ê port
15.13 CC ¤ª¤è¤Ó CXX ¤Îº½Å
15.14 CFLAGS ¤Îº½Å
15.15 ¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó (ÀßÄê) ¥Õ¥¡¥¤¥ë
15.16 ¥Õ¥£¡¼¥É¥Ð¥Ã¥¯
15.17 README.html
15.18 Port ¤Ë BROKEN, FORBIDDEN ¤Ê¤É¤Î°õ¤ò¤Ä¤±¤ë
15.19 ¤½¤Î¾½ô¡¹
15.20 º¤¤Ã¤¿¤é¡Ä
16 Makefile ¤Î¥µ¥ó¥×¥ë
17 ¥Ñ¥Ã¥­¥ó¥°¥ê¥¹¥È¤Î¼«Æ°À¸À®
18 ¤³¤Îʸ½ñ¤È ports ¥·¥¹¥Æ¥à¤ÎÊѹ¹
List of Tables
4-1. USE_* ÊÑ¿ô
5-1. Perl ¤ò»ÈÍѤ¹¤ë ports ÍѤÎÊÑ¿ô
5-2. X ¤òÍøÍѤ¹¤ë ports ÍѤÎÊÑ¿ô
5-3. automake, autoconf ¤Þ¤¿¤Ï libtool ¤ò»ÈÍѤ¹¤ë ports ÍѤÎÊÑ¿ô
5-4. KDE ¤òÍøÍѤ¹¤ë ports ÍѤÎÊÑ¿ô
List of Examples
4-1. ³Æ¥µ¥¤¥È¤Ë 1 ¤Ä¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¾ì¹ç¤Î¡¢´Êñ¤Ê MASTER_SITES:n ¤Î»ÈÍÑË¡
4-2. ³Æ¥µ¥¤¥È¤Ë 1 ¤Ä°Ê¾å¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¾ì¹ç¤Î¡¢´Êñ¤Ê MASTER_SITES:n ¤Î»ÈÍÑË¡
4-3. MASTER_SITE_SUBDIR ¤Ë¤ª¤±¤ë MASTER_SITES:n ¤Î¾ÜºÙ¤Ê»ÈÍÑË¡
4-4. ¥«¥ó¥Þ±é»»»Ò¡¢Ê£¿ô¤Î¥Õ¥¡¥¤¥ë¡¢Ê£¿ô¤Î¥µ¥¤¥È¡¢ Ê£¿ô¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤È¹ç¤ï¤»¤¿ MASTER_SITES:n ¤Î¾ÜºÙ¤Ê»ÈÍÑË¡
4-5. MASTER_SITE_SOURCEFORGE ¤È¹ç¤ï¤»¤¿ MASTER_SITES:n ¤Î¾Ü¤·¤¤»ÈÍÑË¡
4-6. PATCH_SITES ¤È¹ç¤ï¤»¤¿ MASTER_SITES:n ¤Î´Êñ¤Ê»ÈÍÑË¡

Chapter 1 ¼«Ê¬¤Ç port ¤òºîÀ®¤¹¤ë¤Ë¤Ï

¼«Ê¬¤Ç port ¤òºî¤ë¤³¤È¤ä¡¢´û¸¤Î port ¤Î ¹¹¿·ºî¶È¤Ë¶½Ì£¤¬¤¢¤ë¤Î¤Ç¤¹¤«¡£¤½¤ì¤Ï¤¹¤Ð¤é¤·¤¤!

¤³¤³¤Ç¤Ï FreeBSD ÍѤΠport ¤òºî¤ëºÝ¤Î ¥¬¥¤¥É¥é¥¤¥ó¤ò¤¤¤¯¤Ä¤«¼¨¤·¤Þ¤¹¡£ ´û¸¤Î port ¤ò¹¹¿·¤·¤¿¤¤¤È¹Í¤¨¤Æ¤¤¤ë¾ì¹ç¤Ç¤¢¤Ã¤Æ¤â¡¢ ¤Þ¤º¤³¤Î¾Ï¤òÆÉ¤ó¤Ç¤«¤é¡¢¼¡¤Ë Chapter 14 ¤òÆÉ¤à¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

¤³¤Îʸ½ñ¤Ç¤Ï½¼Ê¬¤Ë¾ÜºÙ¤¬¤ï¤«¤é¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢ /usr/ports/Mk/bsd.port.mk ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢port ¤Î Makefile ¤¬Îã³°¤Ê¤¯¥¤¥ó¥¯¥ë¡¼¥É¤·¤Æ¤¤¤ë¤â¤Î¤Ç¤¹¡£ ¤³¤ì¤Ë¤ÏºÙ¤«¤¯¥³¥á¥ó¥È¤¬½ñ¤«¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢Makefile ¤òÆÉ¤à¤Î¤Ë ¤¢¤Þ¤ê´·¤ì¤Æ¤¤¤Ê¤¤¿Í¤Ç¤â¡¢¤¿¤¯¤µ¤ó¤Î¾ðÊó¤òÆÀ¤ë¤³¤È¤¬¤Ç¤­¤ë¤Ç¤·¤ç¤¦¡£ ¤½¤ì¤Ç¤â²ò·è¤Ç¤­¤Ê¤¤¤è¤¦¤Ê¼ÁÌä¤Ï¡¢FreeBSD ports ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È ¤Ë¥Ý¥¹¥È¤·¤Æ¤ß¤ë¤Î¤â Îɤ¤¤Ç¤·¤ç¤¦¡£

Note: ¤³¤Îʸ½ñ¤Ç¤Ï¡¢¾å½ñ¤­²Äǽ¤Ê ÊÑ¿ô (VAR) ¤Î¤¦¤Á °ìÉô¤Î¤â¤Î¤Ë¤Ä¤¤¤Æ¤À¤±½Ò¤Ù¤Æ¤¤¤Þ¤¹¡£ (¤¹¤Ù¤Æ¤Ç¤Ï̵¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡¢) ¤Û¤È¤ó¤É¤ÎÊÑ¿ô¤Ï bsd.port.mk ¤ÎÀèÆ¬Éôʬ¤Ëµ­½Ò¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ ¤Ê¤ª¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤ÏÈóɸ½à¤Î¥¿¥ÖÀßÄê¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£ Emacs ¤ä Vim ¤Ï¡¢ ¤³¤ÎÀßÄê¤ò¥Õ¥¡¥¤¥ë¤ÎÆÉ¤ß¹þ¤ß»þ¤Ëǧ¼±¤¹¤ë¤Ï¤º¤Ç¤¹¡£ vi ¤È ex ¤Ç¤Ï¡¢ °ìö¥Õ¥¡¥¤¥ë¤òÆÉ¤ß¹þ¤ó¤Ç¤«¤é :set tabstop=4 ¤È ¥¿¥¤¥×¤¹¤ë¤³¤È¤Ç¡¢Àµ¤·¤¤ÃͤËÀßÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£


Chapter 2 3 ʬ´Ö porting

¤³¤Î¥»¥¯¥·¥ç¥ó¤Ç¤Ï¡¢´Êñ¤Ê port ¤Îºî¤êÊý¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£ ¿¤¯¤Î¾ì¹ç¡¢¤³¤ì¤À¤±¤Ç¤ÏÉÔ½¼Ê¬¤Ç¤¹¤¬¡¢ ¤Þ¤¢ ¤¦¤Þ¤¯¤¤¤¯¤«¤É¤¦¤«»î¤·¤Æ¤ß¤ÆÂ»¤Ï¤Ê¤¤¤Ç¤·¤ç¤¦¡£

¤Þ¤º¡¢¸µ¤Î tar ¥Õ¥¡¥¤¥ë¤ò DISTDIR ¤ËÃÖ¤­¤Þ¤¹¡£¤³¤ÎÊÑ¿ô¤Î ¥Ç¥Õ¥©¥ë¥ÈÃÍ¤Ï /usr/ports/distfiles ¤Ç¤¹¡£

Note: °Ê²¼¤ÎÎã¤Ç¤Ï¡¢¤½¤Î¥½¥Õ¥È¥¦¥§¥¢¤¬ ¤½¤Î¤Þ¤Þ¥³¥ó¥Ñ¥¤¥ë²Äǽ¤Ê¤â¤Î¤È²¾Äꤷ¤Æ¤¤¤Þ¤¹¡£ ¤Ä¤Þ¤ê¡¢FreeBSD ¥Þ¥·¥ó¤Çư¤«¤¹¤¿¤á¤Ë¡¢ Êѹ¹¤¬¤Þ¤Ã¤¿¤¯É¬Íפʤ¤¤È¤¤¤¦°ÕÌ£¤Ç¤¹¡£ ¤â¤·²¿¤«Êѹ¹¤¬É¬Íפʾì¹ç¤Ë¤Ï¡¢¼¡¤Î¥»¥¯¥·¥ç¥ó¤â »²¾È¤¹¤ëɬÍפ¬¤¢¤ë¤Ç¤·¤ç¤¦¡£


2.1 Makefile ¤ÎºîÀ®

ºÇ¾®¸Â¤Î Makefile ¤Ï ¼¡¤Î¤è¤¦¤Ê¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£

# New ports collection makefile for:   oneko
# Date created:     5 December 1994
# Whom:             asami
#
# $FreeBSD$
#

PORTNAME=       oneko
PORTVERSION=    1.1b
CATEGORIES=     games
MASTER_SITES=   ftp://ftp.cs.columbia.edu/archives/X11R5/contrib/

MAINTAINER=     asami@FreeBSD.org
COMMENT=        A cat chasing a mouse all over the screen

MAN1=           oneko.1
MANCOMPRESSED=  yes
USE_IMAKE=      yes

.include <bsd.port.mk>

¤ª¤ï¤«¤ê¤Ç¤·¤ç¤¦¤«¡£$FreeBSD$ ¤ò ´Þ¤à¹Ô¤ÎÆâÍÆ¤Ë¤Ä¤¤¤Æ¤Ï¡¢µ¤¤Ë¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£ ¤³¤Î¹Ô¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤¬ FreeBSD ¤Î ports ¥Ä¥ê¡¼¤Ë ¼è¤ê¹þ¤Þ¤ì¤ëºÝ¤Ë¡¢CVS ¤Ë¤è¤Ã¤Æ¼«Æ°Åª¤Ë½ñ¤­¹þ¤Þ¤ì¤Þ¤¹¡£ ¤â¤Ã¤È¾Ü¤·¤¤Î㤬¸«¤¿¤¤¾ì¹ç¤Ë¤Ï¡¢ Makefile ¤Î¥µ¥ó¥×¥ë¤Î ¥»¥¯¥·¥ç¥ó¤ò¤´Í÷¤¯¤À¤µ¤¤¡£


2.2 package µ­½Ò¥Õ¥¡¥¤¥ë¤ÎºîÀ®

package ¤Ë¤¹¤ë¤·¤Ê¤¤¤Ë´Ø¤ï¤é¤º¡¢¤É¤Î¤è¤¦¤Ê port ¤Ç¤â 2 ¤Ä¤Îµ­½Ò¥Õ¥¡¥¤¥ë¤¬É¬ÍפǤ¹¡£¤½¤ì¤Ï pkg-descr ¤È pkg-plist ¤Ç¤¹¡£¥Õ¥¡¥¤¥ë̾¤¬ pkg- ¤Ç»Ï¤Þ¤Ã¤Æ¤¤¤ë¤³¤È¤Ç ¾¤Î¥Õ¥¡¥¤¥ë¤È¶èÊ̤Ǥ­¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£


2.2.1 pkg-descr

¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¤½¤Î port ¤Ë¤Ä¤¤¤Æ¤Î¾¯¤·Ä¹¤¤ÀâÌÀ¤ò½ñ¤­¤Þ¤¹¡£ ¤½¤Î port ¤¬²¿¤ò¤¹¤ë¤Î¤«¤Ë¤Ä¤¤¤Æ¤Î¡¢ ¿ôÃÊÍîÄøÅ٤δʷé¤Ê²òÀ⤬¤¢¤ì¤Ð½¼Ê¬¤Ç¤¹¡£

Note: ¤³¤ì¤Ï¥Þ¥Ë¥å¥¢¥ë¤Ç¤â¤Ê¤±¤ì¤Ð¡¢»ÈÍÑÊýË¡¤ä¥³¥ó¥Ñ¥¤¥ëÊýË¡¤Ë ¤Ä¤¤¤Æ¤ÎºÙ¤«¤¤ÀâÌÀ½ñ¤Ç¤â¤¢¤ê¤Þ¤»¤ó¡£ README ¥Õ¥¡¥¤¥ë¤ä ¥Þ¥Ë¥å¥¢¥ë¤ò°úÍѤ¹¤ë¤Ä¤â¤ê¤Ê¤éÃí°Õ¤¬É¬ÍפǤ¹¡£ ¤³¤ì¤é¤Ï¿¤¯¤Î¾ì¹ç¡¢¤½¤Î port ¤Î´Ê·é¤ÊÀâÌÀ¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤«¤Ã¤¿¤ê¡¢ °·¤¤¤Ë¤¯¤¤·Á¼°¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤ê¤·¤Þ¤¹¡£ (¥Þ¥Ë¥å¥¢¥ë¤Î¾ì¹ç¡¢¹Ô¤ò·¤¨¤ë¤¿¤á¤Ë¶õÇò¤¬Ä´À°¤µ¤ì¤Æ¤¤¤¿¤ê¤·¤Þ¤¹¡£) ¤³¤Î¥½¥Õ¥È¥¦¥§¥¢¤Ë¸ø¼°¤Î¥¦¥§¥Ö¥µ¥¤¥È¤¬¤¢¤ë¤Î¤Ê¤é¡¢ ¤³¤³¤Ë½ñ¤¤¤Æ¤¯¤À¤µ¤¤¡£¤½¤ÎºÝ¼«Æ°²½¥Ä¡¼¥ë¤¬Àµ¤·¤¯Æ°ºî¤¹¤ë¤è¤¦¤Ë¡¢ ¥¦¥§¥Ö¥µ¥¤¥È¤Î¤¦¤Á¤Î°ì¤Ä¤Ë¤Ï¡¢ ÀèÆ¬¤Ë WWW: ¤ò¤Ä¤±¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£

¤³¤Î¥Õ¥¡¥¤¥ë¤ÎºÇ¸å¤Ë¡¢¤¢¤Ê¤¿¤Î̾Á°¤ò½ñ¤¯¤³¤È¤¬¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ ¤¿¤È¤¨¤Ð¡¢¤³¤ó¤Ê¶ñ¹ç¤Ç¤¹¡£

This is a port of oneko, in which a cat chases a poor mouse all over
the screen.
 :
(¤¦¤ó¤Ì¤ó¡£)

WWW: http://www.oneko.org/

- Satoshi
asami@cs.berkeley.edu

2.2.2 pkg-plist

¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¤½¤Î port ¤Ë¤è¤Ã¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë ¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤òÎóµó¤·¤Þ¤¹¡£ ¤³¤Î¥Õ¥¡¥¤¥ë¤Ï package ¤òºî¤ëºÝ¤Î¥ê¥¹¥È¤È¤·¤Æ»È¤ï¤ì¤ë¤¿¤á¡¢ ``¥Ñ¥Ã¥­¥ó¥°¥ê¥¹¥È (packing list)'' ¤È¤â¸Æ¤Ð¤ì¤Þ¤¹¡£ ¤³¤³¤Ë½ñ¤¯¥Ñ¥¹Ì¾¤Ï¡¢¥¤¥ó¥¹¥È¡¼¥ë»þ¤Î¥×¥ì¥Õ¥£¥Ã¥¯¥¹ (Ä̾ï /usr/local ¤Þ¤¿¤Ï /usr/X11R6) ¤«¤é¤ÎÁêÂХѥ¹¤Ç¤¹¡£ MANn ÊÑ¿ô¤ò »ÈÍѤ·¤Æ¤¤¤ë¾ì¹ç (»ÈÍѤ¹¤ë¤³¤È¤¬¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤¹)¡¢¤³¤Î¥ê¥¹¥È¤Ë ¥Þ¥Ë¥å¥¢¥ë¤ÏÆþ¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

´Êñ¤ÊÎã¤òºÜ¤»¤Æ¤ª¤­¤Þ¤·¤ç¤¦¡£

bin/oneko
lib/X11/app-defaults/Oneko
lib/X11/oneko/cat1.xpm
lib/X11/oneko/cat2.xpm
lib/X11/oneko/mouse.xpm
@dirrm lib/X11/oneko

¥Ñ¥Ã¥­¥ó¥°¥ê¥¹¥È¤Î¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢ pkg_create(1) ¤Î¥Þ¥Ë¥å¥¢¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£

Note: ¤³¤Î¥ê¥¹¥È¤Ë¤Ï¡¢¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤òÎóµó¤·¤Ê¤±¤ì¤Ð ¤Ê¤ê¤Þ¤»¤ó¤¬¡¢¥Ç¥£¥ì¥¯¥È¥ê¤½¤Î¤â¤Î¤ÏÎóµó¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤»¤ó¡£ ¤Þ¤¿¡¢¤³¤Î port ¤¬¥¤¥ó¥¹¥È¡¼¥ë»þ¤ËÆÈ¼«¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ò ºîÀ®¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢¤³¤Î port ¤¬ºï½ü¤µ¤ì¤ë¤È¤­¤Ë ¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤âºï½ü¤µ¤ì¤ë¤è¤¦¡¢@dirrm ¤Î¹Ô¤ò Äɲ䷤Ƥª¤¯¤Î¤ò˺¤ì¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£

¤³¤Î¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë̾¤ò ¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¤Ë¥½¡¼¥È¤·¤Æ¤ª¤¯¤³¤È¤ò¿ä¾©¤·¤Þ¤¹¡£ ¤½¤¦¤¹¤ë¤³¤È¤Ç¡¢port ¤ò¹¹¿·¤¹¤ëºÝ¤Î Êѹ¹ÅÀ¤Î³Îǧ¤¬³Ú¤Ë¤Ê¤ê¤Þ¤¹¡£

¥Ñ¥Ã¥­¥ó¥°¥ê¥¹¥È¤ò¼êºî¶È¤ÇºîÀ®¤¹¤ë¤Î¤Ï¡¢ »þ¤Ë¤È¤Æ¤âÂà¶þ¤Êºî¶È¤Ë¤Ê¤ê¤Þ¤¹¡£ ¤½¤Î port ¤¬Èó¾ï¤Ë¿¿ô¤Î¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤È¤·¤¿¤é¡¢ ¥Ñ¥Ã¥­¥ó¥°¥ê¥¹¥È¤Î ¼«Æ°À¸À®¤ò¹Ô¤Ê¤¨¤Ð¡¢»þ´Ö¤ÎÀáÌó¤Ë¤Ê¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£


2.3 ¥Á¥§¥Ã¥¯¥µ¥à¥Õ¥¡¥¤¥ë¤ÎºîÀ®

make makesum ¤ÈÆþÎϤ¹¤ë¤À¤±¤Ç¡¢ (ÌõÃí: bsd.port.mk ¤Ë½ñ¤«¤ì¤Æ¤¤¤ë) port À¸À®¥ë¡¼¥ë¤Ë½¾¤¤¡¢ ¼«Æ°Åª¤Ë distinfo ¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£


2.4 port ¤Î¥Æ¥¹¥È

package ²½¤â´Þ¤á¡¢¤½¤Î port ¤¬»×¤Ã¤¿Ä̤ê¤Ë ư¤¯¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ ³Îǧ¤ÎɬÍפʽÅÍץݥ¤¥ó¥È¤Ï°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£

  • ¤½¤Î port ¤¬¥¤¥ó¥¹¥È¡¼¥ë¤·¤Ê¤¤¤â¤Î¤¬ pkg-plist ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¡£

  • ¤½¤Î port ¤¬¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¡¢¤¹¤Ù¤Æ¤Î¤â¤Î¤¬ pkg-plist ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¤³¤È¡£

  • reinstall ¥¿¡¼¥²¥Ã¥È¤ò»È¤¦¤³¤È¤Ç¡¢¤½¤Î port ¤¬ ²¿Å٤Ǥ⥤¥ó¥¹¥È¡¼¥ë²Äǽ¤Ê¤³¤È¡£

  • ¤½¤Î port ¤¬ deintall ¤µ¤ì¤ëºÝ¤Ë¤Ï ¸åÊÒÉÕ¤±¤ò¤¹¤ë¤³¤È¡£

¿ä¾©¤µ¤ì¤ë¥Æ¥¹¥È¤Î¼ê½ç

  1. make install

  2. make package

  3. make deinstall

  4. pkg_add package ̾

  5. make deinstall

  6. make reinstall

  7. make package

package ¤ª¤è¤Ó deinstall ¤ÎÃʳ¬¤Ç¡¢ ¤É¤ó¤Ê·Ù¹ð (warning) ¤â½ÐÎϤµ¤ì¤Ê¤¤¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¥¹¥Æ¥Ã¥× 3 ¤Î¸å¡¢(ÌõÃí: ¤½¤Î port ¤¬ºîÀ®¤·¤¿) ¤¹¤Ù¤Æ¤Î¿·¤·¤¤ ¥Ç¥£¥ì¥¯¥È¥ê¤¬Àµ¤·¤¯¾Ãµî¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤Þ¤¿¡¢¥¹¥Æ¥Ã¥× 4 ¤Î¸å¤Ë¤½¤Î¥½¥Õ¥È¥¦¥§¥¢¤ò»ÈÍѤ·¤Æ¤ß¤Æ¡¢ package ¤«¤é¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤¿¾ì¹ç¤Ë¤âÀµ¤·¤¯Æ°ºî¤¹¤ë¤³¤È¤ò ³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£


2.5 portlint ¤Ë¤è¤ë¥Á¥§¥Ã¥¯

portlint ¤ò»È¤¤¡¢¤½¤Î port ¤¬ FreeBSD ¤Î ¥¬¥¤¥É¥é¥¤¥ó¤Ë±è¤Ã¤Æ¤¤¤ë¤«¤É¤¦¤«¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ portlint ¥×¥í¥°¥é¥à¤Ï ports collection ¤Ë ´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£ ÆÃ¤Ë¡¢Makefile ¤¬ Àµ¤·¤¤·Á¼°¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤«¡¢ package ¤Î ̾Á°¤¬Àµ¤·¤¤¤«¤É¤¦¤«¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤Î¤ËÎɤ¤¤Ç¤·¤ç¤¦¡£


2.6 port ¤ÎÄó½Ð

¤Þ¤º¡¢ ¤ä¤Ã¤ÆÎɤ¤¤³¤È°­¤¤¤³¤È¤Î ¥»¥¯¥·¥ç¥ó¤òÆÉ¤ó¤Ç¤¯¤À¤µ¤¤¡£

¤µ¤Æ¡¢Ëþ­¤Î¤¤¤¯ port ¤¬´°À®¤·¤¿¤é¡¢»Ä¤ë¤Ï ¤½¤ì¤ò FreeBSD ¤Î¥á¥¤¥ó¤Î ports ¥Ä¥ê¡¼¤ËÃÖ¤¤¤Æ¡¢ ¾¤Î¿Í¤Ë¤â»È¤Ã¤Æ¤â¤é¤¦¤À¤±¤Ç¤¹¡£ work ¥Ç¥£¥ì¥¯¥È¥ê¤ä pkgname.tgz ¤È¤¤¤Ã¤¿ package ¤Ï ɬÍפ¢¤ê¤Þ¤»¤ó¤«¤é¡¢¤Þ¤º¤³¤ì¤é¤ò¾Ãµî¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤¢¤È¤Ï shar `find port_dir` ¤Î½ÐÎϤò ¥Ð¥°¥ì¥Ý¡¼¥È¤ËÆþ¤ì¡¢send-pr(1) ¥×¥í¥°¥é¥à¤ò»ÈÍѤ·¤Æ Á÷¤Ã¤Æ¤¯¤À¤µ¤¤ (send-pr(1) ¤Ë¤Ä¤¤¤Æ¤Î¾ÜºÙ¤Ï ¥Ð¥°Êó¹ð¤È°ìÈÌŪ¤ÊÏÀɾ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£ ¤â¤·¡¢°µ½Ì¤·¤Æ¤¤¤Ê¤¤¾õÂÖ¤Ç 20KB °Ê¾å¤¢¤ë¤è¤¦¤Ê port ¤Ç¤¢¤ì¤Ð¡¢ ¤½¤ì¤ò ¤Ò¤È¤Ä¤Î tar ¥Õ¥¡¥¤¥ë¤Ë¤Þ¤È¤á¤Æ°µ½Ì¤·¡¢ ¥Ð¥°¥ì¥Ý¡¼¥È¤ËÆþ¤ì¤ëÁ°¤Ë uuencode(1) ¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤ (20KB °Ê²¼¤Î¤â¤Î¤ò tar ¥Õ¥¡¥¤¥ë¤Ë¤·¤ÆÁ÷¤Ã¤Æ¤âÎɤ¤¤Î¤Ç¤¹¤¬¡¢ ¤¢¤Þ¤ê´¿·Þ¤µ¤ì¤Þ¤»¤ó)¡£ ¥Ð¥¯¥ì¥Ý¡¼¥È¤Î category ¤Ïɬ¤º ports, class ¤Ï change-request ¤È¤·¤Æ¤¯¤À¤µ¤¤ (¥ì¥Ý¡¼¥È¤ò confidential (µ¡Ì©) »ØÄê¤Ë¤Ï ¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤!)¡£ ¤Þ¤¿¡¢port ²½¤·¤¿¥×¥í¥°¥é¥à¤Îû¤¤ÀâÌÀʸ¤ò ¥Ð¥°¥ì¥Ý¡¼¥È¤Î ``Description'' ¥Õ¥£¡¼¥ë¥É¤ËÄɲ䷤ơ¢ ``Fix'' ¥Õ¥£¡¼¥ë¥É¤Ë¤Ï shar ¤·¤¿¥Õ¥¡¥¤¥ë¡¢ ¤â¤·¤¯¤Ï uuencode ¤·¤¿ tar ¥Õ¥¡¥¤¥ë¤òÄɲ乤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ¸å¼Ô¤Ï¡¢ports ´ÉÍý¤Îºî¶È¤ò¥¹¥¯¥ê¥×¥È¤Ç¹Ô¤Ê¤Ã¤Æ¤¤¤ë ¥³¥ß¥Ã¥¿¡¼¤Î½õ¤±¤È¤Ê¤ê¤Þ¤¹¡£

¤â¤¦°ìÅÙ¡¢¥ª¥ê¥¸¥Ê¥ë¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤ä work ¥Ç¥£¥ì¥¯¥È¥ê¡¢ make package ¤ÇºîÀ®¤·¤¿ package ¤¬ ´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£

Note: °ÊÁ°¤Ë¤Ï¡¢¿·¤·¤¤ port ¤òÄó½Ð¤¹¤ëºÝ¤Ë FreeBSD ¤Î FTP ¥µ¥¤¥È (ftp.FreeBSD.org) ¤Ë ¥¢¥Ã¥×¥í¡¼¥É¤¹¤ë¤è¤¦¤Ë ¤ª´ê¤¤¤·¤Æ¤¤¤¿¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ ¸½ºß¤³¤Î¥µ¥¤¥È¤Î incoming ¥Ç¥£¥ì¥¯¥È¥ê¤Ï ÆÉ¤ß½Ð¤·ÉԲĤˤʤäƤª¤ê¡¢¥¢¥Ã¥×¥í¡¼¥É¤Ï¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ ¤¿¤¯¤µ¤ó¤Î³¤Â±ÈÇ¥½¥Õ¥È¥¦¥§¥¢¤¬¤½¤³¤ËÃÖ¤«¤ì¤¿¤¿¤á¤Ç¤¹¡£

port ¤òÄó½Ð¤·¤¿¤é¡¢¿ÉÊú¶¯¤¯¤ªÂÔ¤Á¤¯¤À¤µ¤¤¡£»þ¤Ë¤Ï¡¢¤¢¤ë port ¤¬ FreeBSD ¤Ë¼è¤ê¹þ¤Þ¤ì¤ë¤Þ¤Ç¡¢¿ôÆü¤·¤«¤«¤«¤ê¤½¤¦¤â¤Ê¤¤¤Î ¤Ë¡¢¿ô¥ö·î¤«¤«¤ë¤³¤È¤â¤¢¤ê¤Þ¤¹¡£ FreeBSD ¤Ø¤Î¥³¥ß¥Ã¥ÈÂÔ¤Á¤Î ports ¤Î°ìÍ÷¤¬¸«¤é¤ì¤Þ¤¹¡£

¤ï¤¿¤·¤¿¤Á¤¬¤Ò¤È¤¿¤Ó¤½¤Î port ¤ò¥Á¥§¥Ã¥¯¤·¤¿¤é¡¢É¬Í×¤Ê¤é ¤¢¤Ê¤¿¤Ë³Îǧ¤·¤Æ¡¢¤½¤ì¤ò¥Ä¥ê¡¼¤ØÃÖ¤­¤Þ¤¹¡£ ¤¢¤Ê¤¿¤Î̾Á°¤Ï¤½¤Î¾¤Î FreeBSD ¤Ø¤Î¹×¸¥¼Ô¤Î°ìÍ÷¤ä¤½¤Î¾¤Î¥Õ¥¡¥¤¥ë¤Ë¤âºÜ¤ë¤Ç¤·¤ç¤¦¡£ ¤¦¡Á¤ó¡¢ÁÇÀ²¤é¤·¤¤¡£:-)

Note: ¤ï¤¿¤·¤¿¤Á¤¬ºî¶È¤·¤ä¤¹¤¤¤è¤¦¤Ë¡¢ ¾ã³²Êó¹ð¤Î³µÍ× (synopsis) ¤ÏŬÀڤ˵­½Ò¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤¿¤È¤¨¤Ð¿·¤·¤¤ port ¤ÎÄó½Ð¤Ê¤é ``New port: <port ¤Î´Êñ¤ÊÀâÌÀ>''¡¢ port ¤Î¹¹¿·¤Ê¤é ``Update port: <¥«¥Æ¥´¥ê>/<port ̾> <¹¹¿·ÆâÍÆ¤Î´Êñ¤ÊÀâÌÀ>'' ¤È¤¤¤Ã¤¿·Á¼°¤¬´¿·Þ¤µ¤ì¤Þ¤¹¡£ ¤³¤¦¤¤¤¦ÊýË¡¤ÇÊó¹ð¤¹¤ë¤è¤¦¤Ë¿´¤¬¤±¤Æ¤¤¤ì¤Ð¡¢¤¢¤Ê¤¿¤ÎÊó¹ð (PR) ¤¬ ¤¹¤°¤Ë狼¤ÎÌܤˤȤޤë³ÎΨ¤¬ ¤°¤Ã¤È¹â¤¯¤Ê¤ë¤Î¤Ç¤¹¡£


Chapter 3 ËܳÊŪ¤Ê port

»Äǰ¤Ê¤¬¤é°Ü¿¢¤¬¤½¤¦´Êñ¤Ç¤Ï¤Ê¤¯¡¢¤½¤ì¤òư¤«¤¹¤¿¤á¤Ë ¿¾¯¤ÎÊѹ¹¤¬É¬Íפˤʤë¾ì¹ç¤â¤¢¤ë¤Ç¤·¤ç¤¦¡£ ¤³¤Î¥»¥¯¥·¥ç¥ó¤Ç¤Ï¡¢ÌÏÈÏŪ¤Ê ports ¤ÎºîË¡¤Ë½¾¤¤¡¢ ¤É¤Î¤è¤¦¤ËÊѹ¹¤ò¹Ô¤Ê¤Ã¤ÆÆ°¤¯¤è¤¦¤Ë¤¹¤ë¤Î¤«¤ò ½ç¤òÄɤäÆÀâÌÀ¤·¤Þ¤¹¡£


3.1 port ¹½ÃۤξܺÙ

¤Þ¤º¡¢¤¢¤Ê¤¿¤¬ port ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç make ¤È ÆþÎϤ·¤Æ¤«¤éµ¯¤³¤ë°ìÏ¢¤Î½ÐÍè»ö¤Ë¤Ä¤¤¤Æ¡¢ ½ç¤òÄɤäÆÀâÌÀ¤·¤Þ¤¹¡£ ¤³¤³¤òÆÉ¤à¤È¤­¤Ë¤Ï¡¢Ê̤Υ¦¥£¥ó¥É¥¦¤Ë bsd.port.mk ¤òɽ¼¨¤·¤Æ¤ª¤¯¤È Íý²ò¤Î½õ¤±¤Ë¤Ê¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£

¤·¤«¤·¡¢bsd.port.mk ¤¬²¿¤ò¤·¤Æ¤¤¤ë¤Î¤« ´°Á´¤ËÍý²ò¤Ç¤­¤Ê¤¯¤Æ¤â ¿´ÇÛ¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£ ¤½¤ì¤Û¤É¿¤¯¤Î¿Í¤¬Íý²ò¤·¤Æ¤¤¤ë ¤È¤¤¤¦¤ï¤±¤Ç¤Ï ¤¢¤ê¤Þ¤»¤ó¤«¤é¡Ä¡£ f(^_^;)

  1. ¤Þ¤º¡¢fetch ¤È¤¤¤¦ ¥¿¡¼¥²¥Ã¥È¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£ ¤³¤Î fetch ¥¿¡¼¥²¥Ã¥È¤Ï¡¢ ÇÛÉÛ¥Õ¥¡¥¤¥ë¤¬¥í¡¼¥«¥ë¤Î DISTDIR ¤Ë ¸ºß¤¹¤ë¤³¤È¤òÊݾڤ¹¤ëÌòÌܤò»ý¤Ã¤Æ¤¤¤Þ¤¹¡£ ¤â¤·É¬Íפʥե¡¥¤¥ë¤¬ DISTDIR ¤Ë ¸ºß¤·¤Ê¤±¤ì¤Ð¡¢fetch ¥¿¡¼¥²¥Ã¥È¤Ï Makefile ¤Ç»ØÄꤵ¤ì¤¿ MASTER_SITES Ãæ¤Î URL ¤ä¡¢ FreeBSD ¤Î¥á¥¤¥ó FTP ¥µ¥¤¥È ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ (¤³¤³¤Ë¤Ï¥Ð¥Ã¥¯¥¢¥Ã¥×¤È¤·¤Æ¡¢¤ï¤ì¤ï¤ì ports ´ÉÍý¼Ô¤¬³Îǧ¤·¤¿ ÇÛÉÛ¥Õ¥¡¥¤¥ë¤òÃÖ¤¤¤Æ¤¢¤ê¤Þ¤¹) ¤òõ¤·¤Ë¤¤¤­¤Þ¤¹¡£ make ¤ò¼Â¹Ô¤¹¤ë¥Þ¥·¥ó¤¬¥¤¥ó¥¿¡¼¥Í¥Ã¥È¤Ë Àܳ¤µ¤ì¤Æ¤¤¤Æ¡¢ÌÜŪ¤Î¥Õ¥¡¥¤¥ë¤ò FETCH ¤Ç ¼è¤Ã¤Æ¤³¤ì¤¿¾ì¹ç¤Ë¤Ï¡¢¤½¤ì¤ò DISTDIR ¤Ë Êݸ¤·¤Þ¤¹¡£

  2. ¼¡¤Ë extract ¥¿¡¼¥²¥Ã¥È¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£ ¤³¤Î¥¿¡¼¥²¥Ã¥È¤Ï DISTDIR ¤«¤é ÇÛÉÛ¥Õ¥¡¥¤¥ë (ÉáÄÌ¤Ï gzip ¤µ¤ì¤¿ tar ¥Õ¥¡¥¤¥ë) ¤òÆÉ¤ß¹þ¤ß¡¢ ¤½¤ÎÆâÍÆ¤òºî¶È¥Ç¥£¥ì¥¯¥È¥ê WRKDIR (¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï work) ¤ËŸ³«¤·¤Þ¤¹¡£

  3. ¼¡¤Ë patch ¥¿¡¼¥²¥Ã¥È¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£ ¤Þ¤º¡¢PATCHFILES ¤Ë¥Ñ¥Ã¥Á¥Õ¥¡¥¤¥ë¤¬ »ØÄꤵ¤ì¤Æ¤¤¤ì¤Ð¡¢¤½¤Î¥Ñ¥Ã¥Á¤òŬÍѤ·¤Þ¤¹¡£ ¼¡¤Ë¡¢PATCHDIR ¥Ç¥£¥ì¥¯¥È¥ê (¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï files ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê) ¤Ë patch-* ¤È¤¤¤¦ ̾Á°¤Î¥Ñ¥Ã¥Á¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ì¤Ð¡¢ ¤³¤ì¤é¤ò¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¤ËŬÍѤ·¤Þ¤¹¡£

  4. ¼¡¤Ë configure ¥¿¡¼¥²¥Ã¥È¤¬ ¼Â¹Ô¤µ¤ì¤Þ¤¹¡£ ¤³¤ì¤Ë¤Ï¡¢¤¤¤í¤¤¤í¤Ê¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£

    1. scripts/configure ¤¬ ¸ºß¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤Î¥¹¥¯¥ê¥×¥È¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£

    2. HAS_CONFIGURE ¤Þ¤¿¤Ï GNU_CONFIGURE ¤¬¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤ì¤Ð¡¢ WRKSRC/configure ¤¬ ¼Â¹Ô¤µ¤ì¤Þ¤¹¡£

    3. USE_IMAKE ¤¬¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤ì¤Ð¡¢ XMKMF (¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï xmkmf -a) ¤¬ ¼Â¹Ô¤µ¤ì¤Þ¤¹¡£

  5. ºÇ¸å¤Ë build ¥¿¡¼¥²¥Ã¥È¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£ ¤³¤ì¤Ïºî¶È¥Ç¥£¥ì¥¯¥È¥ê (WRKSRC) ¤Ë¹ß¤ê¤Æ¤¤¤­¡¢ ¥Ó¥ë¥É (¥³¥ó¥Ñ¥¤¥ë) ¤ò¼Â¹Ô¤¹¤ë¤Î¤¬ÌòÌܤǤ¹¡£ USE_GMAKE ¤¬¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤ì¤Ð GNU make ¤¬»ÈÍѤµ¤ì¡¢ ¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð FreeBSD ¤Î make ¤¬ »ÈÍѤµ¤ì¤Þ¤¹¡£

¾åµ­¤Ï¥Ç¥Õ¥©¥ë¥È¤Îưºî¤Ç¤¹¡£¤³¤ì¤Ë²Ã¤¨¤Æ pre- ²¿¤È¤«¤ä post- ²¿¤È¤«¤È¤¤¤¦ ¥¿¡¼¥²¥Ã¥È¤òÄêµÁ¤·¤¿¤ê¡¢¤½¤Î¤è¤¦¤Ê̾Á°¤Î¥¹¥¯¥ê¥×¥È¤ò scripts ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ËÃÖ¤¯¤³¤È¤â²Äǽ¤Ç¡¢ ¤½¤ì¤¾¤ì¥Ç¥Õ¥©¥ë¥È¤Îưºî¤ÎÁ°¤ä¸å¤Ë¼Â¹Ô¤µ¤ì¤Þ¤¹¡£

¤¿¤È¤¨¤Ð¡¢post-extract ¥¿¡¼¥²¥Ã¥È¤¬ Makefile ¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤Æ¡¢ scripts ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë pre-build ¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤¬ÃÖ¤«¤ì¤Æ¤¤¤ë¾ì¹ç¡¢ post-extract ¥¿¡¼¥²¥Ã¥È¤Ï Ä̾ï¤ÎŸ³«Æ°ºî¤Î¸å¤Ë¸Æ¤Ó½Ð¤µ¤ì¡¢ pre-build ¥¹¥¯¥ê¥×¥È¤Ï ¥Ç¥Õ¥©¥ë¥È¤Î¥³¥ó¥Ñ¥¤¥ëưºî¤ÎÁ°¤Ë¼Â¹Ô¤µ¤ì¤Þ¤¹¡£ ¼Â¹Ô¤¹¤ëưºî¤¬´Êñ¤Ç¤¢¤ì¤Ð¡¢¥¹¥¯¥ê¥×¥È¤è¤ê¤â Makefile ¤Î¥¿¡¼¥²¥Ã¥È¤ò»ÈÍѤ¹¤ë¤³¤È¤¬ ¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ ¤Ê¤¼¤Ê¤é¡¢¤½¤Î port ¤Ç¤Ï ¤É¤Î¤è¤¦¤ÊÈóɸ½à¤Îưºî¤¬É¬ÍפȤµ¤ì¤ë¤Î¤«¡¢ °ì²Õ½ê¤Ë¤Þ¤È¤á¤Æ½ñ¤¤¤Æ¤¢¤Ã¤¿Êý¤¬Â¾¤Î¿Í¤ËÍý²ò¤·¤ä¤¹¤¤¤«¤é¤Ç¤¹¡£

¥Ç¥Õ¥©¥ë¥È¤Îưºî¤Ï bsd.port.mk ¤Î do- ²¿¤È¤«¤È¤¤¤¦ ¥¿¡¼¥²¥Ã¥È¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¡£ ¤¿¤È¤¨¤Ð port ¤òŸ³«¤¹¤ë¥³¥Þ¥ó¥É¤Ï do-extract ¥¿¡¼¥²¥Ã¥È¤Ë½ñ¤«¤ì¤Æ¤¤¤Þ¤¹¡£ ¤â¤·¥Ç¥Õ¥©¥ë¥È¤Î¥¿¡¼¥²¥Ã¥È¤ËÉÔËþ¤¬¤¢¤ì¤Ð¡¢ Makefile Ãæ¤Ç do- ²¿¤È¤«¤È¤¤¤¦ ¥¿¡¼¥²¥Ã¥È¤òºÆÄêµÁ¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢ ¹¥¤­¤Ê¤è¤¦¤ËÊѹ¹¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

Note: ``¥á¥¤¥ó''¤Î¥¿¡¼¥²¥Ã¥È (¤¿¤È¤¨¤Ð extract, configure¡¢¤½¤Î¾) ¤Ï¡¢ ¤¹¤Ù¤Æ¤ÎÁ°Ãʳ¬¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤«¤é¡¢ ¼ÂºÝ¤Î¥¿¡¼¥²¥Ã¥È¤ä¥¹¥¯¥ê¥×¥È¤ò¸Æ¤Ó½Ð¤¹°Ê³°¤Î¤³¤È¤Ï ¹Ô¤Ê¤¤¤Þ¤»¤ó¤·¡¢¤³¤ì¤é¤¬Êѹ¹¤µ¤ì¤ë¤³¤È¤âÁÛÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ ¤â¤·Å¸³«¤ÎÊýË¡¤òÊѹ¹¤·¤¿¤¤¤È¤­¤Ë¤Ï do-extract ¤ÎÊѹ¹¤Ë¤è¤Ã¤Æ¼Â¸½¤·¡¢ ÀäÂÐ¤Ë extract ¤Ë¤Ï ¼ê¤ò¿¨¤ì¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£

¤³¤ì¤Ç¡¢¥æ¡¼¥¶¤¬ make ¤È ÆþÎϤ·¤¿¤È¤­¤Ë²¿¤¬µ¯¤³¤ë¤Î¤«¤¬Íý²ò¤Ç¤­¤¿¤È»×¤¤¤Þ¤¹¡£ ¤Ç¤Ï¡¢´°àú¤Ê port ¤òºîÀ®¤¹¤ë¤¿¤á¤Î¿ä¾©¼ê½ç¤ò ½ç¤Ë¸«¤Æ¤¤¤­¤Þ¤·¤ç¤¦¡£


3.2 ¥ª¥ê¥¸¥Ê¥ë¤Î¥½¡¼¥¹¤ÎÆþ¼ê

(Ä̾ï¤Î¾ì¹ç¡¢) °µ½Ì¤µ¤ì¤¿ tar ¥Õ¥¡¥¤¥ë¤Î·Á (foo.tar.gz ¤¢¤ë¤¤¤Ï foo.tar.Z) ¤Ç ¥ª¥ê¥¸¥Ê¥ë¤Î¥½¡¼¥¹¤òÆþ¼ê¤·¤Æ¡¢ ¤½¤ì¤ò DISTDIR ¤Ë¥³¥Ô¡¼¤·¤Þ¤¹¡£ ¤Ç¤­¤ë¸Â¤ê¡¢¼çή¤Î¥½¡¼¥¹¤ò »ÈÍѤ¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

¥Í¥Ã¥È¥ï¡¼¥¯¤Ø¤ÎÀܳ¤ÎÎɹ¥¤Ê FTP/HTTP ¥µ¥¤¥È¤ò ¸«¤Ä¤±¤ë¤³¤È¤¬¤Ç¤­¤Ê¤«¤Ã¤¿¤ê¡¢Æ¬¤Ë¤¯¤ë¤è¤¦¤ÊÈóɸ½àŪ¤Ê·Á¼°¤·¤« ÃÖ¤¤¤Æ¤¤¤Ê¤¤¥µ¥¤¥È¤·¤«¸«¤Ä¤±¤é¤ì¤Ê¤¤¤È¤­¤Ë¤Ï¡¢ ¼«Ê¬¤Î´ÉÍý²¼¤Ë¤¢¤ê¿®Íê¤Ç¤­¤ë FTP ¥µ¡¼¥Ð¤ä HTTP ¥µ¡¼¥Ð (¤¿¤È¤¨¤Ð¡¢¤¢¤Ê¤¿¼«¿È¤Î¥Û¡¼¥à¥Ú¡¼¥¸) ¤ËÃÖ¤¯¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ ¤¢¤Ê¤¿¤¬Áª¤ó¤À¥µ¡¼¥Ð¤¬ MASTER_SITES ¤Ë Àµ¤·¤¯È¿±Ç¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£

¤½¤Î¤è¤¦¤ÊÊØÍø¤«¤Ä¿®Íê¤Î¤ª¤±¤ëÃÖ¤­¾ì½ê¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¡¢ ²æ¡¹¤¬ ftp.FreeBSD.org ¤Ë ``ÃÖ¤­¾ì½ê''¤òÄ󶡤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ ÇÛÉÛ¥Õ¥¡¥¤¥ë¤Ï¡¢Ã¯¤«¤Î freefall ¥¢¥«¥¦¥ó¥È¤Î ~/public_distfiles/ ¤ËÃÖ¤«¤ì¤ë¤³¤È¤Ç¤·¤ç¤¦¡£ ¤½¤Î port ¤ò¥³¥ß¥Ã¥È¤¹¤ë¿Í¤Ë¡¢ÃÖ¤¤¤Æ¤â¤é¤¨¤ë¤è¤¦¤ËÍê¤ó¤Ç¤¯¤À¤µ¤¤¡£ ¤½¤Î¿Í¤ÏÇÛÉÛ¥Õ¥¡¥¤¥ë¤òÃÖ¤¤¤Æ¡¢MASTER_SITES ¤ò MASTER_SITE_LOCAL ¤Ë¥»¥Ã¥È¤·¡¢ MASTER_SITE_SUBDIR ¤Ë¤Ï ¼«Ê¬¤Î freefall ¥æ¡¼¥¶Ì¾¤ò Æþ¤ì¤Æ¤ª¤¤¤Æ¤¯¤ì¤ë¤Ç¤·¤ç¤¦¡£

¤½¤Î port ¤ÎÇÛÉÛ¥Õ¥¡¥¤¥ë¤¬ÆÃ¤ËÍýͳ¤â¤Ê¤¯ ¤·¤ç¤Ã¤Á¤å¤¦ÊѤï¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤ÎÇÛÉÛ¥Õ¥¡¥¤¥ë¤ò ¤¢¤Ê¤¿¤Î¥Û¡¼¥à¥Ú¡¼¥¸¤ËÃÖ¤¤¤Æ¡¢MASTER_SITES ¤Î ºÇ½é¤Ë»ØÄꤹ¤ë¤³¤È¤â¹Í¤¨¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£ ¤½¤¦¤¹¤ì¤Ð¡¢¥æ¡¼¥¶¤¬ checksum mismatch ¥¨¥é¡¼¤Ë Ǻ¤Þ¤µ¤ì¤ë¤³¤È¤â¤Ê¤¯¤Ê¤ê¤Þ¤¹¤·¡¢FreeBSD ¤Î FTP ¥µ¥¤¥È¤Î ÊݼéôÅö¼Ô¤ÎÉéô¤â¸º¤é¤¹¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ ¤Þ¤¿¡¢¤½¤Î port ¤Ë¥Þ¥¹¥¿¡¼¥µ¥¤¥È¤¬°ì¤Ä¤·¤«Â¸ºß¤·¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢ ¤¢¤Ê¤¿¤Î¥µ¥¤¥È¤Ë¥Ð¥Ã¥¯¥¢¥Ã¥×¤òÃÖ¤­¡¢ ¤½¤ì¤ò MASTER_SITES ¤Î 2 ÈÖÌÜ¤Ë »ØÄꤹ¤ë¤ÈÎɤ¤¤Ç¤·¤ç¤¦¡£

¤½¤Î port ¤¬¥¤¥ó¥¿¡¼¥Í¥Ã¥È¾å¤ÇÆþ¼ê¤Ç¤­¤ëÄɲåѥåÁ¤ò ɬÍפȤ¹¤ë¤Î¤Ê¤é¡¢¤½¤ì¤â¼è¤Ã¤Æ¤­¤Æ DISTDIR ¤ËÃÖ¤¤¤Æ¤¯¤À¤µ¤¤¡£ ¤½¤ì¤é¤¬¥á¥¤¥ó¤Î¥½¡¼¥¹¤Î tar ¥Õ¥¡¥¤¥ë¤È¤ÏÊ̤Υµ¥¤¥È¤Ë ¤¢¤Ã¤¿¤È¤·¤Æ¤â¡¢¿´ÇÛ¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£ ¤½¤Î¤è¤¦¤Ê¾õ¶·¤Ë¤â ¤Á¤ã¤ó¤ÈÂбþ¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹ (¸å½Ò¤Î PATCHFILES ¤Îµ­½Ò¤ò ¤´Í÷¤¯¤À¤µ¤¤)¡£


3.3 port ¤Î½¤Àµ

ºî¶ÈÍѤΥǥ£¥ì¥¯¥È¥ê¤Ë tar ¥Õ¥¡¥¤¥ë¤òŸ³«¤·¡¢ ºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤Î FreeBSD ¾å¤ÇÀµ¤·¤¯¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¿¤á¤ËɬÍפʡ¢ ¤¢¤é¤æ¤ëÊѹ¹¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£ ¤³¤Î½èÍý¤ÏºÇ½ªÅª¤Ë¼«Æ°²½¤¹¤ë¤ï¤±¤Ç¤¹¤«¤é¡¢ ²¿¤ò¹Ô¤Ê¤Ã¤¿¤«¤òÃí°Õ¿¼¤¯µ­Ï¿¤·¤Æ¤ª¤­¤Þ¤·¤ç¤¦¡£ ¤³¤Î port ¤¬´°À®¤·¤¿¶Ç¤Ë¤Ï¡¢¥Õ¥¡¥¤¥ë¤Îºï½ü¡¢Äɲᢠ½¤Àµ¤ò´Þ¤à¤¹¤Ù¤Æ¤Î½èÍý¤¬¼«Æ°²½¤µ¤ì¤¿¥¹¥¯¥ê¥×¥È¤ä ¥Ñ¥Ã¥Á¥Õ¥¡¥¤¥ë¤Ç¹Ô¤Ê¤¨¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£

¤½¤Î port ¤Î¥³¥ó¥Ñ¥¤¥ë¤ä¥¤¥ó¥¹¥È¡¼¥ë¤Î¤¿¤á¤ËɬÍפʼêºî¶È¤¬ ¤¢¤Þ¤ê¤Ë¿¤¤¤è¤¦¤Ê¤é¤Ð¡¢Larry Wall ¤Î·Ý½ÑŪ¤Ê Configure ¥¹¥¯¥ê¥×¥È¤ò »²¹Í¤Ë¤·¤¿¤Û¤¦¤¬Îɤ¤¤«¤â¤·¤ì¤Þ¤»¤ó¡£ ¿·¤·¤¤ ports collection ¤Ï¡¢¥¨¥ó¥É¥æ¡¼¥¶¤Ë¤È¤Ã¤Æ¸Ä¡¹¤Î port ¤¬ ²Äǽ¤Ê¸Â¤ê``¥×¥é¥° & ¥×¥ì¥¤''¤«¤Ä ºÇ¾®¤Î¥Ç¥£¥¹¥¯¾ÃÈñ¤Ç make ¤Ç¤­¤ë¤³¤È¤òÌܻؤ·¤Æ¤¤¤Þ¤¹¡£

Note: ÌÀ¼¨Åª¤Ëµ­½Ò¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤ò½ü¤­¡¢¤¢¤Ê¤¿¤¬ºîÀ®¤·¤Æ FreeBSD ¤Î ports collection ¤Ë´óÉÕ¤·¤¿¥Ñ¥Ã¥Á¥Õ¥¡¥¤¥ë¡¢ ¥¹¥¯¥ê¥×¥È¤ª¤è¤Ó¤½¤Î¾¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢É¸½àŪ¤Ê BSD ¤Î Ãøºî¸¢¾ò·ï¤Ë¤è¤ê¥«¥Ð¡¼¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤È¸«¤Ê¤µ¤ì¤Þ¤¹¡£


3.4 ¥Ñ¥Ã¥Á¤ÎŬÍÑ

port ¤Î½àÈ÷Ãʳ¬¤ÇÄɲ䵤줿¤êÊѹ¹¤µ¤ì¤¿¤ê¤·¤¿¥Õ¥¡¥¤¥ë¤Ï¡¢ ºÆµ¢Åª diff ¤Ë¤è¤ê¥Ñ¥Ã¥Á¥Õ¥¡¥¤¥ë²½¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¥Ñ¥Ã¥Á¤ÏŬÅö¤Ë¤Þ¤È¤á¤Æ patch-* ¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤ËÆþ¤ì¤Æ¤¯¤À¤µ¤¤¡£ * ¤Ï ¥Ñ¥Ã¥Á¤¬Å¬ÍѤµ¤ì¤ë½çÈÖ¤ò¼¨¤·¤Þ¤¹ -- ¤³¤ì¤é¤Ï ¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È½ç¡¢ ¤Ä¤Þ¤ê aa ¤¬ºÇ½é¡¢ ab ¤¬ ¤½¤Î¼¡¤È¤¤¤Ã¤¿½çÈ֤ǽèÍý¤µ¤ì¤Þ¤¹¡£ ¤ªË¾¤ß¤Ê¤é¡¢patch-Imakefile ¤È¤« patch-src-config.h ¤Î¤è¤¦¤Ë¡¢ ¥Ñ¥Ã¥ÁÂоݤΥե¡¥¤¥ë¤Î¥Ñ¥¹Ì¾¤ò¼¨¤¹Ì¾Á°¤ò»È¤¦¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ ¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤Ï PATCHDIR ¤ËÃÖ¤¤¤Æ¤¯¤À¤µ¤¤¡£ ¤½¤¦¤¹¤ì¤Ð¼«Æ°Åª¤ËŬÍѤµ¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ ¤¹¤Ù¤Æ¤Î¥Ñ¥Ã¥Á¤Ï WRKSRC ¤«¤é¤ÎÁêÂХѥ¹¤Ë¤¹¤ë ¤Ù¤­¤Ç¤¹ (Ä̾WRKSRC ¤Ï port ¤Î tar ¥Õ¥¡¥¤¥ë¤¬ Ÿ³«¤µ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ç¡¢make ¤¬¼Â¹Ô¤µ¤ì¤ë¤È¤³¤í¤ÈƱ¤¸¤Ç¤¹)¡£ ½¤Àµ¤ä¥¢¥Ã¥×¥°¥ì¡¼¥É¤òÍÆ°×¤Ë¤¹¤ë¤¿¤á¡¢Ê£¿ô¤Î¥Ñ¥Ã¥Á¤Ç Ʊ¤¸¥Õ¥¡¥¤¥ë¤ò½¤Àµ¤¹¤ë¤Î¤ÏÈò¤±¤Æ¤¯¤À¤µ¤¤ (¤¿¤È¤¨¤Ð¡¢patch-aa ¤È patch-ab ¤¬¶¦¤Ë WRKSRC/foobar.c ¤ò ½¤Àµ¤¹¤ë¤Ê¤É)¡£

RCS ¤Ë¤È¤Ã¤ÆÆÃÊ̤ʰÕÌ£¤ò»ý¤Äʸ»úÎó¤ò¥Ñ¥Ã¥ÁÆâ¤ËÆþ¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ¥Õ¥¡¥¤¥ë¤ò»ä¤¿¤Á¤Î¥½¡¼¥¹¥Ä¥ê¡¼¤ËÆþ¤ì¤ë»þ¡¢ ¤³¤ì¤é¤Îʸ»úÎó¤Ï CVS ¤Ë¤è¤Ã¤Æ½ñ¤­´¹¤¨¤é¤ì¤Æ¤·¤Þ¤¤¡¢ ¸å¤Ç¤Þ¤¿¥Ñ¥Ã¥Á¤ò»È¤ª¤¦¤È¤·¤¿»þ¤Ë¤¦¤Þ¤¯¤¤¤«¤Ê¤¤¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ RCS ʸ»úÎó¤Ï¥É¥ëµ­¹æ ($) ¤Ç°Ï¤Þ¤ì¤Æ¤ª¤ê¡¢ $FreeBSD ¤ä $RCS ¤Ê¤É¤Ç»Ï¤Þ¤ê¤Þ¤¹¡£

diff ¤ÎºÆµ¢ (-r) ¥Õ¥é¥°¤ò»È¤Ã¤ÆºÆµ¢Åª¤Ê¥Ñ¥Ã¥Á¤òºî¤ë¤Î¤ÏÂçÊÑ·ë¹½¤Ê¤Î¤Ç¤¹¤¬¡¢ ¤Ç¤­¾å¤¬¤Ã¤¿¥Ñ¥Ã¥Á¤Ïɬ¤ºÌܤǥÁ¥§¥Ã¥¯¤·¤ÆÍ¾·×¤Ê¥´¥ß¤¬Æþ¤Ã¤Æ¤¤¤Ê¤¤¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤è¤¯¤¢¤ë¤Î¤Ï¥Ð¥Ã¥¯¥¢¥Ã¥×¥Õ¥¡¥¤¥ëƱ»Î¤ÎÊѹ¹ÅÀ¡¢¤¢¤ë¤¤¤Ï Imake ¤ä GNU configure ¤ò»È¤¦¥½¥Õ¥È¥¦¥§¥¢¤Î Makefile ¤ÎÊѹ¹ÅÀ¤¬Æþ¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ê¤É¤Ç¤¹¡£ ¤Þ¤¿ configure.in ¤òÊÔ½¸¤·¤Æ autoconf ¤ò»È¤Ã¤Æ configure ¤òºî¤êľ¤¹¤È¤­¤Ë¤Ï¡¢ configure ¤Î diff ¤Ï´Þ¤á¤º¤Ë (¤½¤ì¤é¤ÏÎɤ¯¿ôÀé¹Ô¤Ë¤ª¤è¤Ö¤³¤È¤¬¤¢¤ê¤Þ¤¹)¡¢ USE_AUTOCONF=yes ¤òÄêµÁ¤·¤Æ configure.in ¤Î diff ¤ò¤È¤Ã¤Æ¤¯¤À¤µ¤¤¡£

¥Õ¥¡¥¤¥ë¤ò¤Þ¤ë¤´¤È¾Ã¤¹¾ì¹ç¤Ë¤Ï¡¢ ¥Ñ¥Ã¥Á¤ò»È¤ï¤º¤Ë post-extract ¥¿¡¼¥²¥Ã¥È¤Ç¾Ã¤¹Êý¤¬´Êñ¤Ç¤¹¡£ ¤Ç¤­¤¢¤¬¤Ã¤¿º¹Ê¬¤ËËþ­¤·¤¿¤é¡¢ ¤½¤ì¤é¤ò¥½¡¼¥¹¤Î¥Õ¥¡¥¤¥ë¤´¤È¤ËÊÌ¡¹¤Î¥Ñ¥Ã¥Á¥Õ¥¡¥¤¥ë¤Ëʬ³ä¤·¤Æ¤¯¤À¤µ¤¤¡£


3.5 ¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó

¥«¥¹¥¿¥Þ¥¤¥º¤Î¤¿¤á¤ËÄɲä·¤¿¤¤¥³¥Þ¥ó¥É¤¬¤¢¤ì¤Ð¡¢ configure ¤È¤¤¤¦Ì¾Á°¤Î¥¹¥¯¥ê¥×¥È¤ËÆþ¤ì¤Æ scripts ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ËÃÖ¤¤¤Æ¤¯¤À¤µ¤¤¡£ ¾å¤Ç½Ò¤Ù¤¿¤è¤¦¤Ë¡¢pre-configure ¤¢¤ë¤¤¤Ï post-configure ¤È¤¤¤¦ Makefile ¥¿¡¼¥²¥Ã¥È¤ä¡¢ ¥¹¥¯¥ê¥×¥È¤Ç½èÍý¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£


3.6 ¥æ¡¼¥¶¤«¤é¤ÎÆþÎϤΰ·¤¤

¤â¤·¡¢¤½¤Î port ¤¬¥Ó¥ë¥É¡¢¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó¡¢¤Þ¤¿¤Ï ¥¤¥ó¥¹¥È¡¼¥ë¤ÎºÝ¤Ë¥æ¡¼¥¶¤«¤é¤ÎÆþÎϤòɬÍפȤ¹¤ë¤Ê¤é¤Ð¡¢ Makefile Ãæ¤Ç IS_INTERACTIVE ¤ò¥»¥Ã¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤Ë¤è¤ê¡¢¥æ¡¼¥¶¤¬´Ä¶­ÊÑ¿ô BATCH ¤ò ¥»¥Ã¥È¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢¤³¤Î port ¤Î½èÍý¤¬¥¹¥­¥Ã¥×¤µ¤ì¤ë¤Î¤Ç ``Ìë´Ö¤Î̵¿Í¥Ó¥ë¥É'' ¤¬¼Â¹Ô²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£ (µÕ¤Ë´Ä¶­ÊÑ¿ô INTERACTIVE ¤¬¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤ë¤È¡¢ ¥æ¡¼¥¶¤«¤é¤ÎÆþÎϤòɬÍפȤ¹¤ë port ¤À¤±¤¬ ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤¹)¡£

¤â¤·¡¢Å¬Àڤʥǥե©¥ë¥ÈÀßÄ꤬¸ºß¤¹¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢ PACKAGE_BUILDING ÊÑ¿ô¤ò¥Á¥§¥Ã¥¯¤·¤Æ¡¢ ¤½¤ì¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï ¥æ¡¼¥¶ÆþÎϤΥ¹¥¯¥ê¥×¥È¤òµ¯Æ°¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤¦¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢²æ¡¹ ports ´ÉÍý¼Ô¤¬ CDROM ¤ä FTP ¤Ë ÃÖ¤¯ package ¤òºîÀ®¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£


Chapter 4 Makefile ¤ÎºîÀ®

Makefile ¤ÎºîÀ®¤ÏÈó¾ï¤Ëñ½ã¤Ç¤¹¡£ ·«¤êÊÖ¤·¤Þ¤¹¤¬¡¢»Ï¤á¤ë¤Þ¤¨¤Ë´û¸¤ÎÎã¤ò¸«¤Æ¤ª¤¯¤³¤È¤ò¿ä¾©¤·¤Þ¤¹¡£ ¤Þ¤¿¡¢¤³¤Î¥Ï¥ó¥É¥Ö¥Ã¥¯¤Ë¤Ï Makefile ¤Î¥µ¥ó¥×¥ë¤¬¤¢¤ê¤Þ¤¹¡£ ¤½¤ì¤ò¸«¤Æ¡¢Makefile Æâ¤ÎÊÑ¿ô¤Î½çÈÖ¤ä ¶õ¹Ô¤òÆþ¤ì¤ë¤È¤³¤í¤Ê¤É¤Î»²¹Í¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤½¤¦¤¹¤ë¤È¾¤Î¿Í¡¹¤Ë¤âÆÉ¤ß¤ä¤¹¤¤¤â¤Î¤È¤Ê¤ê¤Þ¤¹¡£

¤Ç¤Ï¡¢Makefile ¤òÀ߷פ¹¤ë¤È¤­¤Ë ÌäÂê¤È¤Ê¤ë¤È¤³¤í¤ò½ç¤ËÄɤäƸ«¤Æ¤ß¤Þ¤·¤ç¤¦¡£


4.1 ¥ª¥ê¥¸¥Ê¥ë¤Î¥½¡¼¥¹

¥½¡¼¥¹¤Ï foozolix-1.2.tar.gz ¤È¤¤¤Ã¤¿Ì¾Á°¤Î ɸ½àŪ¤Ê gzip ¤µ¤ì¤¿ tar ¥Õ¥¡¥¤¥ë¤Î·Á¼°¤Ç DISTDIR ¤ËÃÖ¤«¤ì¤Æ¤¤¤Þ¤¹¤«? ¤½¤¦¤Ê¤Ã¤Æ¤¤¤ì¤Ð¡¢¼¡¤Î¥¹¥Æ¥Ã¥×¤Ë¿Ê¤á¤Þ¤¹¡£ °Û¤Ê¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢ÊÑ¿ô DISTNAME, EXTRACT_CMD, EXTRACT_BEFORE_ARGS, EXTRACT_AFTER_ARGS, EXTRACT_SUFX, DISTFILES ¤Î¤¦¤Á ¤¤¤¯¤Ä¤«¤ò½ñ¤­´¹¤¨¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ ¤É¤ì¤À¤±Êѹ¹¤·¤Ê¤¤¤È¤¤¤±¤Ê¤¤¤«¤Ï¡¢¤½¤Î port ¤ÎÇÛÉÛ¥Õ¥¡¥¤¥ë¤¬ ¤É¤ÎÄøÅÙɸ½à¤«¤é¤«¤±¤Ï¤Ê¤ì¤Æ¤¤¤ë¤«¤Ë¤è¤ê¤Þ¤¹ (ºÇ¤â¤è¤¯¤¢¤ë¤Î¤Ï gzip ¤Ç¤Ï¤Ê¤¯ÉáÄ̤Πcompress ¥³¥Þ¥ó¥É¤Ç tar ¥Õ¥¡¥¤¥ë¤¬°µ½Ì¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ç¡¢¤½¤Î¤È¤­¤Ï EXTRACT_SUFX=.tar.Z ¤È¤¹¤ë¤À¤±¤Ç¤¹)¡£

ºÇ°­¤Î¾ì¹ç¤Ë¤Ï¡¢¼«Ê¬¤Ç do-extract ¥¿¡¼¥²¥Ã¥È¤òºîÀ®¤·¤Æ¡¢ ¥Ç¥Õ¥©¥ë¥È¤ò¾å½ñ¤­¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ ¤·¤«¤·¡¢¤½¤³¤Þ¤Ç¤¹¤ëɬÍפ¬¤¢¤ë¤³¤È¤Ï¤á¤Ã¤¿¤Ë¤Ê¤¤¤Ç¤·¤ç¤¦¡£


4.2 ̾Á°¤ÎÉÕ¤±Êý

Port ¤Î Makefile ¤Î¤Ï¤¸¤á¤ÎÉôʬ¤Ç port ¤Ë̾Á°¤ò¤Ä¤±¡¢¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤òµ­½Ò¤·¡¢Å¬Àڤʥ«¥Æ¥´¥ê¤ËºÜ¤»¤Þ¤¹¡£


4.2.1 PORTNAME ¤ª¤è¤Ó PORTVERSION

PORTNAME ¤Ë¤Ï port ¤Î̾Á°¤Î´ð´´Éôʬ¤òÆþ¤ì¡¢ PORTVERSION ¤Ë¤Ï port ¤Î¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤òÆþ¤ì¤Þ¤¹¡£


4.2.2 PORTREVISION ¤ª¤è¤Ó PORTEPOCH

4.2.2.1 PORTREVISION

PORTREVISION ÊÑ¿ô¤ÏñĴÁý²Ã¤¹¤ëÃͤǤ¹¡£ PORTVERSION ¤¬Áý²Ã¤·¤¿»þ (¤Ä¤Þ¤ê¡¢ ¿·¤·¤¤¥ª¥Õ¥£¥·¥ã¥ë¥Ù¥ó¥À¡¼¥ê¥ê¡¼¥¹¤¬¹Ô¤Ê¤ï¤ì¤¿»þ) ¤Ë¤Ï ¤¤¤Ä¤Ç¤â 0 ¤Ë¥ê¥»¥Ã¥È¤µ¤ì¤Þ¤¹¡£ ¤Þ¤¿¡¢¤½¤ÎÃͤ¬ 0 ¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï package ̾¤ËÄɲ䵤ì¤Þ¤¹¡£ ¤½¤Î port ¤«¤éºî¤é¤ì¤ë package ¤ÎÆâÍÆ¤ä¹½Â¤¤Ë Â礭¤Ê±Æ¶Á¤òÍ¿¤¨¤ëÊѹ¹¤ò¹Ô¤Ê¤Ã¤¿»þ¤Ë¤Ï¡¢ PORTREVISION ¤òÁý¤ä¤·¤Æ¤¯¤À¤µ¤¤¡£

PORTREVISION ¤ò¾å¤²¤ëɬÍפ¬¤¢¤ëÊѹ¹¤ÎÎã:

  • ¥»¥­¥å¥ê¥Æ¥£¾å¤ÎÀȼåÀ­¤ä¥Ð¥°¤ò½¤Àµ¤¹¤ë¤¿¤á¡¢¤Þ¤¿¤Ï ¤½¤Î port ¤Ë¿·¤·¤¤µ¡Ç½À­¤òÄɲ乤뤿¤á¤Î¥Ñ¥Ã¥Á¤ÎÄɲá£

  • package ¤Î¥³¥ó¥Ñ¥¤¥ë»þ¥ª¥×¥·¥ç¥ó¤ÎÍ­¸ú²½¤ä ̵¸ú²½¤Î¤¿¤á¤Î Makefile ¤ÎÊѹ¹¡£

  • ¥Ñ¥Ã¥­¥ó¥°¥ê¥¹¥È¤ÎÊѹ¹¤ä¡¢package ¤Î¥¤¥ó¥¹¥È¡¼¥ë»þ¤Î µóư¤ÎÊѹ¹ (¤¿¤È¤¨¤Ð¡¢ssh ¤Î¥Û¥¹¥È¥­¡¼¤Î¤è¤¦¤Ê package ¤Î ½é´ü¥Ç¡¼¥¿¤òÀ¸À®¤¹¤ë¥¹¥¯¥ê¥×¥È¤ÎÊѹ¹¤Ê¤É)¡£

  • ¤½¤Î port ¤¬°Í¸¤¹¤ë¶¦Í­¥é¥¤¥Ö¥é¥ê¤Î¥Ð¡¼¥¸¥ç¥ó¤ò ¾å¤²¤ë¾ì¹ç (¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤Î¶¦Í­¥é¥¤¥Ö¥é¥ê¤¬ ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤¿¸å¤Ë¡¢¤½¤Î¥é¥¤¥Ö¥é¥ê¤Ë°Í¸¤·¤Æ¤¤¤¿ ¸Å¤¤ package ¤ò¥¤¥ó¥¹¥È¡¼¥ë¤ò»î¤ß¤ë¾ì¹ç¡¢ ¤½¤Î package ¤Ï¿·¤·¤¤ libfoo.(x+1) ¤Ç¤Ï¤Ê¤¯ ¸Å¤¤ libfoo.x ¤òõ¤½¤¦¤È¤¹¤ë¤¿¤á¡¢¥¤¥ó¥¹¥È¡¼¥ë¤Ë¼ºÇÔ¤·¤Þ¤¹¡£ (ÌõÃí: ¤½¤Î¤¿¤á¡¢PORTREVISION ¤ò¾å¤²¤¿ package ¤ò ºîÀ®¤¹¤ëɬÍפ¬¤¢¤ë¤ï¤±¤Ç¤¹))¡£

  • ¤Ò¤½¤«¤Ë port ÇÛÉÛ¥Õ¥¡¥¤¥ë¤ÎÊѹ¹¤¬¹Ô¤Ê¤ï¤ì¡¢ ¤½¤Îµ¡Ç½¤ËÂ礭¤ÊÊѲ½¤¬¤¢¤Ã¤¿¾ì¹ç¡£ ¤Ä¤Þ¤ê¡¢distinfo ¤Î½¤Àµ¤ò ɬÍפȤ¹¤ë¤è¤¦¤ÊÇÛÉÛ¥Õ¥¡¥¤¥ë¤ÎÊѹ¹¤¬¹Ô¤Ê¤ï¤ì¡¢ ¿·µì¤Î¥Ð¡¼¥¸¥ç¥ó¤Î diff -ru ¤ò¼è¤ë¤È º³ºÙ¤È¤Ï¸À¤¨¤Ê¤¤Êѹ¹¤¬Ç§¤á¤é¤ì¤ë¤Ë¤â¤«¤«¤ï¤é¤º¡¢ ¥ª¥ê¥¸¥Ê¥ë¤Î¥Ð¡¼¥¸¥ç¥óÈֹ椬Êѹ¹¤µ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤«¤é PORTVERSION ¤ÎÊѹ¹¤ÏÆñ¤·¤¤¾ì¹ç¡£

PORTREVISION ¤ò¾å¤²¤ëɬÍפÎ̵¤¤Êѹ¹¤ÎÎã:

  • À¸À®¤µ¤ì¤ë package ¤Ëµ¡Ç½¤ÎÊѲ½¤¬µ¯¤é¤Ê¤¤¤è¤¦¤Ê port ¥¹¥±¥ë¥È¥ó¤Î¥¹¥¿¥¤¥ëÊѹ¹¡£

  • À¸À®¤µ¤ì¤ë package ¤Ë±Æ¶Á¤·¤Ê¤¤¤è¤¦¤Ê MASTER_SITES ¤½¤Î¾¤Î port ¤ËÂФ¹¤ëµ¡Ç½Êѹ¹¡£

  • ¸í¿¢¤Î½¤Àµ¤Ê¤É¤Îº³ºÙ¤ÊÊѹ¹¤Ç¡¢¤½¤Î package ¤Î¥æ¡¼¥¶¤¬ ¥¢¥Ã¥×¥°¥ì¡¼¥É¤òɬÍפȤ¹¤ë¤Û¤É¤Ë¤Ï½ÅÍפǤʤ¤¥Ñ¥Ã¥Á¡£

  • °ÊÁ°¤Ë¤Ï¥³¥ó¥Ñ¥¤¥ë¤¬Ä̤é¤Ê¤«¤Ã¤¿ package ¤ò ¥Ó¥ë¥É²Äǽ¤Ë¤¹¤ë¤¿¤á¤Î½¤Àµ (¤½¤Î port ¤¬°ÊÁ°¤Ë¥Ó¥ë¥É²Äǽ¤À¤Ã¤¿ ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤ª¤¤¤Æ¡¢¤½¤ÎÊѹ¹¤Ë¤è¤ê²¿¤é¤«¤Îµ¡Ç½Åª¤Ê °ã¤¤¤¬È¯À¸¤·¤Ê¤¤¾ì¹ç¤Ë¸Â¤ê¤Þ¤¹)¡£ PORTREVISION ¤Ï package ¤ÎÆâÍÆ¤ò È¿±Ç¤·¤¿¤â¤Î¤Ê¤Î¤Ç¡¢¤½¤Î package ¤¬°ÊÁ°¤Ë¥Ó¥ë¥É²Äǽ¤Ç¤Ê¤±¤ì¤Ð ÆâÍÆ¤ÎÊѹ¹¤â̵¤¤¤¿¤á¡¢PORTREVISION ¤ò Áý¤ä¤¹É¬ÍפϤ¢¤ê¤Þ¤»¤ó¡£

·Ð¸³Åª¤ÊȽÃÇÊýË¡¤È¤·¤Æ¤Ï¡¢¤¢¤ë port ¤Ë¥³¥ß¥Ã¥È¤µ¤ì¤¿Êѹ¹¤¬ (¤½¤ì¤¬¶¯²½¤ä½¤Àµ¤Ë¤è¤ë¤â¤Î¤Ç¤¢¤ì¡¢¿·¤·¤¤ package ¤Ë¤è¤ë ¼Â¼ÁŪ¤Ê¸úǽ¤Ç¤¢¤ì)¡¢¥¢¥Ã¥×¥Ç¡¼¥È¤¹¤ë¤³¤È¤Ë¤è¤ê狼¤¬¤É¤³¤«¤Ç Íø±×¤ò¼õ¤±¤ë¤è¤¦¤Ê²¿¤« ¤«¤É¤¦¤«¼«Ì䤷¤Æ¤ß¤ë¤³¤È¤Ç¤¹¡£ ¤â¤·Åú¤¬¥¤¥¨¥¹¤Ç¤¢¤ì¤Ð¡¢¿·¤·¤¤ package ¤¬ÍøÍѲÄǽ¤Ë¤Ê¤Ã¤¿»ö¼Â¤ò (Î㤨¤Ð pkg_version Åù¤Î) ¼«Æ°²½¥Ä¡¼¥ë¤¬ ¶¯Ä´¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¤è¤¦¤Ë¡¢PORTREVISION ¤ò ¾å¤²¤ë¤Ù¤­¤Ç¤·¤ç¤¦¡£


4.2.2.2 PORTEPOCH

¥½¥Õ¥È¥¦¥§¥¢¤Î¥Ù¥ó¥À¤ä FreeBSD ¤Î port ºîÀ®¼Ô¤Ï¡¢ °ÊÁ°¤Î¤â¤Î¤è¤ê¤â¾®¤µ¤¤¿ô»ú¤Î¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤ò¤Ä¤±¤¿¥½¥Õ¥È¥¦¥§¥¢¤ò ¥ê¥ê¡¼¥¹¤¹¤ë¤È¤¤¤Ã¤¿¡¢²¿¤«Çϼ¯¤²¤¿¤³¤È¤ò¤¹¤ë¤³¤È¤¬»þ¡¹¤¢¤ê¤Þ¤¹¡£ Îã¤ò¤¢¤²¤ë¤È¡¢¤¢¤ë port ¤¬ foo-20000801 ¤«¤é foo-1.0 ¤Ë¤Ê¤ë ¤È¤¤¤Ã¤¿¶ñ¹ç¤Ç¤¹ (¿ô»ú¤È¤·¤Æ¸«¤ë¤È 20000801 ¤Ï 1 ¤è¤ê¤âÂ礭¤¤¤¿¤á¡¢ ´Ö°ã¤Ã¤ÆÁ°¼Ô¤ÎÊý¤¬¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤È¤·¤Æ°·¤ï¤ì¤Æ¤·¤Þ¤¤¤Þ¤¹)¡£

¤³¤Î¤è¤¦¤Ê¾ì¹ç¤Ë¤Ï PORTEPOCH ¥Ð¡¼¥¸¥ç¥ó¤ò Áý¤ä¤·¤Æ¤¯¤À¤µ¤¤¡£ ¾å¤Î¥»¥¯¥·¥ç¥ó 0 ¤ÇÀâÌÀ¤·¤¿¤è¤¦¤Ë¡¢ PORTEPOCH ¤¬¥¼¥í¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢ ¤½¤ì¤¬¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Î¸å¤í¤Ë¤Ä¤±¤é¤ì¤Þ¤¹¡£ PORTEPOCH ¤Ï¸º¤é¤µ¤ì¤¿¤ê¡¢¥¼¥í¤Ë ¥ê¥»¥Ã¥È¤µ¤ì¤ë¤³¤È¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ¤µ¤â¤Ê¤¤¤È¡¢°ÊÁ°¤ËºîÀ®¤µ¤ì¤¿ package ¤È¤ÎÈæ³Ó¤Ë¼ºÇÔ¤¹¤ë (¤Ä¤Þ¤ê¡¢¤½¤Î package ¤¬¸Å¤¯¤Ê¤Ã¤Æ¤¤¤ë¤³¤È¤¬¤ï¤«¤é¤Ê¤¤) ¤¿¤á¤Ç¤¹: ¿·¤·¤¤¥Ð¡¼¥¸¥ç¥óÈÖ¹æ (¾å¤ÎÎã¤Ç¤Ï1.0,1) ¤Ï °ÍÁ³¤È¤·¤ÆÁ°¤Î¥Ð¡¼¥¸¥ç¥óÈÖ¹æ (20000801) ¤è¤ê¤â ¿ô»ú¤È¤·¤Æ¤Ï¾®¤µ¤¤¤Î¤Ç¤¹¤¬¡¢¼«Æ°²½¥Ä¡¼¥ë¤¬ ¥µ¥Õ¥£¥Ã¥¯¥¹ ,1 ¤òÆÃḚ̂·¤¤¤¹¤ë¤³¤È¤Ç¡¢ °ÊÁ°¤Î package ¤Ë¤ÏÌÀ¼¨¤µ¤ì¤Æ¤¤¤Ê¤¤¥µ¥Õ¥£¥Ã¥¯¥¹ ,0 ¤è¤ê¤â¿·¤·¤¤¤³¤È¤¬¤ï¤«¤ê¤Þ¤¹¡£

Âç¿¿ô¤Î ports ¤Ç¤Ï¡¢PORTEPOCH ¤¬ ɬÍפˤʤ뤳¤È¤Ï ¤Þ¤ºÌµ¤¤¤â¤Î¤È¹Í¤¨¤é¤ì¤Æ¤¤¤Þ¤¹¡£ ¤Þ¤¿¡¢Ãí°Õ¿¼¤¯ PORTVERSION ¤ò»ÈÍѤ¹¤ë¤³¤È¤Ç¡¢ ¤½¤Î¥½¥Õ¥È¥¦¥§¥¢¤Î¾­Íè¤Î¥ê¥ê¡¼¥¹¤¬¥Ð¡¼¥¸¥ç¥ó¹½Â¤¤òÊѹ¹¤¹¤ëɬÍפ¬½Ð¤Æ¤­¤¿¾ì¹ç¤Ë¤â¡¢ ¿¤¯¤Î¾ì¹çÁ°¤â¤Ã¤ÆÂбþ¤·¤Æ¤ª¤¯¤³¤È¤¬¤Ç¤­¤ë¤Ç¤·¤ç¤¦¡£ ¤·¤«¤·¡¢``¥¹¥Ê¥Ã¥×¥·¥ç¥Ã¥È''¥ê¥ê¡¼¥¹¤Î¤è¤¦¤Ë¡¢ ¥ª¥Õ¥£¥·¥ã¥ë¤Ê¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤ò»ý¤¿¤Ê¤¤¥Ù¥ó¥À¡¼¥ê¥ê¡¼¥¹¤¬¹Ô¤Ê¤ï¤ì¤¿»þ¤Ë¤Ï¡¢ FreeBSD ÈǤΠport ºî¼Ô¤Ë¤è¤ë¥±¥¢¤¬É¬Íפˤʤê¤Þ¤¹¡£ ¤½¤¦¤¤¤Ã¤¿¥ê¥ê¡¼¥¹¤ËÂФ·¡¢ ¥ê¥ê¡¼¥¹ÆüÉÕ¤ò»È¤Ã¤¿¥é¥Ù¥ë¤òÉÕ¤±¤¿¤¤¤È¤¤¤¦Í¶ÏǤˤ«¤é¤ì¤ë¤³¤È¤¬¤¢¤ë¤Ç¤·¤ç¤¦¤¬¡¢ ¤½¤¦¤¹¤ë¤È¿·¤·¤¤``¥ª¥Õ¥£¥·¥ã¥ë''¥ê¥ê¡¼¥¹¤¬¹Ô¤Ê¤ï¤ì¤¿»þ¤Ë¡¢ ¾å¤ÎÎã¤Ç¼¨¤·¤¿¤è¤¦¤ÊÌäÂ꤬µ¯¤­¤ë¤³¤È¤Ç¤·¤ç¤¦¡£

Î㤨¤Ð¡¢¤¢¤ë¥½¥Õ¥È¥¦¥§¥¢¤Î¥¹¥Ê¥Ã¥×¥·¥ç¥Ã¥È¥ê¥ê¡¼¥¹¤¬ 20000917 ¤Ë¹Ô¤Ê¤ï¤ì¡¢°ÊÁ°¤Î¥Ð¡¼¥¸¥ç¥óÈֹ椬 1.2 ¤À¤Ã¤¿¤È¤¹¤ë¤È¡¢ ¤½¤Î¥¹¥Ê¥Ã¥×¥·¥ç¥Ã¥È¤Î PORTVERSION ¤Ë¤Ï 20000917 ¤Ç¤Ï¤Ê¤¯ 1.2.20000917 ¤«²¿¤«¡¢¤½¤Î¤è¤¦¤ÊÈÖ¹æ¤ò »ØÄꤹ¤ë¤Î¤¬Îɤ¤¤Ç¤·¤ç¤¦¡£ ¤½¤¦¤·¤Æ¤ª¤±¤Ð¡¢Î㤨¤Ð¥Ð¡¼¥¸¥ç¥óÈÖ¹æ 1.3 ¤È¤·¤Æ¸å³¤Î¥ê¥ê¡¼¥¹¤¬ ¹Ô¤Ê¤ï¤ì¤¿¾ì¹ç¤Ë¤â¡¢Âç¾®´Ø·¸¤¬Êø¤µ¤ì¤º¤Ë¤¹¤à¤ï¤±¤Ç¤¹¡£


4.2.2.3 PORTREVISION ¤È PORTEPOCH ¤Î»È¤¤Êý¤ÎÎã

gtkmumble ¤Î port, ¥Ð¡¼¥¸¥ç¥ó 0.10 ¤¬ ports collection ¤Ë¥³¥ß¥Ã¥È¤µ¤ì¤Þ¤¹¡£

PORTNAME=       gtkmumble
PORTVERSION=    0.10

PKGNAME ¤Ï gtkmumble-0.10 ¤Ë¤Ê¤ê¤Þ¤¹¡£

¥í¡¼¥«¥ë¤Ê FreeBSD ¥Ñ¥Ã¥Á¤òɬÍפȤ¹¤ë ¥»¥­¥å¥ê¥Æ¥£¥Û¡¼¥ë¤¬È¯¸«¤µ¤ì¤Þ¤·¤¿¡£ ¤½¤ì¤Ë¹ç¤ï¤»¤Æ PORTREVISION ¤òÁý¤ä¤·¤Þ¤¹¡£

PORTNAME=       gtkmumble
PORTVERSION=    0.10
PORTREVISION=   1

PKGNAME ¤Ï gtkmumble-0.10_1 ¤Ë¤Ê¤ê¤Þ¤¹¡£

¥Ù¥ó¥À¤«¤é 0.2 ¤È¤¤¤¦Èֹ椬¿¶¤é¤ì¤¿ ¿·¥Ð¡¼¥¸¥ç¥ó¤¬¥ê¥ê¡¼¥¹¤µ¤ì¤Þ¤¹ (¤³¤ì¤Ë¤è¤ê¡¢ ºî¼Ô¤Ï 0.10 ¤È¤¤¤¦ÈÖ¹æ¤ò ``0.9 ¤Î¼¡¤È¤¤¤¦°ÕÌ£¤Ç¤Ï¤Ê¤¯''¡¢ ¼ÂºÝ¤Ë¤Ï 0.1.0 ¤Î¤Ä¤â¤ê¤Ç »ÈÍѤ·¤Æ¤¤¤¿¤³¤È¤¬¤ï¤«¤ê¤Þ¤¹ - ¤¢¤é¤é¡¢º£¤µ¤éÃÙ¤¹¤®¤ë)¡£ ¿·¤·¤¤¥Þ¥¤¥Ê¡¼¥Ð¡¼¥¸¥ç¥ó 2 ¤Ï¿ô»ú¤È¤·¤Æ°ÊÁ°¤Î¥Ð¡¼¥¸¥ç¥óÈÖ¹æ 10 ¤è¤ê¾®¤µ¤¤¤Î¤Ç¡¢¶¯À©Åª¤Ë¿·¤·¤¤ package ¤ÎÊý¤ò``¤è¤ê¿·¤·¤¤''¤Èǧ¼±¤µ¤»¤ë¤¿¤á PORTEPOCH ¤òÁý¤ä¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£ ¤³¤ì¤Ï¿·¤·¤¤¥Ù¥ó¥À¡¼¥ê¥ê¡¼¥¹¤Ê¤Î¤Ç¡¢ PORTREVISION ¤Ï 0 ¤Ë¥ê¥»¥Ã¥È (¤Þ¤¿¤Ï Makefile ¤«¤éºï½ü) ¤µ¤ì¤Þ¤¹¡£

PORTNAME=       gtkmumble
PORTVERSION=    0.2
PORTEPOCH=      1

PKGNAME ¤Ï gtkmumble-0.2,1 ¤Ë¤Ê¤ê¤Þ¤¹¡£

¼¡¤Î¥ê¥ê¡¼¥¹¤Ï 0.3 ¤Ç¤¹¡£ PORTEPOCH ¤Ï¸º¾¯¤¹¤ë¤³¤È¤¬Ìµ¤¤¤¿¤á¡¢ º£Å٤ΥС¼¥¸¥ç¥óÊÑ¿ô¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹:

PORTNAME=       gtkmumble
PORTVERSION=    0.3
PORTEPOCH=      1

PKGNAME ¤Ï gtkmumble-0.3,1 ¤Ë¤Ê¤ê¤Þ¤¹¡£

Note: ¤â¤·¡¢¤³¤Î¥¢¥Ã¥×¥°¥ì¡¼¥É¤Ë¤è¤Ã¤Æ PORTEPOCH ¤¬ 0 ¤Ë ¥ê¥»¥Ã¥È¤µ¤ì¤¿¤È¤¹¤ë¤È¡¢3 ¤Ï¿ô»ú¤È¤·¤Æ 10 ¤è¤ê¤â¾®¤µ¤¤¤¿¤á¡¢ gtkmumble-0.10_1 ¤Î package ¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤¿Ã¯¤«¤Ï gtkmumble-0.3 ¤Î package ¤ÎÊý¤¬¿·¤·¤¤¤³¤È¤Ë µ¤¤¬¤Ä¤«¤Ê¤¤¤³¤È¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦¡£


4.2.3 PKGNAMEPREFIX ¤ª¤è¤Ó PKGNAMESUFFIX

Æó¤Ä¤Î¥ª¥×¥·¥ç¥óÊÑ¿ô PKGNAMEPREFIX ¤È PKGNAMESUFFIX ¤Ï¡¢ PORTNAME ¤ª¤è¤Ó PORTVERSION ¤È·ë¹ç¤µ¤ì¡¢ PKGNAME ¤ò ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}-${PORTVERSION} ¤È¤·¤ÆÄêµÁ¤·¤Þ¤¹¡£ ¤³¤Î»þ¡¢Å¬ÀÚ¤Ê package ̾¤òÁª¤Ö¤¿¤á¤Î ¥¬¥¤¥É¥é¥¤¥ó¤Ë±è¤Ã¤Æ¤¤¤ë¤«¤É¤¦¤«¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ ÆÃ¤Ë¡¢PORTVERSION Ãæ¤Ë ¥Ï¥¤¥Õ¥ó (-) ¤ò»ÈÍѤ¹¤ë¤³¤È¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ ¤Þ¤¿¡¢package ̾¤Ë language- ¤â¤·¤¯¤Ï compiled.specifics Éôʬ¤¬ ´Þ¤Þ¤ì¤ë¾ì¹ç¡¢¤½¤ì¤¾¤ì PKGNAMEPREFIX ¤È PKGNAMESUFFIX ¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤é¤ò PORTNAME ¤Î°ìÉô¤È¤·¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£


4.2.4 package ̾¤Ë¤Ä¤¤¤Æ¤Îµ¬Â§

package ¤Î̾Á°¤Ï°Ê²¼¤Î¥ë¡¼¥ë¤Ë¤·¤¿¤¬¤Ã¤Æ¤Ä¤±¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤Ï package ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ò¸«¤ä¤¹¤¯¤¹¤ë¤¿¤á¤Ç¡¢ ̵Ãá½ø¤Ê̾Á°¤¬¤¿¤¯¤µ¤óʤó¤Ç¤¤¤ë¤È¥æ¡¼¥¶¤¬»È¤¤¤Å¤é¤¯¤Ê¤ë¤Î¤Ç¤Ï¤È¤¤¤¦¿´ÇÛ¤«¤é¤Ç¤¹ (FTP ¥µ¥¤¥È¤Ê¤É¤Ë¤Ï¤¿¤¯¤µ¤ó package ¤¬¤¢¤ê¤Þ¤¹¤«¤é¤Í)¡£

package ¤Î̾Á°¤Ï°Ê²¼¤Î¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ¸À¸ì-̾Á°-¥ª¥×¥·¥ç¥ó¥Ð¡¼¥¸¥ç¥ó.ÈÖ¹æ

package ̾¤Ï ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}-${PORTVERSION} ¤È¤¤¤¦¤è¤¦¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ ÊÑ¿ô¤¬¤³¤Î½ñ¼°¤ÈŬ¹ç¤·¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£

  1. FreeBSD ¤Ï¥æ¡¼¥¶¤Î´·¤ì¿Æ¤·¤ó¤À¸À¸ì¤Î¥µ¥Ý¡¼¥È¤ËÎϤòÆþ¤ì¤Æ¤¤¤Þ¤¹¡£ ÆÃÄê¤Î¸À¸ì¤Î¤¿¤á¤Î port ¤Î package ̾¤Ë¤Ï ¸À¸ì- ¤Ë ISO-639 ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¸À¸ì̾¤Îά¾Î¤òÆþ¤ì¤Æ¤¯¤À¤µ¤¤¡£ ¤¿¤È¤¨¤ÐÆüËܸì¤Ê¤é ja¡¢ ¥í¥·¥¢¸ì¤Ê¤é ru¡¢ ¥Ù¥È¥Ê¥à¸ì¤Ê¤é vi¡¢ Ãæ¹ñ¸ì¤Ê¤é zh¡¢ ´Ú¹ñ¸ì¤Ê¤é¤Ð ko¡¢ ¥É¥¤¥Ä¸ì¤Ê¤é de ¤È¤¤¤Ã¤¿¶ñ¹ç¤Ç¤¹¡£

    port ¤¬¤¢¤ë¸À¸ìÃϰè¤ËÆÃ²½¤·¤¿¤â¤Î¤Ç¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢ ¤µ¤é¤ËÆóʸ»ú¤Î¹ñ̾¥³¡¼¥É¤òÉղ䷤Ƥ¯¤À¤µ¤¤¡£ ¤¿¤È¤¨¤Ð¹ç½°¹ñ±Ñ¸ì·÷¤Ï en_US ¤È¤Ê¤ê¡¢ ¥¹¥¤¥¹¤Î¥Õ¥é¥ó¥¹¸ì·÷¤Ï fr_CH ¤È¤Ê¤ê¤Þ¤¹¡£

    ¸À¸ì- Éôʬ¤Ï¡¢ PKGNAMEPREFIX ÊÑ¿ô¤Ë ÄêµÁ¤µ¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£

  2. ̾Á°¤ÎÉôʬ¤ÎºÇ½é¤Îʸ»ú¤Ï ¾®Ê¸»ú¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ (̾Á°¤Î»Ä¤ê¤ÎÉôʬ¤ÏÂçʸ»ú¤ò´Þ¤ó¤Ç¤¤¤Æ¤â¹½¤ï¤Ê¤¤¤¿¤á¡¢ Âçʸ»ú¤ò´Þ¤ó¤À¥½¥Õ¥È¥¦¥§¥¢Ì¾¤òÊÑ´¹¤¹¤ëºÝ¤Îµ¬Â§¤Ï¡¢ ¤¢¤Ê¤¿¼«¿È¤ÎºÛÎ̤ËǤ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£) Perl 5 ¤Î¥â¥¸¥å¡¼¥ë¤Ç¤ÏÀèÆ¬¤Ë p5- ¤òÉÕ¤±¡¢ Æó½Å¥³¥í¥ó (::) ¤Î¥»¥Ñ¥ì¡¼¥¿¤ò¥Ï¥¤¥Õ¥ó (-) ¤ËÃÖ¤­¤«¤¨¤ë½¬´·¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ ¤¿¤È¤¨¤Ð Data::Dumper ¤Ï p5-Data-Dumper ¤Ë¤Ê¤ê¤Þ¤¹¡£ ¤Þ¤¿¡¢¤½¤Î¥½¥Õ¥È¥¦¥§¥¢¤Î̾Á°¤È¤·¤ÆÄ̾ï»È¤ï¤ì¤ë¤â¤Î¤ËÈֹ桢 ¥Ï¥¤¥Õ¥ó¡¢¤¢¤ë¤¤¤Ï²¼Àþ¤¬Æþ¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢ ¤½¤ì¤é¤ò»È¤¦¤³¤È¤â¹½¤¤¤Þ¤»¤ó (kinput2¤Ê¤É)¡£

  3. ¥³¥ó¥Ñ¥¤¥ë»þ¤Ë´Ä¶­ÊÑ¿ô¤ä make ¤Î°ú¿ô¤Ê¤É¤Ç¥Ï¡¼¥É¥³¡¼¥É¤µ¤ì¤¿¥Ç¥Õ¥©¥ë¥È¤òÊѤ¨¤Æ¥³¥ó¥Ñ¥¤¥ë¤Ç¤­¤ë¾ì¹ç¡¢ -compiled.specifics ¤Ë¤½¤Î¥³¥ó¥Ñ¥¤¥ë»þ¤Î¥Ç¥Õ¥©¥ë¥È¤òÆþ¤ì¤Æ¤¯¤À¤µ¤¤ (¥Ï¥¤¥Õ¥ó¤Ï¤¢¤Ã¤Æ¤â¤Ê¤¯¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó)¡£ ÍÑ»æ¤Î¥µ¥¤¥º¡¢¤¢¤ë¤¤¤Ï¥Õ¥©¥ó¥È¤Î²òÁüÅ٤ʤɤ¬¤³¤ì¤Ë¤¢¤¿¤ê¤Þ¤¹¡£

    compiled.specifics Éôʬ¤Ï¡¢ PKGNAMESUFFIX ÊÑ¿ô¤ËÄêµÁ¤µ¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£

  4. ¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤Ï¿ô»ú¤È¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¤«¤é¤Ê¤ê¡¢ ¥Ô¥ê¥ª¥É (.) ¤Ç¶èÀÚ¤ê¤Þ¤¹¡£ ¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¤ÏÆóʸ»ú°Ê¾å³¤±¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£ Í£°ì¤ÎÎã³°¤Ï``¥Ñ¥Ã¥Á¥ì¥Ù¥ë''¤ò°ÕÌ£¤¹¤ëʸ»úÎó pl ¤Ç¡¢ ¤½¤ì°Ê³°¤Ë¥Ð¡¼¥¸¥ç¥óÈֹ椬¤Þ¤Ã¤¿¤¯¤Ä¤¤¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Î¤ß»È¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤â¤·¥½¥Õ¥È¥¦¥§¥¢¤Î¥Ð¡¼¥¸¥ç¥ó¤Ë ``alpha'', ``beta'', ``rc'' ¤ä ``pre'' ¤È¤¤¤Ã¤¿Ê¸»úÎ󤬴ޤޤì¤ë¤Ê¤é¡¢ ¥Ô¥ê¥ª¥É¤Î¸å¤ËºÇ½é¤Î°ìʸ»ú¤ò¤È¤Ã¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤é¤Î¸å¤Ë¡¢¤µ¤é¤Ë¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤¬Â³¤¯¾ì¹ç¤Ë¤Ï¡¢ °ìʸ»ú¤Î¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¤Î¸å¤Ë¥Ô¥ê¥ª¥É¤ò¤Ä¤±¤º¤ËÈÖ¹æ¤ò³¤±¤Þ¤¹¡£

    ¤³¤Î¹Í¤¨Êý¤Ï¡¢ ¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤ò¸«¤Æ´Êñ¤Ë ports ¤òʤ٤é¤ì¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¹¡£ ÆÃ¤Ë¡¢¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤Î³ÆÉôʬ¤¬É¬¤º¥Ô¥ê¥ª¥É¤Ç¶èÀÚ¤é¤ì¤Æ¤¤¤ë¤³¤È¡¢ ¤Þ¤¿ÆüÉÕ¤ÎÉôʬ¤¬¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤Î°ìÉô¤È¤Ê¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï yyyy.mm.dd ¤È¤¤¤¦½ñ¼°¤ò»È¤Ã¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ dd.mm.yyyy ¤ä¡¢2000 ǯÌäÂê¤ËÂбþ¤·¤Æ¤¤¤Ê¤¤ yy.mm.dd ¤È¤¤¤¦½ñ¼°¤ò»È¤Ã¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£

¤Ç¤Ï¡¢DISTNAME¤òÀµ¤·¤¤ PKGNAME ¤Ëľ¤¹Îã¤ò¸«¤Æ¤ß¤Þ¤·¤ç¤¦:

°Ê²¼¤Ï¡¢¥½¥Õ¥È¥¦¥§¥¢¤Îºî¼Ô¤¬·è¤á¤¿Ì¾Á°¤«¤é ŬÀÚ¤Ê package ̾¤ËÊÑ´¹¤¹¤ëÊýË¡¤ò¼¨¤·¤¿ (¼ÂºÝ¤Î) Îã¤Ç¤¹¡£

ÇÛÉÛ̾ PKGNAMEPREFIX PORTNAME PKGNAMESUFFIX PORTVERSION Íýͳ
mule-2.2.2 (¶õ) mule (¶õ) 2.2.2 Êѹ¹¤ÎɬÍפϤ¢¤ê¤Þ¤»¤ó
XFree86-3.3.6 (¶õ) XFree86 (¶õ) 3.3.6 Êѹ¹¤ÎɬÍפϤ¢¤ê¤Þ¤»¤ó
EmiClock-1.0.2 (¶õ) emiclock (¶õ) 1.0.2 ¥×¥í¥°¥é¥à°ì¤Ä¤À¤±¤Î»þ¤Ï¾®Ê¸»ú¤Î¤ß
rdist-1.3alpha (¶õ) rdist (¶õ) 1.3.a alpha ¤Î¤è¤¦¤Êʸ»úÎó¤Ï»È¤¨¤Ê¤¤
es-0.9-beta1 (¶õ) es (¶õ) 0.9.b1 alpha ¤Î¤è¤¦¤Êʸ»úÎó¤Ï»È¤¨¤Ê¤¤
mailman-2.0rc3 (¶õ) mailman (¶õ) 2.0.r3 rc ¤Î¤è¤¦¤Êʸ»úÎó¤Ï»È¤¨¤Ê¤¤
v3.3beta021.src (¶õ) tiff (¶õ) 3.3 ¤Ê¤ó¤Ê¤ó¤Ç¤·¤ç¤¦ ;)
tvtwm (¶õ) tvtwm (¶õ) pl11 ¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤Ïɬ¤ºÉ¬Í×
piewm (¶õ) piewm (¶õ) 1.0 Ʊ¾å
xvgr-2.10pl1 (¶õ) xvgr (¶õ) 2.10.1 pl ¤¬»È¤¨¤ë¤Î¤Ï¡¢ ¾¤Ë¥á¥¸¥ã¡¼/¥Þ¥¤¥Ê¡¼¥Ð¡¼¥¸¥ç¥óÈֹ椬¤Ê¤¤¾ì¹ç¤Î¤ß
gawk-2.15.6 ja- gawk (¶õ) 2.15.6 ÆüËܸì¥Ð¡¼¥¸¥ç¥ó
psutils-1.13 (¶õ) psutils -letter 1.13 ¥³¥ó¥Ñ¥¤¥ë»þ¤ËÍÑ»æ¤Î¥µ¥¤¥º¤ò»ØÄê
pkfonts (¶õ) pkfonts 300 1.0 300dpi¥Õ¥©¥ó¥ÈÍѤΠpackage

¥ª¥ê¥¸¥Ê¥ë¤Î¥½¡¼¥¹¤Ë¤Þ¤Ã¤¿¤¯¥Ð¡¼¥¸¥ç¥ó¾ðÊ󤬸«Åö¤¿¤é¤º¡¢ ¤Þ¤¿¸¶ºî¼Ô¤¬¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤ò¥ê¥ê¡¼¥¹¤¹¤ë²ÄǽÀ­¤¬Ä㤤¤È¤­¤Ë¤Ï¡¢ ¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤È¤·¤Æ 1.0 ¤ò»È¤¨¤Ð¤¤¤¤¤Ç¤·¤ç¤¦ (¾åµ­¤Î piewm ¤ÎÎ㤬¤³¤ì¤Ë¤¢¤¿¤ê¤Þ¤¹)¡£ ¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï¸¶ºî¼Ô¤Ëʹ¤¯¤«¡¢ÆüÉÕ (yyyy.mm.dd) ¤ò»È¤¦¤Ê¤É¤·¤Æ¤¯¤À¤µ¤¤¡£


4.3 ¥«¥Æ¥´¥êʬÎà

4.3.1 CATEGORIES

¥Ñ¥Ã¥±¡¼¥¸¤¬ºîÀ®¤µ¤ì¤ë¤È /usr/ports/packages/All ¤ËÃÖ¤«¤ì¡¢°ì¤Ä°Ê¾å¤Î /usr/ports/packages ¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¥ê¥ó¥¯¤¬Ä¥¤é¤ì¤Þ¤¹¡£ ¤³¤ì¤é¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Î̾¾Î¤Ï¡¢CATEGORIES ÊÑ¿ô¤Ç»ØÄꤵ¤ì¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥æ¡¼¥¶¤¬ FTP ¥µ¥¤¥È¤ä CDROM ¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î»³¤«¤éõ¤·½Ð¤¹¤Î¤òÍÆ°×¤Ë¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¹¡£ ´û¸¤Î¥«¥Æ¥´¥ê¤ò»²¾È¤·¤Æ¡¢ ¤¢¤Ê¤¿¤Î port ¤Ë¤Õ¤µ¤ï¤·¤¤¤â¤Î¤òÁª¤ó¤Ç¤¯¤À¤µ¤¤¡£

¤Þ¤¿¡¢¤³¤Î¥ê¥¹¥È¤Ï¡¢¤½¤Î port ¤¬ ports ¥Ä¥ê¡¼¤Î¤É¤³¤Ë¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤ë¤«¤â·èÄꤷ¤Þ¤¹¡£ ¤³¤³¤ËÊ£¿ô¤Î¥«¥Æ¥´¥ê¤ò»ØÄꤹ¤ë¤È¡¢port ¤Î¥Õ¥¡¥¤¥ë¤ÏºÇ½é¤Î¥«¥Æ¥´¥ê̾¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ËÃÖ¤«¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£ ŬÀڤʥ«¥Æ¥´¥ê¤ÎÁªÂòÊýË¡¤Ë¤Ä¤¤¤Æ¤Ï¥«¥Æ¥´¥êÀá¤ò¤´Í÷¤¯¤À¤µ¤¤¡£

¤¢¤Ê¤¿¤¬ºîÀ®¤·¤¿ port ¤¬¡¢ËÜÅö¤Ë´û¸¤Î¤É¤Î¥«¥Æ¥´¥ê¤Ë¤âÅö¤Æ¤Ï¤Þ¤é¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢ ¿·¤¿¤Ë¥«¥Æ¥´¥ê̾¤òºîÀ®¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ ¤½¤Î¾ì¹ç¡¢¿·¤·¤¤¥«¥Æ¥´¥ê¤òÄ󰯤¹¤ë¥á¡¼¥ë¤ò FreeBSD ports ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È °¸¤ËÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£


4.3.2 ¸½ºß¤Î¥«¥Æ¥´¥ê¤Î¥ê¥¹¥È

¤Þ¤º¡¢¤³¤ì¤¬¸½ºß¤Î port ¤Î¥«¥Æ¥´¥ê¤Î¥ê¥¹¥È¤Ç¤¹¡£ ¥¢¥¹¥¿¥ê¥¹¥¯(*) ¤¬ÉÕ¤¤¤Æ¤¤¤ë¤â¤Î¤Ï²¾ÁÛ (virtual) ¥«¥Æ¥´¥ê¤Ç¤¹ -- ¤³¤ì¤é¤Ë¤ÏÂбþ¤¹¤ë¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤¬ port ¥Ä¥ê¡¼¤Ë¤Ï¤¢¤ê¤Þ¤»¤ó¡£

Note: ²¾ÁÛ¥«¥Æ¥´¥ê¤Ç¤Ê¤¤¤â¤Î¤Ï¡¢ ¤½¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î pkg/COMMENT ¤Ë°ì¹Ô¤Îµ­½Ò¤¬¤¢¤ê¤Þ¤¹ (Îã: archivers/pkg/COMMENT)¡£

¥«¥Æ¥´¥ê ÀâÌÀ
accessibility* ¾ã³²¤ò»ý¤Ã¤¿¥æ¡¼¥¶¤ÎÌò¤ËΩ¤Ä ports
afterstep* AfterStep ¥¦¥£¥ó¥É¥¦¥Þ¥Í¡¼¥¸¥ã¤ò¥µ¥Ý¡¼¥È¤¹¤ë ports
archivers ¥¢¡¼¥«¥¤¥ÖÍѥġ¼¥ë
astro ŷʸ³Ø´ØÏ¢¤Î ports
audio ¥µ¥¦¥ó¥É¤ò¥µ¥Ý¡¼¥È¤¹¤ë ports
benchmarks ¥Ù¥ó¥Á¥Þ¡¼¥¯¥æ¡¼¥Æ¥£¥ê¥Æ¥£
biology À¸Êª³Ø´ØÏ¢¤Î¥½¥Õ¥È¥¦¥§¥¢
cad CAD ¥Ä¡¼¥ë
chinese Ãæ¹ñ¸ì¥µ¥Ý¡¼¥È
comms ÄÌ¿®¥½¥Õ¥È¥¦¥§¥¢¡£¤Û¤È¤ó¤É¤Ï¥·¥ê¥¢¥ë¥Ý¡¼¥ÈÍѤǤ¹¡£
converters ʸ»ú¥³¡¼¥ÉÊÑ´¹
databases ¥Ç¡¼¥¿¥Ù¡¼¥¹
deskutils ¥³¥ó¥Ô¥å¡¼¥¿¤¬È¯ÌÀ¤µ¤ì¤ë°ÊÁ°¤Ë´ù¾å¤Ç»È¤ï¤ì¤Æ¤¤¤¿Æ»¶ñ (ÌõÃí: ¤¤¤ï¤æ¤ë¥Ç¥¹¥¯¥È¥Ã¥×¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Î¤³¤È)
devel ³«È¯¥æ¡¼¥Æ¥£¥ê¥Æ¥£¡£ ¤É¤¦¤·¤Æ¤â¤³¤³¤ËÃÖ¤«¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤Íýͳ¤¬¤¢¤ë¤Î¤Ç¤Ê¤¤¸Â¤ê¡¢ ¥é¥¤¥Ö¥é¥ê¤ò¤³¤³¤Ë´Þ¤á¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
editors °ìÈÌŪ¤Ê¥¨¥Ç¥£¥¿¡£ ÆÃ¼ì¤Ê¥¨¥Ç¥£¥¿¤Ï¤½¤ì¤¾¤ì¤Õ¤µ¤ï¤·¤¤¥»¥¯¥·¥ç¥ó¤ËÆþ¤ì¤Þ¤¹ (¤¿¤È¤¨¤Ð¿ô¼°¥¨¥Ç¥£¥¿¤Ï math ¤Ç¤¹)¡£
elisp Emacs-lisp ¤Î ports
emulators ¾¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Î¥¨¥ß¥å¥ì¡¼¥¿¡£ üËö¥¨¥ß¥å¥ì¡¼¥¿¤Ï¤³¤³¤Ë´Þ¤Þ¤ì¤Þ¤»¤ó -- X ¥Ù¡¼¥¹¤Î¤â¤Î¤Ï x11 ¤Ë¡¢ ¥Æ¥­¥¹¥È¥Ù¡¼¥¹¤Î¤â¤Î¤Ïµ¡Ç½¤Ë¤è¤Ã¤Æ comms ¤« misc ¤ËʬÎव¤ì¤Þ¤¹¡£
finance ¶âÍ»¤äºâ̳²ñ·×´ØÏ¢¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡£
french ¥Õ¥é¥ó¥¹¸ì¥µ¥Ý¡¼¥È
ftp FTP ¥¯¥é¥¤¥¢¥ó¥È¤È¥µ¡¼¥Ð¥æ¡¼¥Æ¥£¥ê¥Æ¥£¡£ port ¤¬ FTP ¤È HTTP ¤ÎξÊý¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ì¤Ð¡¢ ftp ¤ËÆþ¤ì¡¢ÂèÆó¥«¥Æ¥´¥ê¤ò www ¤È¤·¤Þ¤¹¡£
games ¥²¡¼¥à
german ¥É¥¤¥Ä¸ì¥µ¥Ý¡¼¥È
gnome* GNU Object Model Environment (GNOME) ¥×¥í¥¸¥§¥¯¥È¤Î ports
graphics ¥°¥é¥Õ¥£¥Ã¥¯¥æ¡¼¥Æ¥£¥ê¥Æ¥£
haskell* Haskell ¸À¸ì´ØÏ¢¤Î¥½¥Õ¥È¥¦¥§¥¢¡£
hebrew ¥Ø¥Ö¥é¥¤¸ì¥µ¥Ý¡¼¥È
hungarian ¥Ï¥ó¥¬¥ê¡¼¸ì¥µ¥Ý¡¼¥È
ipv6* IPv6 ´ØÏ¢¤Î¥½¥Õ¥È¥¦¥§¥¢
irc ¥¤¥ó¥¿¡¼¥Í¥Ã¥È¥ê¥ì¡¼¥Á¥ã¥Ã¥È (IRC) Íѥ桼¥Æ¥£¥ê¥Æ¥£
japanese ÆüËܸ쥵¥Ý¡¼¥È
java Java ¸À¸ì´ØÏ¢¤Î¥½¥Õ¥È¥¦¥§¥¢
kde* K Desktop Environment (kde) ¤Î ports
korean ´Ú¹ñ¸ì¥µ¥Ý¡¼¥È
lang ¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì
linux* Linux ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤È¥µ¥Ý¡¼¥È¥æ¡¼¥Æ¥£¥ê¥Æ¥£
mail ¥á¡¼¥ë¥½¥Õ¥È¥¦¥§¥¢
math ¿ôÃÍ·×»»¥½¥Õ¥È¥¦¥§¥¢¤ä¤½¤Î¾¤Î¿ô³Ø¥½¥Õ¥È¥¦¥§¥¢
mbone MBone ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó
misc ¼ï¡¹¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£ -- ´ðËÜŪ¤Ë¾¤Î¥«¥Æ¥´¥ê¤Ë°¤µ¤Ê¤¤¤â¤Î¤Ç¤¹¡£ ¤³¤ì¤Ï¾¤Î²¾ÁۤǤʤ¤¥«¥Æ¥´¥ê¤òȼ¤ï¤Ê¤¤¡¢Í£°ì¤Î¥«¥Æ¥´¥ê¤Ç¤¹¡£ misc ¤È¾¤Î¥«¥Æ¥´¥ê¤¬ CATEGORIES ¹Ô¤Ë½ñ¤«¤ì¤Æ¤¤¤ë¾ì¹ç¡¢ misc ¤òºï½ü¤·¤ÆÂ¾¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤ª¤¤¤ÆÎɤ¤¤È¤¤¤¦°ÕÌ£¤Ë¤Ê¤ê¤Þ¤¹¡£
multimedia ¥Þ¥ë¥Á¥á¥Ç¥£¥¢¥½¥Õ¥È¥¦¥§¥¢
net ¼ï¡¹¤Î¥Í¥Ã¥È¥ï¡¼¥¯¥½¥Õ¥È¥¦¥§¥¢
news USENET ¥Ë¥å¡¼¥¹¥½¥Õ¥È¥¦¥§¥¢
offix* OffiX suite ¤Î ports
palm Palm(tm) ¥·¥ê¡¼¥º¤ò¥µ¥Ý¡¼¥È¤¹¤ë¥½¥Õ¥È¥¦¥§¥¢
parallel* ÊÂÎó·×»»¤ò¹Ô¤¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó
perl5* ¼Â¹Ô¤Ë perl ¥Ð¡¼¥¸¥ç¥ó 5 ¤òɬÍפȤ¹¤ë ports
picobsd PicoBSD ¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤¿¤á¤Î ports
plan9* Plan9 ¤ËͳÍ褹¤ë¤µ¤Þ¤¶¤Þ¤Ê¥½¥Õ¥È¥¦¥§¥¢
portuguese ¥Ý¥ë¥È¥¬¥ë¸ì¥µ¥Ý¡¼¥È
print °õºþ¥½¥Õ¥È¥¦¥§¥¢¡£ DTP Íѥġ¼¥ë (¥×¥ì¥Ó¥å¥¢¤Ê¤É) ¤â¤³¤³¤ËʬÎव¤ì¤Þ¤¹¡£
python* Python ¸À¸ì´ØÏ¢¤Î¥½¥Õ¥È¥¦¥§¥¢
ruby* Ruby ¸À¸ì´ØÏ¢¤Î¥½¥Õ¥È¥¦¥§¥¢
russian ¥í¥·¥¢¸ì¥µ¥Ý¡¼¥È
science astro ¤ä biology, math Åù¡¢Â¾¤Î¥«¥Æ¥´¥ê¤Ë¤Ï ¤¢¤Æ¤Ï¤Þ¤é¤Ê¤¤²Ê³Ø´ØÏ¢¤Î ports
security ¥»¥­¥å¥ê¥Æ¥£´ØÏ¢¤Î¥æ¡¼¥Æ¥£¥ê¥Æ¥£
shells ¥³¥Þ¥ó¥É¥é¥¤¥ó¥·¥§¥ë
sysutils ¥·¥¹¥Æ¥à¥æ¡¼¥Æ¥£¥ê¥Æ¥£
tcl76* ¼Â¹Ô¤Ë Tcl ¥Ð¡¼¥¸¥ç¥ó 7.6 ¤òɬÍפȤ¹¤ë ports
tcl80* ¼Â¹Ô¤Ë Tcl ¥Ð¡¼¥¸¥ç¥ó 8.0 ¤òɬÍפȤ¹¤ë ports
tcl81* ¼Â¹Ô¤Ë Tcl ¥Ð¡¼¥¸¥ç¥ó 8.1 ¤òɬÍפȤ¹¤ë ports
tcl82* ¼Â¹Ô¤Ë Tcl ¥Ð¡¼¥¸¥ç¥ó 8.2 ¤òɬÍפȤ¹¤ë ports
tcl83* ¼Â¹Ô¤Ë Tcl ¥Ð¡¼¥¸¥ç¥ó 8.3 ¤òɬÍפȤ¹¤ë ports
textproc ¥Æ¥­¥¹¥È½èÍý¥æ¡¼¥Æ¥£¥ê¥Æ¥£¡£ DTP ¥Ä¡¼¥ë¤Ï¤³¤³¤Ç¤Ï¤Ê¤¯¡¢print ¤ËʬÎव¤ì¤Þ¤¹¡£
tk42* ¼Â¹Ô¤Ë Tk ¥Ð¡¼¥¸¥ç¥ó 4.2 ¤òɬÍפȤ¹¤ë ports
tk80* ¼Â¹Ô¤Ë Tk ¥Ð¡¼¥¸¥ç¥ó 8.0 ¤òɬÍפȤ¹¤ë ports
tk81* ¼Â¹Ô¤Ë Tk ¥Ð¡¼¥¸¥ç¥ó 8.1 ¤òɬÍפȤ¹¤ë ports
tk82* ¼Â¹Ô¤Ë Tk ¥Ð¡¼¥¸¥ç¥ó 8.2 ¤òɬÍפȤ¹¤ë ports
tk83* ¼Â¹Ô¤Ë Tk ¥Ð¡¼¥¸¥ç¥ó 8.3 ¤òɬÍפȤ¹¤ë ports
tkstep80* ¼Â¹Ô¤Ë TkSTEP ¥Ð¡¼¥¸¥ç¥ó 8.0 ¤òɬÍפȤ¹¤ë ports
ukrainian ¥¦¥¯¥é¥¤¥Ê¸ì¥µ¥Ý¡¼¥È
vietnamese ¥Ù¥È¥Ê¥à¸ì¥µ¥Ý¡¼¥È
windowmaker* WindowMaker ¥¦¥£¥ó¥É¥¦¥Þ¥Í¡¼¥¸¥ã¤ò¥µ¥Ý¡¼¥È¤¹¤ë ports
www World Wide Web ´ØÏ¢¤Î¥½¥Õ¥È¥¦¥§¥¢¡£ HTML ¸À¸ì¥µ¥Ý¡¼¥È¤â¤³¤³¤ËʬÎव¤ì¤Þ¤¹¡£
x11 X ¥¦¥£¥ó¥É¥¦¥·¥¹¥Æ¥à¤È¤½¤Î´ØÏ¢¥½¥Õ¥È¥¦¥§¥¢¡£ ¤³¤Î¥«¥Æ¥´¥ê¤Ï¡¢ ľÀÜ¥¦¥£¥ó¥É¥¦¥·¥¹¥Æ¥à¤ò¥µ¥Ý¡¼¥È¤¹¤ë¥½¥Õ¥È¥¦¥§¥¢¤Î¤ß¤òÂоݤȤ¹¤ë¤â¤Î¤Ç¤¹¡£ Ä̾ï¤Î X ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¤³¤³¤ËʬÎष¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£ ¤¢¤Ê¤¿¤Î port ¤¬ X ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¡¢ USE_XLIB ¤¬ÄêµÁ (USE_IMAKE ¤òÄêµÁ¤¹¤ë¤È¼«Æ°Åª¤ËÄêµÁ¤µ¤ì¤Þ¤¹) ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢Å¬Àڤʥ«¥Æ¥´¥ê¤ËʬÎष¤Æ¤¯¤À¤µ¤¤¡£ ¤Þ¤¿¡¢¤½¤ì¤é¤Î¤Û¤È¤ó¤É¤Ï¾¤Î x11-* ¥«¥Æ¥´¥ê (²¼µ­»²¾È) ¤ËʬÎव¤ì¤Þ¤¹¡£
x11-clocks X11 ÍÑ»þ·×
x11-fm X11 ÍÑ¥Õ¥¡¥¤¥ë¥Þ¥Í¡¼¥¸¥ã
x11-fonts X11 ¥Õ¥©¥ó¥È¤È¥Õ¥©¥ó¥È¥æ¡¼¥Æ¥£¥ê¥Æ¥£
x11-servers X11 ¥µ¡¼¥Ð
x11-toolkits X11 ¥Ä¡¼¥ë¥­¥Ã¥È
x11-wm X11 ¥¦¥£¥ó¥É¥¦¥Þ¥Í¡¼¥¸¥ã
zope* Zope ¥µ¥Ý¡¼¥È

4.3.3 ŬÀڤʥ«¥Æ¥´¥ê¤ÎÁªÂò

¿¤¯¤Î¥«¥Æ¥´¥ê¤Ë½Å¤Ê¤ë¤Î¤Ç¡¢ ¤É¤ì¤ò``Âè°ì''¥«¥Æ¥´¥ê¤Ë¤¹¤ë¤«¤ò·è¤á¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤³¤È¤¬¤¿¤Ó¤¿¤Ó¤¢¤ë¤Ç¤·¤ç¤¦¡£ ¤³¤ì¤ò¤¦¤Þ¤¯·è¤á¤ë¥ë¡¼¥ë¤¬¤¤¤¯¤Ä¤«¤¢¤ê¤Þ¤¹¡£ °Ê²¼¤Ï¤½¤ÎÍ¥Àè½ç¤Î¥ê¥¹¥È¤Ç¡¢Í¥ÀèÅ٤ι⤤¤â¤Î¤«¤éÄ㤤¤â¤Î¤Î½ç¤Ë½ñ¤¤¤Æ¤¢¤ê¤Þ¤¹¡£

  • ¸À¸ìÆÃÍ­¤Î¥«¥Æ¥´¥ê¤¬¤Þ¤ººÇ½é¤Ç¤¹¡£ ¤¿¤È¤¨¤ÐÆüËܸì¤Î X11 ¤Î¥Õ¥©¥ó¥È¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë port ¤Î¾ì¹ç¡¢ CATEGORIES ¹Ô¤Ï japanese x11-fonts ¤È¤Ê¤ë¤Ç¤·¤ç¤¦¡£

  • ¤è¤êÆÃħŪ¤Ê¥«¥Æ¥´¥ê¤¬¡¢ °ìÈÌŪ¤Ê¥«¥Æ¥´¥ê¤è¤êÍ¥À褵¤ì¤Þ¤¹¡£ ¤¿¤È¤¨¤Ð¡¢HTML ¥¨¥Ç¥£¥¿¤Î¾ì¹ç¤Ï www editors ¤È¤Ê¤ê¤Þ¤¹¡£ ¤³¤ì¤òµÕ½ç¤Ë¤Ï¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£ ¤Þ¤¿¡¢ port ¤¬ irc, mail, mbone, news, security, www ¤Î¤¤¤º¤ì¤«¤Ë°¤¹¤ë¾ì¹ç¤Ë¤Ï net ¤ÏɬÍפ¢¤ê¤Þ¤»¤ó¡£

  • x11 ¤òÂèÆó¥«¥Æ¥´¥ê¤Ë¤¹¤ë¤Î¤ÏÂè°ì¥«¥Æ¥´¥ê¤¬¼«Á³¸À¸ì¤Î¾ì¹ç¤Î¤ß¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ÆÃ¤Ë X ¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¤Ï x11 ¤ò»ØÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£

  • Emacs ¤Î¥â¡¼¥É¤Ï¡¢ ¤½¤Î¥â¡¼¥É¤ÇÂбþ¤·¤Æ¤¤¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÈƱ¤¸ ports ¥«¥Æ¥´¥ê¤ËÃÖ¤¯¤è¤¦¤Ë¤·¤Æ¡¢ editors ¤Ë¤ÏÃÖ¤«¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£ Î㤨¤Ð¡¢¤¢¤ë¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤òÊÔ½¸¤¹¤ë¤¿¤á¤Î Emacs ¥â¡¼¥É¤Ï¡¢ lang ¤ËÃÖ¤¯¤Ù¤­¤Ç¤¹¡£

  • ¤â¤·¡¢¤¢¤Ê¤¿¤Î port ¤¬Â¾¤Î¤É¤Î¥«¥Æ¥´¥ê¤Ë¤â°¤·¤Ê¤¤¾ì¹ç¤Ë¤Ï misc ¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

¤â¤·¡¢¤¢¤Ê¤¿¤¬¥«¥Æ¥´¥ê¤Ë¤Ä¤¤¤Æ¼«¿®¤¬»ý¤Æ¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢ ¤½¤Î¤³¤È¤ò send-pr(1) ¤¹¤ë»þ¤Ë½ñ¤­²Ã¤¨¤Æ¤¯¤À¤µ¤¤¡£ ¤½¤¦¤¹¤ì¤Ð¥¤¥ó¥Ý¡¼¥È¤¹¤ëÁ°¤Ë¤½¤ì¤Ë¤Ä¤¤¤ÆµÄÏÀ¤Ç¤­¤Þ¤¹ (¤â¤·¤¢¤Ê¤¿¤¬¥³¥ß¥Ã¥¿¡¼¤Ç¤¢¤ì¤Ð¡¢ ¤½¤Î¤³¤È¤ò FreeBSD ports ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È ¤ËÁ÷¤Ã¤ÆÀè¤ËµÄÏÀ¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤ -- ¿·¤·¤¤ port ¤¬´Ö°ã¤Ã¤¿¥«¥Æ¥´¥ê¤Ë¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤Æ¡¢ ¤¹¤°°Üư¤µ¤ì¤ë¤³¤È¤¬Â¿¤¤¤Î¤Ç)¡£


4.4 ÇÛÉÛ¥Õ¥¡¥¤¥ë

Makefile ¤ÎÂèÆó¤ÎÉôʬ¤Ç¤Ï¡¢ ¤½¤Î port ¤ò¥Ó¥ë¥É¤¹¤ë¤¿¤á¤Ë¥À¥¦¥ó¥í¡¼¥É¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¥Õ¥¡¥¤¥ë¤È¡¢ ¤½¤ì¤ò¤É¤³¤«¤é¥À¥¦¥ó¥í¡¼¥É¤Ç¤­¤ë¤«ÀâÌÀ¤·¤Æ¤¤¤Þ¤¹¡£


4.4.1 DISTNAME

DISTNAME ¤ÏÀ½ºî¼Ô¤¬·è¤á¤¿¥½¥Õ¥È¥¦¥§¥¢¤Î̾Á°¤Ç¤¹¡£ ¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï DISTNAME ¤Ï ${PORTNAME}-${PORTVERSION} ¤Ë¤Ê¤ê¤Þ¤¹¤¬¡¢ ɬÍפ˱þ¤¸¤Æ½ñ¤­´¹¤¨¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ DISTNAME ¤ÏÆó¤Ä¤Î¾ì½ê¤Ç¤·¤«»È¤ï¤ì¤Þ¤»¤ó¡£ °ì¤ÄÌܤÏÇÛÉÛ¥Õ¥¡¥¤¥ë¥ê¥¹¥È (DISTFILES) ¤Î¥Ç¥Õ¥©¥ë¥È ${DISTNAME}${EXTRACT_SUFX} ¤Ç¡¢Æó¤ÄÌܤÏÇÛÉÛ¥Õ¥¡¥¤¥ë¤¬Å¸³«¤µ¤ì¤ë¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê WRKSRC ¤Î¥Ç¥Õ¥©¥ë¥È work/${DISTNAME} ¤Ç¤¹¡£

Note: PKGNAMEPREFIX ¤ä PKGNAMESUFFIX ¤Ï DISTNAME ¤Ë±Æ¶Á¤òÍ¿¤¨¤Þ¤»¤ó¡£ ¤Þ¤¿¡¢¸µ¤Î¥½¡¼¥¹¥¢¡¼¥«¥¤¥Ö¤¬ ${PORTNAME}-${PORTVERSION}${EXTRACT_SUFX} ¤È¤¤¤¦ ̾Á°¤Ç¤Ï¤Ê¤¤¤Î¤Ë¡¢WRKSRC ¤ò work/${PORTNAME}-${PORTVERSION} ¤ÈÀßÄꤷ¤Æ¤¤¤ë¾ì¹ç¡¢¤ª¤½¤é¤¯ DISTNAME ¤Ï¤½¤Î¤Þ¤Þ¤Ë¤·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤ -- DISTNAME ¤È WRKSRC ¤ÎξÊý¤ò (¤½¤·¤Æ ¤ª¤½¤é¤¯ EXTRACT_SUFX ¤â) ¥»¥Ã¥È¤¹¤ë¤è¤ê¤Ï¡¢DISTFILES ¤òÄêµÁ¤¹¤ëÊý¤¬³Ú¤Ç¤·¤ç¤¦¡£


4.4.2 MASTER_SITES

¸µ¤Ë¤Ê¤ëÇÛÉÛ¥Õ¥¡¥¤¥ë¤ò»Ø¤·¼¨¤¹¡¢FTP/HTTP ¤Î URL ¤Î¥Õ¥¡¥¤¥ë̾¤ò½ü¤¤¤¿Éôʬ¤ò MASTER_SITES ¤ËÀßÄꤷ¤Þ¤¹¡£ ºÇ¸å¤Ë¥¹¥é¥Ã¥·¥å (/) ¤ò¤Ä¤±¤ë¤³¤È¤ò¤ªËº¤ì¤Ê¤¯!

¤³¤Î¥·¥¹¥Æ¥à¾å¤ËÇÛÉÛ¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¾ì¹ç¡¢ make ¥Þ¥¯¥í¤Ï FETCH ¤ò»È¤Ã¤Æ¤³¤ÎÊÑ¿ô¤Ë»ØÄꤵ¤ì¤¿¥µ¥¤¥È¤«¤éÇÛÉÛ¥Õ¥¡¥¤¥ë¤ò¼èÆÀ¤·¤è¤¦¤È¤·¤Þ¤¹¡£

¤³¤Î¥ê¥¹¥È¤Ë¤Ï¡¢ ¤Ç¤­¤ì¤Ð°Û¤Ê¤ëÂçΦ¤Ë¸ºß¤¹¤ëÊ£¿ô¤Î¥µ¥¤¥È¤òÆþ¤ì¤Æ¤ª¤¯¤³¤È¤¬¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ ¤³¤ì¤Ë¤è¤ê¡¢¹­°è¥Í¥Ã¥È¥ï¡¼¥¯¤Î¥È¥é¥Ö¥ë¤ËÂФ¹¤ëÂÑÀ­¤ò¹â¤á¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤µ¤é¤Ë»ä¤¿¤Á¤Ï¡¢¼«Æ°Åª¤ËºÇ¤â¶á¤¤¥Þ¥¹¥¿¥µ¥¤¥È¤òȽÃǤ·¤Æ¡¢ ¤½¤³¤«¤é¼è¤Ã¤Æ¤¯¤ë¥á¥«¥Ë¥º¥à¤ÎƳÆþ¤ò·×²è¤·¤Æ¤¤¤Þ¤¹¡£

¸µ¤Ë¤Ê¤ë tar ¥Õ¥¡¥¤¥ë¤¬ X-contrib ¤ä GNU, Perl CPAN Åù¤Îͭ̾¤Ê¥¢¡¼¥«¥¤¥Ö¥µ¥¤¥È¤ËÃÖ¤«¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢ MASTER_SITE_* ¤ò»È¤Ã¤Æ¤³¤ì¤é¤Î¥µ¥¤¥È¤ò´Ê·é¤Ë (Î㤨¤Ð MASTER_SITE_XCONTRIB ¤È¤«¡¢ MASTER_SITE_PERL_CPAN ¤Î¤è¤¦¤Ë) »ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ MASTER_SITES ¤ò ¤³¤ì¤é¤ÎÊÑ¿ô¤Î°ì¤Ä¤Ë¥»¥Ã¥È¤·¡¢ ¥µ¥¤¥ÈÆâ¤Ç¤Î¥Ñ¥¹¤ò MASTER_SITE_SUBDIR ¤Ë»ØÄꤹ¤ë¤À¤±¤Ç¤¹¡£ °Ê²¼¤ËÎã¤ò¼¨¤·¤Þ¤¹¡£

MASTER_SITES=         ${MASTER_SITE_XCONTRIB}
MASTER_SITE_SUBDIR=   applications

¤³¤ì¤é¤ÎÊÑ¿ô¤Ï /usr/ports/Mk/bsd.sites.mk ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ ¤¤¤Ä¤Ç¤â¿·¤·¤¤¥¢¡¼¥«¥¤¥Ö¥µ¥¤¥È¤¬Äɲ䵤ì¤Þ¤¹¤Î¤Ç¡¢ port ¤òÄó½Ð¤¹¤ëÁ°¤Ë ¤³¤Î¥Õ¥¡¥¤¥ë¤ÎºÇ¿·ÈǤò ¥Á¥§¥Ã¥¯¤¹¤ë¤è¤¦¤Ë¿´³Ý¤±¤Æ¤¯¤À¤µ¤¤¡£

¥æ¡¼¥¶¤Ï /etc/make.conf Ãæ¤Ç MASTER_SITE_* ÊÑ¿ô¤ò¾å½ñ¤­¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ ¤½¤¦¤¹¤ë¤³¤È¤Ç¡¢¤³¤ì¤é¤Îͭ̾¤Ê¥¢¡¼¥«¥¤¥Ö¤½¤Î¤â¤Î¤Ç¤Ï¤Ê¤¯¡¢ ¹¥¤ß¤Î¥ß¥é¡¼¥µ¥¤¥È¤ò»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£


4.4.3 EXTRACT_SUFX

ÇÛÉÛ¥Õ¥¡¥¤¥ë¤¬ 1 ¤Ä¤Ç¡¢ °µ½ÌÊý¼°¤ò¼¨¤¹¤Î¤ËÉáÄ̤ȰۤʤëÀÜÈø¼­¤ò»È¤Ã¤Æ¤¤¤¿¤é¡¢ EXTRACT_SUFX ¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£

Î㤨¤Ð¡¢ÇÛÉÛ¥Õ¥¡¥¤¥ë¤¬¤è¤ê°ìÈÌŪ¤Ê foo.tar.gz ¤Ç¤Ï¤Ê¤¯¡¢ foo.tgz ¤È¤Ê¤Ã¤Æ¤¤¤¿¤é¡¢ ¼¡¤Î¤è¤¦¤Ë½ñ¤­¤Þ¤¹¡£

DISTNAME=      foo
EXTRACT_SUFX=  .tgz

USE_BZIP2 ¤È USE_ZIP ÊÑ¿ô¤òÀßÄꤹ¤ë¤È¡¢EXTRACT_SUFX ¤ÏɬÍפ˱þ¤¸¤Æ¼«Æ°Åª¤Ë .bz2 ¤Þ¤¿¤Ï .zip ¤ËÀßÄꤵ¤ì¤Þ¤¹¡£ ¤É¤Á¤é¤âÀßÄꤵ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢EXTRACT_SUFX ¤Ï .tar.gz ¤ËÀßÄꤵ¤ì¤Þ¤¹¡£

EXTRACT_SUFX ¤È DISTFILES ¤òξÊýÀßÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£


4.4.4 DISTFILES

»þ¡¹¡¢¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¥Õ¥¡¥¤¥ë¤Î̾¾Î¤¬ port ¤Î̾¾Î¤È¤Þ¤Ã¤¿¤¯»÷¤Æ¤¤¤Ê¤¤¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢ source.tar.gz ¤Ê¤É¤È̾¤Å¤±¤é¤ì¤Æ¤¤¤ë¤³¤È¤â¤¢¤ë¤Ç¤·¤ç¤¦¡£ ¤Û¤«¤Ë¡¢¥½¡¼¥¹¥³¡¼¥É¤¬¤¤¤¯¤Ä¤«¤Î¥¢¡¼¥«¥¤¥Ö¤Ëʬ¤«¤ì¤Æ¤¤¤Æ¡¢ ¤½¤Î¤¹¤Ù¤Æ¤ò¥À¥¦¥ó¥í¡¼¥É¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤Ê¤é¤Ê¤¤¤³¤È¤â¤¢¤ê¤Þ¤¹¡£

¤³¤Î¾ì¹ç¡¢DISTFILES ¤Ë¡¢¥À¥¦¥ó¥í¡¼¥É¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¥Õ¥¡¥¤¥ë¤¹¤Ù¤Æ¤Î¥ê¥¹¥È¤ò¡¢ ¥¹¥Ú¡¼¥¹¤Ç¶èÀڤäÆÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£

DISTFILES=     source1.tar.gz source2.tar.gz

ÌÀ¼¨Åª¤ËÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢ DISTFILES ¤Ï ${DISTNAME}${EXTRACT_SUFX} ¤ËÀßÄꤵ¤ì¤Þ¤¹¡£


4.4.5 EXTRACT_ONLY

DISTFILES ¤Î°ìÉô¤À¤±¤òŸ³«¤¹¤Ù¤­ (Î㤨¤Ð¡¢°ìÊý¤¬¥½¡¼¥¹¥³¡¼¥É¤Ç¡¢¤â¤¦°ìÊý¤Ï°µ½Ì¤µ¤ì¤Æ¤¤¤Ê¤¤Ê¸½ñ¤È¤¤¤¦) ¾ì¹ç¡¢Å¸³«¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¥Õ¥¡¥¤¥ë̾¤ò EXTRACT_ONLY ¤ËÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£

DISTFILES=     source.tar.gz manual.html
EXTRACT_ONLY=  source.tar.gz

¤É¤Î DISTFILES ¤âŸ³«¤¹¤Ù¤­¤Ç¤Ï¤Ê¤¤¤Ê¤é¡¢ EXTRACT_ONLY ¤Ë¶õʸ»úÎó¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£

EXTRACT_ONLY=

4.4.6 PATCHFILES

¤½¤Î port ¤¬ÇÛÉÛ¥Õ¥¡¥¤¥ë¤Î¾¤Ë FTP ¤ä HTTP ¤Ç¼ê¤ËÆþ¤ëÄɲåѥåÁ¤òɬÍפȤ¹¤ë¾ì¹ç¤Ë¤Ï¡¢ PATCHFILES ¤Ë¤Ï¤½¤Î¥Ñ¥Ã¥Á¤Î¥Õ¥¡¥¤¥ë̾¤ò¡¢ PATCH_SITES ¤Ë¤Ï¤½¤Î¥Õ¥¡¥¤¥ë¤¬ÃÖ¤«¤ì¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Î URL ¤ò¥»¥Ã¥È¤·¤Æ¤¯¤À¤µ¤¤¡£(½ñ¤­Êý¤Ï MASTER_SITES ¤ÈƱ¤¸¤Ç¤¹¡£)

¤½¤Î¥Ñ¥Ã¥Á¤Ëµ­Ï¿¤µ¤ì¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë̾¤Ë;·×¤Ê¥Ñ¥¹Ì¾¤¬¤Ä¤¤¤Æ¤¤¤Æ¡¢ ¥½¡¼¥¹¥Ä¥ê¡¼¤Î¥È¥Ã¥×¥Ç¥£¥ì¥¯¥È¥ê (¤Ä¤Þ¤ê WKRSRC) ¤«¤é¤ÎÁêÂХѥ¹¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢ ¤½¤ì¤Ë±þ¤¸¤¿ PATCH_DIST_STRIP ¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ ¤¿¤È¤¨¤Ð¡¢¥Ñ¥Ã¥ÁÆâ¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë̾¤ÎÀèÆ¬¤Ë¡¢Í¾·×¤Ê foozolix-1.0/ ¤¬¤Ä¤¤¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢ PATCH_DIST_STRIP=-p1 ¤È¤·¤Æ¤¯¤À¤µ¤¤¡£

¤³¤ì¤é¤Î¥Ñ¥Ã¥Á¤Ï°µ½Ì¤µ¤ì¤Æ¤¤¤Æ¤âÂç¾æÉפǤ¹¡£ ¥Õ¥¡¥¤¥ë̾¤¬ .gz ¤ä .Z ¤Ç½ª¤ï¤ë¾ì¹ç¤Ë¤Ï¡¢¼«Æ°Åª¤ËŸ³«¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£

¤â¤·¥Ñ¥Ã¥Á¤¬¡¢¥É¥­¥å¥á¥ó¥ÈÅù¤½¤Î¾¤Î¥Õ¥¡¥¤¥ë¤È°ì½ï¤Ë gzip ¤µ¤ì¤¿ tar ¥Õ¥¡¥¤¥ë¤ÇÇÛÉÛ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢Ã±¤Ë PATCHFILES ¤ò»È¤¦¤À¤±¤Ç¤Ï¤¦¤Þ¤¯¤¤¤­¤Þ¤»¤ó¡£ ¤³¤Î¤è¤¦¤Ê¾ì¹ç¤Ë¤Ï¡¢¤³¤Î¥Ñ¥Ã¥Á¤Î tar ¥Õ¥¡¥¤¥ë¤Î̾Á°¤È¾ì½ê¤ò DISTFILES ¤È MASTER_SITES ¤ËÄɲ䷤Ƥª¤­¤Þ¤¹¡£ ¤½¤ì¤«¤é¡¢EXTRA_PATCHES ÊÑ¿ô¤Ë¤½¤ì¤é¤Î¥Ñ¥Ã¥Á¤ò»ØÄꤹ¤ì¤Ð¡¢ bsd.port.mk ¤¬ ¼«Æ°Åª¤Ë¥Ñ¥Ã¥Á¤òŬÍѤ·¤Æ¤¯¤ì¤Þ¤¹¡£ ÆÃ¤ËÃí°Õ¤¬É¬ÍפʤΤϡ¢¥Ñ¥Ã¥Á¥Õ¥¡¥¤¥ë¤ò PATCHDIR ¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥³¥Ô¡¼¤·¤Æ¤Ï¤Ê¤é¤Ê¤¤¤³¤È¤Ç¤¹ -- (ÌõÃí: port ¤¬ CD-ROM ¾å¤ËÃÖ¤«¤ì¤Æ¤¤¤ëÅù¤Î¾ì¹ç¤Ë¤Ï¡¢) ¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤Ï½ñ¤­¹þ¤ß¤¬¤Ç¤­¤Ê¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¡£

Note: ¤½¤ì¤¬ÉáÄ̤Πgzip ¤« compress ¤µ¤ì¤¿ tar ¥Õ¥¡¥¤¥ë¤Ç¤¢¤ì¤Ð¡¢ Ä̾ï¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤È°ì½ï¤Ë¥Ñ¥Ã¥ÁŬÍÑ»þ¤Þ¤Ç¤ËŸ³«¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢ ÌÀ¼¨Åª¤ËŸ³«¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£ ¤â¤·¥Ñ¥Ã¥Á¤ò DISTFILES ¤ËÄɲä·¤¿¾ì¹ç¤Ë¤Ï¡¢¥Ñ¥Ã¥Á¤ò´Þ¤à¥Õ¥¡¥¤¥ë¤¬Å¸³«¤µ¤ì¤ëºÝ¤Ë¡¢ ¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ë²¿¤«¤ò¾å½ñ¤­¤·¤Ê¤¤¤è¤¦¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤µ¤é¤Ë¡¢¥³¥Ô¡¼¤µ¤ì¤¿¥Ñ¥Ã¥Á¥Õ¥¡¥¤¥ë¤òºï½ü¤¹¤ë¥³¥Þ¥ó¥É¤ò pre-clean ¥¿¡¼¥²¥Ã¥È¤ËÄɲ乤뤳¤È¤ò˺¤ì¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£


4.4.7 °Û¤Ê¤ë¥µ¥¤¥È¤ä¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤ÎÊ£¿ô¤ÎÇÛÉÛ¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥Ñ¥Ã¥Á (MASTER_SITES:n)

¤³¤ÎÀá¤Ï MASTER_SITES:n ¤ä MASTER_SITES_NN ¤È¸Æ¤Ð¤ì¤ë¼èÆÀÊýË¡¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Æ¤¤¤Þ¤¹¡£ ¤³¤³¤Ç¤Ï¡¢¤³¤ÎÊý¼°¤ò MASTER_SITES:n ¤È¸Æ¤Ó¤Þ¤¹¡£

¤Þ¤º¡¢Çطʤò¾¯¤·ÀâÌÀ¤·¤Æ¤ª¤­¤Þ¤·¤ç¤¦¡£OpenBSD ¤Ë¤Ï¡¢DISTFILES ¤È PATCHFILES ÊÑ¿ô¤ÎξÊý¤ËÁÇŨ¤Êµ¡Ç½¤¬¤¢¤ê¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¡¢¥Ñ¥Ã¥Á¤ÎξÊý¤È¤â¡¢ ¸å¤í¤Ë :n (n ¤Ï [0-9] ¤Î¤É¤ì¤«¤Ë¤Ê¤ê¤Þ¤¹) ¤ò¤Ä¤±¤Æ¥°¥ë¡¼¥×¤ò»Ø¼¨¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢

DISTFILES=      alpha:0 beta:1

OpenBSD ¤Ç¤Ï¡¢ÇÛÉÛ¥Õ¥¡¥¤¥ë alpha ¤Ï¡¢Ä̾ï¤Î MASTER_SITES ¤Ç¤Ï¤Ê¤¯ MASTER_SITES0 ¤Ë¡¢ beta ¤Ï MASTER_SITES1 ¤Ë·ë¤ÓÉÕ¤±¤é¤ì¤Þ¤¹¡£

¤³¤ì¤Ï¡¢Àµ¤·¤¤¥À¥¦¥ó¥í¡¼¥É¥µ¥¤¥È¤òºÝ¸Â¤Ê¤¯Ãµ¤¹±©Ìܤˤʤë¤Î¤ò¸º¤é¤»¤ë¡¢ ¶½Ì£¿¼¤¤µ¡Ç½¤Ç¤¹¡£

DISTFILES ¤Ë¥Õ¥¡¥¤¥ë¤¬ 2 ¤Ä»ØÄꤵ¤ì¡¢MASTER_SITES ¤¬ 20 ¥µ¥¤¥È¤¢¤Ã¤Æ¡¢¥µ¥¤¥È¤Ï¤â¤Î¤¹¤´¤¯ÃÙ¤¯¡¢ beta ¤Ï MASTER_SITES Ãæ¤Î¤¹¤Ù¤Æ¤Î¥µ¥¤¥È¤ËÃÖ¤«¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢ alpha ¤Ï 20 ÈÖÌܤΥµ¥¤¥È¤Ë¤·¤«¤Ê¤¤¤È¤¤¤¦¾ì¹ç¤ò¹Í¤¨¤Æ¤¯¤À¤µ¤¤¡£ ¥á¥ó¥Æ¥Ê¤¬¤¢¤é¤«¤¸¤á¤½¤Î¤³¤È¤òÃΤäƤ¤¤¿¤é¡¢ ¤¹¤Ù¤Æ¤Î¥µ¥¤¥È¤ò³Îǧ¤¹¤ë¤Î¤Ï̵Â̤À¤È»×¤¤¤Þ¤»¤ó¤«? ³Ú¤·¤¤½µËö¤Î¤Ï¤¸¤Þ¤ê¤È¤¤¤¦¤ï¤±¤Ë¤Ï¤æ¤­¤Þ¤»¤ó¤Í¡£

¥¤¥á¡¼¥¸¤Ç¤­¤¿¤é¡¢º£ÅÙ¤Ï DISTFILES ¤ä MASTER_SITES ¤¬¤â¤Ã¤ÈÂô»³¤¢¤ë¤Î¤òÁÛÁü¤·¤Æ¤¯¤À¤µ¤¤¡£ ``distfiles Ä´ºº¥Þ¥¤¥¹¥¿''¤Ï¡¢ ¥Í¥Ã¥È¥ï¡¼¥¯Éé²Ù¤¬´ËϤµ¤ì¤ë¤³¤È¤ò´î¤Ö¤Ë°ã¤¤¤¢¤ê¤Þ¤»¤ó¡£

¼¡Àᤫ¤é¤Ï¡¢FreeBSD ¤Ë¤ª¤±¤ë¤³¤Î¥¢¥¤¥Ç¥£¥¢¤Î¼ÂÁõ¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£ OpenBSD ¤Î¹Í¤¨Êý¤ò¿¾¯²þÎɤ·¤Æ¤¤¤Þ¤¹¡£


4.4.7.1 ´Êñ¤ÊÀâÌÀ

¤³¤ÎÀá¤Ç¤Ï¡¢Ê£¿ô¤ÎÇÛÉÛ¥Õ¥¡¥¤¥ë¤ä¥Ñ¥Ã¥Á¤ò¡¢ °Û¤Ê¤ë¥µ¥¤¥È¤ä¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤«¤éºÙ¤«¤¯Ê¬¤±¤Æ¼èÆÀ¤¹¤ë´Êñ¤ÊÀßÄê¤ò¼¨¤·¤Þ¤¹¡£ ¤³¤³¤Ç¤Ï¡¢Ã±½ã²½¤·¤¿ MASTER_SITES:n ¤Î»È¤¤Êý¤òÀâÌÀ¤·¤Þ¤¹¡£¤Û¤È¤ó¤É¤Î¾ìÌ̤ǤϤ³¤ì¤Ç½½Ê¬¤Ç¤¹¡£ ¤µ¤é¤Ë¾Ü¤·¤¤¤³¤È¤òÃΤꤿ¤±¤ì¤Ð¡¢¼¡¤ÎÀá¤ò¤ªÆÉ¤ß¤¯¤À¤µ¤¤¡£

¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¤Ï¡¢ ¤¤¤¯¤Ä¤â¤Î°Û¤Ê¤ë¥µ¥¤¥È¤«¤é¥À¥¦¥ó¥í¡¼¥É¤¹¤ëÊ£¿ô¤ÎÇÛÉÛ¥Õ¥¡¥¤¥ë¤«¤é¤Ê¤Ã¤Æ¤¤¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£ ¤¿¤È¤¨¤Ð¡¢Ghostscript ¤Ï¡¢Ãæ³ËÉô¤Î¥×¥í¥°¥é¥à¤È¡¢ ¥æ¡¼¥¶¤Î¥×¥ê¥ó¥¿¤Ë±þ¤¸¤Æ»È¤¤Ê¬¤±¤é¤ì¤ë¿¿ô¤Î¥É¥é¥¤¥Ð¥Õ¥¡¥¤¥ë¤«¤é¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ ¤³¤Î¥É¥é¥¤¥Ð¥Õ¥¡¥¤¥ë¤Î°ìÉô¤ÏÃæ³ËÉô¤È¶¦¤ËÇÛÉÛ¤µ¤ì¤Þ¤¹¤¬¡¢ ¿¤¯¤Ï¤µ¤Þ¤¶¤Þ¤Ê¥µ¥¤¥È¤«¤é¥À¥¦¥ó¥í¡¼¥É¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£

¤³¤ì¤ËÂбþ¤¹¤ë¤¿¤á¡¢DISTFILES ¤Î³Æ¹àÌܤθå¤í¤Ë¤Ï¡¢¥³¥í¥ó¤È``¥¿¥°Ì¾'' ¤ò¤Ä¤±¤é¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£MASTER_SITES ¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¤½¤ì¤¾¤ì¤Î¥µ¥¤¥È¤ÎËöÈø¤Ë¤â¡¢¥³¥í¥ó¤È¡¢ ¤½¤Î¥µ¥¤¥È¤«¤é¥À¥¦¥ó¥í¡¼¥É¤¹¤Ù¤­¥Õ¥¡¥¤¥ë¤ò¼¨¤¹¤¿¤á¤Î¥¿¥°¤ò²Ã¤¨¤Þ¤¹¡£

¤¿¤È¤¨¤Ð¡¢¥½¡¼¥¹¥³¡¼¥É¤¬ source1.tar.gz ¤È source2.tar.gz ¤Î 2 ¤Ä¤Ëʬ¤±¤é¤ì¤Æ¤¤¤Æ¡¢ 2 ¤Ä¤ÎÊ̤Υµ¥¤¥È¤«¤é¥À¥¦¥ó¥í¡¼¥É¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¹Í¤¨¤Æ¤ß¤Þ¤·¤ç¤¦¡£ ¤½¤Î port ¤Î Makefile ¤Ë¤Ï¡¢Example 4-1 ¤Î¤è¤¦¤Ê¹Ô¤¬¤¢¤ë¤È¤·¤Þ¤¹¡£

Example 4-1. ³Æ¥µ¥¤¥È¤Ë 1 ¤Ä¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¾ì¹ç¤Î¡¢´Êñ¤Ê MASTER_SITES:n ¤Î»ÈÍÑË¡

MASTER_SITES=   ftp://ftp.example1.com/:source1 \
                ftp://ftp.example2.com/:source2
DISTFILES=      source1.tar.gz:source1 \
                source2.tar.gz:source2

Ê£¿ô¤ÎÇÛÉÛ¥Õ¥¡¥¤¥ë¤ËƱ¤¸¥¿¥°¤¬¤Ä¤¤¤Æ¤¤¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£ Àè¤Û¤É¤ÎÎã¤Ë³¤¤¤Æ¡¢3 ÈÖÌܤÎÇÛÉÛ¥Õ¥¡¥¤¥ë source3.tar.gz ¤¬¤¢¤Ã¤Æ¡¢ ftp.example2.com ¤«¤é¥À¥¦¥ó¥í¡¼¥É¤¹¤Ù¤­¤À¤È¤·¤Þ¤·¤ç¤¦¡£ Makefile ¤Ï Example 4-2 ¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

Example 4-2. ³Æ¥µ¥¤¥È¤Ë 1 ¤Ä°Ê¾å¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¾ì¹ç¤Î¡¢´Êñ¤Ê MASTER_SITES:n ¤Î»ÈÍÑË¡

MASTER_SITES=   ftp://ftp.example1.com/:source1 \
                ftp://ftp.example2.com/:source2
DISTFILES=      source1.tar.gz:source1 \
                source2.tar.gz:source2 \
                source3.tar.gz:source2

4.4.7.2 ¾Ü¤·¤¤ÀâÌÀ

ʬ¤«¤ê¤Þ¤·¤¿¡£ Á°Àá¤ÎÎã¤Ç¤Ï¤¢¤Ê¤¿¤ÎÍ×µá¤òËþ­¤Ç¤­¤Ê¤«¤Ã¤¿¤ï¤±¤Ç¤¹¤Í¡£ ¤³¤ÎÀá¤Ç¤Ï¡¢¥Õ¥¡¥¤¥ë¤Î¼èÆÀ¤òºÙ¤«¤¯À©¸æ¤¹¤ë»ÅÁÈ¤ß MASTER_SITES:n ¤¬¤É¤¦Æ¯¤¯¤«¤È¡¢¤³¤ì¤òÍøÍѤ¹¤ë¤¿¤á¤Ë ports ¤ò¤É¤¦Êѹ¹¤¹¤ì¤Ð¤è¤¤¤«¤ò¾Ü¤·¤¯ÀâÌÀ¤·¤Þ¤¹¡£

  1. Í×ÁǤÎËöÈø¤Ë :n ¤ò¤Ä¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤³¤³¤Ç¡¢n ¤Ï [^:,]+ ¤Ä¤Þ¤ê¡¢³µÇ°¾å¤Ï¤¤¤«¤Ê¤ëʸ»ú¤È¿ô»ú¤«¤é¤Ê¤ëʸ»úÎó¤Ç¤â¤è¤¤¤Î¤Ç¤¹¤¬¡¢ ¤ï¤ì¤ï¤ì¤È¤·¤Æ¤Ï¡¢ÅöÌÌ¤Ï [a-zA-Z_][0-9a-zA-Z_]+ ¤ËÀ©¸Â¤·¤Þ¤¹¡£

    ¤µ¤é¤Ë¡¢Ê¸»úÎó¤Î¥Þ¥Ã¥Á¤ÏÂçʸ»ú¤È¾®Ê¸»ú¤ò¶èÊ̤·¤Þ¤¹¡£ ¤Ä¤Þ¤ê¡¢n ¤È N ¤ÏÊ̤Îʸ»ú¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£

    ¤·¤«¤·¡¢ default, all, ALL ¤ÏÆÃÊ̤ʰÕÌ£¤òÍ¿¤¨¤é¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢ ËöÈø¤ËÉղ乤ë¤Î¤Ë¤Ï»È¤¨¤Þ¤»¤ó (¤³¤ì¤Ï¡¢ii ¹à¤ÇÆâÉôŪ¤ËÍøÍѤµ¤ì¤Æ¤¤¤Þ¤¹)¡£ ¤µ¤é¤Ë¡¢DEFAULT ¤ÏÆÃÊ̤ʰÕÌ£¤ò»ý¤Äñ¸ì¤Ç¤¹ (3 ¤Î¹à¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤)¡£

  2. :n ¤¬¤Ä¤¤¤¿Í×ÁǤϡ¢¥°¥ë¡¼¥× n ¤Ë°¤·¡¢ :m ¤¬¤Ä¤¤¤¿Í×ÁǤϡ¢¥°¥ë¡¼¥× m ¤Ë°¤¹¤ë¤È¤¤¤¦¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£

  3. ÀÜÈø¼­¤¬¤Ä¤¤¤Æ¤¤¤Ê¤¤Í×ÁǤϥ°¥ë¡¼¥×¤Ë°¤·¤Þ¤»¤ó¡£ ¤³¤ì¤Ï¡¢ÆÃÊ̤ʥ°¥ë¡¼¥× DEFAULT ¤Ë°¤·¤Æ¤¤¤ë¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£ Í×ÁǤθå¤í¤Ë DEFAULT ¤ò¤Ä¤±¤ë¤Î¤Ï¡¢¤½¤ÎÍ×ÁǤò DEFAULT ¤È¤½¤ì°Ê³°¤Î¥°¥ë¡¼¥×¤ËƱ»þ¤Ë³ä¤êÅö¤Æ¤¿¤¤¤Î¤Ç¤Ê¤±¤ì¤Ð¡¢ ¾éĹ¤Ë²á¤®¤Þ¤»¤ó (5 ¤Î¹à¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤)¡£

    ¼¡¤ÎÎã¤Ï¤É¤Á¤é¤âƱ¤¸°ÕÌ£¤Ç¤¹¤¬¡¢ ºÇ½é¤ÎÊý¤¬¹¥¤Þ¤·¤¤¤Ç¤¹¡£

    MASTER_SITES=   alpha
    
    MASTER_SITES=   alpha:DEFAULT
    
  4. ¥°¥ë¡¼¥×¤ÏÁê¸ßÇÓ¾¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ¤Ò¤È¤Ä¤ÎÍ×ÁǤ¬Æ±»þ¤ËÊ£¿ô¤Î¥°¥ë¡¼¥×¤Ë°¤¹¤ë¤³¤È¤¬¤Ç¤­¡¢ ¤Ò¤È¤Ä¤Î¥°¥ë¡¼¥×¤Ë¤ÏÊ£¿ô¤ÎÍ×ÁǤ¬Â°¤¹¤ë¤³¤È¤â¡¢ ²¿¤â³ä¤êÅö¤Æ¤Ê¤¤¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ Ʊ¤¸¥°¥ë¡¼¥×¤Ç²¿²ó¤â»ØÄꤵ¤ì¤¿Í×ÁǤϡ¢ ñ¤ËÊ£¿ô²ó»ØÄꤵ¤ì¤¿Í×ÁǤȤ¤¤¦¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£

  5. ¤¢¤ëÍ×ÁǤòƱ»þ¤Ë¤¤¤¯¤Ä¤â¤Î¥°¥ë¡¼¥×¤Ë½ê°¤µ¤»¤¿¤¤»þ¤Ï¡¢ ¥«¥ó¥Þ±é»»»Ò (,) ¤¬»È¤¨¤Þ¤¹¡£

    ¤½¤ÎÅÔÅÙÊ̤ÎÀÜÈø¼­¤ò¤Ä¤±¤Æ·«¤êÊÖ¤¹¤«¤ï¤ê¤Ë¡¢ °ìÅÙ¤À¤±ÀÜÈø¼­¤ò»ØÄꤷ¤ÆÊ£¿ô¤Î¥°¥ë¡¼¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£ ¤¿¤È¤¨¤Ð¡¢:m,n,o ¤È½ñ¤¯¤È¡¢¤½¤ÎÍ×ÁǤϥ°¥ë¡¼¥× m, n ¤ª¤è¤Ó o ¤Ë°¤¹¤ë¤³¤È¤ò¼¨¤·¤Þ¤¹¡£

    °Ê²¼¤ÎÎã¤Ï¤¹¤Ù¤ÆÆ±Åù¤Ç¤¹¤¬¡¢ ºÇ¸å¤Î·Á¼°¤¬¤â¤Ã¤È¤â¤è¤¤¤Ç¤·¤ç¤¦¡£

    MASTER_SITES=   alpha alpha:SOME_SITE
    
    MASTER_SITES=   alpha:DEFAULT alpha:SOME_SITE
    
    MASTER_SITES=   alpha:SOME_SITE,DEFAULT
    
    MASTER_SITES=   alpha:DEFAULT,SOME_SITE
    
  6. Ǥ°Õ¤Î¥°¥ë¡¼¥×Æâ¤Î¥µ¥¤¥È¤Ï¡¢ MASTER_SORT_AWK ¤Ë¤è¤Ã¤ÆÀ°Î󤵤ì¤Þ¤¹¡£ MASTER_SITES ¤È PATCH_SITES Æâ¤Î¤¹¤Ù¤Æ¤Î¥°¥ë¡¼¥×¤Ë¤Ä¤¤¤Æ¤âƱÍͤËÀ°Î󤵤ì¤Þ¤¹¡£

  7. ¥°¥ë¡¼¥×¤Î³µÇ°¤Ï¡¢ÊÑ¿ô MASTER_SITES, PATCH_SITES, MASTER_SITE_SUBDIR, PATCH_SITE_SUBDIR, DISTFILES ¤ª¤è¤Ó PATCHFILES ¤Ë¤ª¤¤¤Æ¤â¡¢²¼µ­¤Îʸˡ¤Ë½¾¤Ã¤Æ»È¤¨¤Þ¤¹¡£

    1. MASTER_SITES, PATCH_SITES, MASTER_SITE_SUBDIR ¤ª¤è¤Ó PATCH_SITE_SUBDIR ¤Î¤¹¤Ù¤Æ¤ÎÍ×ÁǤϥ¹¥é¥Ã¥·¥å / µ­¹æ¤Ç½ªÃ¼¤µ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ ¤¢¤ëÍ×ÁǤ¬¤É¤ì¤«¤Î¥°¥ë¡¼¥×¤Ë°¤·¤Æ¤¤¤ë¤Ê¤é¡¢ ¥°¥ë¡¼¥×¤ÎÀÜÈø¼­ :n ¤Ï¡¢½ªÃ¼µ­¹æ / ¤Î¤¹¤°¸å¤Ë¤³¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ MASTER_SITES:n ¤Î»ÅÁȤߤǤϡ¢½ªÃ¼µ­¹æ / ¤¬¤¢¤ë¤³¤È¤Ç¡¢ :n ¤¬Í×ÁǤÎÍ­¸ú¤Ê°ìÉô¤Ç¤¢¤ë¾ì¹ç¤È¡¢ :n ¤¬¥°¥ë¡¼¥× n ¤ò¼¨¤¹¾ì¹ç¤Îº®Æ±¤òÈò¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ °ÊÁ°¤Ï¡¢ MASTER_SITE_SUBDIR ¤È PATCH_SITE_SUBDIR Í×ÁǤΤ¤¤º¤ì¤Ë¤ª¤¤¤Æ¤â½ªÃ¼µ­¹æ / ¤ÏÉÔÍפÀ¤Ã¤¿¤Î¤Ç¡¢¸ß´¹À­¤òÊݤĤ¿¤á¤Ë¡¢ ÀÜÈø¼­¤ÎľÁ°¤Îʸ»ú¤¬ / ¤Ç¤Ê¤±¤ì¤Ð¡¢ Í×ÁǤÎÀÜÈø¼­¤¬ :n ¤Ç¤¢¤Ã¤Æ¤â¡¢ ¥°¥ë¡¼¥×¤ÎÀÜÈø¸ì¤Ç¤Ï¤Ê¤¯¡¢ Í×ÁǤÎÍ­¸ú¤Ê°ìÉôʬ¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£ Example 4-3 ¤È Example 4-4 ¤ÎξÊý¤ò¤´Í÷¤¯¤À¤µ¤¤¡£

      Example 4-3. MASTER_SITE_SUBDIR ¤Ë¤ª¤±¤ë MASTER_SITES:n ¤Î¾ÜºÙ¤Ê»ÈÍÑË¡

      MASTER_SITE_SUBDIR=     old:n new/:NEW
      
      • ¥°¥ë¡¼¥× DEFAULT ¤Ë°¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê -> old:n

      • ¥°¥ë¡¼¥× NEW ¤Ë°¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê -> new

      Example 4-4. ¥«¥ó¥Þ±é»»»Ò¡¢Ê£¿ô¤Î¥Õ¥¡¥¤¥ë¡¢Ê£¿ô¤Î¥µ¥¤¥È¡¢ Ê£¿ô¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤È¹ç¤ï¤»¤¿ MASTER_SITES:n ¤Î¾ÜºÙ¤Ê»ÈÍÑË¡

      MASTER_SITES=   http://site1/%SUBDIR%/ http://site2/:DEFAULT \
                      http://site3/:group3 http://site4/:group4 \
                      http://site5/:group5 http://site6/:group6 \
                      http://site7/:DEFAULT,group6 \
                      http://site8/%SUBDIR%/:group6,group7 \
                      http://site9/:group8
      DISTFILES=      file1 file2:DEFAULT file3:group3 \
                      file4:group4,group5,group6 file5:grouping \
                      file6:group7
      MASTER_SITE_SUBDIR=     directory-trial:1 directory-n/:groupn \
                              directory-one/:group6,DEFAULT \
                              directory
      

      ¾å¤ÎÎã¤Ï¡¢¼¡¤Î¤è¤¦¤ÊºÙ¤«¤¯Ê¬¤±¤¿¼èÆÀ¤ò¼Â¸½¤·¤Þ¤¹¡£ ¥µ¥¤¥È¤Ï¡¢ÍøÍѤµ¤ì¤ë½çÈ֤ǵ󤲤é¤ì¤Æ¤¤¤Þ¤¹¡£

      • file1 ¤Ï¼¡¤Î¥µ¥¤¥È¤«¤é¼èÆÀ¤µ¤ì¤Þ¤¹¡£

        • MASTER_SITE_OVERRIDE

        • http://site1/directory/

        • http://site1/directory-one/

        • http://site1/directory-trial:1/

        • http://site2/

        • http://site7/

        • MASTER_SITE_BACKUP

      • file2 ¤Ï¡¢file1 ¤ÈƱ¤¸¥°¥ë¡¼¥×¤Ë°¤·¤Æ¤¤¤ë¤Î¤Ç¡¢ ¤Þ¤Ã¤¿¤¯Æ±¤¸¤è¤¦¤Ë¼èÆÀ¤µ¤ì¤Þ¤¹¡£

        • MASTER_SITE_OVERRIDE

        • http://site1/directory/

        • http://site1/directory-one/

        • http://site1/directory-trial:1/

        • http://site2/

        • http://site7/

        • MASTER_SITE_BACKUP

      • file3 ¤Ï¼¡¤Î¥µ¥¤¥È¤«¤é¼èÆÀ¤µ¤ì¤Þ¤¹¡£

        • MASTER_SITE_OVERRIDE

        • http://site3/

        • MASTER_SITE_BACKUP

      • file4 ¤Ï¼¡¤Î¥µ¥¤¥È¤«¤é¼èÆÀ¤µ¤ì¤Þ¤¹¡£

        • MASTER_SITE_OVERRIDE

        • http://site4/

        • http://site5/

        • http://site6/

        • http://site7/

        • http://site8/directory-one/

        • MASTER_SITE_BACKUP

      • file5 ¤Ï¼¡¤Î¥µ¥¤¥È¤«¤é¼èÆÀ¤µ¤ì¤Þ¤¹¡£

        • MASTER_SITE_OVERRIDE

        • MASTER_SITE_BACKUP

      • file6 ¤Ï¼¡¤Î¥µ¥¤¥È¤«¤é¼èÆÀ¤µ¤ì¤Þ¤¹¡£

        • MASTER_SITE_OVERRIDE

        • http://site8/directory-one/

        • MASTER_SITE_BACKUP

  8. MASTER_SITE_SOURCEFORGE ¤Î¤è¤¦¤Ë¡¢bsd.sites.mk ¤ÇÄêµÁ¤µ¤ì¤ëÆÃÊ̤ÊÊÑ¿ô¤ò¥°¥ë¡¼¥×¤Ë³ä¤êÅö¤Æ¤ë¤Ë¤Ï¤É¤¦¤¹¤ì¤Ð¤è¤¤¤Ç¤¹¤«?

    Example 4-5 ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£

    Example 4-5. MASTER_SITE_SOURCEFORGE ¤È¹ç¤ï¤»¤¿ MASTER_SITES:n ¤Î¾Ü¤·¤¤»ÈÍÑË¡

    MASTER_SITES=   http://site1/ ${MASTER_SITE_SOURCEFORGE:S/$/:sourceforge,TEST/}
    DISTFILES=      something.tar.gz:sourceforge
    

    something.tar.gz ¤Ï¡¢MASTER_SITE_SOURCEFORGE ¤Ë´Þ¤Þ¤ì¤ë¤¢¤é¤æ¤ë¥µ¥¤¥È¤«¤é¼èÆÀ¤µ¤ì¤Þ¤¹¡£

  9. ¤³¤ì¤ò PATCH* ÊÑ¿ô¤ÈÁȤ߹ç¤ï¤»¤Æ»È¤¦¤Ë¤Ï¤É¤¦¤¹¤ì¤Ð¤è¤¤¤Ç¤·¤ç¤¦¤«?

    ¤¹¤Ù¤Æ¤ÎÎã¤Ç MASTER* ÊÑ¿ô¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¤¬¡¢Example 4-6 ¤Ë¤¢¤ë¤è¤¦¤Ë¡¢PATCH* ÊÑ¿ô¤ËÂФ·¤Æ¤â¤Þ¤Ã¤¿¤¯Æ±¤¸¤è¤¦¤ËƯ¤­¤Þ¤¹¡£

    Example 4-6. PATCH_SITES ¤È¹ç¤ï¤»¤¿ MASTER_SITES:n ¤Î´Êñ¤Ê»ÈÍÑË¡

    PATCH_SITES=    http://site1/ http://site2/:test
    PATCHFILES=     patch1:test
    

4.4.7.3 ports ¤Ë¤Ä¤¤¤Æ²¿¤¬Êѹ¹¤µ¤ì¡¢²¿¤¬ÊѤï¤é¤Ê¤¤¤Î¤Ç¤·¤ç¤¦¤«?

  1. ¸½ºß¤Î¤¹¤Ù¤Æ¤Î ports ¤Ï¤½¤Î¤Þ¤ÞÊѤï¤ê¤Þ¤»¤ó¡£ MASTER_SITES:n µ¡Ç½¤Î¥³¡¼¥É¤Ï¡¢7 ¤Ç½Ò¤Ù¤¿Ê¸Ë¡¤Ë½¾¤¦ :n ¤Î¤è¤¦¤Ê·Á¼°¤¬¸å¤í¤Ë¤Ä¤¤¤¿Í×ÁǤ¬¤¢¤ë¾ì¹ç¤À¤±Æ°ºî¤·¤Þ¤¹¡£

  2. port ¤ò make ¤¹¤ëºÝ¤Î¥¿¡¼¥²¥Ã¥È¤Ë¤âÊѹ¹¤Ï¤¢¤ê¤Þ¤»¤ó¡£ checksum, makesum, patch, configure, build Åù¤Ç¤¹¡£ ¤â¤Á¤í¤ó¡¢do-fetch, fetch-list, master-sites ¤½¤ì¤«¤é patch-sites ¤ÏÎã³°¤Ç¤¹¡£

    • do-fetch ¤Ï¡¢¿·¤·¤¯¥°¥ë¡¼¥×ʬ¤±¤ÎÀÜÈø¼­¤Î¤Ä¤¤¤¿ DISTFILES ¤È PATCHFILES ¤òÀßÄꤷ¤Þ¤¹¡£¤½¤ì¤¾¤ì¤¬¡¢Âбþ¤¹¤ë MASTER_SITES ¤È PATCH_SITES ¤òÍøÍѤ·¡¢¤µ¤é¤ËÂбþ¤¹¤ë MASTER_SITE_SUBDIR ¤È PATCH_SITE_SUBDIR ¤òÍøÍѤ·¤Þ¤¹¡£Example 4-4 ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£

    • fetch-list ¤Ï¡¢do-fetch ¤ÈƱ¤¸¤è¤¦¤Ë¥°¥ë¡¼¥×¤òÍøÍѤ¹¤ë¤È¤¤¤¦¤³¤È¤ò½ü¤¤¤Æ¡¢°ÊÁ°¤Î fetch-list ¤Î¤è¤¦¤Ëưºî¤·¤Þ¤¹¡£

    • master-sites ¤ª¤è¤Ó patch-sites ¤Ï¡¢ (¸Å¤¤¥Ð¡¼¥¸¥ç¥ó¤È¸ß´¹À­¤¬¤Ê¤¯¤Ê¤ê) DEFAULT ¥°¥ë¡¼¥×¤ÎÍ×ÁǤòÊÖ¤¹¤À¤±¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ ¼ÂºÝ¤Ï¡¢¤½¤ì¤¾¤ì master-sites-default ¤ª¤è¤Ó patch-sites-default ¤È¤¤¤¦¥¿¡¼¥²¥Ã¥È¤ò¼Â¹Ô¤·¤Þ¤¹¡£

      ¤µ¤é¤Ë¡¢ MASTER_SITES ¤ä PATCH_SITES ¤òľÀܳÎǧ¤¹¤ë¤è¤ê¤â¡¢ master-sites-all ¤Þ¤¿¤Ï patch-sites-all ¤Î¤É¤Á¤é¤«¤Î¥¿¡¼¥²¥Ã¥È¤ò»È¤¦Êý¤¬¤è¤¤¤Ç¤¹¡£ ¤Þ¤¿¡¢¾­Íè¤Î¥Ð¡¼¥¸¥ç¥ó¤Ç¤âľÀܳÎǧ¤¬¤Ç¤­¤ë¤«¤É¤¦¤«¤ÏÊݾڤµ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ ¤³¤ì¤é¿·µ¬ port ¥¿¡¼¥²¥Ã¥È¤Ë¤Ä¤¤¤Æ¤Ï¡¢iii.ii ¤Î¹à¤ò¤´³Îǧ¤¯¤À¤µ¤¤¡£

  3. ¿·µ¬¤Î port ¥¿¡¼¥²¥Ã¥È

    1. MASTER_SITES ¤ª¤è¤Ó PATCH_SITES ¤Î¤½¤ì¤¾¤ì¤Ë¤Ä¤¤¤Æ¡¢ ¥°¥ë¡¼¥× n ¤ÎÍ×ÁǤòɽ¼¨¤¹¤ë master-sites-n ¤ª¤è¤Ó patch-sites-n ¥¿¡¼¥²¥Ã¥È¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢ master-sites-DEFAULT ¤ª¤è¤Ó patch-sites-DEFAULT ¤Î¤¤¤º¤ì¤â DEFAULT ¥°¥ë¡¼¥×¤ÎÍ×ÁǤòÊÖ¤·¡¢ master-sites-test ¤ª¤è¤Ó patch-sites-test ¤Ï test ¥°¥ë¡¼¥×¤ÎÍ×ÁǤòÊÖ¤·¤Þ¤¹¡£

    2. °ÊÁ°¤Î master-sites ¤ª¤è¤Ó patch-sites ¤¬¹Ô¤Ã¤Æ¤¤¤¿ºî¶È¤ò¹Ô¤¦ master-sites-all ¤ª¤è¤Ó patch-sites-all ¤È¤¤¤¦¿·¤¿¤Ê¥¿¡¼¥²¥Ã¥È¤¬¤¢¤ê¤Þ¤¹¡£ ¤³¤ì¤é¤Î¥¿¡¼¥²¥Ã¥È¤Ï¡¢ ¤¹¤Ù¤Æ¤Î¥°¥ë¡¼¥×¤ÎÍ×ÁǤò¤¹¤Ù¤Æ¤¬Æ±¤¸¥°¥ë¡¼¥×¤Ë°¤·¤Æ¤¤¤ë¤«¤Î¤è¤¦¤ËÊÖ¤·¤Þ¤¹¡£ ¤¿¤À¤·¡¢ master-sites-all ¤ª¤è¤Ó patch-sites-all ¤Î¤½¤ì¤¾¤ì¤Ë¤Ä¤¤¤Æ¡¢ DISTFILES ¤ä PATCHFILES ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥°¥ë¡¼¥×¤ÈƱ¤¸¿ô¤À¤± MASTER_SITE_BACKUP ¤È MASTER_SITE_OVERRIDE ¤òɽ¼¨¤·¤Þ¤¹¡£


4.4.8 DIST_SUBDIR

/usr/ports/distfiles ¥Ç¥£¥ì¥¯¥È¥êÆâ¤ò¤¢¤Þ¤ê»¶¤é¤«¤µ¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤¿¤¯¤µ¤ó¤Î¥Õ¥¡¥¤¥ë¤ò¼è¤Ã¤Æ¤¯¤ë port ¤ä¡¢Â¾¤Î port ¤È̾Á°¤Î¾×ÆÍ¤¬µ¯¤­¤ë¶²¤ì¤Î¤¢¤ë¥Õ¥¡¥¤¥ë (Makefile ¤Ê¤É) ¤¬¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢ DIST_SUBDIR ¤Ë port ¤Î̾Á° (${PORTNAME} ¤« ${PKGNAMEPREFIX}${PORTNAME} ¤ò»È¤¦¤È¤¤¤¤¤Ç¤·¤ç¤¦) ¤òÆþ¤ì¤Æ¤¯¤À¤µ¤¤¡£¤¹¤ë¤È DISTDIR ¤¬¥Ç¥Õ¥©¥ë¥È¤Î /usr/ports/distfiles ¤«¤é /usr/ports/distfiles/DIST_SUBDIR ¤ËÊѹ¹¤µ¤ì¡¢ ¼è¤Ã¤Æ¤­¤¿¥Õ¥¡¥¤¥ë¤Ï¤¹¤Ù¤Æ¤½¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ÎÃæ¤ËÃÖ¤«¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

¤Þ¤¿¡¢ ¥Õ¥¡¥¤¥ë¤ò¼è¤Ã¤Æ¤¯¤ë¤È¤­¤Ë¥Ð¥Ã¥¯¥¢¥Ã¥×¥µ¥¤¥È¤È¤·¤Æ»È¤ï¤ì¤ë ftp.FreeBSD.org ¤Î¥Ç¥£¥ì¥¯¥È¥ê̾¤Ë¤â¤³¤ÎÊÑ¿ô¤ÎÃͤ¬»È¤ï¤ì¤Þ¤¹ (Makefile ¤ÎÃæ¤Ç DISTDIR ¤òÌÀ¼¨Åª¤Ë»ØÄꤷ¤¿¾ì¹ç¡¢ ¥í¡¼¥«¥ë¤Î¥Õ¥¡¥¤¥ë¤òÃÖ¤¯¤È¤³¤í¤ÏÊѤï¤ê¤Þ¤¹¤¬¡¢ ¤³¤Î¥µ¥¤¥È¤Î¥Ç¥£¥ì¥¯¥È¥ê̾¤ÏÊѤï¤ê¤Þ¤»¤ó¡£ ɬ¤º DIST_SUBDIR ¤ò»È¤¦¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤)¡£

Note: ¤³¤ÎÊÑ¿ô¤Ï Makefile Ãæ¤ÇÌÀ¼¨Åª¤Ë»ØÄꤵ¤ì¤¿ MASTER_SITES ¤Ë¤Ï±Æ¶Á¤·¤Þ¤»¤ó¡£


4.5 MAINTAINER

¤¢¤Ê¤¿¤Î¥á¡¼¥ë¥¢¥É¥ì¥¹¤ò¤³¤³¤ËÆþ¤ì¤Æ¤¯¤À¤µ¤¤¡£ ¤ª´ê¤¤¤·¤Þ¤¹¡£ :-)

ÊݼéôÅö¼Ô (maintainer) ¤ÎÀÕǤ¤Ë´Ø¤¹¤ë¾ÜºÙÀâÌÀ¤Ï¡¢ Makefile Ãæ¤Î MAINTAINER ¤Î ¥»¥¯¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£


4.6 COMMENT

¤½¤Î port ¤Î 1 ¹Ô¤ÎÀâÌÀ¤Ç¤¹¡£ ¥³¥á¥ó¥È¤Ë¤Ï¥Ñ¥Ã¥±¡¼¥¸Ì¾ (¤ä¥½¥Õ¥È¥¦¥§¥¢¤Î¥Ð¡¼¥¸¥ç¥ó) ¤òÆþ¤ì¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£ ¥³¥á¥ó¥È¤ÏÂçʸ»ú¤Ç»Ï¤Þ¤ê¡¢ºÇ¸å¤Ë¥Ô¥ê¥ª¥É¤ÏÉÕ¤±¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£ ¤¿¤È¤¨¤Ð¡¢¤³¤ó¤Ê¶ñ¹ç¤Ç¤¹¡£

COMMENT=       A cat chasing a mouse all over the screen

Makefile Ãæ¤Ç¡¢ COMMENT ÊÑ¿ô¤Ï MAINTAINER ÊÑ¿ô¤Îľ¸å¤Ë¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£


4.7 °Í¸´Ø·¸

¿¤¯¤Î port ¤Ï¾¤Î port ¤Ë°Í¸¤·¤Æ¤¤¤Þ¤¹¡£ ɬÍפʤâ¤Î¤¹¤Ù¤Æ¤¬¥æ¡¼¥¶¤Î¥Þ¥·¥ó¾å¤Ë¸ºß¤¹¤ë¤³¤È¤ò Êݾڤ¹¤ë¤¿¤á¤Ë»ÈÍѲÄǽ¤Ê¡¢5 ¤Ä¤ÎÊÑ¿ô¤¬ÍѰդµ¤ì¤Æ¤¤¤Þ¤¹¡£ ¤è¤¯¤¢¤ë¥±¡¼¥¹¤Î¤¿¤á¤Ë¤¢¤é¤«¤¸¤áÀßÄꤵ¤ì¤¿°Í¸ÊÑ¿ô¤Ë²Ã¤¨¡¢ ¤¤¤¯¤Ä¤«¤Î°Í¸´Ø·¸¤ÎÀ©¸æ¤Î¤¿¤á¤ÎÊÑ¿ô¤¬¤¢¤ê¤Þ¤¹¡£


4.7.1 LIB_DEPENDS

¤½¤Î port ¤¬É¬ÍפȤ¹¤ë¶¦Í­¥é¥¤¥Ö¥é¥ê¤ò¡¢¤³¤ÎÊÑ¿ô¤Ç»ØÄꤷ¤Þ¤¹¡£ (ÌõÃí: libc Åù¡¢É¸½à¤Î¥é¥¤¥Ö¥é¥ê¤Ï»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤»¤ó¡£) ¤³¤ì¤Ï lib:dir[:target] ¤È¤¤¤¦ ÁȤΥꥹ¥È¤Ç¤¹¡£ lib ¤¬¶¦Í­¥é¥¤¥Ö¥é¥ê¤Î̾Á°¡¢ dir ¤¬ ¤½¤Î¥é¥¤¥Ö¥é¥ê¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¤Ë ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë port ¤Î¥Ç¥£¥ì¥¯¥È¥ê¡¢ target¤¬ ¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¸Æ¤Ð¤ì¤ë¥¿¡¼¥²¥Ã¥È¤Ç¤¹¡£ ¤¿¤È¤¨¤Ð¡¢

LIB_DEPENDS= jpeg.9:${PORTSDIR}/graphics/jpeg:install
¤È»ØÄꤵ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢¤Þ¤º¥á¥¸¥ã¡¼¥Ð¡¼¥¸¥ç¥ó¤¬ 9 ¤Î jpeg ¶¦Í­¥é¥¤¥Ö¥é¥ê¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤ò³Îǧ¤·¤Þ¤¹¡£ ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢ports ¥Ä¥ê¡¼¤Î graphics/jpeg ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë°Üư¤·¡¢ target ¤Î¥³¥ó¥Ñ¥¤¥ë¤È¥¤¥ó¥¹¥È¡¼¥ë¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£ target ¤ÎÉôʬ¤Ï¡¢ ¤½¤ì¤¬ DEPENDS_TARGET (¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï install) ¤È Åù¤·¤¤¤È¤­¤Ë¤Ï¾Êά¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

Note: ÀèÆ¬¤Î lib ¤ÎÉôʬ¤Ï ldconfig -r | grep -wF ¤Ø¤Î°ú¿ô¤Ë¤Ê¤ê¤Þ¤¹¡£ ¤³¤ÎÊÑ¿ô¤Ë¤ÏÀµµ¬É½¸½¤òÆþ¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

¤³¤Î°Í¸´Ø·¸¤Î¥Á¥§¥Ã¥¯¤Ï¡¢ extract ¥¿¡¼¥²¥Ã¥È¤È install ¥¿¡¼¥²¥Ã¥È¤ÎÃæ¤Ç¡¢2 ²ó¹Ô¤Ê¤ï¤ì¤Þ¤¹¡£ (ÌõÃí: ¤³¤ì¤Ï¡¢¤½¤Î port ¤ò¥Ó¥ë¥É¤¹¤ë¥Þ¥·¥ó¤È ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¥Þ¥·¥ó¤¬°ã¤¦¾ì¹ç¡¢¤É¤Á¤é¤Î¥Þ¥·¥ó¤Ç¤â ¤½¤Î¥é¥¤¥Ö¥é¥ê¤¬ÍøÍѤǤ­¤ë¤³¤È¤ò³Îǧ¤¹¤ë¤¿¤á¤Ç¤¹¡£) ƱÍͤˡ¢°Í¸¤¹¤ë¥é¥¤¥Ö¥é¥ê¤Î̾Á°¤Ï package Ãæ¤Ë¤â½ñ¤­¹þ¤Þ¤ì¤Æ¤¤¤Æ¡¢ pkg_add ¼Â¹Ô»þ¤Ë ¤½¤Î¥é¥¤¥Ö¥é¥ê¤¬ ¥æ¡¼¥¶¤Î¥·¥¹¥Æ¥à¤Ë¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢¼«Æ°Åª¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤¹¡£


4.7.2 RUN_DEPENDS

¤³¤Î port ¤Î¼Â¹Ô»þ¤ËɬÍפȤʤë¥×¥í¥°¥é¥à¡¢ ¤Þ¤¿¤Ï¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¤È¤­¤Ë¤Ï¤³¤ÎÊÑ¿ô¤Ç»ØÄꤷ¤Þ¤¹¡£¤³¤ì¤Ï path:dir[:target] ¤È¤¤¤¦ÁȤΥꥹ¥È¤Ç¤¹¡£ path ¤¬¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥×¥í¥°¥é¥à¤Î̾Á°¡¢ dir ¤¬ ¤½¤ì¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë port ¤Î¥Ç¥£¥ì¥¯¥È¥ê¡¢ target ¤¬ ¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¸Æ¤Ð¤ì¤ë¥¿¡¼¥²¥Ã¥È¤Ç¤¹¡£ path ¤ÎºÇ½é¤Îʸ»ú¤¬¥¹¥é¥Ã¥·¥å (/) ¤Î¾ì¹ç¤Ë¤Ï¥Õ¥¡¥¤¥ë¤«¥Ç¥£¥ì¥¯¥È¥ê¤È¤ß¤Ê¤·¡¢ ¸ºß¤¹¤ë¤«¤É¤¦¤« test -e ¤ò»È¤Ã¤Æ¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£ ¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë¤Ç¤¢¤ë¤È¹Í¤¨¤Æ¡¢ ¤½¤Î¥×¥í¥°¥é¥à¤¬¥æ¡¼¥¶¤Î¥µ¡¼¥Á¥Ñ¥¹¾å¤Ë¤¢¤ë¤«¤É¤¦¤« which -s ¤ò»È¤Ã¤Æ³Îǧ¤·¤Þ¤¹¡£

¤¿¤È¤¨¤Ð Makefile ¤Ë°Ê²¼¤Î¤è¤¦¤Ë½ñ¤¤¤Æ¤¢¤ë¤È¤·¤Þ¤¹¡£

RUN_DEPENDS=   ${LOCALBASE}/etc/innd:${PORTSDIR}/news/inn \
                wish8.0:${PORTSDIR}/x11-toolkits/tk80

¤Þ¤º¡¢/usr/local/etc/innd ¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤«¥Ç¥£¥ì¥¯¥È¥ê¤¬Â¸ºß¤¹¤ë¤«³Îǧ¤·¤Þ¤¹¡£ ¸ºß¤·¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢ports ¥Ä¥ê¡¼¤Î news/inn ¤È¤¤¤¦¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ç ¥Ó¥ë¥É¤È¥¤¥ó¥¹¥È¡¼¥ë¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£ ¤µ¤é¤Ë¡¢wish8.0 ¤È¤¤¤¦¥×¥í¥°¥é¥à¤¬¥æ¡¼¥¶¤Î¥µ¡¼¥Á¥Ñ¥¹Ãæ¤Ë¤¢¤ë¤«¤É¤¦¤«Ãµ¤·¤Þ¤¹¡£ ¤Ê¤¤¾ì¹ç¤Ë¤ÏƱ¤¸¤¯ ports ¥Ä¥ê¡¼¤Î x11-toolkits/tk80 ¤È¤¤¤¦¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ç¥³¥ó¥Ñ¥¤¥ë¤È¥¤¥ó¥¹¥È¡¼¥ë¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£

Note: ¤³¤ÎÎã¤Ç¡¢innd ¤Ï¼ÂºÝ¤Ë¤Ï¥×¥í¥°¥é¥à¤Ç¤¹¡£ ¤³¤Î¤è¤¦¤Ë¡¢¥×¥í¥°¥é¥à¤Ç¤¢¤Ã¤Æ¤â°ìÈ̥桼¥¶¤Î¥µ¡¼¥Á¥Ñ¥¹¤Ë ´Þ¤Þ¤ì¤Æ¤¤¤ë¤È¤Ï¹Í¤¨¤Ë¤¯¤¤¤È¤³¤í¤ËÃÖ¤«¤ì¤Æ¤¤¤ë¤â¤Î¤Î¾ì¹ç¤Ë¤Ï¡¢ ÀäÂХѥ¹¤Ç»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£

¤³¤Î°Í¸´Ø·¸¤Ï install ¥¿¡¼¥²¥Ã¥ÈÃæ¤Ç¥Á¥§¥Ã¥¯¤µ¤ì¤Þ¤¹¡£ ¤Þ¤¿¡¢pkg_add ¤Ë¤è¤ë¥¤¥ó¥¹¥È¡¼¥ë¤ÎºÝ¤Ë¡¢¤½¤Î package ¤¬°Í¸¤¹¤ë¤â¤Î¤¬¥æ¡¼¥¶¤Î¥·¥¹¥Æ¥à¤Ë¸ºß¤·¤Ê¤¤¾ì¹ç¤Ë¤Ï¼«Æ°Åª¤ËÄɲ夥󥹥ȡ¼¥ë¤Ç¤­¤ë¤è¤¦¤Ë¡¢ °Í¸¤¹¤ë¤â¤Î¤Î̾Á°¤â package Ãæ¤Ëµ­Ï¿¤µ¤ì¤Þ¤¹¡£ target ¤ÎÉôʬ¤¬ DEPENDS_TARGET ¤ÈƱ¤¸¾ì¹ç¤Ë¤Ï¡¢ target ¤ÎÉôʬ¤ò¾Êά¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£


4.7.3 BUILD_DEPENDS

¤³¤Î port ¤Î¥Ó¥ë¥É»þ¤ËɬÍפȤʤë¥×¥í¥°¥é¥à¡¢ ¤Þ¤¿¤Ï¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¤È¤­¤Ë¤Ï¤³¤ÎÊÑ¿ô¤Ç»ØÄꤷ¤Þ¤¹¡£ RUN_DEPENDS ¤ÈƱÍͤˡ¢¤³¤ì¤Ï path:dir[:target] ¤È¤¤¤¦ÁȤΥꥹ¥È¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢

BUILD_DEPENDS=unzip:${PORTSDIR}/archivers/unzip
¤È»ØÄꤵ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢¤Þ¤º unzip ¤È¤¤¤¦Ì¾Á°¤Î¥×¥í¥°¥é¥à¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤ò³Îǧ¤·¤Þ¤¹¡£ ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï ports ¥Ä¥ê¡¼¤Î archivers/unzip ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë°Üư¤·¡¢ ¥Ó¥ë¥É¤È¥¤¥ó¥¹¥È¡¼¥ë¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£

Note: ¤³¤³¤Ç¸À¤¦``¥Ó¥ë¥É''¤È¤Ï¡¢ ¥Õ¥¡¥¤¥ë¤ÎŸ³«¤«¤é¥³¥ó¥Ñ¥¤¥ë¤Þ¤Ç¤Î¤¹¤Ù¤Æ¤Î½èÍý¤ò°ÕÌ£¤·¤Þ¤¹¡£ ¤³¤Î°Í¸´Ø·¸¤Ï¡¢extract ¥¿¡¼¥²¥Ã¥È¤ÎÃæ¤Ç¥Á¥§¥Ã¥¯¤µ¤ì¤Þ¤¹¡£ target ¤ÎÉôʬ¤Ï¡¢ DEPENDS_TARGET ¤ÈƱ¤¸¾ì¹ç¤Ë¤Ï¾Êά¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£


4.7.4 FETCH_DEPENDS

¤³¤Î port ¤ò¼è¤Ã¤Æ¤¯¤ë¤Î¤ËɬÍפȤʤë¥×¥í¥°¥é¥à¡¢ ¤Þ¤¿¤Ï¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¤È¤­¤Ë¤Ï¤³¤ÎÊÑ¿ô¤Ç»ØÄꤷ¤Þ¤¹¡£ ¾å¤ÎÆó¤Ä¤ÈƱÍͤˡ¢¤³¤ì¤Ï path:dir[:target] ¤È¤¤¤¦ÁȤΥꥹ¥È¤Ç¤¹¡£¤¿¤È¤¨¤Ð¡¢

FETCH_DEPENDS=ncftp2:${PORTSDIR}/net/ncftp2
¤È»ØÄꤵ¤ì¤Æ¤¤¤ì¤Ð¡¢ncftp2 ¤È¤¤¤¦Ì¾Á°¤Î¥×¥í¥°¥é¥à¤òõ¤·¤Þ¤¹¡£ ¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢ports ¥Ä¥ê¡¼¤Î net/ncftp2 ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ç¥Ó¥ë¥É¤È¥¤¥ó¥¹¥È¡¼¥ë¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£

¤³¤Î°Í¸´Ø·¸¤Ï fetch ¥¿¡¼¥²¥Ã¥ÈÃæ¤Ç¥Á¥§¥Ã¥¯¤µ¤ì¤Þ¤¹¡£ target ¤ÎÉôʬ¤Ï¡¢ DEPENDS_TARGET ¤ÈƱ¤¸¾ì¹ç¤Ë¤Ï¾Êά¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£


4.7.5 DEPENDS

¾åµ­¤Î»Í¤Ä¤Î¤¤¤º¤ì¤Ë¤â¤¢¤Æ¤Ï¤Þ¤é¤Ê¤¤¤è¤¦¤Ê°Í¸´Ø·¸¤¬¤¢¤ë¾ì¹ç¡¢ ¤Þ¤¿¤Ï¾¤Î port ¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤À¤±¤Ç¤Ï¤Ê¤¯ ¥½¡¼¥¹¤¬Å¸³«¤µ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢¤³¤ÎÊÑ¿ô¤ò»È¤¤¤Þ¤¹¡£ ¤³¤ì¤Ï¾åµ­¤Î»Í¤Ä¤È°ã¤¤¡¢ÆÃ¤Ë``³Îǧ''¤¹¤ë¤â¤Î¤¬ ¤¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢ dir[:target] ¤È¤¤¤¦·Á¼°¤Î¥ê¥¹¥È¤Ë¤Ê¤ê¤Þ¤¹¡£ target ¤ÎÉôʬ¤Ï DEPENDS_TARGET ¤ÈƱ¤¸¾ì¹ç¤Ë¤Ï¾Êά¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£


4.7.6 USE_*

¿¤¯¤Î ports ¤Ë¶¦Ä̤ΰ͸´Ø·¸¤ò¥«¥×¥»¥ë²½¤¹¤ë¤¿¤á¤Ë¡¢ ¤¤¤¯¤Ä¤â¤ÎÊÑ¿ô¤¬Â¸ºß¤·¤Æ¤¤¤Þ¤¹¡£

Table 4-1. USE_* ÊÑ¿ô

ÊÑ¿ô °ÕÌ£
USE_BZIP2 ¤½¤Î port ¤Î tarball ¤Ï bzip2 ¤Ç°µ½Ì¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
USE_ZIP ¤½¤Î port ¤Î tarball ¤Ï zip ¤Ç°µ½Ì¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
USE_GMAKE ¤½¤Î port ¤ò¥Ó¥ë¥É¤¹¤ë¤Î¤Ë gmake ¤¬É¬ÍפǤ¹¡£
USE_PERL5 ¤½¤Î port ¤ò¥Ó¥ë¥É¤·¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤Î¤Ë Perl 5 ¤¬É¬ÍפǤ¹¡£Perl ¤Ë´ØÏ¢¤·¤ÆÀßÄê²Äǽ¤Ê¾¤ÎÊÑ¿ô¤Ë¤Ä¤¤¤Æ¤Ï Section 5.3 ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£
USE_X_PREFIX ¤½¤Î port ¤Ï PREFIX ¤Ç¤Ï¤Ê¤¯ X11BASE ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤¹¡£ X11 ¤Ë´ØÏ¢¤·¤ÆÀßÄê²Äǽ¤Ê¾¤ÎÊÑ¿ô¤Ë¤Ä¤¤¤Æ¤Ï¡¢ Section 5.4 ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£
USE_AUTOMAKE ¤½¤Î port ¤Î¥Ó¥ë¥É¤Ë GNU automake ¤¬»È¤ï¤ì¤Þ¤¹¡£automake ¤Ë´Ø¤ï¤ë¾¤ËÀßÄê²Äǽ¤ÊÊÑ¿ô¤Ë¤Ä¤¤¤Æ¤Ï¡¢ Section 5.5 ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£
USE_AUTOCONF ¤½¤Î port ¤Î¥Ó¥ë¥É¤Ë GNU autoconf ¤¬»È¤ï¤ì¤Þ¤¹¡£autoconf ¤Ë´Ø¤ï¤ë¾¤ËÀßÄê²Äǽ¤ÊÊÑ¿ô¤Ë¤Ä¤¤¤Æ¤Ï¡¢ Section 5.5 ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£
USE_LIBTOOL ¤½¤Î port ¤Î¥Ó¥ë¥É¤Ë GNU libtool ¤¬»È¤ï¤ì¤Þ¤¹¡£libtool ¤Ë´Ø¤ï¤ë¾¤ËÀßÄê²Äǽ¤ÊÊÑ¿ô¤Ë¤Ä¤¤¤Æ¤Ï¡¢ Section 5.5 ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£
GMAKE gmake ¤¬ PATH ¤ËÆþ¤Ã¤Æ¤¤¤Ê¤¤¾ì¹ç¤Î¥Õ¥ë¥Ñ¥¹
USE_BISON ¤½¤Î port ¤Î¥Ó¥ë¥É¤Ë bison ¤¬»È¤ï¤ì¤Þ¤¹¡£
NO_INSTALL_MANPAGES install.man ¥¿¡¼¥²¥Ã¥È¤ò»È¤¤¤Þ¤»¤ó¡£

¤½¤Î ports ¤¬ X Window System ¤òɬÍפȤ¹¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢ USE_XLIB=yes ¤òÄêµÁ¤·¤Æ¤¯¤À¤µ¤¤ (¤³¤ì¤Ï USE_IMAKE ¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ì¤Ð¼«Æ°Åª¤ËÄêµÁ¤µ¤ì¤Þ¤¹)¡£ BSD make ¤Ç¤Ï¤Ê¤¯ GNU make ¤òɬÍפȤ¹¤ë¾ì¹ç¤Ë¤Ï USE_GMAKE=yes ¤ò¡¢ GNU autoconf ¤ò¼Â¹Ô¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ë¤Ï USE_AUTOCONF=yes ¤ò¡¢ ºÇ¿·¤Î qt toolkit ¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ë¤Ï USE_QT=yes ¤ò¡¢ perl ¸À¸ì¤Î¥Ð¡¼¥¸¥ç¥ó 5 ¤òɬÍפȤ¹¤ë¾ì¹ç¤Ë¤Ï USE_PERL5=yes ¤òÄêµÁ¤·¤Æ¤¯¤À¤µ¤¤ (ÆÃ¤ËºÇ¸å¤Î¤â¤Î¤Ï½ÅÍפǤ¹¡£ FreeBSD ¤Î¥Ð¡¼¥¸¥ç¥ó¤Ë¤è¤ê¡¢´ðËÜ¥·¥¹¥Æ¥à¤Ë perl5 ¤¬´Þ¤Þ¤ì¤Æ¤¤¤¿¤ê¡¢¤¤¤Ê¤«¤Ã¤¿¤ê¤·¤Þ¤¹)¡£


4.7.7 °Í¸´Ø·¸¤Ë´Ø¤¹¤ëÃí°Õ

¾å¤Ç½Ò¤Ù¤¿¤è¤¦¤Ë¡¢°Í¸¤¹¤ë ports ¤¬É¬Íפˤʤ俤Ȥ­¤Ë¸Æ¤Ð¤ì¤ë¥Ç¥Õ¥©¥ë¥È¤Î¥¿¡¼¥²¥Ã¥È¤Ï DEPENDS_TARGET ¤Ç¡¢¤½¤Î¥Ç¥Õ¥©¥ë¥È¤Ï install ¤Ç¤¹¡£ ¤³¤ì¤Ï¥æ¡¼¥¶¤¬»ÈÍѤ¹¤ëÊÑ¿ô¤Ç¤¢¤ê¡¢ port ¤Î Makefile ¤ÇÄêµÁ¤¹¤ë¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ¤â¤·¡¢¤½¤Î port ¤¬ÆÃÊ̤ÊÊýË¡¤Ç°Í¸´Ø·¸¤ò°·¤¦É¬Íפ¬¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢ DEPENDS_TARGET ¤òºÆÄêµÁ¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯ *_DEPENDS ÊÑ¿ô¤Î :target Éôʬ¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£

make clean ¤ÈÆþÎϤ·¤¿¤È¤­¤Ë¤Ï¡¢ ¤½¤Î port ¤¬°Í¸¤¹¤ë port ¤â¼«Æ°Åª¤Ë clean ¤µ¤ì¤Þ¤¹¡£ ¤½¤¦¤Ê¤é¤Ê¤¤¤è¤¦¤Ë¤·¤¿¤¤¾ì¹ç¤Ë¤Ï¡¢ ´Ä¶­ÊÑ¿ô NOCLEANDEPENDS ¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£

̵¾ò·ï¤Ë¾¤Î port ¤Ë°Í¸¤µ¤»¤ë¤Ë¤Ï¡¢ BUILD_DEPENDS ¤ä RUN_DEPENDS ¤ÎºÇ½é¤Î¥Õ¥£¡¼¥ë¥É¤Ë ${NONEXISTENT} ¤È¤¤¤¦ÊÑ¿ô¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤Ï¡¢Â¾¤Î port ¤Î¥½¡¼¥¹¤¬É¬ÍפʤȤ­¤Î¤ß»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£ ¥¿¡¼¥²¥Ã¥È¤â»ØÄꤹ¤ë¤³¤È¤Ç¡¢ ¥³¥ó¥Ñ¥¤¥ë¤Î»þ´Ö¤òÀáÌó¤Ç¤­¤ë¾ì¹ç¤â¤¢¤ê¤Þ¤¹¡£ ¤¿¤È¤¨¤Ð

BUILD_DEPENDS=   ${NONEXISTENT}:${PORTSDIR}/graphics/jpeg:extract
¤È¤¹¤ë¤È¡¢¾ï¤Ë JPEG port ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¹Ô¤Ã¤Æ¥½¡¼¥¹¤ÎŸ³«¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£

¤¢¤Ê¤¿¤¬¤ä¤ê¤¿¤¤¤³¤È¤¬Â¾¤ÎÊýË¡¤Ç¤Ï¤Ç¤­¤Ê¤¤¾ì¹ç°Ê³°¤Ë¤Ï DEPENDS ¤ò»È¤ï¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£ ¤³¤ì¤Ï¾ï¤Ë¾¤Î port ¤ÎºîÀ®¤ò¹Ô¤Ê¤¤ (¤µ¤é¤Ë¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï ¥¤¥ó¥¹¥È¡¼¥ë¤â¹Ô¤Ê¤¤)¡¢package ¤Þ¤ÇºîÀ®¤·¤Þ¤¹¡£ ¤³¤Îưºî¤¬ËÜÅö¤Ë½ê˾¤Î¤â¤Î¤Ç¤·¤¿¤é¡¢ ¤½¤ì¤ò BUILD_DEPENDS ¤È RUN_DEPENDS ¤Ë½ñ¤¯¤Ù¤­¤Ç¤·¤ç¤¦ -- ¾¯¤Ê¤¯¤È¤â°Õ¿Þ¤òÌÀ³Î¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£


4.7.8 ¥ª¥×¥·¥ç¥óÁªÂò²Äǽ¤Ê°Í¸¥é¥¤¥Ö¥é¥ê

µðÂç¤Ê¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎÃæ¤Ë¤Ï¡¢ Ê£¿ô¤Î¥³¥ó¥Õ¥£¥®¥å¥ì¡¼¥·¥ç¥ó¤Ç¥Ó¥ë¥É¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£ ¤Ä¤Þ¤ê¡¢¤¤¤¯¤Ä¤â¤Î³°Éô¥é¥¤¥Ö¥é¥ê¤ä¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎÃæ¤Î¡¢ ¤¢¤ë¤â¤Î¤¬ÍøÍѲÄǽ¤Ê¾ì¹ç¤Ë¡¢ ¤½¤ì¤ò³ÈÄ¥µ¡Ç½¤È¤·¤Æ»ÈÍѤ¹¤ë¤è¤¦¤ËÀßÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£ ¤½¤ì¤é¤Î¥é¥¤¥Ö¥é¥ê¤ä¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¡¢ ɬ¤º¤·¤â ¤¹¤Ù¤Æ¤Î¥æ¡¼¥¶¤¬É¬ÍפȤ·¤Æ¤¤¤ë¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢ports ¥·¥¹¥Æ¥à¤Ç¤Ï¤É¤Î¥³¥ó¥Õ¥£¥®¥å¥ì¡¼¥·¥ç¥ó¤¬¥Ó¥ë¥É¤µ¤ì¤ë¤Ù¤­¤«¤ò port ºî¼Ô¤¬·è¤á¤ë¤¿¤á¤Ë»È¤¨¤ë¥Õ¥Ã¥¯¤òÍѰդ·¤Æ¤¤¤Þ¤¹¡£ ¤³¤ì¤é¤òŬÀڤ˥µ¥Ý¡¼¥È¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢¥æ¡¼¥¶¤ò¥Ï¥Ã¥Ô¡¼¤Ë¤·¤¿¤ê¡¢ port 1 ¤Äʬ¤Î¥³¥¹¥È¤Ç 2 ¤Ä¤Þ¤¿¤Ï¤½¤ì°Ê¾å¤Î port ¤òÄ󶡤¹¤ë¤Î¤ÈƱÍͤθúΨ²½¤ò¹Ô¤Ê¤¦¤³¤È¤¬²Äǽ¤Ç¤¹¡£

¤³¤ì¤é¤Î¥Õ¥Ã¥¯¤Î¤¦¤Á¤ÇºÇ¤â´Êñ¤Ë»È¤¨¤ë¤â¤Î¤Ï WITHOUT_X11 ¤Ç¤·¤ç¤¦¡£ ¤½¤Î port ¤¬ X Window System ¤Î¥µ¥Ý¡¼¥È¤¢¤ê¤È¡¢ ¥µ¥Ý¡¼¥È¤Ê¤·¤ÎÀßÄê¤Ç¥Ó¥ë¥É¤Ç¤­¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢ Ä̾ï¤Ï X Window System ¥µ¥Ý¡¼¥È¤¢¤ê¤Ç¥Ó¥ë¥É¤¹¤ë¤Ù¤­¤Ç¤·¤ç¤¦¡£ ¥Ó¥ë¥É»þ¤Ë WITHOUT_X11 ¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ì¤Ð¡¢ ¤½¤Î»þ¤Ï X Window System ¥µ¥Ý¡¼¥È¤Ê¤·¤Î¥Ð¡¼¥¸¥ç¥ó¤¬ ¥Ó¥ë¥É¤µ¤ì¤ë¤Ù¤­¤Ç¤¹¡£

GNOME ´Ä¶­¤ÎÍÍ¡¹¤Ê¥Ñ¡¼¥Ä¤â¡¢¤½¤Î¤è¤¦¤Ê¥Î¥Ö (¥Õ¥Ã¥¯) ¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹¤¬¡¢¤½¤ì¤é¤Ï´öʬ»È¤¤¤Ë¤¯¤¤¤â¤Î¤Ç¤¹¡£ Makefile Ãæ¤Ç ¤½¤ÎÌÜŪ¤Ë»ÈÍѤµ¤ì¤ëÊÑ¿ô¤Ï WANT_* ¤È HAVE_* ¤Ë¤Ê¤ê¤Þ¤¹¡£ ¤½¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬¡¢ °Ê²¼¤Ë¼¨¤µ¤ì¤Æ¤¤¤ë°Í¸¥é¥¤¥Ö¥é¥ê¤Î°ì¤Ä¤Ë¤Ä¤¤¤Æ¡¢ ¥µ¥Ý¡¼¥È¤¢¤ê¡¢¤Ê¤·¤ÎξÊý¤Ç¥Ó¥ë¥É¤Ç¤­¤ë¾ì¹ç¡¢ Makefile ¤Ë¤Ï WANT_PKG ¤ò¥»¥Ã¥È¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ ¤½¤·¤Æ¡¢¥Ó¥ë¥É»þ¤Ë HAVE_PKG ¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ì¤Ð PKG ¤ò»È¤¦¥Ð¡¼¥¸¥ç¥ó¤¬¥Ó¥ë¥É¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£

¸½ºß¡¢¤³¤Î¤è¤¦¤Ê·Á¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë WANT_* ÊÑ¿ô¤Ï¡¢ WANT_GLIB, WANT_GTK, WANT_ESOUND, WANT_IMLIB, ¤½¤·¤Æ WANT_GNOME ¤Ç¤¹¡£


4.8 ºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤Î»ØÄê

¤½¤ì¤¾¤ì¤Î port ¤Ïºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ËŸ³«¤µ¤ì¤ë¤Î¤Ç¡¢ ºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤Ï½ñ¤­¹þ¤ß²Äǽ¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ Ports ¥·¥¹¥Æ¥à¤Ï¡¢DISTFILES ¤¬ ${DISTNAME} ¤È¤¤¤¦¥Ç¥£¥ì¥¯¥È¥ê¤ËŸ³«¤µ¤ì¤ë¤È²¾Äꤷ¤Æ¤¤¤Þ¤¹¡£ ¤Ä¤Þ¤ê¡¢¼¡¤Î¤è¤¦¤ËÀßÄꤷ¤Æ¤¤¤¿¤é¡¢

PORTNAME=      foo
PORTVERSION=   1.0

¤½¤Î port ¤ÎÇÛÉÛ¥Õ¥¡¥¤¥ë¤ÎÆâÍÆ¤Ï¡¢ºÇ¾å°Ì¤Î¥Ç¥£¥ì¥¯¥È¥ê¤¬ foo-1.0 ¤Ç¡¢ »Ä¤ê¤Î¥Õ¥¡¥¤¥ë¤Ï¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Î²¼¤ËÃÖ¤«¤ì¤Æ¤¤¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£

¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ë»È¤¨¤ëÊÑ¿ô¤¬¤¤¤¯¤Ä¤â¤¢¤ê¤Þ¤¹¡£


4.8.1 WRKSRC

¤³¤ÎÊÑ¿ô¤Ï¡¢ ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎÇÛÉÛ¥Õ¥¡¥¤¥ë¤¬Å¸³«¤µ¤ì¤¿»þ¤ËºîÀ®¤µ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Î̾¾Î¤ò¼¨¤·¤Þ¤¹¡£ Á°¤ÎÎã¤Ç¡¢(foo-1.0 ¤Ç¤Ï¤Ê¤¯) foo ¤È¤¤¤¦¥Ç¥£¥ì¥¯¥È¥ê¤ËŸ³«¤µ¤ì¤ë¤Ê¤é¡¢

WRKSRC=      ${WRKDIR}/foo

¤Þ¤¿¤Ï¡¢

WRKSRC=      ${WRKDIR}/${PORTNAME}

¤È½ñ¤¤¤Æ¤¯¤À¤µ¤¤¡£


4.8.2 NO_WRKSUBDIR

¤½¤Î port ¤¬¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ËŸ³«¤·¤Ê¤¤¤Î¤Ç¤¢¤ì¤Ð¡¢ ¤½¤ì¤ò¼¨¤¹¤¿¤á¤Ë NO_WRKSUBDIR ¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£

NO_WRKSUBDIR= yes

4.9 ¥Ó¥ë¥É¤Î¥á¥«¥Ë¥º¥à

¤½¤Î¥½¥Õ¥È¥¦¥§¥¢¤¬¥Ó¥ë¥É¤ÎºÝ¤Ë GNU make ¤ò»È¤¦¾ì¹ç¤Ë¤Ï¡¢USE_GMAKE=yes ¤ò¥»¥Ã¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ configure ¤ò»È¤¦¾ì¹ç¤Ë¤Ï¡¢ HAS_CONFIGURE=yes ¤ò¥»¥Ã¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ GNU configure ¤ò»È¤¦¾ì¹ç¤Ë¤Ï¡¢ GNU_CONFIGURE=yes ¤ò¥»¥Ã¥È¤·¤Æ¤¯¤À¤µ¤¤ (¤³¤ì¤Ë¤è¤ê HAS_CONFIGURE ¤â¥»¥Ã¥È¤µ¤ì¤Þ¤¹)¡£ configure ¤ËÄɲäΰú¿ô¤òÅϤ·¤¿¤¤¾ì¹ç¤Ë¤Ï¡¢ ÄɲÃÉôʬ¤ò CONFIGURE_ARGS ¤Ë»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ (¥Ç¥Õ¥©¥ë¥È¤Î°ú¿ô¥ê¥¹¥È¤Ï¡¢GNU configure ¤Ç¤Ï --prefix=${PREFIX} ¤Ë¡¢ GNU ¤Ç¤Ê¤¤ configure ¤Ç¤Ï¶õ¥ê¥¹¥È¤Ë¤Ê¤ê¤Þ¤¹¡£) GNU autoconf ¤ò»È¤¦¾ì¹ç¤Ë¤Ï¡¢ USE_AUTOCONF=yes ¤ò¥»¥Ã¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤Ë¤è¤ê GNU_CONFIGURE ¤â¥»¥Ã¥È¤µ¤ì¡¢ configure ¤ò¼Â¹Ô¤¹¤ëÁ°¤Ë autoconf ¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£

Note: ¤â¤·¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¤¬ GNU configure ¤ò»È¤Ã¤Æ¤¤¤Æ¡¢ºîÀ®¤µ¤ì¤¿¼Â¹Ô·Á¼°¤Î¥Õ¥¡¥¤¥ë¤¬ i386-portbld-freebsd4.7-appname ¤Î¤è¤¦¤Ê``´ñ̯¤Ê''̾¾Î¤À¤Ã¤¿¾ì¹ç¤Ï¡¢¤µ¤é¤Ë CONFIGURE_TARGET ¤ò¾å½ñ¤­¤·¤Æ¡¢¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤Î autoconf ¤ÇÀ¸À®¤µ¤ì¤¿¥¹¥¯¥ê¥×¥È¤¬Í׵᤹¤ëÊýË¡¤Ç¥¿¡¼¥²¥Ã¥È¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ Makefile ¤Î GNU_CONFIGURE=yes ¹Ô¤Î¤¹¤°¸å¤Ë¼¡¤Î¹Ô¤òÄɲ䷤Ƥ¯¤À¤µ¤¤¡£

CONFIGURE_TARGET=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}

¤½¤Î¥½¥Õ¥È¥¦¥§¥¢¤¬ X Window System ¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ê¤É¤Ç¡¢ imake ¤ò»È¤Ã¤Æ Imakefile ¤«¤é Makefile ¤òºîÀ®¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢ USE_IMAKE=yes ¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ ¤½¤¦¤¹¤ë¤È¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó¥¹¥Æ¡¼¥¸¤Ç¼«Æ°Åª¤Ë xmkmf -a ¤¬¼Â¹Ô¤µ¤ì¤Þ¤¹¡£ ¤â¤· -a ¥Õ¥é¥°¤¬ÌäÂê¤ò°ú¤­µ¯¤³¤¹¤Ê¤é¡¢ ¤µ¤é¤Ë XMKMF=xmkmf ¤ò¥»¥Ã¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤â¤·¡¢¤½¤Î port ¤¬ imake ¤ò»ÈÍѤ¹¤ë¤±¤ì¤É¤â install.man ¥¿¡¼¥²¥Ã¥È¤ò»ý¤¿¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢ NO_INSTALL_MANPAGES=yes ¤ò¥»¥Ã¥È¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤Ä¤¤¤Ç¤Ë¡¢¤½¤Î¥½¥Õ¥È¥¦¥§¥¢¤Îºî¼Ô¤òõ¤·½Ð¤·¤ÆÈ¬¤ÄÎö¤­¤Ë¤¹¤ë¤È¤¤¤¤¤Ç¤·¤ç¤¦¡£ (-_-#)

¤½¤Î¥½¥Õ¥È¥¦¥§¥¢¤Î¸µ¡¹¤Î Makefile ¤¬ all °Ê³°¤Î¤â¤Î¤ò¥á¥¤¥ó¤Î¥¿¡¼¥²¥Ã¥È¤È¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤ì¤ò ALL_TARGET ¤Ë»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ install ¤È INSTALL_TARGET ¤âƱÍͤǤ¹¡£


Chapter 5 ÆÃÊ̤ÊÇÛθ

port ¤òºîÀ®¤¹¤ë¾ì¹ç¡¢ ¹Íθ¤·¤Ê¤¯¤Æ¤Ï¤¤¤±¤Ê¤¤¤³¤È¤¬Â¾¤Ë¤â¤¤¤¯¤Ä¤«¤¢¤ê¤Þ¤¹¡£ ¤³¤Î¥»¥¯¥·¥ç¥ó¤Ç¤Ï¡¢¤½¤ì¤é¤Î¤¦¤Á¤Ç¤âÆÃ¤Ë¤è¤¯¤¢¤ë¤³¤È¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£


5.1 ¶¦Í­¥é¥¤¥Ö¥é¥ê

¤½¤Î port ¤¬¶¦Í­¥é¥¤¥Ö¥é¥ê¤Î¥¤¥ó¥¹¥È¡¼¥ë¤ò¹Ô¤Ê¤¦¾ì¹ç¡¢ make ÊÑ¿ô INSTALLS_SHLIB ¤òÄêµÁ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤Ë¤è¤ê¡¢bsd.port.mk ¤¬ post-install ¥¿¡¼¥²¥Ã¥È¤Î¼Â¹Ô»þ¤Ë¿·¤·¤¤¥é¥¤¥Ö¥é¥ê¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê (Ä̾ï¤Ï PREFIX/lib) ¤Ë ${LDCONFIG} -m ¤ò¼Â¹Ô¤·¡¢ ¶¦Í­¥é¥¤¥Ö¥é¥ê¥­¥ã¥Ã¥·¥å¤Ø¤ÎÅÐÏ¿¤¬¹Ô¤Ê¤ï¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£ ¤Þ¤¿¡¢¤³¤ÎÊÑ¿ô¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¶¦Í­¥é¥¤¥Ö¥é¥ê¤ò ¥¤¥ó¥¹¥È¡¼¥ë¤·¤¿¥æ¡¼¥¶¤¬ ¤½¤ì¤ò¤¹¤°¤Ë»È¤¤»Ï¤á¤é¤ì¤ë¤è¤¦¤Ë¡¢ ¤Þ¤¿¡¢ºï½ü¤ÎºÝ¤Ë¤Ï ¤½¤Î¥é¥¤¥Ö¥é¥ê¤¬ ¤Þ¤À¸ºß¤·¤Æ¤¤¤ë¤È ¥·¥¹¥Æ¥à¤Ë¸íǧ¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¡¢ ŬÀÚ¤Ê @exec /sbin/ldconfig -m ¤È @unexec /sbin/ldconfig -R ¤Î¥Ú¥¢¤¬ pkg-plist ¥Õ¥¡¥¤¥ë¤Ë »ØÄꤵ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë°·¤ï¤ì¤Þ¤¹¡£

ɬÍפǤ¢¤ì¤Ð¡¢ ¶¦Í­¥é¥¤¥Ö¥é¥ê¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Î¥ê¥¹¥È¤ò³ÊǼ¤¹¤ë make ÊÑ¿ô LDCONFIG_DIRS ¤òÄêµÁ¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢ ¿·¤·¤¤¥é¥¤¥Ö¥é¥ê¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¥Ç¥Õ¥©¥ë¥È¤Î°ÌÃÖ¤ò¾å½ñ¤­¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£ Î㤨¤Ð¡¢¤½¤Î port ¤¬¶¦Í­¥é¥¤¥Ö¥é¥ê¤ò PREFIX/lib/foo ¤È PREFIX/lib/bar ¤Ë ¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¾ì¹ç¡¢Makefile ¤Ç°Ê²¼¤Îµ­½Ò¤ò»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹:

INSTALLS_SHLIB= yes
LDCONFIG_DIRS=  %%PREFIX%%/lib/foo %%PREFIX%%/lib/bar

pkg-plist ¤Î¾¤ÎÉôʬ¤ÈƱÍͤˡ¢ LDCONFIG_DIRS ¤ÎÆâÍÆ¤â sed(1) ¤Ë¤è¤ë½èÍý¤¬¹Ô¤Ê¤ï¤ì¤ë¤¿¤á¡¢¤³¤³¤Ç¤â PLIST_SUB ¤Ë»ØÄꤷ¤¿ÃÖ´¹¤¬¹Ô¤Ê¤ï¤ì¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£ PREFIX ¤Ë¤Ï %%PREFIX%% ¤ò¡¢ LOCALBASE ¤Ë¤Ï %%LOCALBASE%%, X11BASE ¤Ë¤Ï %%X11BASE%% ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¿ä¾©¤·¤Þ¤¹¡£


5.2 ÇÛÉÛÀ©¸Â¤¬¤¢¤ë ports

¥é¥¤¥»¥ó¥¹¤Ë¤Ï¤µ¤Þ¤¶¤Þ¤Ê¤â¤Î¤¬¤¢¤ê¡¢¤Ê¤«¤Ë¤Ï¡¢ ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥Ñ¥Ã¥±¡¼¥¸²½¤¹¤ë¤ä¤êÊý¡¢±ÄÍøÌÜŪ¤ÇÈÎÇä¤Ç¤­¤ë¤«¡¢ ¤È¤¤¤Ã¤¿¤³¤È¤ËÀ©¸Â¤ò¤«¤±¤Æ¤¤¤ë¤â¤Î¤¬¤¢¤ê¤Þ¤¹¡£

Important: port ºîÀ®¼Ô¤È¤·¤Æ¡¢¤¢¤Ê¤¿¤Ë¤Ï¡¢»ÈÍѵöÂú¾ò·ï¤ò¤è¤¯ÆÉ¤ß¡¢ FTP ¤Þ¤¿¤Ï CD-ROM ¤ÇºÆÇÛÉÛ¤·¤Æ¤Ï¤¤¤±¤Ê¤¤¥½¡¼¥¹¥³¡¼¥É¤ä¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥Ð¥¤¥Ê¥ê¤òÇÛÉÛ¤·¤Æ¤·¤Þ¤¤¡¢ ¤½¤ÎÀÕǤ¤¬ FreeBSD ¥×¥í¥¸¥§¥¯¥È¤Ë¤«¤«¤Ã¤Æ¤¯¤ë¤³¤È¤Î¤Ê¤¤¤è¤¦Ãí°Õ¤¹¤ëµÁ̳¤¬¤¢¤ê¤Þ¤¹¡£ µ¿¤ï¤·¤¤¾ì¹ç¤Ë¤Ï FreeBSD ports ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È ¤Çʹ¤¤¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£

¤½¤Î¤è¤¦¤Ê¾ì¹ç¡¢¼¡¤ÎÊÑ¿ô¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ ¤Þ¤¿¡¢ports/LEGAL ¤â¹¹¿·¤¹¤Ù¤­¤Ç¤¹¡£


5.2.1 NO_PACKAGE

¤³¤ÎÊÑ¿ô¤¬ÀßÄꤵ¤ì¤Æ¤¤¤¿¤é¡¢ ¤³¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥Ð¥¤¥Ê¥ê¥Ñ¥Ã¥±¡¼¥¸¤òºîÀ®¤·¤Æ¤Ï¤¤¤±¤Ê¤¤¤È¤¤¤¦¤³¤È¤Ç¤¹¡£ ¤¿¤À¤·¡¢¤³¤Î port ¤Î DISTFILES ¤Ï¼«Í³¤ËÇÛÉۤǤ­¤Þ¤¹¡£

¤Þ¤¿¡¢NO_PACKAGE ¤Ï¡¢¥Ð¥¤¥Ê¥ê¥Ñ¥Ã¥±¡¼¥¸¤¬ÈÆÍÑŪ¤Ç¤Ï¤Ê¤¯¡¢ ¤¤¤Ä¤â¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¥½¡¼¥¹¥³¡¼¥É¤«¤é¥³¥ó¥Ñ¥¤¥ë¤¹¤Ù¤­¾ì¹ç¤Ë¤âÍøÍѤ¹¤Ù¤­¤Ç¤¹¡£ ¤¿¤È¤¨¤Ð¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¥µ¥¤¥ÈÆÃÍ­¤ÎÀßÄê¾ðÊ󤬥³¥ó¥Ñ¥¤¥ë»þ¤Ë¥Ï¡¼¥É¥³¡¼¥É¤µ¤ì¤ë¤è¤¦¤Ê¾ì¹ç¤Ç¤¹¡£

NO_PACKAGE ¤Ë¤Ï¡¢ ¥Ñ¥Ã¥±¡¼¥¸¤òºîÀ®¤¹¤Ù¤­¤Ç¤Ï¤Ê¤¤Íýͳ¤ò½Ò¤Ù¤¿Ê¸»úÎó¤òÀßÄꤹ¤Ù¤­¤Ç¤¹¡£


5.2.2 NO_CDROM

¤³¤ÎÊÑ¿ô¤Ï¡¢ ¥Ð¥¤¥Ê¥ê¥Ñ¥Ã¥±¡¼¥¸¤ÎºîÀ®¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢ ¤½¤Î¥Ñ¥Ã¥±¡¼¥¸¤ä port ¤Î DISTFILES ¤òÈÎÇäÍѤΠCDROM ¤ËºÜ¤»¤ë¤Î¤Ïµö¤µ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤òɽ¤·¤Þ¤¹¡£ DISTFILES ¤Ï¡¢FTP ¤ÇÆþ¼ê²Äǽ¤Ç¤¹¡£

NO_PACKAGE ¤È NO_CDROM ¤Ï¡¢Æ±»þ¤ËÀßÄê¤Ç¤­¤Þ¤¹¡£


5.2.3 RESTRICTED

¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥é¥¤¥»¥ó¥¹¤¬¡¢FTP ¤Ç¤½¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î DISTFILES ¤ò¥ß¥é¡¼¤¹¤ë¤³¤È¤â¶Ø¤¸¤Æ¤¤¤¿¤é¡¢ ¤³¤ÎÊÑ¿ô¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£

¤Þ¤¿¡¢ ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥é¥¤¥»¥ó¥¹¤¬ÍøÍѼԤˤĤ¤¤Æ°ìÈÌŪ¤ÊÀ©¸Â¤ò¤«¤±¤Æ¤¤¤ë¾ì¹ç¤â¡¢ ¤³¤ÎÊÑ¿ô¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ ¤¿¤È¤¨¤Ð¡¢Èó¾¦ÍÑÍøÍѸÂÄê¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ê¤É¤¬¤¢¤ê¤Þ¤¹¡£


5.2.4 RESTRICTED_FILES

°ìÉô¤ÎÇÛÉÛ¥Õ¥¡¥¤¥ë¤À¤±¤ËÀ©¸Â¤¬¤«¤«¤Ã¤Æ¤¤¤¿¤é¡¢ ¤³¤ÎÊÑ¿ô¤Ë¤½¤Î¥Õ¥¡¥¤¥ë¤Î¥ê¥¹¥È¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢ ${DISTFILES} ${PATCHFILES} ¤Ë¤Ê¤ê¤Þ¤¹¡£


5.3 Perl ¤ÎÍøÍÑ

Table 5-1. Perl ¤ò»ÈÍѤ¹¤ë ports ÍѤÎÊÑ¿ô

ÊÑ¿ô °ÕÌ£
USE_PERL5 ¤½¤Î port ¤Î¥Ó¥ë¥É¤È¼Â¹Ô¤Ë Perl 5 ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¼¨¤·¤Þ¤¹¡£
PERL  
PERL_VERSION ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë Perl ¤Î´°Á´¤Ê¥Ð¡¼¥¸¥ç¥ó (¤¿¤È¤¨¤Ð 5.00503)¡£
PERL_VER ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë Perl ¤Î¥Ð¡¼¥¸¥ç¥ó¤Îû½Ì·Á (¤¿¤È¤¨¤Ð 5.005)¡£
PERL_LEVEL ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë Perl ¤Î MNNNPP ·Á¼°¤ÎÀ°¿ô¤Çɽ¤µ¤ì¤ë¥Ð¡¼¥¸¥ç¥ó (¤¿¤È¤¨¤Ð 500503)¡£
PERL_ARCH Perl ¤¬¥¢¡¼¥­¥Æ¥¯¥Á¥ã°Í¸¤Î¥é¥¤¥Ö¥é¥ê¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¾ì½ê¡£ ¥Ç¥Õ¥©¥ë¥È¤Ï ${ARCH}-freebsd¡£

5.4 X11 ¤ÎÍøÍÑ

Table 5-2. X ¤òÍøÍѤ¹¤ë ports ÍѤÎÊÑ¿ô

USE_X_PREFIX ¤½¤Î port ¤Ï PREFIX ¤Ç¤Ï¤Ê¤¯ X11BASE ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤¹¡£
USE_XLIB ¤½¤Î port ¤Ï X ¥é¥¤¥Ö¥é¥ê¤ò»ÈÍѤ·¤Þ¤¹¡£
USE_MOTIF ¤½¤Î port ¤Ï Motif ¥Ä¡¼¥ë¥­¥Ã¥È¤ò»ÈÍѤ·¤Þ¤¹¡£ USE_XPM ¤¬¼«Æ°Åª¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
USE_IMAKE ¤½¤Î port ¤Ï imake ¤ò»ÈÍѤ·¤Þ¤¹¡£USE_X_PREFIX ¤¬¼«Æ°Åª¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
XMKMF xmkmf ¤¬ PATH ¤Ë¤Ê¤¤¾ì¹ç¤Ë¥Ñ¥¹¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ ¥Ç¥Õ¥©¥ë¥È¤Ï xmkmf -a ¤Ë¤Ê¤ê¤Þ¤¹¡£

5.5 automake, autoconf ¤ª¤è¤Ó libtool ¤ÎÍøÍÑ

Table 5-3. automake, autoconf ¤Þ¤¿¤Ï libtool ¤ò»ÈÍѤ¹¤ë ports ÍѤÎÊÑ¿ô

ÊÑ¿ô °ÕÌ£
USE_AUTOMAKE ¤½¤Î port ¤Ï automake ¤ò»ÈÍѤ·¤Þ¤¹¡£ USE_AUTOCONF ¤È USE_AUTOMAKE_VER?=14 ¤¬¼«Æ°Åª¤ËÀßÄꤵ¤ì¤Þ¤¹¡£
AUTOMAKE automake ¤¬ PATH ¤Ë´Þ¤Þ¤ì¤Ê¤¤¾ì¹ç¤Î¥Õ¥ë¥Ñ¥¹¡£
USE_AUTOMAKE_VER ¤½¤Î port ¤Ï automake ¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤ÎÊÑ¿ô¤ÎÍ­¸ú¤ÊÃÍ¤Ï 14 ¤È 15 ¤Ç¡¢AUTOMAKE_DIR ¤ª¤è¤Ó ACLOCAL_DIR ÊÑ¿ô¤¬Å¬ÀÚ¤ÊÃͤËÀßÄꤵ¤ì¤Þ¤¹¡£
AUTOMAKE_ARGS USE_AUTOMAKE_VER ¤¬ÀßÄꤵ¤ì¤Æ¤¤¤¿¾ì¹ç¤Ë AUTOMAKE ¤ËÅϤ¹ 1 ¤Ä¤Þ¤¿¤Ï¤½¤ì°Ê¾å¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô
AUTOMAKE_ENV AUTOMAKE ¤ò¼Â¹Ô¤¹¤ëÁ°¤ËÀßÄꤹ¤ë 1 ¤Ä¤Þ¤¿¤Ï¤½¤ì°Ê¾å¤Î´Ä¶­ÊÑ¿ô (¤È¤½¤ÎÃÍ)
ACLOCAL GNU aclocal ¤¬ PATH ¤Ë¤Ê¤¤¾ì¹ç¤Ë¥Ñ¥¹¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¥Ç¥Õ¥©¥ë¥È¤Ï USE_AUTOMAKE_VER ÊÑ¿ô¤Ë±þ¤¸¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£
ACLOCAL_DIR GNU aclocal ¤Î¶¦Í­¥Ç¥£¥ì¥¯¥È¥ê¤Î¥Ñ¥¹¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ ¥Ç¥Õ¥©¥ë¥È¤Ï USE_AUTOMAKE_VER ÊÑ¿ô¤Ë±þ¤¸¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£
AUTOMAKE_DIR GNU automake ¤Î¶¦Í­¥Ç¥£¥ì¥¯¥È¥ê¤Î¥Ñ¥¹¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ ¥Ç¥Õ¥©¥ë¥È¤Ï USE_AUTOMAKE_VER ÊÑ¿ô¤Ë±þ¤¸¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£
USE_AUTOCONF_VER ¤½¤Î port ¤¬ autoconf ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥ÈÃÍ¤Ï 213 ¤Ç¤¹¡£
USE_AUTOCONF ¤½¤Î port ¤¬ autoconf ¤ò»ÈÍѤ¹¤ë¤³¤È¤ò»ØÄꤷ¤Þ¤¹¡£GNU_CONFIGURE ¤ª¤è¤Ó USE_AUTOCONF_VER?=213 ¤ò¼«Æ°Åª¤ËÀßÄꤷ¤Þ¤¹¡£
AUTOCONF GNU autoconf ¤¬ PATH ¤Ë¤Ê¤¤¾ì¹ç¤Ë¥Ñ¥¹¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¥Ç¥Õ¥©¥ë¥È¤Ï USE_AUTOCONF_VER ÊÑ¿ô¤ÎÃͤ˱þ¤¸¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£
AUTOCONF_ARGS autoconf ¤ËÅϤ¹¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô
AUTOCONF_ENV ¤³¤ÎÊÑ¿ô¤Ç»ØÄꤵ¤ì¤¿ ÊÑ¿ô=ÃÍ ¤ÎÁȤò autoconf ¤ò¼Â¹Ô¤¹¤ëÁ°¤Ë´Ä¶­ÊÑ¿ô¤È¤·¤ÆÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£
AUTOHEADER GNU autoheader ¤¬ PATH ¤Ë¤Ê¤¤¾ì¹ç¤Ë¥Ñ¥¹¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¥Ç¥Õ¥©¥ë¥È¤Ï USE_AUTOCONF_VER ¤ÎÃͤ˱þ¤¸¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£
AUTORECONF GNU autoreconf ¤¬ PATH ¤Ë¤Ê¤¤¾ì¹ç¤Ë¥Ñ¥¹¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¥Ç¥Õ¥©¥ë¥È¤Ï USE_AUTOCONF_VER ¤Ë±þ¤¸¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£
AUTOSCAN GNU autoscan ¤¬ PATH ¤Ë¤Ê¤¤¾ì¹ç¤Ë¥Ñ¥¹¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¥Ç¥Õ¥©¥ë¥È¤Ï USE_AUTOCONF_VER ¤Ë±þ¤¸¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£
AUTOIFNAMES GNU autoifnames ¤¬ PATH ¤Ë¤Ê¤¤¾ì¹ç¤Ë¥Ñ¥¹¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¥Ç¥Õ¥©¥ë¥È¤Ï USE_AUTOCONF_VER ¤Ë±þ¤¸¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£
USE_LIBTOOL ¤½¤Î port ¤Ï libtool ¤ò»ÈÍѤ·¤Þ¤¹¡£GNU_CONFIGURE ¤ò¼«Æ°Åª¤ËÀßÄꤷ¤Þ¤¹¡£
LIBTOOL libtool ¤¬ PATH ¤Ë¤Ê¤¤¾ì¹ç¤Ë¥Ñ¥¹¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£
LIBTOOLFILES libtool ÍѤΥѥåÁ¥Õ¥¡¥¤¥ë¡£ ¥Ç¥Õ¥©¥ë¥È¤Ï USE_AUTOCONF ¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ì¤Ð aclocal.m4¡¢ ¤½¤ì°Ê³°¤Ï configure ¤Ç¤¹¡£
LIBTOOLFLAGS ltconfig ¤ËÄɲäÇÅϤ¹¥Õ¥é¥°¡£ ¥Ç¥Õ¥©¥ë¥È¤Ï --disable-ltlibs¡£

5.6 GNOME ¤ÎÍøÍÑ

FreeBSD/GNOME ¥×¥í¥¸¥§¥¯¥È¤Ï¡¢¤¢¤ëÆÃÄê¤Î port ¤¬»È¤Ã¤Æ¤¤¤ë GNOME ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÆÃÄꤹ¤ë¤¿¤á¤Ë GNOMENG ¤È¤¤¤¦¥·¥¹¥Æ¥à¤òÍøÍѤ·¤Æ¤¤¤Þ¤¹¡£ FreeBSD/GNOME ¥×¥í¥¸¥§¥¯¥È¤Î¥Ú¡¼¥¸¤Ë ¤½¤ÎÊÑ¿ô¤Î¤ï¤«¤ê¤ä¤¹¤¤°ìÍ÷ ¤¬¤¢¤ê¤Þ¤¹¡£


5.7 KDE ¤ÎÍøÍÑ

Table 5-4. KDE ¤òÍøÍѤ¹¤ë ports ÍѤÎÊÑ¿ô

USE_QT_VER ¤½¤Î port ¤Ï Qt ¥Ä¡¼¥ë¥­¥Ã¥È¤ò»ÈÍѤ·¤Þ¤¹¡£ ÀßÄê¤Ç¤­¤ëÃͤϡ¢ 1, 2 ¤ª¤è¤Ó 3 ¤Ç¡¢¤½¤ì¤¾¤ì»ÈÍѤ¹¤ë Qt ¤Î¥á¥¸¥ã¡¼¥Ð¡¼¥¸¥ç¥ó¤ò¼¨¤·¤Þ¤¹¡£ ¤³¤ì¤Ï¡¢MOC ¤È QTCPPFLAGS ¤ò¥Ç¥Õ¥©¥ë¥È¤ÎŬÀÚ¤ÊÃͤËÀßÄꤷ¤Þ¤¹¡£
USE_KDELIBS_VER ¤½¤Î port ¤Ï KDE ¥é¥¤¥Ö¥é¥ê¤ò»ÈÍѤ·¤Þ¤¹¡£ ÀßÄê¤Ç¤­¤ëÃͤϡ¢ 1, 2 ¤ª¤è¤Ó 3 ¤Ç¡¢¤½¤ì¤¾¤ì»ÈÍѤ¹¤ë KDE ¤Î¥á¥¸¥ã¡¼¥Ð¡¼¥¸¥ç¥ó¤ò¼¨¤·¤Þ¤¹¡£ °ÅÌÛ¤Ç USE_QT_VER ¤ËŬÀڤʥС¼¥¸¥ç¥ó¤òÀßÄꤷ¤Þ¤¹¡£
USE_KDEBASE_VER ¤½¤Î port ¤Ï KDE base ¤ò»ÈÍѤ·¤Þ¤¹¡£ ÀßÄê¤Ç¤­¤ëÃͤϡ¢ 1, 2 ¤ª¤è¤Ó 3 ¤Ç¡¢¤½¤ì¤¾¤ì»ÈÍѤ¹¤ë KDE ¤Î¥á¥¸¥ã¡¼¥Ð¡¼¥¸¥ç¥ó¤ò¼¨¤·¤Þ¤¹¡£ °ÅÌÛ¤Ç USE_KDELIBS_VER ¤ËŬÀڤʥС¼¥¸¥ç¥ó¤òÀßÄꤷ¤Þ¤¹¡£
MOC moc ¤Ø¤Î¥Ñ¥¹¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ ¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢USE_QT_VER ¤ÎÃͤ˱þ¤¸¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£
QTCPPFLAGS Qt ¤Î¥³¡¼¥É¤ò½èÍý¤¹¤ëºÝ¤Î CPPFLAGS ¤òÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï USE_QT_VER ¤ÎÃͤ˱þ¤¸¤ÆÀßÄꤵ¤ì¤Þ¤¹¡£

Chapter 6 MASTERDIR

¤½¤Î port ¤ÎÊÑ¿ô (¤¿¤È¤¨¤Ð²òÁüÅ٤Ȥ«»æ¤Î¥µ¥¤¥º¤Ê¤É) ¤ò ÊѤ¨¤¿¤ê¤·¤¿¡¢¾¯¤·¤À¤±°ã¤¦¥Ð¡¼¥¸¥ç¥ó¤òºîÀ®¤¹¤ëɬÍפ¬¤¢¤ë¤È¤­¤Ë¤Ï¡¢ ¥æ¡¼¥¶¤¬Ê¬¤ê¤ä¤¹¤¤¤è¤¦¤Ë package ¤´¤È¤ËÊÌ¡¹¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¡¢ ¤Ç¤­¤ë¤À¤± port ´Ö¤Ç¥Õ¥¡¥¤¥ë¤ò¶¦Í­¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤Û¤È¤ó¤É¤Î¾ì¹ç¡¢¤¦¤Þ¤¯ÊÑ¿ô¤ò»È¤¨¤Ð¡¢°ì¤Ä¤ò½ü¤¯¤¹¤Ù¤Æ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤Ï ¤È¤Æ¤âû¤¤ Makefile ¤òÃÖ¤¯¤À¤±¤ÇºÑ¤ß¤Þ¤¹¡£ ¤½¤Îû¤¤ Makefile ¤Ç¤Ï¡¢ MASTERDIR ¤ò»È¤Ã¤Æ¡¢ »Ä¤ê¤Î¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£ ¤Þ¤¿¡¢PKGNAMESUFFIX ¤Î °ìÉô¤ËÊÑ¿ô¤Ë»È¤Ã¤Æ¡¢package ¤¬ÊÌ¡¹¤Î̾Á°¤ò»ý¤Ä¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

¶ñÂÎŪ¤ÊÎã¤ò¼¨¤¹¤Î¤¬°ìÈ֤狼¤ê¤ä¤¹¤¤¤Ç¤·¤ç¤¦¡£ ¤³¤ì¤Ï japanese/xdvi300/Makefile ¤Î°ìÉô¤Ç¤¹¡£

PORTNAME=       xdvi
PORTVERSION=    17
PKGNAMEPREFIX=  ja-
PKGNAMESUFFIX=  ${RESOLUTION}
 :
# default
RESOLUTION?=   300
.if ${RESOLUTION} != 118 && ${RESOLUTION} != 240 && \
       ${RESOLUTION} != 300 && ${RESOLUTION} != 400
       @${ECHO} "Error: invalid value for RESOLUTION: \"${RESOLUTION}\""
       @${ECHO} "Possible values are: 118, 240, 300 (default) and 400."
       @${FALSE}
.endif

japanese/xdvi300 ¤Ë¤Ï Makefile ¤Î¾¤ËÄ̾ï¤Î¥Ñ¥Ã¥Á¤ä¡¢ package ¥Õ¥¡¥¤¥ëÅù¤¬ÃÖ¤«¤ì¤Æ¤¤¤Þ¤¹¡£ ¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç make ¤ò¼Â¹Ô¤¹¤ë¤È¡¢ ¥Ç¥Õ¥©¥ë¥È¤Î²òÁüÅÙ (300) ¤ò»È¤Ã¤Æ¡¢ ÉáÄÌ¤Ë port ¤Î¥Ó¥ë¥É¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£

¾¤Î²òÁüÅ٤˴ؤ·¤Æ¤¤¤¦¤È¡¢ xdvi118/Makefile ¤Ë ɬÍפʤΤϤ³¤ì¤À¤±¤Ç¤¹:

RESOLUTION=     118
MASTERDIR=      ${.CURDIR}/../xdvi300

.include "${MASTERDIR}/Makefile"

(xdvi240/Makefile ¤ä xdvi400/Makefile ¤âƱÍͤΤâ¤Î¤Ë¤Ê¤ê¤Þ¤¹)¡£ bsd.port.mk ¤Ï¡¢ MASTERDIR ¤ÎÄêµÁ¤«¤é FILESDIR ¤ä SCRIPTDIR Åù¤Î Ä̾ï¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤¬ xdvi300 °Ê²¼¤Ë¸ºß¤¹¤ë¤³¤È¤òÍý²ò¤·¤Þ¤¹¡£ RESOLUTION=118 ¤Î¹Ô¤¬¡¢ xdvi300/Makefile ¤Î RESOLUTION=300 ¤Î¹Ô¤ò¾å½ñ¤­¤·¡¢ port ¤Ï²òÁüÅÙ¤ò 118 ¤È¤·¤ÆºîÀ®¤µ¤ì¤Þ¤¹¡£


Chapter 7 ¶¦Í­¥é¥¤¥Ö¥é¥ê¤Î¥Ð¡¼¥¸¥ç¥ó

¤Þ¤º ¶¦Í­¥é¥¤¥Ö¥é¥ê¤Î¥Ð¡¼¥¸¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Î»Ø¿Ë¤òÆÉ¤ó¤Ç¡¢ °ìÈÌŪ¤Ë¶¦Í­¥é¥¤¥Ö¥é¥ê¤Î¥Ð¡¼¥¸¥ç¥ó¤ò¤É¤¦¤¹¤ì¤ÐÎɤ¤¤«¤òÍý²ò¤·¤Æ¤¯¤À¤µ¤¤¡£ ¥½¥Õ¥È¥¦¥§¥¢¤Îºî¼Ô¤Ï¼«Ê¬¤¬¤·¤Æ¤¤¤ë¤³¤È¤òÍý²ò¤·¤Æ¤¤¤ë¤È¡¢ ÌÕÌÜŪ¤Ë¿®¤¸¤Æ¤¤¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£Â¿¤¯¤Î¾ì¹ç¤ÏÍý²ò¤·¤Æ¤¤¤Ê¤¤¤Î¤Ç¤¹¡£ ºÙÉô¤Ë¤ï¤¿¤Ã¤ÆÃí°Õ¿¼¤¯¹Íθ¤¹¤ë¤³¤È¤ÏÂçÊѽÅÍפǤ¹¡£¤Ê¤¼¤Ê¤é²æ¡¹¤Ï¡¢ ¸ß´¹À­¤¬¤Ê¤¤¤«¤â¤·¤ì¤Ê¤¤ÂçÎ̤Υ½¥Õ¥È¥¦¥§¥¢¤ò¶¦Â¸¤µ¤»¤è¤¦¤È¤¹¤ëÆÃ¼ì¤Ê¾õ¶·¤Ë¤¢¤ë¤«¤é¤Ç¤¹¡£ ¤à¤«¤·¡¢ÉÔÃí°Õ¤Ê port ¤ÎƳÆþ¤¬¶¦Í­¥é¥¤¥Ö¥é¥ê¤Ë´Ø¤¹¤ë½ÅÂç¤ÊÌäÂê¤ò°ú¤­µ¯¤·¤Æ¤·¤Þ¤Ã¤¿¤³¤È¤¬¤¢¤ê¤Þ¤¹ (¤Ê¤¼ jpeg-6b ¤Î¶¦Í­¥é¥¤¥Ö¥é¥ê¤Î¥Ð¡¼¥¸¥ç¥óÈֹ椬 9 ¤Ê¤Î¤«¡¢º£¤Þ¤ÇÉԻ׵Ĥ˻פ俤³¤È¤Ï¤¢¤ê¤Þ¤»¤ó¤«?)¡£ ¤â¤·µ¿Ì䤬¤¢¤ì¤Ð¡¢FreeBSD ports ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È ¤Ë¥á¡¼¥ë¤òÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£ ¤Û¤È¤ó¤É¤Î»þ´Ö¤ÏÀµ¤·¤¤¶¦Í­¥é¥¤¥Ö¥é¥ê¤Î¥Ð¡¼¥¸¥ç¥ó¤ò·è¤á¤ë¤³¤È¤È¡¢ ¤½¤ì¤ò¼Â¸½¤¹¤ë¤¿¤á¤Î¥Ñ¥Ã¥Á¤òºîÀ®¤¹¤ë¤³¤È¤Ë½ª»Ï¤·¤Þ¤¹¡£


Chapter 8 ¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸

MAN[1-9LN] ÊÑ¿ô¤Ë»ØÄꤷ¤¿¥Þ¥Ë¥å¥¢¥ë¤Ï ¼«Æ°Åª¤Ë pkg-plist ¤ËÄɲ䵤ì¤Þ¤¹ (¤Ä¤Þ¤ê¡¢¥Þ¥Ë¥å¥¢¥ë¤ò pkg-plist ¤Ë²Ã¤¨¤Æ¤Ï¤¤¤±¤Þ¤»¤ó-- pkg-plist ¤ÎÀ¸À®¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£ ¤Þ¤¿¡¢/etc/make.conf Ãæ¤Î NOMANCOMPRESS ¤ÎÀßÄê¤Ë½¾¤Ã¤Æ¡¢¥¤¥ó¥¹¥È¡¼¥ë»þ¤Ë ¥Þ¥Ë¥å¥¢¥ë¤ò¼«Æ°Åª¤Ë°µ½Ì¤·¤¿¤êÉü¸µ¤·¤¿¤ê¤·¤Þ¤¹¡£

¤½¤Î port ¤¬¡¢¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤ä¥Ï¡¼¥É¥ê¥ó¥¯¤òÍѤ¤¤Æ¡¢ Ê£¿ô¤Î¥Õ¥¡¥¤¥ë̾¤ò»ý¤Ä¥Þ¥Ë¥å¥¢¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢ ¤½¤ì¤é¤ò¼±Ê̤¹¤ë¤¿¤á¤Ë MLINKS ÊÑ¿ô¤ò»ÈÍѤ·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ port ¤Ë¤è¤Ã¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤¿¥ê¥ó¥¯¤Ï¡¢ °Õ¿Þ¤·¤¿¥Õ¥¡¥¤¥ë¤ò¤­¤Á¤ó¤È»Ø¤·¤Æ¤¤¤ë¤«¤É¤¦¤«³Îǧ¤¹¤ë¤¿¤á¡¢ bsd.port.mk ¤Ë¤è¤Ã¤Æºï½ü¤µ¤ì¤¿¤ê¡¢ ºÆºîÀ®¤µ¤ì¤¿¤ê¤·¤Þ¤¹¡£ MLINKS ¤Ë»ØÄꤵ¤ì¤¿¥Þ¥Ë¥å¥¢¥ë¤â¡¢ pkg-plist ¤Ë´Þ¤á¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£

¥Þ¥Ë¥å¥¢¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë»þ¤Ë°µ½Ì¤¹¤ë¤«¤É¤¦¤«¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢ MANCOMPRESSED ÊÑ¿ô¤ò»ÈÍѤ·¤Þ¤¹¡£ ¤³¤ÎÊÑ¿ô¤Ï yes, no ¤½¤·¤Æ maybe ¤Î»°¤Ä¤ÎÃͤò¤È¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡¢ yes ¤Ï¥Þ¥Ë¥å¥¢¥ë¤¬´û¤Ë°µ½Ì¤µ¤ì¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤³¤È¡¢ no ¤Ï°µ½Ì¤µ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¡¢ maybe ¤Ï´û¤Ë¤½¤Î¥½¥Õ¥È¥¦¥§¥¢¤¬ NOMANCOMPRESS ¤ÎÃͤ˽¾¤Ã¤Æ¤¤¤Æ¡¢ bsd.port.mk ¤ÏÆÃÊ̤ʤˤ⤹¤ëɬÍפ¬¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£

USE_IMAKE ¤¬¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤Æ¡¢ NO_INSTALL_MANPAGES ¤¬¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢ MANCOMPRESSED ¤Ï¼«Æ°Åª¤Ë yes ¤ËÀßÄꤵ¤ì¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¤Ë¤Ï¡¢MANCOMPRESSED ¤Ï no ¤ËÀßÄꤵ¤ì¤Þ¤¹¡£ ¤½¤Î port ¤Ë¤È¤Ã¤Æ¡¢¥Ç¥Õ¥©¥ë¥È¤ÎÀßÄ꤬ŬÀڤǤʤ¤¾ì¹ç°Ê³°¤Ë¤Ï¡¢ ÌÀ¼¨Åª¤ËÀßÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£

PREFIX °Ê³°¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Î²¼¤Ë¥Þ¥Ë¥å¥¢¥ë¤òÃÖ¤¯¤è¤¦¤Ê port ¤Ç¤Ï¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ò MANPREFIX ¤Ç»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤µ¤é¤Ë¡¢¤¤¤¯¤Ä¤«¤Î Perl ¥â¥¸¥å¡¼¥ë¤Î ports ¤Î¤è¤¦¤Ë¡¢ ÆÃÄê¤Î¥»¥¯¥·¥ç¥ó¤Î¥Þ¥Ë¥å¥¢¥ë¤À¤±¤òÈóɸ½à¤Î¾ì½ê¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¾ì¹ç¡¢ ¸Ä¡¹¤Î¥Þ¥Ë¥å¥¢¥ë¤Î¥Ñ¥¹¤ò MANsectPREFIX (¤³¤³¤Ç sect ¤Ï 1-9, L, ¤Þ¤¿¤Ï N ¤Î¤¤¤º¤ì¤«) ¤Ë¤è¤ê»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¥Þ¥Ë¥å¥¢¥ë¤¬¸À¸ìÆÃÍ­¤Î¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ËÃÖ¤«¤ì¤ë¾ì¹ç¤Ë¤Ï¡¢ ¤½¤Î¸À¸ì̾¤ò MANLANG ¤ËÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ÎÊÑ¿ô¤Î¥Ç¥Õ¥©¥ë¥ÈÃÍ¤Ï "" ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹ (¤Ä¤Þ¤ê¡¢±Ñ¸ì¤Î¤ß)¡£

¤³¤ì¤Ï¡¢Á´Éô¤ò¤Þ¤È¤á¤¿Îã¤Ç¤¹¡£

MAN1=           foo.1
MAN3=           bar.3
MAN4=           baz.4
MLINKS=         foo.1 alt-name.8
MANLANG=        "" ja
MAN3PREFIX=     ${PREFIX}/share/foobar
MANCOMPRESSED=  yes

¤³¤ì¤Ï¡¢¤³¤Î port ¤Ë¤è¤ê°Ê²¼¤Î 6 ¸Ä¤Î¥Õ¥¡¥¤¥ë¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¤³¤È¤òɽ¤·¤Æ¤¤¤Þ¤¹¡£

${PREFIX}/man/man1/foo.1.gz
${PREFIX}/man/ja/man1/foo.1.gz
${PREFIX}/share/foobar/man/man3/bar.3.gz
${PREFIX}/share/foobar/man/ja/man3/bar.3.gz
${PREFIX}/man/man4/baz.4.gz
${PREFIX}/man/ja/man4/baz.4.gz

¤µ¤é¤Ë ${PREFIX}/man/man8/alt-name.8.gz ¤¬¤³¤Î port ¤Ë¤è¤Ã¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¤«¤É¤¦¤«¤ï¤«¤ê¤Þ¤»¤ó¤¬¡¢ ¤½¤ì¤È¤Ï̵´Ø·¸¤Ë foo(1) ¤È alt-name(8) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò»Ø¤¹¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£


Chapter 9 Motif ¤òɬÍפȤ¹¤ë port

¥³¥ó¥Ñ¥¤¥ë¤Ë Motif ¥é¥¤¥Ö¥é¥ê¤òɬÍפȤ¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬¤¤¤¯¤Ä¤«¤¢¤ê¤Þ¤¹ (Motif ¼«ÂΤÏÍ­ÎÁ¤Î¤â¤Î¤¬¤¤¤¯¤Ä¤«¤Î²ñ¼Ò¤«¤é¼ê¤ËÆþ¤ê¤Þ¤¹¤·¡¢ x11-toolkits/lesstif ¤Ë¤Ï¿¤¯¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òưºî¤µ¤»¤ë¤³¤È¤¬²Äǽ¤Ê̵ÎÁ¤Î¸ß´¹¥é¥¤¥Ö¥é¥ê¤â¤¢¤ê¤Þ¤¹)¡£ Motif ¤Ï¹­¤¯»È¤ï¤ì¤Æ¤¤¤ë¥Ä¡¼¥ë¥­¥Ã¥È¤Ç¤¹¤·¡¢ Í­ÎÁ¤Î¤â¤Î¤Î¥é¥¤¥»¥ó¥¹¤Ç¤â¥é¥¤¥Ö¥é¥ê¤òÀÅŪ¤Ë¥ê¥ó¥¯¤·¤¿¼Â¹Ô·Á¼°¤ÎºÆÇÛÉÛ¤¬Ç§¤á¤é¤ì¤Æ¤¤¤ë¾ì¹ç¤¬Â¿¤¤¤Î¤Ç¡¢ Motif ¤òɬÍפȤ¹¤ë¥½¥Õ¥È¥¦¥§¥¢¤ò´Êñ¤Ë (port ¤«¤é¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¿Í¡¹¤Î¤¿¤á¤Ë) ưŪ¤Ë¤Ç¤â¡¢ (package ¤òÇÛÉÛ¤¹¤ë¿Í¡¹¤Î¤¿¤á¤Ë) ÀÅŪ¤Ë¤Ç¤â¥ê¥ó¥¯¤Ç¤­¤ë¤è¤¦¤Ê»ÅÁȤߤ¬ÍѰդµ¤ì¤Æ¤¤¤Þ¤¹¡£


9.1 USE_MOTIF

Motif ¤¬Ìµ¤¤¤È¥³¥ó¥Ñ¥¤¥ë¤Ç¤­¤Ê¤¤ port ¤Î Makefile ¤Ç¤Ï¡¢¤³¤ÎÊÑ¿ô¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤Ë¤è¤ê¡¢Motif ¤ò»ý¤Ã¤Æ¤¤¤Ê¤¤¿Í¤¬¤³¤Î port ¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤è¤¦¤È¤¹¤ë¤Î¤ò̤Á³¤ËËɤ®¤Þ¤¹¡£


9.2 MOTIFLIB

¤³¤ÎÊÑ¿ô¤Ï bsd.port.mk ¤Ë¤è¤Ã¤Æ Motif ¥é¥¤¥Ö¥é¥ê¤Î»ØÄê¤ËÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹¡£¥½¡¼¥¹Æâ¤Î Makefile ¤ä Imakefile ¤Ç Motif ¥é¥¤¥Ö¥é¥ê¤ò»ØÄꤷ¤Æ¤¤¤ë¤È¤³¤í¤ò¡¢ ¤³¤ÎÊÑ¿ô¤ËÃÖ¤­´¹¤¨¤ë¤è¤¦¤Ë¥Ñ¥Ã¥Á¤òŬÍѤ·¤Æ¤¯¤À¤µ¤¤¡£

ÂåɽŪ¤ÊÎã¤È¤·¤Æ¤Ï°Ê²¼¤ÎÆó¤Ä¤¬¤¢¤²¤é¤ì¤Þ¤¹:

  1. Makefile ¤« Imakefile ¤ÎÃæ¤Ç Motif ¥é¥¤¥Ö¥é¥ê¤¬ -lXm ¤È¤·¤Æ»È¤ï¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢ ¤«¤ï¤ê¤Ë MOTIFLIB ¤È½ñ¤¤¤Æ¤¯¤À¤µ¤¤¡£

  2. Imakefile ¤ÎÃæ¤Ç XmClientLibs ¤¬»È¤ï¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤ì¤ò ${MOTIFLIB} ${XTOOLLIB} ${XLIB} ¤È½ñ¤­¤«¤¨¤Æ¤¯¤À¤µ¤¤¡£

¤Ê¤ª MOTIFLIB ¤ÏÄ̾ -L/usr/X11R6/lib -lXm ¤« /usr/X11R6/lib/libXm.a ¤ËÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹¡£ ¤·¤¿¤¬¤Ã¤ÆÁ°¤Ë -L ¤ä -l ¤ò¤Ä¤±¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£


Chapter 10 X11 ¤Î¥Õ¥©¥ó¥È

¤â¤·¡¢¤¢¤Ê¤¿¤Î port ¤¬ X Window System ¤Î¥Õ¥©¥ó¥È¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢ ¤½¤ì¤é¤ò X11BASE/lib/X11/fonts/local ¤ËÃÖ¤¯¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï XFree86 3.3.3 ¤Ç¿·Àߤµ¤ì¤¿¤â¤Î¤Ç¤¹¡£ ¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤¬Â¸ºß¤·¤Ê¤±¤ì¤ÐºîÀ®¤·¤Æ¡¢¥æ¡¼¥¶¤Ë XFree86 ¤ò 3.3.3 ¤«¤½¤ì¤è¤ê¿·¤·¤¤¤â¤Î¤Ë¹¹¿·¤¹¤ë¤«¡¢ ¾¯¤Ê¤¯¤È¤â¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ò /etc/XF86Config ¤Î¥Õ¥©¥ó¥È¥Ñ¥¹¤Ë²Ã¤¨¤ë¤è¤¦¤ËÂ¥¤¹¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£


Chapter 11 Info ¥Õ¥¡¥¤¥ë

¿·¤·¤¤ÈǤΠtexinfo (2.2.2-RELEASE ¤ª¤è¤Ó¤½¤ì°Ê¹ß¤ËÆþ¤Ã¤Æ¤¤¤Þ¤¹) ¤Ë¤Ï install-info ¤È¤¤¤¦¥³¥Þ¥ó¥É¤¬´Þ¤Þ¤ì¤Æ¤ª¤ê¡¢ dir ¥Õ¥¡¥¤¥ë¤Ë¹àÌܤòÄɲä·¤¿¤êºï½ü¤·¤¿¤ê¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤â¤·¡¢¤¢¤Ê¤¿¤Î port ¤¬ info ʸ½ñ¤ò¥¤¥ó¥¹¥È¡¼ ¥ë¤¹¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢ °Ê²¼¤Î»Ø¼¨¤Ë½¾¤Ã¤Æ¤½¤Î port ¤ª¤è¤Ó package ¤¬Àµ¤·¤¯¥æ¡¼¥¶¤Î PREFIX/info/dir ¥Õ¥¡¥¤¥ë¤ò¹¹¿·¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤ (¤³¤Î¥»¥¯¥·¥ç¥ó¤Ï¤È¤Æ¤âŤ¯¤Æ¤¹¤¤¤Þ¤»¤ó¡£ ¤·¤«¤· info ¥Õ¥¡¥¤¥ë¤òºî¤ê¤¢¤²¤ë¤¿¤á¤Ë¤Ï¤³¤ì¤é¤ÏÉԲķç¤Ç¤¹¡£ Àµ¤·¤¯¹Ô¤Ê¤¨¤ÐÈþ¤·¤¤¥ê¥¹¥È¤¬¤Ç¤­¤Þ¤¹¤Î¤Ç¡¢ ¿ÉÊú¤·¤Æ¤¯¤À¤µ¤¤! :-)

¤Þ¤º¡¢¤³¤ì¤òÃΤäƤª¤«¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£

% install-info --help
install-info [OPTION]... [INFO-FILE [DIR-FILE]]
  Install INFO-FILE in the Info directory file DIR-FILE.
  (ÌõÃí: Info ¥Ç¥£¥ì¥¯¥È¥ê¤Î INFO-FILE ¤ò DIR-FILE ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë)
Options:
--delete          Delete existing entries in INFO-FILE;
                    don't insert any new entries.
                  (ÌõÃí: INFO-FILE ¤ÎÃæ¤Î¹àÌܤòºï½ü¡¢
                   ¿·¤·¤¤¹àÌܤϰìÀÚÄɲ䷤ʤ¤¡£)
 :
--entry=TEXT      Insert TEXT as an Info directory entry.
                  (ÌõÃí: TEXT ¤ò Info ¥Ç¥£¥ì¥¯¥È¥ê¤Î¹àÌܤȤ·¤ÆÄɲ乤롣)
 :
--section=SEC     Put this file's entries in section SEC of the directory.
                  (ÌõÃí: ¤³¤Î¥Õ¥¡¥¤¥ë¤Î¹àÌܤò Info ¥Ç¥£¥ì¥¯¥È¥ê¤Î SEC
                   ¤È¤¤¤¦¥»¥¯¥·¥ç¥ó¤ËÃÖ¤¯¡£)
 :

Note: ¤³¤Î¥×¥í¥°¥é¥à¤Ï¡¢¼ÂºÝ¤Ë¤Ï info ¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Þ¤»¤ó¡£ ñ¤Ë dir ¥Õ¥¡¥¤¥ë¤Ë¥¨¥ó¥È¥ê¤òÁÞÆþ¤·¤¿¤êºï½ü¤·¤¿¤ê¤¹¤ë¤À¤±¤Ç¤¹¡£

¤³¤ì¤«¤é¡¢install-info ¤ò»ÈÍѤ¹¤ë¤è¤¦¤Ë¡¢ports ¤òÊÑ´¹¤¹¤ë 7 Ãʳ¬¤Î¹©Äø¤ò¼¨¤·¤Þ¤¹¡£ Îã¤È¤·¤Æ editors/emacs ¤ò»ÈÍѤ·¤Þ¤¹¡£

  1. ¤Þ¤º¡¢texinfo ¤Î¥½¡¼¥¹¤ò¸«¤Æ¡¢ @dircategory ¤È @direntry ʸ¤¬¤Ê¤¤¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¡¢ ¤½¤ì¤é¤òÄɲ乤ë¥Ñ¥Ã¥Á¤òºîÀ®¤·¤Þ¤¹¡£°Ê²¼¤Ï¡¢ ¤³¤³¤Ç¤ÎÎã¤Ç¤Î patch¤Î°ìÉô¤Ç¤¹:

    --- ./man/vip.texi.org  Fri Jun 16 15:31:11 1995
    +++ ./man/vip.texi      Tue May 20 01:28:33 1997
    @@ -2,6 +2,10 @@
    
     @setfilename ../info/vip
     @settitle VIP
    +@dircategory The Emacs editor and associated tools
    +@direntry
    +* VIP: (vip).          A VI-emulation for Emacs.
    +@end direntry
    
     @iftex
     @finalout
     :
    

    ¥Õ¥©¡¼¥Þ¥Ã¥È¤Ë¤Ä¤¤¤Æ¤Ï¸«¤ì¤Ð¤ï¤«¤ë¤È»×¤¤¤Þ¤¹¡£ dir ¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤ËɬÍפʹàÌܤò½ñ¤¤¤Æ¤ª¤¤¤Æ¤¯¤ì¤ëºî¼Ô¤â¿¤¤¤Î¤Ç¡¢ ¤Þ¤º¼«Ê¬¤Ç½ñ¤¯Á°¤Ë¤µ¤¬¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£ ¤Þ¤¿¡¢´Ø·¸¤¹¤ë ports ¤âÄ´¤Ù¤Æ¡¢ ¥»¥¯¥·¥ç¥ó¤Î̾Á°¤ä¥¤¥ó¥Ç¥ó¥È¤Ê¤É¤¬¤­¤Á¤ó¤È¹ç¤Ã¤Æ¤¤¤ë¤«¤É¤¦¤«¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤ (¹àÌܤΥƥ­¥¹¥È ¤Ï¡¢¤¹¤Ù¤Æ 4 ¤Ä¤á¤Î¥¿¥Ö¡¦¥¹¥È¥Ã¥× (tab stop) ¤«¤é»Ï¤á¤ë¤³¤È¤ò¿ä¾©¤·¤Þ¤¹)¡£

    Note: °ì¤Ä¤Î¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ°ì¤Ä¤Î info ¤Î¹àÌܤ·¤«½ñ¤±¤Ê¤¤¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤ì¤Ï install-info --delete ¤Î¥Ð¥°¤Ë¤è¤ê ¥»¥¯¥·¥ç¥ó¤ËÊ£¿ô¤Î¹àÌܤò½ñ¤¤¤Æ¤â½é¤á¤Î°ì¤Ä¤Î¹àÌܤ·¤«ºï½ü¤·¤Æ¤¯¤ì¤Ê¤¤¤«¤é¤Ç¤¹¡£

    texinfo ¤Î¥½¡¼¥¹¤Ë¥Ñ¥Ã¥Á¤òŬÍѤ¹¤ëÂå¤ï¤ê¤Ë dir ¤Î¹àÌܤò install-info ¤Î°ú¿ô (--section, --entry) ¤È¤·¤ÆÍ¿¤¨¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¤¬¡¢¤¢¤Þ¤êÎɤ¤ÊýË¡¤È¤Ï¸À¤¨¤Þ¤»¤ó¡£ ¤Ê¤¼¤Ê¤éƱ¤¸¾ðÊó¤ò»°¤Ä¤Î¾ì½ê (Makefile, pkg-plist ¤Î @exec/@unexec: °Ê²¼»²¾È) ¤Ë½ÅÊ£¤·¤Æ½ñ¤¯É¬Íפ¬¤¢¤ë¤«¤é¤Ç¤¹¡£ ¤·¤«¤·¡¢ÆüËܸì (¤¢¤ë¤¤¤Ï¡¢Â¾¤Î¥Þ¥ë¥Á¥Ð¥¤¥È¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°) ¤Î info ¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¾ì¹ç¤Ë¤Ï install-info ¤ÎÆÃÊ̤ʰú¿ô¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ë¤Ç¤·¤ç¤¦¡£ ¤Ê¤¼¤Ê¤é makeinfo ¤¬¤³¤Î¤è¤¦¤Ê texinfo ¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤ò°·¤¨¤Ê¤¤¤«¤é¤Ç¤¹¡£ (¤³¤Î¤è¤¦¤Ê¤â¤Î¤ò¤É¤¦°·¤¦¤«¤ÎÎã¤È¤·¤Æ¤Ï japanese/skk ¤Î Makefile ¤È pkg-plist ¤ò¸«¤Æ¤¯¤À¤µ¤¤)¡£

  2. port¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÌá¤Ã¤Æ make clean; make ¤ò¼Â¹Ô¤·¡¢info ¥Õ¥¡¥¤¥ë¤¬ texinfo ¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤«¤éºÆ¤ÓÀ¸À®¤µ¤ì¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ texinfo ¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤Î¤Û¤¦¤¬ info ¥Õ¥¡¥¤¥ë¤è¤ê¤â¿·¤·¤¤¤Î¤Ç make ¤ÈÆþÎϤ¹¤ì¤Ð info ¥Õ¥¡¥¤¥ë¤ÏºÆ¹½ÃÛ¤µ¤ì¤ë¤Ï¤º¤Ç¤¹¤¬¡¢Â¿¤¯¤Î Makefile ¤Ë¤Ï info ¥Õ¥¡¥¤¥ë¤ÎÀµ¤·¤¤°Í¸´Ø·¸¤¬½ñ¤«¤ì¤Æ¤¤¤Þ¤»¤ó¡£ Emacs ¤Î¾ì¹ç¡¢ info ¥Õ¥¡¥¤¥ë¤ÎºÆ¹½ÃÛ¤ÎºÝ¤Ë¤Ï man ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë¹ß¤ê¤ë¤è¤¦¤Ë ¥á¥¤¥ó¤Î Makefile.in ¤Ë¥Ñ¥Ã¥Á¤òŬÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤·¤¿¡£

    --- ./Makefile.in.org   Mon Aug 19 21:12:19 1996
    +++ ./Makefile.in       Tue Apr 15 00:15:28 1997
    @@ -184,7 +184,7 @@
     # Subdirectories to make recursively.  `lisp' is not included
     # because the compiled lisp files are part of the distribution
     # and you cannot remake them without installing Emacs first.
    -SUBDIR = lib-src src
    +SUBDIR = lib-src src man
    
     # The makefiles of the directories in $SUBDIR.
     SUBDIR_MAKEFILES = lib-src/Makefile man/Makefile src/Makefile oldXMenu/Makefile lwlib/Makefile
    --- ./man/Makefile.in.org       Thu Jun 27 15:27:19 1996
    +++ ./man/Makefile.in   Tue Apr 15 00:29:52 1997
    @@ -66,6 +66,7 @@
            ${srcdir}/gnu1.texi \
            ${srcdir}/glossary.texi
    
    +all: info
     info: $(INFO_TARGETS)
    
     dvi: $(DVI_TARGETS)
    

    ¥á¥¤¥ó¤Î Makefile ¤«¤é¤Ï¡¢ all ¤È¤·¤Æ¸Æ¤Ó¤¿¤¤¤Î¤Ç¤¹¤¬¡¢ man ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Î¥Ç¥Õ¥©¥ë¥È¥¿¡¼¥²¥Ã¥È¤Ï info ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ ¤³¤Î¤¿¤á¡¢Æó¤ÄÌܤΥѥåÁ¤¬É¬Íפˤʤê¤Þ¤¹¡£ ¤Þ¤¿¡¢info info ¥Õ¥¡¥¤¥ë¤Î¥¤¥ó¥¹¥È¡¼¥ë¤âºï½ü¤·¤Þ¤·¤¿¡£ ¤Ê¤¼¤Ê¤é¡¢¤½¤ì¤ÏƱ¤¸Ì¾Á°¤Ç¤¹¤Ç¤Ë /usr/share/info ¤Ë¤¢¤ë¤«¤é¤Ç¤¹ (¤½¤Î¥Ñ¥Ã¥Á¤Ï¤³¤³¤Ç¤Ï¼¨¤·¤Þ¤»¤ó)¡£

  3. ¤â¤·¡¢Makefile ¤Ë dir ¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¸Ä½ê¤¬¤¢¤ì¤Ðºï½ü¤·¤Þ¤¹¡£ ¤¢¤Ê¤¿¤Î port ¤¬¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£ ¤Þ¤¿¡¢dir ¥Õ¥¡¥¤¥ë¤ò²õ¤·¤Æ¤·¤Þ¤¦¤è¤¦¤Ê¥³¥Þ¥ó¥É¤ÎÎà¤âºï½ü¤·¤Þ¤¹¡£

    --- ./Makefile.in.org   Mon Aug 19 21:12:19 1996
    +++ ./Makefile.in       Mon Apr 14 23:38:07 1997
    @@ -368,14 +368,8 @@
            if [ `(cd ${srcdir}/info && /bin/pwd)` != `(cd ${infodir} && /bin/pwd)` ]; \
            then \
              (cd ${infodir};  \
    -          if [ -f dir ]; then \
    -            if [ ! -f dir.old ]; then mv -f dir dir.old; \
    -            else mv -f dir dir.bak; fi; \
    -          fi; \
               cd ${srcdir}/info ; \
    -          (cd $${thisdir}; ${INSTALL_DATA} ${srcdir}/info/dir ${infodir}/dir); \
    -          (cd $${thisdir}; chmod a+r ${infodir}/dir); \
               for f in ccmode* cl* dired-x* ediff* emacs* forms* gnus* info* message* mh-e* sc* vip*; do \
                 (cd $${thisdir}; \
                  ${INSTALL_DATA} ${srcdir}/info/$$f ${infodir}/$$f; \
                  chmod a+r ${infodir}/$$f); \
    
  4. (¤³¤ì¤Ï¡¢´û¸¤Îport¤ò½¤Àµ¤¹¤ë¤È¤­¤Î¤ßɬÍפǤ¹¡£) pkg-plist ¤ò¸«¤Æ¡¢ info/dir ¤Ë¥Ñ¥Ã¥Á¤ò¤¢¤Æ¤è¤¦¤È¤¹¤ë¤â¤Î¤¹¤Ù¤Æ¤òºï½ü¤·¤Þ¤¹¡£¤³¤ì¤é¤Ï pkg-install ¤ä¤½¤Î¾¤Î¥Õ¥¡¥¤¥ë¤Ë¤â¤¢¤ë¤«¤â¤·¤ì¤Ê¤¤¤Î¤Ç¡¢ ¤¤¤í¤¤¤í¤µ¤¬¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£

    Index: pkg-plist
    ===================================================================
    RCS file: /usr/cvs/ports/editors/emacs/pkg/pkg-plist,v
    retrieving revision 1.15
    diff -u -r1.15 pkg-plist
    --- pkg-plist   1997/03/04 08:04:00     1.15
    +++ pkg-plist   1997/04/15 06:32:12
    @@ -15,9 +15,6 @@
     man/man1/emacs.1.gz
     man/man1/etags.1.gz
     man/man1/ctags.1.gz
    -@unexec cp %D/info/dir %D/info/dir.bak
    -info/dir
    -@unexec cp %D/info/dir.bak %D/info/dir
     info/cl
     info/cl-1
     info/cl-2
    
  5. post-install ¥¿¡¼¥²¥Ã¥È¤ò Makefile ¤Ë²Ã¤¨¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤¿ info ¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¤Ï¡¢ install-info ¤ò¼Â¹Ô¤¹¤ë¤è¤¦¤·¤Þ¤¹ (dir ¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¤Ë¤½¤ì¤òºîÀ®¤¹¤ë¤è¤¦¤Ë¤¹¤ëɬÍפϤʤ¯¤Ê¤ê¤Þ¤·¤¿¡£ install-info ¤Ï¤³¤Î¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Ê¤±¤ì¤Ð¼«Æ°Åª¤ËºîÀ®¤·¤Þ¤¹)¡£

    Index: Makefile
    ===================================================================
    RCS file: /usr/cvs/ports/editors/emacs/Makefile,v
    retrieving revision 1.26
    diff -u -r1.26 Makefile
    --- Makefile    1996/11/19 13:14:40     1.26
    +++ Makefile    1997/05/20 10:25:09     1.28
    @@ -20,5 +20,11 @@
     post-install:
     .for file in emacs-19.34 emacsclient etags ctags b2m
            strip ${PREFIX}/bin/${file}
     .endfor
    +.for info in emacs vip viper forms gnus mh-e cl sc dired-x ediff ccmode
    +       install-info ${PREFIX}/info/${info} ${PREFIX}/info/dir
    +.endfor
    
     .include <bsd.port.mk>
    
  6. pkg-plist ¤òÊÔ½¸¤·¤Æ¡¢Æ±¤¸Æ¯¤­¤ò¤¹¤ë @exec ʸ¡¢ ¤½¤ì¤Ë pkg_delete ¤Î¤¿¤á¤Ë @unexec ʸ¤ò²Ã¤¨¤Æ¤¯¤À¤µ¤¤¡£

    Index: pkg-plist
    ===================================================================
    RCS file: /usr/cvs/ports/editors/emacs/pkg-plist,v
    retrieving revision 1.15
    diff -u -r1.15 pkg-plist
    --- pkg-plist   1997/03/04 08:04:00     1.15
    +++ pkg-plist   1997/05/20 10:25:12     1.17
    @@ -16,7 +14,14 @@
     man/man1/etags.1.gz
     man/man1/ctags.1.gz
    +@unexec install-info --delete %D/info/emacs %D/info/dir
     :
    +@unexec install-info --delete %D/info/ccmode %D/info/dir
     info/cl
     info/cl-1
    @@ -87,6 +94,18 @@
     info/viper-3
     info/viper-4
    +@exec install-info %D/info/emacs %D/info/dir
     :
    +@exec install-info %D/info/ccmode %D/info/dir
     libexec/emacs/19.34/i386--freebsd/cvtmail
     libexec/emacs/19.34/i386--freebsd/digest-doc
    

    Note: @unexec install-info --delete ¥³¥Þ¥ó¥É¤Ï info ¥Õ¥¡¥¤¥ë¼«¿È¤è¤êÀè¤ËÃÖ¤­¡¢ ¥³¥Þ¥ó¥É¤¬¥Õ¥¡¥¤¥ë¤òÆÉ¤á¤ë¤è¤¦¤Ë¤·¤Æ¤ª¤«¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤Þ¤¿ @exec install-info ¥³¥Þ¥ó¥É¤Ï¡¢ info ¥Õ¥¡¥¤¥ë¤ª¤è¤Ó dir ¥Õ¥¡¥¤¥ë¤òºî¤ë @exec ¥³¥Þ¥ó¥É¤è¤ê¸å¤Ë¤ª¤«¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£

  7. ¥Æ¥¹¥È ¤ò¤·¤Æ½ÐÍè±É¤¨¤Ë´¶Éþ¤·¤Þ¤·¤ç¤¦ :) ³ÆÃʳ¬¤ÎÁ°¸å¤Ë dir ¥Õ¥¡¥¤¥ë¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤·¤ç¤¦¡£


Chapter 12 pkg-* ¥Õ¥¡¥¤¥ë

pkg-* ¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢ ¤Þ¤À¼è¤ê¾å¤²¤Æ¤¤¤Ê¤¤²¿¤«¤È½ÅÊõ¤Ê¥È¥ê¥Ã¥¯¤¬¤¤¤¯¤Ä¤«¤¢¤ê¤Þ¤¹¡£


12.1 pkg-message

¤â¤·¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¿Í¤Ë¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢ ¤½¤Î¥á¥Ã¥»¡¼¥¸¤ò pkg-message ¤ËÃÖ¤¯¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤³¤Îµ¡Ç½¤Ï pkg_add ¤Î¸å¤ÎÄɲäΥ¤¥ó¥¹¥È¡¼¥ë¼ê³¤­¤òɽ¼¨¤¹¤ë¤È¤­¤Ê¤É¤Ë½ÅÊõ¤·¤Þ¤¹¡£

Note: pkg-message ¥Õ¥¡¥¤¥ë¤Ï pkg-plist ¤Ë²Ã¤¨¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£ ¤Þ¤¿¡¢¤â¤·¥æ¡¼¥¶¤¬ package ¤Ç¤Ï¤Ê¤¯ port ¤ò»ÈÍѤ·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¼«Æ°Åª¤Ë¤Ïɽ¼¨¤µ¤ì¤Þ¤»¤ó¤Î¤Ç¡¢ ÌÀ¼¨Åª¤Ë post-install ¤Çɽ¼¨¤¹¤ë¤è¤¦¤Ë¤¹¤ë¤Ù¤­¤Ç¤·¤ç¤¦¡£


12.2 pkg-install

¥Ð¥¤¥Ê¥ê¥Ñ¥Ã¥±¡¼¥¸¤¬ pkg_add ¤Ç¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¤È¤­¤Ë¼Â¹Ô¤¹¤ëɬÍפΤ¢¤ë¥³¥Þ¥ó¥É¤¬¤¢¤ì¤Ð¡¢ pkg-install ¥¹¥¯¥ê¥×¥È¤ò»È¤Ã¤Æ¼Â¹Ô¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤³¤Î¥¹¥¯¥ê¥×¥È¤Ï¼«Æ°Åª¤Ë package ¤Ë²Ã¤¨¤é¤ì¡¢ pkg_add ¤Ë¤è¤Ã¤Æ 2 ²ó¼Â¹Ô¤µ¤ì¤Þ¤¹¡£ 1 ²óÌÜ¤Ï ${SH} pkg-install ${PKGNAME} PRE-INSTALL ¤È¤·¤Æ¡¢2 ²óÌÜ¤Ë¤Ï ${SH} pkg-install ${PKGNAME} POST-INSTALL ¤È¤·¤Æ¼Â¹Ô¤µ¤ì¤Þ¤¹¡£ ¤É¤Á¤é¤Î¥â¡¼¥É¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤«¤Ï $2 ¤òÄ´¤Ù¤ë¤³¤È¤Ë¤è¤Ã¤Æ¤ï¤«¤ê¤Þ¤¹¡£ ´Ä¶­ÊÑ¿ô PKG_PREFIX ¤Ë¤Ï package ¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê¤¬ÀßÄꤵ¤ì¤Þ¤¹¡£ ¾ÜºÙ¤Ï pkg_add(1) ¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£

Note: port ¤ò make install ¤Ç¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤È¤­¤Ë¤Ï¤³¤Î¥¹¥¯¥ê¥×¥È¤Ï¼«Æ°Åª¤Ë¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡£ ¤â¤·¼Â¹Ô¤µ¤ì¤ëɬÍפ¬¤¢¤ë¤Ê¤é¤Ð port ¤Î Makefile ¤«¤éÌÀ¼¨Åª¤Ë¸Æ¤ÖɬÍפ¬¤¢¤ê¤Þ¤¹¡£


12.3 pkg-req

(ÌõÃí: ¼Â¹Ô¤µ¤ì¤ë¥Þ¥·¥ó¤Î¾õÂ֤˱þ¤¸¤Æ) ¤½¤Î port ¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤Ù¤­¤«¡¢¤½¤¦¤Ç¤Ê¤¤¤«¤òȽÃǤ¹¤ëɬÍפ¬¤¢¤ë¤È¤­¤Ë¤Ï¡¢ ``Í×·ï (requirements)'' ¥¹¥¯¥ê¥×¥È pkg-req ¤òºî¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¥¤¥ó¥¹¥È¡¼¥ë¤äºï½ü¤ò¼Â¹Ô¤¹¤Ù¤­¤«¤É¤¦¤«È½ÃǤ¹¤ë¤¿¤á¤Ë¡¢ ¤³¤Î¥¹¥¯¥ê¥×¥È¤¬¥¤¥ó¥¹¥È¡¼¥ë¤äºï½ü¤ò¼Â¹Ô¤¹¤ëºÝ¤Ë¼«Æ°Åª¤Ë¼Â¹Ô¤µ¤ì¤Þ¤¹¡£

¤³¤Î¥¹¥¯¥ê¥×¥È¤Ï¥¤¥ó¥¹¥È¡¼¥ë»þ¤Ë¤Ï pkg_add ¤Ë¤è¤ê pkg-req ${PKGNAME} INSTALL ¤È¤·¤Æ¼Â¹Ô¤µ¤ì¡¢ ºï½ü»þ¤Ë¤Ï pkg_delete ¤Ë¤è¤ê pkg-req ${PKGNAME} DEINSTALL ¤È¤·¤Æ ¼Â¹Ô¤µ¤ì¤Þ¤¹¡£


12.4 make ¤ÎÊÑ¿ô¤Ë¤¢¤ï¤»¤¿ pkg-plist ¤ÎÊѹ¹

¤¤¤¯¤Ä¤«¤Î port¡¢ÆÃ¤Ë p5-ports ¤Ê¤É¤Ï configure ¤Î¥ª¥×¥·¥ç¥ó (¤¢¤ë¤¤¤Ï¡¢p5-ports ¤Î¾ì¹ç¤Ï perl ¤Î¥Ð¡¼¥¸¥ç¥ó) ¤Ë¤è¤Ã¤Æ pkg-plist ¤òÊѤ¨¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ ¤³¤ì¤òÍÆ°×¤Ë¼Â¸½¤¹¤ë¤¿¤á¤Ë pkg-plist Ãæ¤Î %%OSREL%%, %%PERL_VER%%, %%PERL_VERSION%% ¤ÏŬÀÚ¤ËÃÖ¤­´¹¤¨¤é¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ %%OSREL%% ¤ÎÃͤϥª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Î¿ô»ú¤Çɽ¤µ¤ì¤¿¥ê¥Ó¥¸¥ç¥ó¤Ç¤¹ (¤¿¤È¤¨¤Ð 2.2.7)¡£ %%PERL_VERSION%% ¤Ï perl ¤Î¥Ð¡¼¥¸¥ç¥óÈÖ¹æÁ´ÂÎ (¤¿¤È¤¨¤Ð 5.00502) ¤Ç¡¢%%PERL_VER%% ¤Ï¥Ð¡¼¥¸¥ç¥óÈֹ椫¤é¥Ñ¥Ã¥Á¥ì¥Ù¥ë¤ò°ú¤¤¤¿¤â¤Î¤Ç¤¹ (¤¿¤È¤¨¤Ð 5.005)¡£

¾¤ÎÃÖ¤­´¹¤¨¤¬É¬ÍפǤ¢¤ì¤Ð¡¢PLIST_SUB ÊÑ¿ô¤Ë VAR=VALUE ¤È¤¤¤¦·Á¼°¤Î¥Ú¥¢¤Î¥ê¥¹¥È¤òÀßÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢ pkg-plist Ãæ¤Î %%VAR%% ¤Ï VALUE ¤ËÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹¡£ ¤¿¤È¤¨¤Ð¥Ð¡¼¥¸¥ç¥ó¤Ë¸ÇÍ­¤Î¤¿¤¯¤µ¤ó¤Î¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢ Makefile ¤Ë

OCTAVE_VERSION= 2.0.13
PLIST_SUB=      OCTAVE_VERSION=${OCTAVE_VERSION}

¤È½ñ¤¤¤Æ¡¢PLIST Ãæ¤Î¥Ð¡¼¥¸¥ç¥óÈֹ椬ɽ¤ï¤ì¤ë¤¹¤Ù¤Æ¤Î¤È¤³¤í¤Ë¡¢ %%OCTAVE_VERSION%% ¤È½ñ¤­¤Þ¤¹¡£ ¤³¤Î¤è¤¦¤Ë¤·¤Æ¤ª¤±¤Ð¡¢port ¤ò¥¢¥Ã¥×¥°¥ì¡¼¥É¤¹¤ë¤È¤­¤Ë¡¢ ²¿½½¹Ô (»þ¤È¤·¤Æ¡¢²¿É´¹Ô) ¤â pkg-plist ¤ò½ñ¤­Âؤ¨¤Ê¤¤¤Ç¤¹¤ß¤Þ¤¹¡£

¤³¤Î½ñ¤­´¹¤¨¤Ï (¥Þ¥Ë¥å¥¢¥ë¤ÎÄɲäâ) do-install ¤È post-install ¥¿¡¼¥²¥Ã¥È¤Î´Ö¤Ë pkg-plist ¤òÆÉ¤ß TMPPLIST (¥Ç¥Õ¥©¥ë¥È¤Ï WRKDIR/.PLIST.mktmp) ¤Ë½ñ¤­¹þ¤à¤³¤È¤Ë¤è¤Ã¤Æ¹Ô¤Ê¤ï¤ì¤Þ¤¹¡£ ¤â¤·¡¢¤¢¤Ê¤¿¤Î port ¤¬ PLIST ¤ò¼Â¹Ô»þ¤ËÀ¸À®¤¹¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢ do-install ¤Î´Ö¤«¤½¤ÎÁ°¤Ë¹Ô¤Ê¤¦¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤Þ¤¿¡¢½ñ¤­¤«¤¨¤é¤ì¤¿¤¢¤È¤Î¥Õ¥¡¥¤¥ë¤òÊÔ½¸¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢ post-install ¤Ç TMPPLIST ¤ò½ñ¤­¤«¤¨¤Æ¤¯¤À¤µ¤¤¡£


12.5 pkg-* ¥Õ¥¡¥¤¥ë¤Î̾Á°Êѹ¹

pkg-* ¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ï¤¹¤Ù¤ÆÊÑ¿ô¤ò»ÈÍѤ·¤ÆÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢ ɬÍפǤ¢¤ì¤Ð Makefile Ãæ¤ÇÊѹ¹²Äǽ¤Ç¤¹¡£ ¤¤¤¯¤Ä¤«¤Î ports ¤Ç°ì¤Ä¤Î pkg-* ¥Õ¥¡¥¤¥ë¤ò¶¦Í­¤¹¤ë¾ì¹ç¤ä¡¢ ¾åµ­¤Î¥Õ¥¡¥¤¥ë¤Ë½ñ¤­¹þ¤ß¤ò¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤È¤­¤Ê¤ÉÆÃ¤ËÊØÍø¤Ç¤¹ (pkg-* ¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ËľÀܽñ¤­¹þ¤à¤Î¤¬Îɤ¯¤Ê¤¤Íýͳ¤Ë¤Ä¤¤¤Æ¤Ï WRKDIR °Ê³°¤Ø¤Î½ñ¤­¤³¤ß ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£

°Ê²¼¤ËÊÑ¿ô̾¤È ¤½¤Î¥Ç¥Õ¥©¥ë¥ÈÃͤΥꥹ¥È¤ò¼¨¤·¤Þ¤¹¡£ (PKGDIR ¤Î¥Ç¥Õ¥©¥ë¥ÈÃÍ¤Ï ${MASTERDIR} ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£)

ÊÑ¿ô̾ ¥Ç¥Õ¥©¥ë¥ÈÃÍ
DESCR ${PKGDIR}/pkg-descr
PLIST ${PKGDIR}/pkg-plist
PKGINSTALL ${PKGDIR}/pkg-install
PKGDEINSTALL ${PKGDIR}/pkg-deinstall
PKGREQ ${PKGDIR}/pkg-req
PKGMESSAGE ${PKGDIR}/pkg-message

PKG_ARGS ¤ò¾å½ñ¤­¤»¤º¤Ë¤³¤ì¤é¤ÎÊÑ¿ô¤òÊѹ¹¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ PKG_ARGS ¤òÊѹ¹¤¹¤ë¤È¡¢¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤Ï port ¤«¤éÀµ¤·¤¯ /var/db/pkg ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£


Chapter 13 port ¤Î¥Æ¥¹¥È

13.1 portlint

Á÷ÉÕ¤ä commit ¤ò¤¹¤ëÁ°¤Ë portlint ¤ò»È¤Ã¤Æ¥Á¥§¥Ã¥¯¤·¤Þ¤·¤ç¤¦¡£


13.2 PREFIX

¤Ê¤ë¤Ù¤¯ port ¤Ï PREFIX ¤ËÂФ¹¤ëÁêÂХѥ¹¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¤è¤¦¤Ë¿´¤¬¤±¤Æ¤¯¤À¤µ¤¤ (¤³¤ÎÊÑ¿ô¤ÎÃÍ¤Ï USE_X_PREFIX ¤« USE_IMAKE ¤¬»ØÄꤷ¤Æ¤¢¤ë»þ¤Ë¤Ï X11BASE (¥Ç¥Õ¥©¥ë¥È¤Ï /usr/X11R6)¡¢ ¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ë¤ÏLOCALBASE (¥Ç¥Õ¥©¥ë¥È¤Ï /usr/local) ¤Ë¥»¥Ã¥È¤µ¤ì¤Þ¤¹)¡£

¥µ¥¤¥È¤Ë¤è¤Ã¤Æ¥Õ¥ê¡¼¥½¥Õ¥È¥¦¥§¥¢¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¾ì½ê¤¬°ã¤¤¤Þ¤¹¤Î¤Ç¡¢ ¥½¡¼¥¹Æâ¤Ç /usr/local ¤ä /usr/X11R6 ¤òÌÀ¼¨Åª¤Ë½ñ¤«¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ X ¤Î¥×¥í¥°¥é¥à¤Ç imake ¤ò»È¤¦¤â¤Î¤Ë¤Ä¤¤¤Æ¤Ï¡¢ ¤³¤ì¤ÏÌäÂê¤Ë¤Ï¤Ê¤ê¤Þ¤»¤ó¡£ ¤½¤ì°Ê³°¤Î¾ì¹ç¤Ë¤Ï¥½¡¼¥¹Ãæ¤Î Makefile ¤ä¥¹¥¯¥ê¥×¥È¤Ç /usr/local (imake ¤ò»È¤ï¤Ê¤¤ X ¤Î¥×¥í¥°¥é¥à¤Ï /usr/X11R6) ¤È½ñ¤¤¤Æ¤¢¤ë¤È¤³¤í¤ò PREFIX ¤Ë½ñ¤­´¹¤¨¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ÎÃÍ¤Ï port ¤Î¥³¥ó¥Ñ¥¤¥ë¤ª¤è¤Ó¡¢ ¥¤¥ó¥¹¥È¡¼¥ë»þ¤Ë¼«Æ°Åª¤Ë´Ä¶­ÊÑ¿ô¤È¤·¤Æ²¼°Ì make ¤ËÅϤµ¤ì¤Þ¤¹¡£

¤½¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬ PREFIX ¤ò »ÈÍѤ·¤Ê¤¤¤Ç¡¢²¿¤«¤òľÀÜ /usr/local ¤Ë ¥¤¥ó¥¹¥È¡¼¥ë¤·¤Ê¤¤¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ °Ê²¼¤Î¤è¤¦¤Ë¤¹¤ë¤È¡¢´Êñ¤Ê¥Æ¥¹¥È¤ò¹Ô¤Ê¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹:

# make clean; make package PREFIX=/var/tmp/port-name

¤³¤Î»þ¡¢¤â¤· PREFIX ¤Î³°¤Ë ²¿¤«¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢package À¸À®¥×¥í¥»¥¹¤Ï ¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤é¤Ê¤¤¤Èʸ¶ç¤ò¸À¤¦¤Ï¤º¤Ç¤¹¡£

¤¿¤À¤·¡¢¤³¤ì¤Ï ¤½¤Î¥½¥Õ¥È¥¦¥§¥¢¤¬ÆâÉô¤Ç·è¤áÂǤÁ¤Î»²¾È¤ò ¤·¤Æ¤¤¤Ê¤¤¤«¤É¤¦¤« ¤À¤È¤«¡¢Â¾¤Î port ¤Ë¤è¤Ã¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë ¥Õ¥¡¥¤¥ë¤ò»²¾È¤¹¤ëºÝ¤Ë LOCALBASE ¤ò Àµ¤·¤¯»ÈÍѤ·¤Æ¤¤¤ë¤«¤É¤¦¤«¤ò¥Æ¥¹¥È¤·¤Æ¤¤¤ë¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ¤½¤Î port ¤ò¾¤Î¾ì½ê¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤·¤¿¾õÂ֤ǡ¢ /var/tmp/port-name ¤Ë ÂФ¹¤ë¥¤¥ó¥¹¥È¡¼¥ë¤ò»î¤ß¤ë¤³¤È¤Ë¤è¤ê¡¢ ¤½¤Î¥Æ¥¹¥È¤ò¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¤Ç¤·¤ç¤¦¡£

USE_X_PREFIX ¤ÏËÜÅö¤ËɬÍפʻþ (¤Ä¤Þ¤ê X ¤Î¥é¥¤¥Ö¥é¥ê¤ò¥ê¥ó¥¯¤·¤¿¤ê¡¢X11BASE °Ê²¼¤Ë¤¢¤ë ¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤¿¤ê¤¹¤ëɬÍפ¬¤¢¤ë»þ) °Ê³°¤Ë¤Ï ÀßÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£

ÊÑ¿ô PREFIX ¤ÎÃÍ¤Ï port ¤Î Makefile ¤ä¥æ¡¼¥¶¤Î´Ä¶­¤ÇÊѹ¹¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ ¤·¤«¤·¡¢¸Ä¡¹¤Î port ¤¬ Makefile ¤Ç¤³¤ÎÊÑ¿ô¤ÎÃͤòÌÀ¼¨Åª¤ËÀßÄꤹ¤ë¤³¤È¤Ï¤Ê¤ë¤Ù¤¯¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£

¤Þ¤¿¡¢Â¾¤Î port ¤Ë¤è¤ê¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¥×¥í¥°¥é¥à¤ä ¥Õ¥¡¥¤¥ë¤ò»ØÄꤹ¤ë¾ì¹ç¤Ë¤Ï¡¢Ä¾ÀÜŪ¤Ê¥Ñ¥¹Ì¾¤ò»ÈÍѤ¹¤ë¤Î¤Ç¤Ï¤Ê¤¯ ¾å¤Ç½Ò¤Ù¤¿ÊÑ¿ô¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£ ¤¿¤È¤¨¤Ð less ¤Î¥Õ¥ë¥Ñ¥¹¤ò PAGER ¤È¤¤¤¦¥Þ¥¯¥í¤ËÆþ¤ì¤¿¤¤¾ì¹ç¤Ï¡¢ -DPAGER=\"/usr/local/bin/less\" ¤È¤¤¤¦¥Õ¥é¥°¤ò¥³¥ó¥Ñ¥¤¥é¤ËÅϤ¹¤«¤ï¤ê¤Ë

-DPAGER=\"${PREFIX}/bin/less\"
(X Window System ¤ò»È¤¦ port ¤Î¾ì¹ç¤Ë¤Ï
-DPAGER=\"${LOCALBASE}/bin/less\"
) ¤òÅϤ·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤¦¤·¤Æ¤ª¤±¤Ð¡¢¥·¥¹¥Æ¥à´ÉÍý¼Ô¤¬ ``/usr/local'' ¤ò ¤Þ¤ë¤´¤È ¤É¤³¤«Â¾¤Î¾ì½ê¤Ë°Ü¤·¤Æ¤¤¤¿¤È¤·¤Æ¤â¡¢¤½¤Î port ¤¬ ¤½¤Î¤Þ¤Þ»È¤¨¤ë²ÄǽÀ­¤¬¹â¤¯¤Ê¤ê¤Þ¤¹¡£

13.3 FreshPorts ÀµÅöÀ­¥Æ¥¹¥È

FreshPorts ¤Ë¤Ï¡¢FreeBSD ports ¤Ø commit ¤µ¤ì¤¿¤â¤Î¤Ë¤Ä¤¤¤Æ¡¢ ¼«Æ°Åª¤ËÀµÅöÀ­¥Æ¥¹¥È¤ò¹Ô¤¦»ÅÁȤߤ¬¤¢¤ê¤Þ¤¹¡£ ¤³¤Î¥µ¡¼¥Ó¥¹¤ËÅÐÏ¿¤¹¤ë¤È¡¢¤¢¤Ê¤¿¤¬ commit ¤·¤¿¤â¤Î¤Ë¤Ä¤¤¤Æ¡¢ ÀµÅöÀ­¥Æ¥¹¥È¤Ç¥¨¥é¡¼¤¬µ¯¤­¤ë¤ÈÏ¢Íí¤¬¹Ô¤­¤Þ¤¹¡£

¤³¤Î¥µ¡¼¥Ó¥¹¤òÍøÍѤ·¤¿¤¤¾ì¹ç¡¢É¬Í×¤Ê¤Î¤Ï FreshPorts ¤Î¥¢¥«¥¦¥ó¥È¤À¤±¤Ç¤¹¡£ÅÐÏ¿¤·¤¿¥á¡¼¥ë¥¢¥É¥ì¥¹¤¬ @FreeBSD.org ¤Î¤â¤Î¤Ç¤¢¤ì¤Ð¡¢ ¥¦¥§¥Ö¥Ú¡¼¥¸¤Î±¦Â¦¤Ë¥µ¡¼¥Ó¥¹¤òÁªÂò¤¹¤ë¥ê¥ó¥¯¤¬¤¢¤ë¤Ï¤º¤Ç¤¹¡£ FreshPorts ¤Ë¥¢¥«¥¦¥ó¥È¤ò»ý¤Ã¤Æ¤¤¤Æ¤â @FreeBSD.org ¤Î¥á¡¼¥ë¥¢¥É¥ì¥¹¤òÍøÍѤ·¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥á¡¼¥ë¥¢¥É¥ì¥¹¤ò @FreeBSD.org ¤ËÊѤ¨¡¢ÅÐÏ¿¤·¤¿¤¢¤È¤Ç¡¢ ¥á¡¼¥ë¥¢¥É¥ì¥¹¤ò¤Þ¤¿Êѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£


Chapter 14 ¥¢¥Ã¥×¥°¥ì¡¼¥É

port ¤Î¥Ð¡¼¥¸¥ç¥ó¤¬¸¶ºî¼Ô¤«¤é¤Î¤â¤Î¤ËÈæ¤Ù¤Æ¸Å¤¤¤³¤È¤Ëµ¤¤¬¤Ä¤¤¤¿¤é¡¢ ¤Þ¤º¤Ï¤¢¤Ê¤¿¤Î»ý¤Ã¤Æ¤¤¤ë port ¤¬»ä¤¿¤Á¤ÎºÇ¿·¤Î¤â¤Î (FTP ¥ß¥é¡¼¥µ¥¤¥È¤Î ports/ports-current ¤È¤¤¤¦¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ê¤Þ¤¹) ¤Ç¤¢¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤Þ¤¿¡¢Ports Collection Á´ÂΤòºÇ¿·¤Î¾õÂÖ¤ËÊݤĤ¿¤á¤Ë CVSup ¤òÍøÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£ ¾Ü¤·¤¯¤Ï FreeBSD ¥Ï¥ó¥É¥Ö¥Ã¥¯¤ò¤´Í÷¤¯¤À¤µ¤¤¡£

¼¡¤Ë port ¤Î Makefile ¤Ë MAINTAINER (ÊݼéôÅö¼Ô) ¤Î¥¢¥É¥ì¥¹¤¬½ñ¤¤¤Æ¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤Î¿Í¤Ë¥á¡¼¥ë¤ò½Ð¤·¤Æ¤ß¤Þ¤·¤ç¤¦¡£ ÊݼéôÅö¼Ô¤Î¿Í¤¬¤¹¤Ç¤Ë¥¢¥Ã¥×¥°¥ì¡¼¥É¤Î½àÈ÷¤ò¤·¤Æ¤¤¤ë¤«¤âÃΤì¤Þ¤»¤ó¤·¡¢ (¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤Î°ÂÄêÅÙ¤ËÌäÂ꤬¤¢¤ë¤Ê¤É) ¤¢¤¨¤Æ¥¢¥Ã¥×¥°¥ì¡¼¥É¤ò¤·¤Ê¤¤Íýͳ¤¬¤¢¤ë¤Î¤«¤âÃΤì¤Þ¤»¤ó¡£

ÊݼéôÅö¼Ô¤Ë¥¢¥Ã¥×¥°¥ì¡¼¥É¤ò¤·¤Æ¤¯¤ì¤ÈÍê¤Þ¤ì¤¿¾ì¹ç¡¢ ¤¢¤ë¤¤¤Ï¡¢¤½¤â¤½¤â port ¤Î Makefile ¤ËÊݼéôÅö¼Ô¤¬½ñ¤¤¤Æ¤Ê¤¤¾ì¹ç¤Ê¤É¤Ï¡¢ ¤¢¤Ê¤¿¤¬¥¢¥Ã¥×¥°¥ì¡¼¥É¤ò¤·¤Æ¤¯¤À¤µ¤ë¤È½õ¤«¤ê¤Þ¤¹¡£ ¤½¤Î¾ì¹ç¤Ë¤Ï¥¢¥Ã ¥×¥°¥ì¡¼¥É¤ò¤·¤¿¸å¡¢ Êѹ¹Á°¤ÈÊѹ¹¸å¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ÎºÆµ¢Åª diff (unified diff ¤È context diff ¤Î¤É¤Á¤é¤Ç¤â¤¤¤¤¤Î¤Ç¤¹¤¬¡¢ port ¤Î¥³¥ß¥Ã¥¿¡¼Ã£¤Ï unified diff ¤ÎÊý¤ò¹¥¤à¤è¤¦¤Ç¤¹) ¤ò¤È¤Ã¤ÆÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤ (¤¿¤È¤¨¤ÐÊѹ¹Á°¤Î¥Ç¥£¥ì¥¯¥È¥ê¤¬ superedit.bak ¤È¤¤¤¦Ì¾Á°¤Ç¤È¤Ã¤Æ¤¢¤ê¡¢Êѹ¹¸å¤Î¤â¤Î¤¬ superedit ¤ËÆþ¤Ã¤Æ¤¤¤ë¤Ê¤é¡¢ diff -ruN superedit.bak superedit ¤Î·ë²Ì¤òÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤)¡£ diff ¤Î½ÐÎϤò¸«¤Æ¡¢ ¤¹¤Ù¤Æ¤ÎÊѹ¹¤¬Àµ¤·¤¯¤Ê¤µ¤ì¤Æ¤¤¤ë¤«³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ Êѹ¹²Õ½ê¤Ë¤Ä¤¤¤Æ¤Ï¡¢send-pr(1) (¥«¥Æ¥´¥ê¤Ï ports) ¤Ë diff ¤Î½ÐÎÏ·ë²Ì¤òꤍ¤Æ¡¢¤ï¤¿¤·¤¿¤Á¤ËÁ÷¤Ã¤Æ¤â¤é¤¦¤Î¤¬°ìÈÖÎɤ¤¤Ç¤¹¡£ commit ¤¹¤ëºÝ¤Ë CVS ¤ËÌÀ³Î¤Ëµ­½Ò¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤Î¤Ç¡¢ ¤¢¤Ê¤¿¤¬¤½¤Î port ¤Î¥á¥ó¥Æ¥Ê¤Ê¤é¡¢³µÍ× (synopsis) ¹Ô¤ÎÀèÆ¬¤Ë [maintainer update] ¤Èµ­Æþ¤·¡¢PR ¤Î ``Class'' ¤ò maintainer-update ¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ÉÕ¤±²Ã¤¨¤¿¤êºï½ü¤·¤¿¤ê¤·¤¿¥Õ¥¡¥¤¥ë¤¬¤¢¤ì¤Ð¤½¤ì¤Ë¤Ä¤¤¤Æ½ñ¤¤¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£ ¤â¤· diff ¤ÎÂ礭¤µ¤¬ 20 KB ÄøÅÙ¤òͤ¨¤ë¤è¤¦¤Ç¤¢¤ì¤Ð¡¢ °µ½Ì¤·¤¿¤â¤Î¤ò uuencode ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤½¤¦¤Ç¤Ê¤±¤ì¤Ð¤½¤Î¤Þ¤Þ PR ¤ËÆþ¤ì¤ë¤À¤±¤Ç¹½¤¤¤Þ¤»¤ó¡£

Important: ¹¹¿·¤Îưµ¡¤¬¡¢¥»¥­¥å¥ê¥Æ¥£¾å¤ÎÌäÂê¤ä¡¢ ¸½ºß commit ¤µ¤ì¤Æ¤¤¤ë port ¤Ë½ÅÂç¤Ê·ç´Ù¤Ç¤¢¤ë¾ì¹ç¤Ï¡¢ ports ´ÉÍý¥Á¡¼¥à ¤ËÏ¢Íí¤·¤Æ¡¢¤¢¤Ê¤¿¤Î port ¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò¤¿¤À¤Á¤Ëºî¤ê¤Ê¤ª¤·¤ÆºÆÇÛÉÛ¤¹¤ë¤è¤¦¤ËÍ׵ᤷ¤Æ¤¯¤À¤µ¤¤¡£ ¤½¤¦¤·¤Ê¤¤¤È¡¢ÌµËÉÈ÷¤Ê pkg_add(1) ¤Î¥æ¡¼¥¶¤¿¤Á¤¬¡¢²¿½µ´Ö¤Ë¤â¤ï¤¿¤Ã¤Æ pkg_add -r ¤Ç¸Å¤¤¥Ð¡¼¥¸¥ç¥ó¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·Â³¤±¤Æ¤·¤Þ¤¤¤Þ¤¹¡£

Note: ·«¤êÊÖ¤·¤Ë¤Ê¤ê¤Þ¤¹¤¬¡¢´û¸¤Î ports ¤ÎÊѹ¹¤òÁ÷¤ë¤È¤­¤Ë¤Ï shar(1) ¤Ç¤Ï¤Ê¤¯ diff(1) ¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤!


Chapter 15 ¤ä¤Ã¤Æ¤¤¤¤¤³¤È¤È¤¤¤±¤Ê¤¤¤³¤È

¤³¤Î¥»¥¯¥·¥ç¥ó¤Ç¤Ï¥½¥Õ¥È¥¦¥§¥¢¤ò port ¤¹¤ë¾å¤Ç¡¢ Îɤ¯¤¢¤ëÍ·ê¤Ê¤É¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£ ¤³¤Î¥ê¥¹¥È¤ò»È¤Ã¤Æ¤¢¤Ê¤¿¼«¿È¤¬ºîÀ®¤·¤¿ port ¤Î¥Á¥§¥Ã¥¯¤Ï¤â¤È¤è¤ê¡¢ PR ¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤¢¤ë¡¢ ¾¤Î¿Í¤¬ºîÀ®¤·¤¿ port ¤Î¥Á¥§¥Ã¥¯¤â¤Ç¤­¤Þ¤¹¡£ ¤¢¤Ê¤¿¤¬¥Á¥§¥Ã¥¯¤·¤¿ port ¤Ë¤Ä¤¤¤Æ¤Î¥³¥á¥ó¥È¤ò ¥Ð¥°Êó¹ð¤È°ìÈÌŪ¤ÊÏÀɾ¤Ë¤·¤¿¤¬¤Ã¤ÆÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£ PR ¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤¢¤ë port ¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤³¤È¤Ï¡¢ ¤ï¤¿¤·¤¿¤Á¤¬¤½¤ì¤é¤ò commit ¤¹¤ë¤Î¤òÁá¤á¤ë¤È¤È¤â¤Ë¡¢ ²¿¤ò¤·¤Æ¤¤¤ë¤«¤ò¤¢¤Ê¤¿¤¬Íý²ò¤·¤Æ¤¤¤ë¤³¤È¤â¾ÚÌÀ¤·¤Þ¤¹¡£


15.1 ¥Ð¥¤¥Ê¥ê¤Î strip

¥Ð¥¤¥Ê¥ê¤ÏÆÃ¤ËɬÍפ¬¤Ê¤±¤ì¤Ð¡¢¼êư¤Ç strip ¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£ ¤¹¤Ù¤Æ¤Î¥Ð¥¤¥Ê¥ê¤Ï strip ¤¹¤Ù¤­¤Ç¤¹¤¬¡¢ INSTALL_PROGRAM ¥Þ¥¯¥í¤¬¥Ð¥¤¥Ê¥ê¤Î¥¤¥ó¥¹¥È¡¼¥ë¤È strip ¤òƱ»þ¤Ë¹Ô¤¤¤Þ¤¹ (¼¡Àá¤ò¤´Í÷¤¯¤À¤µ¤¤)¡£

¥Õ¥¡¥¤¥ë¤ò strip ¤¹¤ëɬÍפϤ¢¤ë¤â¤Î¤Î INSTALL_PROGRAM ¥Þ¥¯¥í¤ò»È¤¤¤¿¤¯¤Ê¤¤¾ì¹ç¤Ï¡¢ ${STRIP_CMD} ¤Ç¥×¥í¥°¥é¥à¤ò strip ¤Ç¤­¤Þ¤¹¡£ ¤³¤ì¤Ï¡¢Â¿¤¯¤Î¾ì¹ç post-install ¥¿¡¼¥²¥Ã¥ÈÆâ¤Ç¹Ô¤ï¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð

post-install:
        ${STRIP_CMD} ${PREFIX}/bin/xdl

¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤¿¼Â¹Ô·Á¼°¤¬¤¹¤Ç¤Ë strip ¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤Ï file ¥³¥Þ¥ó¥É¤Ç³Îǧ¤Ç¤­¤Þ¤¹¡£ ``not stripped'' ¤Èɽ¼¨¤µ¤ì¤Ê¤±¤ì¤Ð strip ¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£ ¤µ¤é¤Ë¡¢strip(1) ¤Ï¤¹¤Ç¤Ë strip ¤µ¤ì¤¿¥×¥í¥°¥é¥à¤Ï strip ¤»¤º¡¢ÌäÂê¤Ê¤¯½ªÎ»¤·¤Þ¤¹¡£


15.2 INSTALL_* ¥Þ¥¯¥í

¤¢¤Ê¤¿¼«¿È¤Î *-install ¥¿¡¼¥²¥Ã¥È¤Ç¥Õ¥¡¥¤¥ë¤ÎÀµ¤·¤¤¥â¡¼¥É¤È¥ª¡¼¥Ê¤òÊݾڤ¹¤ë¤¿¤á¤Ë¡¢ ɬ¤º bsd.port.mk ¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ë¥Þ¥¯¥í¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£

  • ${INSTALL_PROGRAM} ¤Ï¼Â¹Ô²Äǽ¤Ê¥Ð¥¤¥Ê¥ê¤ò¥¤¥ó¥¹¥È¡¼¥ë (¤·¡¢¤½¤Î²áÄø¤Ç strip ½èÍý)¤¹¤ë¥³¥Þ¥ó¥É¤Ç¤¹¡£

  • ${INSTALL_SCRIPT} ¤Ï¼Â¹Ô²Äǽ¤Ê¥¹¥¯¥ê¥×¥È¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥³¥Þ¥ó¥É¤Ç¤¹¡£

  • ${INSTALL_DATA} ¤Ï¶¦Í­²Äǽ¤Ê¥Ç¡¼¥¿¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥³¥Þ¥ó¥É¤Ç¤¹¡£

  • ${INSTALL_MAN} ¤Ï¥Þ¥Ë¥å¥¢¥ë¤È¤½¤Î¾¤Îʸ½ñ¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥³¥Þ¥ó¥É¤Ç¤¹ (°µ½Ì¤Ï¤·¤Þ¤»¤ó)¡£

¤³¤ì¤é¤Ï´ðËÜŪ¤Ë install ¥³¥Þ¥ó¥É¤ËŬÀڤʥե饰¤òÍ¿¤¨¤¿¤â¤Î¤Ç¤¹¡£ ¤½¤ì¤é¤Ï distfile ¤Î Makefile ¤Ç¡¢Æ¬¤Ë ``BSD_'' ¤¬ÉÕ¤±¤é¤ì¤¿ (¤Ä¤Þ¤ê BSD_INSTALL_PROGRM ¤È¤¤¤¦¤è¤¦¤Ê) ·Á¤Ç»È¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ ¤É¤Î¤è¤¦¤Ë¤³¤ì¤é¤ò»ÈÍѤ¹¤ë¤«¤Ï°Ê²¼¤ÎÎã¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£


15.3 WRKDIR

WRKDIR ¤Î³°¤Ë¸ºß¤¹¤ë¥Õ¥¡¥¤¥ë¤Ë¤Ï²¿¤â½ñ¤­¹þ¤ó¤Ç¤Ï¤¤¤±¤Þ¤»¤ó¡£ port ¤Î¥Ó¥ë¥ÉÃæ¤Ë½ñ¤­¹þ¤ß²Äǽ¤Ê¤³¤È¤¬Êݾڤµ¤ì¤Æ¤¤¤ë¤Î¤Ï WRKDIR ¤ÎÃæ¤À¤±¤Ç¤¹ (½ñ¤­¹þ¤ßÉԲĤΥĥ꡼¾å¤Ç¤Î port ¥Ó¥ë¥É¤ÎÎã¤Ë¤Ä¤¤¤Æ¤Ï¡¢ CDROM ¤«¤é¤Î ports ¤Î¥³¥ó¥Ñ¥¤¥ë ¤ò»²¾È¤Î¤³¤È)¡£ pkg-* ¥Õ¥¡¥¤¥ë¤òÊѹ¹¤¹¤ëɬÍפ¬¤¢¤ë¤È¤­¤Ë¤Ï¡¢ ¥Õ¥¡¥¤¥ë¤ò¾å½ñ¤­¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯ ÊÑ¿ô¤ÎºÆÄêµÁ¤Ë¤è¤ê ¹Ô¤Ê¤¦¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£


15.4 WRKDIRPREFIX

WRKDIRPREFIX ¤òº½Å¤·¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£ÆÃ¤Ë¡¢Ê̤Πport ¤Î WRKDIR ¤ò»²¾È¤·¤Æ¤¤¤ë¤È¤­¤Ë¤Ïµ¤¤òÉÕ¤±¤Æ¤¯¤À¤µ¤¤¡£ Àµ¤·¤¤¾ì½ê¤Ï¡¢ WRKDIRPREFIXPORTSDIR/subdir/name/work ¤Ç¤¹¡£ PORTSDIR/subdir/name/work ¤ä .CURDIR/../../subdir/name/work ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£

¤Þ¤¿¡¢ ¼«Ê¬¤Ç WRKDIR ÄêµÁ¤¹¤ë¤È¤­¤Ë¤ÏÀèÆ¬¤Ë ${WRKDIRPREFIX}${.CURDIR} ¤¬ÉÕ¤¤¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£


15.5 OS ¤Î¼ïÎà¤ä¥Ð¡¼¥¸¥ç¥ó¤Î¼±ÊÌ

¤É¤Î¥Ð¡¼¥¸¥ç¥ó¤Î Unix ¤Çư¤«¤¹¤«¤Ë¤è¤Ã¤Æ¡¢ Êѹ¹¤ä¾ò·ï¤Ä¤­¥³¥ó¥Ñ¥¤¥ë¤¬É¬Íפʥ³¡¼¥É¤Ë½Ð¤¯¤ï¤¹¤³¤È¤â¤¢¤ë¤Ç¤·¤ç¤¦¡£ ¤½¤Î¤è¤¦¤ÊÊѹ¹¤ò¹Ô¤Ê¤¦¾ì¹ç¤Ë¤Ï¡¢ FreeBSD 1.x ¥·¥¹¥Æ¥à¤Ø¤Î¥Ð¥Ã¥¯¥Ý¡¼¥È¤ä¡¢ CSRG ¤Î 4.4BSD, BSD/386, 386BSD, NetBSD, OpenBSD Åù¡¢ ¾¤Î BSD ¥·¥¹¥Æ¥à¤Ø¤Î°Ü¿¢¤¬²Äǽ¤Ê¤è¤¦¤Ë¡¢ ¤Ç¤­¤ë¤À¤±ÈÆÍÑŪ¤ÊÊѹ¹¤ò¹Ô¤Ê¤¦¤³¤È¤ò¿´¤¬¤±¤Æ¤¯¤À¤µ¤¤¡£

4.3BSD/Reno (1990) ¤È¡¢¤½¤ì¤è¤ê¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤Î BSD ¥³¡¼¥É¤ò¶èÊ̤¹¤ë¤Ë¤Ï¡¢ <sys/param.h> ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë BSD ¥Þ¥¯¥í¤òÍøÍѤ¹¤ë¤Î¤¬¤è¤¤¤Ç¤·¤ç¤¦¡£ ¤³¤Î¥Õ¥¡¥¤¥ë¤¬¤¹¤Ç¤Ë¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤Æ¤¤¤ì¤ÐÎɤ¤¤Î¤Ç¤¹¤¬¡¢ ¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢¤½¤Î .c ¥Õ¥¡¥¤¥ë¤Î ŬÅö¤Ê¾ì½ê¤Ë°Ê²¼¤Î¥³¡¼¥É¤òÄɲ䷤Ƥ¯¤À¤µ¤¤¡£

#if (defined(__unix__) || defined(unix)) && !defined(USG)
#include <sys/param.h>
#endif

¤³¤ì¤é¤ÎÆó¤Ä¤Î¥·¥ó¥Ü¥ë¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥·¥¹¥Æ¥à¤Ë¤Ïɬ¤º sys/param.h ¤¬¤¢¤ë¤Ï¤º¤Ç¤¹¡£ ¤â¤·¤½¤¦¤Ç¤Ê¤¤¥·¥¹¥Æ¥à¤òȯ¸«¤·¤¿¤é¡¢ FreeBSD ports ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È ¤Þ¤Ç¥á¡¼¥ë¤òÁ÷¤Ã¤Æ¤ï¤¿¤·¤¿¤Á¤ËÅÁ¤¨¤Æ¤¯¤À¤µ¤¤¡£

¤¢¤ë¤¤¤Ï¡¢GNU Autoconf ¤Î¥¹¥¿¥¤¥ë¤ò»ÈÍѤ¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£

#ifdef HAVE_SYS_PARAM_H
#include <sys/param.h>
#endif

¤³¤ÎÊýË¡¤ò»ÈÍѤ¹¤ë¤È¤­¤Ë¤Ï¡¢ Makefile Ãæ¤Î CFLAGS¤Ë -DHAVE_SYS_PARAM_H ¤ò²Ã¤¨¤ë¤³¤È¤ò˺¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

¤¤¤Ã¤¿¤ó sys/param.h ¤¬¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤ë¤È¡¢

#if (defined(BSD) && (BSD >= 199103))

¤³¤Î¤è¤¦¤Ë¤·¤Æ¤½¤Î¥³¡¼¥É¤¬ 4.3 Net2 ¥³¡¼¥É¥Ù¡¼¥¹¡¢ ¤Þ¤¿¤Ï¤½¤ì¤è¤ê¿·¤·¤¤¤â¤Î (Îã: FreeBSD 1.x, 4.3/Reno, NetBSD 0.9, 386BSD, BSD/386 1.1 ¤È¤½¤ì°ÊÁ°) ¤Î¾å¤Ç¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Æ¤¤¤ë¤«¤ò¸¡½Ð¤Ç¤­¤Þ¤¹¡£

#if (defined(BSD) && (BSD >= 199306))

¤³¤ì¤Ï¡¢4.4¥³¡¼¥É¥Ù¡¼¥¹¡¢¤Þ¤¿¤Ï¤½¤ì¤è¤ê¿·¤·¤¤¤â¤Î (Îã: FreeBSD 2.x, 4.4, NetBSD 1.0, BSD/386 2.0 ¤È¤½¤ì°Ê¸å) ¤Î¾å¤Ç¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤ò¸¡½Ð¤¹¤ë¤¿¤á¤Ë»ÈÍѤ·¤Þ¤¹¡£

4.4BSD-Lite2 ¥³¡¼¥É¥Ù¡¼¥¹¤Ç¤Ï BSD ¥Þ¥¯¥í¤ÎÃÍ¤Ï 199506 ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ ¤³¤ì¤Ï»²¹ÍÄøÅ٤ΰÕÌ£¹ç¤¤¤·¤«¤¢¤ê¤Þ¤»¤ó¡£ 4.4-Lite ¥Ù¡¼¥¹¤Î FreeBSD ¤È 4.4-Lite2 ¤Ç¤ÎÊѹ¹¤¬¥Þ¡¼¥¸¤µ¤ì¤¿¥Ð¡¼¥¸¥ç¥ó¤È¤ò¶èÊ̤¹¤ë¤Î¤Ë»ÈÍѤ¹¤ë¤Ù¤­¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ¤³¤ÎÌÜŪ¤Î¤¿¤á¤Ë¤Ï¤«¤ï¤ê¤Ë __FreeBSD__ ¥Þ¥¯¥í¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£

°Ê²¼¤Ï¹µ¤¨Ìܤ˻ȤäƤ¯¤À¤µ¤¤¡£

  • __FreeBSD__ ¤ÏFreeBSD¤Î¤¹¤Ù¤Æ¤ÎÈǤÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ Êѹ¹¤¬ FreeBSD ¤À¤±¤ËŬÍѤµ¤ì¤ë¤È¤­°Ê³°¤Ï»ÈÍѤ·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£ port ¤Ç¤è¤¯¤¢¤ë strerror() ¤Ç¤Ï¤Ê¤¯ sys_errlist[] ¤ò»È¤¦¤Ê¤É¤Ï FreeBSD¤Ç¤ÎÊѹ¹¤Ç¤Ï¤Ê¤¯ BSD ¤Îήµ·¤Ç¤¹¡£

  • FreeBSD 2.x¤Ç¤Ï __FreeBSD__ ¤¬ 2 ¤ÈÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ ¤½¤ì°ÊÁ°¤ÎÈÇ¤Ç¤Ï 1 ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ ¤½¤Î¸å¤ÎÈǤǤϤ½¤Î¥á¥¸¥ã¡¼ÈÖ¹æ¤Ë¹ç¤¦¤è¤¦¤Ë¾å¤¬¤Ã¤Æ¤¤¤­¤Þ¤¹¡£

  • ¤â¤· FreeBSD 1.x ¥·¥¹¥Æ¥à¤È FreeBSD 2.x¡¢ ¤¢¤ë¤¤¤Ï FreeBSD 3.x ¥·¥¹¥Æ¥à¤ò¶èÊ̤¹¤ëɬÍפ¬¤¢¤ì¤Ð¡¢ ¾å¤Ç½Ò¤Ù¤¿ BSD ¥Þ¥¯¥í¤ò»ÈÍѤ¹¤ë¤Î¤¬ÂçÄñ¤Î¾ì¹ç¤Ë¤ª¤¤¤ÆÀµ¤·¤¤Åú¤Ç¤¹¡£ ¤â¤· FreeBSD ÆÃÍ­¤ÎÊѹ¹¤Ç¤¢¤ì¤Ð (ld ¤ò»È¤¦¤È¤­¤Î¶¦Í­¥é¥¤¥Ö¥é¥êÍѤΥª¥×¥·¥ç¥ó¤Ê¤É)¡¢ __FreeBSD__¤ò»È¤¤ #if __FreeBSD__ > 1 ¤Î¤è¤¦¤ËFreeBSD 2.x ¤ª¤è¤Ó¡¢ ¤½¤ì°Ê¹ß¤Î¥·¥¹¥Æ¥à¤ò¸¡½Ð¤¹¤ë¤Î¤Ï¤«¤Þ¤¤¤Þ¤»¤ó¡£ ¤â¤· 2.0-RELEASE °Ê¹ß¤Î FreeBSD ¥·¥¹¥Æ¥à¤òºÙ¤«¤¯¸¡½Ð¤·¤¿¤±¤ì¤Ð¡¢ °Ê²¼¤ò»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

    #if __FreeBSD__ >= 2
    #include <osreldate.h>
    #    if __FreeBSD_version >= 199504
             /* 2.0.5+ release specific code here */
    #    endif
    #endif
    

¤³¤ì¤Þ¤Ç¡¢²¿É´¤â¤Î port ¤¬ºî¤é¤ì¤Æ¤­¤Þ¤·¤¿¤¬¡¢ __FreeBSD__ ¤¬Àµ¤·¤¯»È¤ï¤ì¤¿¤Î¤Ï°ì¤Ä¤«Æó¤Ä¤Î¾ì¹ç¤À¤±¤Ç¤·¤ç¤¦¡£ °ÊÁ°¤Î port ¤¬´Ö°ã¤Ã¤Æ¤Õ¤µ¤ï¤·¤¯¤Ê¤¤¾ì½ê¤Ç ¤½¤Î¥Þ¥¯¥í¤ò»È¤Ã¤Æ¤¤¤ë¤«¤é¤È¤¤¤Ã¤Æ¡¢ ¤½¤ì¤ò¤Þ¤Í¤¹¤ëÍýͳ¤Ï¤¢¤ê¤Þ¤»¤ó¡£


15.6 __FreeBSD_version ¤ÎÃÍ

Release __FreeBSD_version
2.0-RELEASE 119411
2.1-CURRENT 199501, 199503
2.0.5-RELEASE 199504
2.1 °ÊÁ°¤Î 2.2-CURRENT 199508
2.1.0-RELEASE 199511
2.1.5 °ÊÁ°¤Î 2.2-CURRENT 199512
2.1.5-RELEASE 199607
2.1.6 °ÊÁ°¤Î 2.2-CURRENT 199608
2.1.6-RELEASE 199612
2.1.7-RELEASE 199612
2.2-RELEASE 220000
2.2.1-RELEASE 220000 (Êѹ¹¤Ê¤·)
2.2.1-RELEASE °Ê¹ß¤Î 2.2-STABLE 220000 (Êѹ¹¤Ê¤·)
texinfo-3.9 °Ê¹ß¤Î 2.2-STABLE 221001
top ƳÆþ°Ê¹ß¤Î 2.2-STABLE 221002
2.2.2-RELEASE 222000
2.2.2-RELEASE °Ê¹ß¤Î 2.2-STABLE 222001
2.2.5-RELEASE 225000
2.2.5-RELEASE °Ê¹ß¤Î 2.2-STABLE 225001
ldconfig -R ¥Þ¡¼¥¸°Ê¹ß¤Î 2.2-STABLE 225002
2.2.6-RELEASE 226000
2.2.7-RELEASE 227000
2.2.7-RELEASE °Ê¹ß¤Î 2.2-STABLE 227001
semctl(2) Êѹ¹°Ê¹ß¤Î 2.2-STABLE 227002
2.2.8-RELEASE 228000
2.2.8-RELEASE °Ê¹ß¤Î 2.2-STABLE 228001
mount(2) Êѹ¹°ÊÁ°¤Î 3.0-CURRENT 300000
mount(2) Êѹ¹°Ê¹ß¤Î 3.0-CURRENT 300001
semctl(2) Êѹ¹°Ê¹ß¤Î 3.0-CURRENT 300002
ioctl °ú¿ôÊѹ¹°Ê¹ß¤Î 3.0-CURRENT 300003
ELF ²½°Ê¹ß¤Î 3.0-CURRENT 300004
3.0-RELEASE 300005
3.0-RELEASE °Ê¹ß¤Î 3.0-CURRENT 300006
3/4 ¤Îʬ´ô°Ê¹ß¤Î 3.0-STABLE 300007
3.1-RELEASE 310000
3.1-RELEASE °Ê¹ß¤Î 3.1-STABLE 310001
C++ ¥³¥ó¥¹¥È¥é¥¯¥¿/¥Ç¥¹¥È¥é¥¯¥¿½ç½øÊѹ¹¤Î¸å¤Î 3.1-STABLE 310002
3.2-RELEASE 320000
3.2-STABLE 320001
¥Ð¥¤¥Ê¥ê¸ß´¹À­¤Î¤Ê¤¤ IPFW ¤È¥½¥±¥Ã¥È¤ÎÊѹ¹¸å¤Î 3.2-STABLE 320002
3.3-RELEASE 330000
3.3-STABLE 330001
libc ¤Ë mkstemp(3) ¤¬Äɲ䵤줿¸å¤Î 3.3-STABLE 330002
3.4-RELEASE 340000
3.4-STABLE 340001
3.5-RELEASE 350000
3.5-STABLE 350001
3.4 ¤¬Ê¬´ô¤·¤¿¸å¤Î 4.0-CURRENT 400000
dynamic linker ¤ÎÊѹ¹¸å¤Î 4.0-CURRENT 400001
C++ ¥³¥ó¥¹¥È¥é¥¯¥¿/¥Ç¥¹¥È¥é¥¯¥¿½ç½øÊѹ¹¤Î¸å¤Î 4.0-CURRENT 400002
dladdr(3) µ¡Ç½Äɲøå¤Î 4.0-CURRENT 400003
__deregister_frame_info dynamic linker ¤Î¥Ð¥°½¤Àµ¡¢ EGCS 1.1.2 ƳÆþ¸å¤Î 4.0-CURRENT 400004
suser(9) ¤Î API Êѹ¹¡¢newbus ²½ °Ê¹ß¤Î 4.0-CURRENT 400005
cdevsw ÅÐÏ¿ÊýË¡¤ÎÊѹ¹¸å¤Î 4.0-CURRENT 400006
¥½¥±¥Ã¥È¥ì¥Ù¥ë¤Î¾ÚÌÀ½ñ (credential) ¤Î¤¿¤á¤Ë so_cred ¤¬Äɲ䵤줿¸å¤Î 4.0-CURRENT 400007
libc_r ¤Ø¤Î poll syscall ¥é¥Ã¥Ñ¡¼Äɲøå¤Î 4.0-CURRENT 400008
kernel ¤Î dev_t ·¿¤«¤é struct spacinfo ¥Ý¥¤¥ó¥¿¤Ø¤Î Êѹ¹¸å¤Î 4.0-CURRENT 400009
jail(2) ¤Î¥»¥­¥å¥ê¥Æ¥£¥Û¡¼¥ë ½¤Àµ¸å¤Î 4.0-CURRENT 400010
sigset_t ¤Î ¥Ç¡¼¥¿·¿Êѹ¹¸å¤Î 4.0-CURRENT 400011
¥·¥¹¥Æ¥à¥³¥ó¥Ñ¥¤¥é¤ò gcc 2.95.2 ¤Ë¥¢¥Ã¥×¥°¥ì¡¼¥É¤·¤¿ ¸å¤Î 4.0-CURRENT 400012
ưŪÁȤ߹þ¤ß²Äǽ¤Ê Linux ¥â¡¼¥É¤Î ioctl ¥Ï¥ó¥É¥é¤¬ Äɲ䵤줿¸å¤Î 4.0-CURRENT 400013
OpenSSL ƳÆþ¸å¤Î 4.0-CURRENT 400014
GCC 2.95.2 ¤Î C++ ABI Êѹ¹¤Ç¡¢ ¥Ç¥Õ¥©¥ë¥È¤ò -fvtable-thunks ¤«¤é -fno-vtable-thunks ¤Ë Êѹ¹¤·¤¿¸å¤Î 4.0-CURRENT 400015
OpenSSH ƳÆþ¸å¤Î 4.0-CURRENT 400016
4.0-RELEASE 400017
4.0-RELEASE °Ê¹ß¤Î 4.0-STABLE 400018
¥Á¥§¥Ã¥¯¥µ¥à·×»»¥¿¥¤¥ß¥ó¥°¤ÎÊѹ¹¸å¤Î 4.0-STABLE 400019
libxpg4 ¤¬ libc ¤Ë¥Þ¡¼¥¸¤µ¤ì¤¿¸å¤Î 4.0-STABLE 400020
Binutils ¤ò 2.10.0 ¤Ë¥¢¥Ã¥×¥°¥ì¡¼¥É¤·¡¢ ELF ¥Ð¥¤¥Ê¥ê¤Î¥Þ¡¼¥¯ÉÕ¤± (branding) ÊýË¡¤òÊѹ¹¤·¡¢ tcsh ¤ò¥Ù¡¼¥¹¥·¥¹¥Æ¥à¤ËƳÆþ¤·¤¿¸å¤Î 4.0-STABLE 400021
4.1-RELEASE 410000
4.1-RELEASE °Ê¹ß¤Î 4.1-STABLE 410001
setproctitle(3) ¤¬ libutil ¤«¤é libc ¤Ë °Üư¤·¤¿¸å¤Î 4.1-STABLE 410002
4.1.1-RELEASE 411000
4.1.1-RELEASE °Ê¹ß¤Î 4.1.1-STABLE 411001
4.2-RELEASE 420000
libgcc.a ¤È libgcc_r.a ¤Î·ë¹ç¤ª¤è¤Ó¡¢´ØÏ¢¤¹¤ë GCC linkage Êѹ¹¤¬¹Ô¤Ê¤ï¤ì¤¿¸å¤Î 4.2-STABLE 420001
4.3-RELEASE 430000
wint_t ƳÆþ¸å¤Î 4.3-STABLE 430001
PCI ¥Ñ¥ï¡¼¥¹¥Æ¡¼¥È API ¥Þ¡¼¥¸¸å¤Î 4.3-STABLE 430002
4.4-RELEASE 440000
d_thread_t ƳÆþ¸å¤Î 4.4-STABLE 440001
¥Þ¥¦¥ó¥È¹½Â¤Êѹ¹ (¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à kld ¤Ë±Æ¶Á¤¢¤ê) ¸å¤Î 4.4-STABLE 440002
smbfs ¤Î¥æ¡¼¥¶¥é¥ó¥ÉÉô¤¬¼è¤ê¹þ¤Þ¤ì¤¿¸å¤Î 4.4-STABLE 440003
4.5-RELEASE 450000
usb ¤Î¹½À®Í×ÁǤÎ̾¾Î¤¬Êѹ¹¤µ¤ì¤¿¸å¤Î 4.5-STABLE 450001
rc.conf(5) ¤Î sendmail_enable ÊÑ¿ô¤¬ NONE ¤È¤¤¤¦Ãͤò¤È¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¸å¤Î 4.5-STABLE 450004
package ºîÀ®¤Î¥Ç¥Õ¥©¥ë¥È¤ò XFree86 4 ¤Ë°Ü¹Ô¤·¤¿¸å¤Î 4.5-STABLE 450005
accept filter ¤¬½¤Àµ¤µ¤ì¡¢ ´Êñ¤Ê¥µ¡¼¥Ó¥¹Ë¸³²¹¶·â¤Ë¤Ï±Æ¶Á¤ò¼õ¤±¤Ê¤¯¤Ê¤Ã¤¿¸å¤Î 4.5-STABLE 450006
4.6-RELEASE 460000
sendfile(2) ¤ò¥É¥­¥å¥á¥ó¥È¤ËŬ¹ç¤¹¤ë¤è¤¦½¤Àµ¤·¤Æ¡¢ Á÷¿®¤µ¤ì¤¿¤¤¤«¤Ê¤ë¥Ø¥Ã¥À¤â¡¢ ¥Õ¥¡¥¤¥ë¤«¤éÁ÷¿®¤µ¤ì¤¿¥Ç¡¼¥¿¤ÎÁíÎ̤˹ç·×¤·¤Ê¤¤¤è¤¦¤Ë¤·¤¿ 4.6-STABLE 460001
4.6.2-RELEASE 460002
4.6-STABLE 460100
`sed -i' ¤ò MFC ¤·¤¿¸å¤Î 4.6-STABLE 460101
¿¤¯¤Î¿·¤¿¤Ê pkg_install ¤Îµ¡Ç½¤ò HEAD ¤«¤é MFC ¤·¤¿¸å¤Î 4.6-STABLE 460102
4.7-RELEASE 470000
4.7-STABLE 470100
__sF ¤ÎÂå¤ï¤ê¤Ë __std{in,out,err}p »²¾ÈÀ¸À®¤ò³«»Ï¡£ ¤³¤ì¤Ï¡¢std{in,out,err} ¤ò¥³¥ó¥Ñ¥¤¥ë»þ¤ÎÄê¿ô¤«¤é¡¢ ¥é¥ó¥¿¥¤¥à¤ËÊѹ¹¤·¤Þ¤¹¡£ 470101
m_aux mbuf ¤ò m_tag ¤ÇÃÖ¤­´¹¤¨¤ë mbuf ¤ÎÊѹ¹¤ò MFC ¤·¤¿¸å¤Î 4.7-STABLE 470102
OpenSSL 0.9.7 ƳÆþ¸å¤Î 4.7-STABLE 470103
4.8-RELEASE 480000
4.8-STABLE 480100
5.0-CURRENT 500000
ELF ¥Ø¥Ã¥À¥Õ¥£¡¼¥ë¥É¤ÎÄÉ²Ã¤È ELF ¥Ð¥¤¥Ê¥ê¤Î¥Þ¡¼¥¯ÉÕ¤± (branding) ÊýË¡¤ÎÊѹ¹¸å¤Î 5.0-CURRENT 500001
kld ¥á¥¿¥Ç¡¼¥¿Êѹ¹¸å¤Î 5.0-CURRENT 500002
buf/bio Êѹ¹¸å¤Î 5.0-CURRENT 500003
binutils ¥¢¥Ã¥×¥°¥ì¡¼¥É¸å¤Î 5.0-CURRENT 500004
libxpg4 ¥³¡¼¥É¤Î libc ¤Ø¤Î¥Þ¡¼¥¸¤È¡¢ TASKQ ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ÎƳÆþ¸å¤Î 5.0-CURRENT 500005
AGP ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Äɲøå¤Î 5.0-CURRENT 500006
Perl ¤ò 5.6.0 ¤Ë¥¢¥Ã¥×¥°¥ì¡¼¥É¤·¤¿¸å¤Î 5.0-CURRENT 500007
KAME ¥³¡¼¥É¤ò 2000/07 ÈǤΥ½¡¼¥¹¤Ë¹¹¿·¤·¤¿¸å¤Î 5.0-CURRENT 500008
ether_ifattach() ¤ª¤è¤Ó ether_ifdetach() Êѹ¹¸å¤Î 5.0-CURRENT 500009
mtree ¤Î¥Ç¥Õ¥©¥ë¥È¤ò¥ª¥ê¥¸¥Ê¥ë¤ÎÊѼï¤ËÌᤷ¡¢ ¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤ò¤¿¤É¤ë -L ¥ª¥×¥·¥ç¥ó¤òÄɲä·¤¿¸å¤Î 5.0-CURRENT 500010
kqueue API Êѹ¹¸å¤Î 5.0-CURRENT 500011
setproctitle(3) ¤¬ libutil ¤«¤é libc ¤Ø°Üư¤·¤¿¸å¤Î 5.0-CURRENT 500012
ºÇ½é¤Î SMPng ¤¬¥³¥ß¥Ã¥È¤µ¤ì¤¿¸å¤Î 5.0-CURRENT 500013
<sys/select.h> ¤¬ <sys/selinfo.h> ¤Ë °Üư¤·¤¿¸å¤Î 5.0-CURRENT 500014
libgcc.a ¤È libgcc_r.a ¤Î·ë¹ç¤ª¤è¤Ó´ØÏ¢¤¹¤ë GCC linkage Êѹ¹¤¬¹Ô¤Ê¤ï¤ì¤¿¸å¤Î 5.0-CURRENT 500015
libc ¤È libc_r ¤Îº®¹ç¥ê¥ó¥¯¤òµö¤·¡¢ -pthread ¥ª¥×¥·¥ç¥ó¤ò deprecate ¤¹¤ë Êѹ¹¸å¤Î 5.0-CURRENT 500016
mountd Åù¤¬»ÈÍѤ¹¤ë kernel-exported API ¤Î °ÂÄê²½¤Î¤¿¤á¡¢ucred ¹½Â¤ÂΤ«¤é xucred ¹½Â¤ÂÎ¤Ø °Ü¹Ô¤·¤¿¸å¤Î 5.0-CURRENT 500017
CPU °Í¸¤ÎºÇŬ²½¤òÀ©¸æ¤¹¤ë¤¿¤á¤Î make ÊÑ¿ô CPUTYPE ¤¬Äɲ䵤줿¸å¤Î 5.0-CURRENT 500018
<machine/ioctl_fd.h> ¤¬ <sys/fdcio.h> ¤Ë°Üư¤·¤¿¸å¤Î 5.0-CURRENT 500019
¥í¥±¡¼¥ë̾Êѹ¹¤Î¸å¤Î 5.0-CURRENT 500020
Bzip2 ƳÆþ¸å¤Î 5.0-CURRENT¡£ ¤Þ¤¿¡¢S/Key ¤¬ºï½ü¤µ¤ì¤Æ¤¤¤ë¤³¤È¤â¼¨¤¹¡£ 500021
SSE ¥µ¥Ý¡¼¥È¸å¤Î 5.0-CURRENT 500022
KSE ¥Þ¥¤¥ë¥¹¥È¡¼¥ó 2 °Ê¹ß¤Î 5.0-CURRENT 500023
d_thread_t ƳÆþ¡¢¤ª¤è¤Ó UUCP ¤ò ports ¤Ë°Üư¤·¤¿¸å¤Î 5.0-CURRENT 500024
64 ¥Ó¥Ã¥È¥×¥é¥Ã¥È¥Û¡¼¥à¾å¤Î¥Ç¥¹¥¯¥ê¥×¥¿¤ª¤è¤Ó cred ¼õ¤±ÅϤ· ABI Êѹ¹¸å¤Î 5.0-CURRENT 500025
package ºîÀ®¤Î¥Ç¥Õ¥©¥ë¥È¤ò XFree86 4 ¤Ë°Ü¹Ô¤·¡¢libc ¤Ë¿·¤¿¤Ë strnstr() ´Ø¿ô¤òÄɲä·¤¿¸å¤Î 5.0-CURRENT 500026
libc ¤Ë¿·¤¿¤Ë strcasestr() ´Ø¿ô¤òÄɲä·¤¿¸å¤Î 5.0-CURRENT 500027
smbfs ¤Î¥æ¡¼¥¶¥é¥ó¥ÉÉô¤¬¼è¤ê¹þ¤Þ¤ì¤¿¸å¤Î 5.0-CURRENT 500028
C99 ¤Î¿·¤·¤¤ÆÃÄꥵ¥¤¥º¤ÎÀ°¿ô·¿Äɲøå¤Î 5.0-CURRENT 500028 (Êѹ¹¤Ê¤·)
sendfile(2) ¤ÎÌá¤êÃͤ¬Êѹ¹¤µ¤ì¤¿¸å¤Î 5.0-CURRENT 500029
¥Õ¥¡¥¤¥ë¥Õ¥é¥°¤Ë¤Õ¤µ¤ï¤·¤¤¥µ¥¤¥º¤Î fflags_t ¤¬Æ³Æþ¤µ¤ì¤¿¸å¤Î 5.0-CURRENT 500030
usb ¤Î¹½À®Í×ÁǤÎ̾¾Î¤¬Êѹ¹¤µ¤ì¤¿¸å¤Î 5.0-CURRENT 500031
Perl 5.6.1 ƳÆþ¸å¤Î 5.0-CURRENT 500032
rc.conf(5) ¤Î sendmail_enable ÊÑ¿ô¤¬ NONE ¤È¤¤¤¦Ãͤò¤È¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¸å¤Î 5.0-CURRENT 500033
mtx_init() ¤Ë 3 ÈÖÌܤΰú¿ô¤¬²Ã¤ï¤Ã¤¿¸å¤Î 5.0-CURRENT 500034
GCC 3.1 ¤¬¼è¤ê¹þ¤Þ¤ì¤¿ 5.0-CURRENT 500035
/usr/src ¤Ë Perl ¤¬¤Ê¤¯¤Ê¤Ã¤¿ 5.0-CURRENT 500036
dlfunc(3) Äɲøå¤Î 5.0-CURRENT 500037
¹½Â¤ÂÎ sockbuf ¤Î¥á¥ó¥Ð¤Î·¿¤¬°ìÉôÊѹ¹¤µ¤ì¡¢½ç½ø¤¬Êѹ¹¤µ¤ì¤¿¸å¤Î 5.0-CURRENT 500038
¥Ø¥Ã¥À¤Ç _BSD_FOO_T_ ¤Î»ÈÍѤò¤ä¤á¡¢ _FOO_T_DECLARED ¤ò»È¤¦¤è¤¦¤Ë¤Ê¤Ã¤¿¸å¤Î 5.0-CURRENT¡£ ¤Þ¤¿¡¢¤³¤ÎÊÑ¿ô¤Ï bzip2(1) ¥Ñ¥Ã¥±¡¼¥¸¤ËÂбþ¤·¤¿¤³¤È¤¬³Î¼Â¤ÊÌܰ¤Ȥ·¤Æ¤â»È¤¨¤Þ¤¹¡£ 500039
¥Ç¥£¥¹¥¯¥é¥Ù¥ë¤ÎÆâÉô¹½Â¤¤Î°Í¸À­¤ò½ü¤¯Ì¾ÌܤǹԤï¤ì¤¿¡¢ ¥Ç¥£¥¹¥¯´ØÏ¢¤Îµ¡Ç½¤Ø¤Î¤µ¤Þ¤¶¤Þ¤ÊÊѹ¹¤ò²Ã¤¨¤¿¸å¤Î 5.0-CURRENT 500040
libc ¤Ë getopt_long(3) ¤ò²Ã¤¨¤¿¸å¤Î 5.0-CURRENT 500041
Binutils 2.13 ¤Ë¥¢¥Ã¥×¥°¥ì¡¼¥É¤·¤¿¸å¤Î 5.0-CURRENT¡£¤³¤Î¥¢¥Ã¥×¥°¥ì¡¼¥É¤Ë¤Ï¡¢¿·¤¿¤Ê FreeBSD ¤Î emulation, vec ¤ª¤è¤Ó½ÐÎÏ·Á¼°¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¡£ 500042
libc ¤Ë pthread_XXX ¤Ø¤Î¼å¤¤¥¹¥¿¥Ö¤òÄɲä·¡¢ libXThrStub.so ¤¬ obsolete ¤Ë¤Ê¤Ã¤¿¸å¤Î 5.0-CURRENT¡£ 5.0-RELEASE 500043
RELENG_5_0_0 ¤ò¥Ö¥é¥ó¥Á¤·¤¿¸å¤Î 5.0-CURRENT 500100
<sys/dkstat.h> ¤Ï¶õ¤Ê¤Î¤Ç include ¤¹¤Ù¤­¤Ç¤Ï¤Ê¤¤ 500101
d_mmap_t ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Êѹ¹¸å¤Î 5.0-CURRENT 500102
taskqueue_swi ¤¬ Giant ¥í¥Ã¥¯Ìµ¤·¤Ç¼Â¹Ô¤µ¤ì¡¢ Giant ¥í¥Ã¥¯¤µ¤ì¤Æ¼Â¹Ô¤µ¤ì¤ë taskqueue_swi_giant ¤¬Äɲ䵤줿¸å¤Î 5.0-CURRENT 500103
cdevsw_add() ¤È cdevsw_remove() ¤Ï¤â¤¦Â¸ºß¤·¤Þ¤»¤ó¡£ MAJOR_AUTO ³ä¤êÅö¤Æµ¡Ç½¤¬Åо줷¤Þ¤·¤¿ 500104
cdevsw ¤Î¿·¤¿¤Ê½é´ü²½ÊýË¡¤¬Æ³Æþ¤µ¤ì¤¿¸å¤Î 5.0-CURRENT 500105
devstat_add_entry() ¤¬ devstat_new_entry() ¤ËÃÖ¤­´¹¤¨¤é¤ì¤Þ¤·¤¿ 500106
Devstat ¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹Êѹ¹¡£ sys/sys/param.h 1.149 ¤ò»²¾È¤Î¤³¤È 500107
¥È¡¼¥¯¥ó¥ê¥ó¥°¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ÎÊѹ¹ 500108
vm_paddr_t ¤ÎÄɲà 500109
realpath(3) ¤¬¥¹¥ì¥Ã¥É¥»¡¼¥Õ¤Ë¤Ê¤Ã¤¿¸å¤Î 5.0-CURRENT 500110
usbhid(3) ¤¬ NetBSD ¤ÈƱ´ü¤·¤¿¸å¤Î 5.0-CURRENT 500111
¿·¤¿¤Ê NSS ¼ÂÁõ¤È POSIX.1 ½àµò¤Î getpw*_r, getgr*_r ´Ø¿ô¤¬Æ³Æþ¸å¤Î 5.0-CURRENT 500112
¸Å¤¤ rc ¥·¥¹¥Æ¥à¤òºï½ü¤·¤¿¸å¤Î 5.0-CURRENT 500113

Note: (2.2-STABLE ¤Ï 2.2.5-RELESE °Ê¸å¡¢ ``2.2.5-STABLE'' ¤È¸Æ¤Ð¤ì¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£) ¸«¤Æ¤Î¤È¤ª¤ê¤³¤ì¤Ïǯ¡¦·î¤È¤¤¤¦¥Õ¥©¡¼¥Þ¥Ã¥È¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤·¤¿¤¬¡¢ ¥Ð¡¼¥¸¥ç¥ó 2.2 ¤«¤é¤è¤êľÀÜŪ¤Ë¥á¥¸¥ã¡¼/¥Þ¥¤¥Ê¡¼ÈÖ¹æ¤ò»È¤¦¤è¤¦¤ËÊѹ¹¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ ʹԤ·¤Æ¤¤¤¯¤Ä¤«¤Î¥Ö¥é¥ó¥Á (»Þʬ¤«¤ì¤·¤¿¥Ð¡¼¥¸¥ç¥ó) ¤ò³«È¯¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢ ¥ê¥ê¡¼¥¹¤µ¤ì¤¿ÆüÉդǤ½¤ì¤é¤Î¥ê¥ê¡¼¥¹¤òʬÎह¤ë¤³¤È¤¬ÉÔ²Äǽ¤À¤«¤é¤Ç¤¹ (¤¢¤Ê¤¿¤¬º£ port ¤òºîÀ®¤¹¤ë¤È¤­¤Ë¡¢¸Å¤¤ -CURRENT ã¤Ë¤Ä¤¤¤Æ¿´ÇÛ¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£ ¤³¤ì¤Ï»²¹Í¤Î¤¿¤á¤Ëµó¤²¤é¤ì¤Æ¤¤¤ë¤Ë²á¤®¤Ê¤¤¤«¤é¤Ç¤¹)¡£


15.7 bsd.port.mk ¤Î¸å¤Ë½ñ¤¯¤³¤È

.include <bsd.port.mk> ¤Î¹Ô¤Î¸å¤Ë¤Ï²¿¤â½ñ¤«¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ÂçÄñ¤Î¾ì¹ç¤Ï Makefile ¤ÎÃæÄø¤Î¤É¤³¤«¤Ç bsd.port.pre.mk ¤ò¥¤¥ó¥¯¥ë¡¼¥É¤·¤Æ¡¢ ºÇ¸å¤Ë bsd.port.pre.mk ¤ò¥¤¥ó¥¯¥ë¡¼¥É¤¹¤ë¤³¤È¤Ë¤è¤Ã¤ÆÈò¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

Note: pre.mk/post.mk ¤Î¥Ú¥¢¤« bsd.port.mk ¤À¤±¤Î¤É¤Á¤é¤«¤À¤±¤ò¥¤¥ó¥¯¥ë¡¼¥É¤·¡¢Æó¤Ä¤òº®¤¼¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£

Á°¼Ô¤Ï¤¤¤¯¤Ä¤«¤ÎÊÑ¿ô¤ÎÄêµÁ¤À¤±¤ò¤·¤Æ Makefile ¤Ç¤Î¥Æ¥¹¥È¤Ë»ÈÍѤ·¡¢¸å¼Ô¤Ï»Ä¤ê¤òÄêµÁ¤·¤Þ¤¹¡£

°Ê²¼¤Ï bsd.port.pre.mk ¤ÇÄêµÁ¤µ¤ì¤ë½ÅÍפÊÊÑ¿ô¤Ç¤¹ (¤³¤ì¤Ï¡¢¤¹¤Ù¤Æ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ´°Á´¤Ê¥ê¥¹¥È¤Ï bsd.port.mk ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£

ÊÑ¿ô̾ ²òÀâ
ARCH uname -m ¤ÇÊÖ¤µ¤ì¤ë¥¢¡¼¥­¥Æ¥¯¥Á¥ã¡£(Îã¡¢i386)¡£
OPSYS uname -s ¤ÇÊÖ¤µ¤ì¤ë¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à (Îã¡¢FreeBSD)¡£
OSREL ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Î¥ê¥ê¡¼¥¹¥Ð¡¼¥¸¥ç¥ó (Îã¡¢2.1.5, 2.2.7)¡£
OSVERSION ¿ô»ú·Á¼°¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Î¥Ð¡¼¥¸¥ç¥ó¡¢ ¾åµ­¤Î __FreeBSD_version ¤ÈƱ¤¸¤Ç¤¹¡£
PORTOBJFORMAT ¥·¥¹¥Æ¥à¤Î¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥©¡¼¥Þ¥Ã¥È (aout ¤¢¤ë¤¤¤Ï elf)¡£
LOCALBASE ``local'' ¥Ä¥ê¡¼¤Î¥Ù¡¼¥¹¡£ (Îã¡¢/usr/local/)¡£
X11BASE ``X11'' ¥Ä¥ê¡¼¤Î¥Ù¡¼¥¹¡£ (Îã¡¢/usr/X11R6/)¡£
PREFIX ports ¤Î¥¤¥ó¥¹¥È¡¼¥ëÀè ( PREFIX¤Ë¤Ä¤¤¤Æ¤ò»²¾È)¡£

Note: USE_IMAKE, USE_X_PREFIX ¤¢¤ë¤¤¤Ï MASTERDIR ¤Ê¤É¤ÎÊÑ¿ô¤òÄêµÁ¤¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢ bsd.port.pre.mk ¤ò¥¤¥ó¥¯¥ë¡¼¥ÉÁ°¤ËÄêµÁ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¾¤Î¤â¤Î¤Ï bsd.port.pre.mk ¤ÎÁ°¤Ç¤â¸å¤Ç¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£

°Ê²¼¤Ï bsd.port.pre.mk ¤Î¸å¤Ë½ñ¤±¤ë¤â¤Î¤ÎÎã¤Ç¤¹¡£

# no need to compile lang/perl5 if perl5 is already in system
.if ${OSVERSION} > 300003
BROKEN= perl is in system
.endif

# only one shlib version number for ELF
.if ${PORTOBJFORMAT} == "elf"
TCL_LIB_FILE=  ${TCL_LIB}.${SHLIB_MAJOR}
.else
TCL_LIB_FILE=  ${TCL_LIB}.${SHLIB_MAJOR}.${SHLIB_MINOR}
.endif

# software already makes link for ELF, but not for a.out
post-install:
.if ${PORTOBJFORMAT} == "aout"
       ${LN} -sf liblinpack.so.1.0 ${PREFIX}/lib/liblinpack.so
.endif

15.8 ÉÕ²ÃŪ¤Êʸ½ñ¤Î¥¤¥ó¥¹¥È¡¼¥ë

ÉáÄ̤Υޥ˥奢¥ë¤ä info ¥Õ¥¡¥¤¥ë¤Î¾¤Ë¥æ¡¼¥¶¤Ë¤È¤Ã¤ÆÍ­ÍѤÀ¤È»×¤¨¤ë¤è¤¦¤Êʸ½ñ¤¬¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢ PREFIX/share/doc ¤Î²¼¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤ÏÁ°µ­¤ÈƱÍÍ post-install ¥¿¡¼¥²¥Ã¥È¤ÎÃæ¤«¤é¹Ô¤Ê¤¦¤ÈÎɤ¤¤Ç¤·¤ç¤¦¡£

¤Þ¤º¡¢¤¢¤Ê¤¿¤Î port ¤Î¤¿¤á¤Ë¿·¤·¤¤¥Ç¥£¥ì¥¯¥È¥ê¤òºî¤ê¤Þ¤¹¡£ ¤É¤Î port ¤Îʸ½ñ¤«´Êñ¤Ë¤ï¤«¤ë¤è¤¦¤Ê̾Á°¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢ ÉáÄÌ¤Ï PORTNAME ¤ò»È¤¦¤ÈÎɤ¤¤Ç¤·¤ç¤¦¡£ ¤â¤Á¤í¤ó¡¢¥æ¡¼¥¶¤¬°Û¤Ê¤ë¥Ð¡¼¥¸¥ç¥ó¤Î¤â¤Î¤òƱ»þ¤Ë»È¤¦¤³¤È¤¬Í½ÁÛ¤µ¤ì¤ë port ¤Î¾ì¹ç¤Ë¤Ï PKGNAME ¤ò¤½¤Î¤Þ¤Þ»È¤Ã¤Æ¤â¹½¤¤¤Þ¤»¤ó¡£

¥æ¡¼¥¶¤¬ /etc/make.conf ¤Ç¤³¤ÎÉôʬ¤ò¶Ø»ß¤¹¤ë¤¿¤á¤Ë NOPORTDOCS ¤È¤¤¤¦ÊÑ¿ô¤ò¥»¥Ã¥È¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢ ¤³¤ì¤é¤Îʸ½ñ¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ó¤Ê¶ñ¹ç¤Ç¤¹¡£

post-install:
.if !defined(NOPORTDOCS)
        ${MKDIR} ${PREFIX}/share/doc/xv
        ${INSTALL_MAN} ${WRKSRC}/docs/xvdocs.ps ${PREFIX}/share/doc/xv
.endif

ʸ½ñ¥Õ¥¡¥¤¥ë¤ª¤è¤Ó¥Ç¥£¥ì¥¯¥È¥ê¤Ï¤¹¤Ù¤Æ pkg-plist ¤ÎÃæ¤Ë %%PORTDOCS%% ¤òƬ¤Ë¤Ä¤±¤Æ½ñ¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¡£ ¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

%%PORTDOCS%%share/doc/pure-ftpd/AUTHORS
%%PORTDOCS%%share/doc/pure-ftpd/CONTACT
%%PORTDOCS%%@dirrm share/doc/pure-ftpd

¥¤¥ó¥¹¥È¡¼¥ë»þ¤Ë pkg-message ¥Õ¥¡¥¤¥ë¤òÍøÍѤ·¤Æ¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¾ÜºÙ¤Ï pkg-message ¤ò»È¤¦ ¤Î¥»¥¯¥·¥ç¥ó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£

Note: pkg-message ¥Õ¥¡¥¤¥ë¤ò pkg-plist ¤Ë²Ã¤¨¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£


15.9 ¥Ç¥£¥ì¥¯¥È¥ê¹½À®

¥¤¥ó¥¹¥È¡¼¥ë»þ¤Ë¤Ï PREFIX ¤ÎÀµ¤·¤¤¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥Õ¥¡¥¤¥ë¤òÃÖ¤¯¤è¤¦¤Ë¿´¤¬¤±¤Æ¤¯¤À¤µ¤¤¡£ ¥½¥Õ¥È¥¦¥§¥¢¤Ë¤è¤Ã¤Æ¤Ï¿·¤·¤¤¥Ç¥£¥ì¥¯¥È¥ê¤ò°ì¤Äºî¤Ã¤Æ¡¢ ¥Õ¥¡¥¤¥ë¤òÁ´Éô¤½¤ì¤ËÆþ¤ì¤Æ¤·¤Þ¤¦¤â¤Î¤¬¤¢¤ê¤Þ¤¹¤¬¡¢ ¤½¤ì¤ÏÎɤ¯¤¢¤ê¤Þ¤»¤ó¡£ ¤Þ¤¿¡¢¥Ð¥¤¥Ê¥ê¡¢¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤È¥Þ¥Ë¥å¥¢¥ë°Ê³°¤Î¤¹¤Ù¤Æ¤ò lib ¤È¤¤¤¦¥Ç¥£¥ì¥¯¥È¥ê¤ËÆþ¤ì¤Æ¤·¤Þ¤¦ port ¤â¤¢¤ê¤Þ¤¹¤¬¡¢¤³¤ì¤â BSD Ū¤Ê¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¹½À®¤«¤é¤¤¤¦¤ÈÀµ¤·¤¯¤¢¤ê¤Þ¤»¤ó¡£ ¤³¤ì¤Ï°Ê²¼¤Î¤è¤¦¤Ëʬ»¶¤¹¤Ù¤­¤Ç¤¹¡£ etc ¤Ë¥»¥Ã¥È¥¢¥Ã¥×/¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó¥Õ¥¡¥¤¥ë¡¢ libexec ¤ËÆâÉô¤Ç»ÈÍѤµ¤ì¤ë¥×¥í¥°¥é¥à (¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤é¸Æ¤Ð¤ì¤ë¤³¤È¤Î¤Ê¤¤¥³¥Þ¥ó¥É)¡¢ sbin ¤Ë´ÉÍý¼ÔÍѤΥ³¥Þ¥ó¥É¡¢ info ¤Ë GNU Info ÍѤÎʸ½ñ¡¢ ¤½¤·¤Æ share ¤Ë¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Ë°Í¸¤·¤Ê¤¤¥Õ¥¡¥¤¥ë¤¬Æþ¤ê¤Þ¤¹¡£ ¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï hier(7) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ /usr ¤Î¹½À®Êý¿Ë¤Ï¤Û¤È¤ó¤É¤½¤Î¤Þ¤Þ /usr/local ¤Ë¤â¤¢¤Æ¤Ï¤Þ¤ê¤Þ¤¹¡£ USENET ``¥Ë¥å¡¼¥¹''¤ò°·¤¦ ports ¤ÏÎã³°¤Ç¤¹¡£ ¤³¤ì¤é¤Ï¥Õ¥¡¥¤¥ë¤Î¥¤¥ó¥¹¥È¡¼¥ëÀè¤È¤·¤Æ PREFIX/news ¤ò»ÈÍѤ·¤Þ¤¹¡£


15.10 ¶õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Îºï½ü

ports ¤Ïºï½ü¤ÎºÝ¤Ë¡¢ ¼«Ê¬¼«¿È¤ò¾Ãµî¤·¤¿¤¢¤È¤Ë (¥Ç¥£¥ì¥¯¥È¥ê¤Î) ºï½ü¤ò¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤ÏÂçÄñ¤Î¾ì¹ç @dirrm ¤Î¹Ô¤ò ports ¤¬ºîÀ®¤¹¤ë¤¹¤Ù¤Æ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤Ä¤¤¤Æ²Ã¤¨¤ë¤³¤È¤Ë¤è¤Ã¤Æ¼Â¸½¤Ç¤­¤Þ¤¹¡£ ¿Æ¥Ç¥£¥ì¥¯¥È¥ê¤Ï»Ò¥Ç¥£¥ì¥¯¥È¥ê¤òÀè¤Ë¾Ã¤µ¤Ê¤¤¤È¾Ã¤»¤Ê¤¤¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£

 :
lib/X11/oneko/pixmaps/cat.xpm
lib/X11/oneko/sounds/cat.au
 :
@dirrm lib/X11/oneko/pixmaps
@dirrm lib/X11/oneko/sounds
@dirrm lib/X11/oneko

¤È¤¤¤Ã¤¿´¶¤¸¤Ç¤¹¡£

¤·¤«¤·»þ¤È¤·¤Æ¡¢ ¾¤Î port ¤È¥Ç¥£¥ì¥¯¥È¥ê¤ò¶¦Í­¤·¤Æ¤¤¤ë¤¿¤á¤Ë @dirrm ¤¬¥¨¥é¡¼¤òÊÖ¤¹¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£ rmdir ¤ò @unexec ¤«¤é¸Æ¤Ó¤À¤¹¤³¤È¤Ë¤è¤Ã¤Æ¡¢ ·Ù¹ð(warning)¤Ê¤·¤Ç¶õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Î¤ß¤òºï½ü¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

@unexec rmdir %D/share/doc/gimp 2>/dev/null || true

¤³¤ì¤ò»È¤¨¤Ð¡¢¤¿¤È¤¨Â¾¤Î port ¤¬¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¤¤¤Æ PREFIX/share/doc/gimp ¤¬¶õ¤Ç¤Ê¤¤¾ì¹ç¤Ç¤â¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤Ïɽ¼¨¤µ¤ì¤Þ¤»¤ó¤·¡¢ pkg_delete ¤¬°Û¾ï½ªÎ»¤¹¤ë¤³¤È¤â¤¢¤ê¤Þ¤»¤ó¡£


15.11 UID

¤¢¤Ê¤¿¤Î port ¤¬¡¢ ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¥·¥¹¥Æ¥à¾å¤ËÆÃÄê¤Î¥æ¡¼¥¶¤òɬÍפȤ¹¤ë¾ì¹ç¤Ï pkg-install ¥¹¥¯¥ê¥×¥È¤«¤é pw ¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¼«Æ°Åª¤Ë¤½¤Î¥æ¡¼¥¶¤òÄɲ乤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ net/cvsup-mirror ¤Î port ¤¬»²¹Í¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦¡£

¤¢¤Ê¤¿¤Î port ¤¬¥Ð¥¤¥Ê¥ê¤Î package ¤È¤·¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¾ì¹ç¤È¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë¾ì¹ç¤ÎξÊý¤Ç¡¢ Ʊ¤¸¥æ¡¼¥¶¡¼/¥°¥ë¡¼¥× ID ¤ò»È¤ï¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤Î¤Ê¤é¡¢50 ¤«¤é 999 ¤Î´Ö¤Ç¶õ¤¤¤Æ¤¤¤ë UID ¤òÁª¤ó¤ÇÅÐÏ¿¤·¤Æ¤¯¤À¤µ¤¤¡£ japanese/Wnn ¤Î port ¤¬»²¹Í¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦¡£

´û¤Ë¥·¥¹¥Æ¥à¤ä¾¤Î port ¤ÇÍøÍѤµ¤ì¤Æ¤¤¤ë UID¤ò»È¤ï¤Ê¤¤¤è¤¦¤Ë½½Ê¬Ãí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£ ¸½ºß¤Î 50 ¤«¤é 999 ¤Þ¤Ç¤Î´Ö¤Î UID ¤Ï°Ê²¼¤Î¤È¤ª¤ê¤Ç¤¹¡£

majordom:*:54:54:Majordomo Pseudo User:/usr/local/majordomo:/nonexistent
cyrus:*:60:60:the cyrus mail server:/nonexistent:/nonexistent
gnats:*:61:1:GNATS database owner:/usr/local/share/gnats/gnats-db:/bin/sh
uucp:*:66:66:UUCP pseudo-user:/var/spool/uucppublic:/usr/libexec/uucp/uucico
xten:*:67:67:X-10 daemon:/usr/local/xten:/nonexistent
pop:*:68:6:Post Office Owner (popper):/nonexistent:/sbin/nologin
wnn:*:69:7:Wnn:/nonexistent:/nonexistent
pgsql:*:70:70:PostgreSQL pseudo-user:/usr/local/pgsql:/bin/sh
ircd:*:72:72:IRCd hybrid:/nonexistent:/nonexistent
ifmail:*:75:66:Ifmail user:/nonexistent:/nonexistent
www:*:80:80:World Wide Web Owner:/nonexistent:/sbin/nologin
alias:*:81:81:QMail user:/var/qmail/alias:/nonexistent
qmaill:*:83:81:QMail user:/var/qmail:/nonexistent
qmaild:*:82:81:QMail user:/var/qmail:/nonexistent
qmailq:*:85:82:QMail user:/var/qmail:/nonexistent
qmails:*:87:82:QMail user:/var/qmail:/nonexistent
qmailp:*:84:81:QMail user:/var/qmail:/nonexistent
qmailr:*:86:82:QMail user:/var/qmail:/nonexistent
msql:*:87:87:mSQL-2 pseudo-user:/var/db/msqldb:/bin/sh
mysql:*:88:88:MySQL Daemon:/var/db/mysql:/sbin/nologin
vpopmail:*:89:89:VPop Mail User:/usr/local/vpopmail:/nonexistent
smmsp:*:90:90:Sendmail Queue:/nonexistent:/nonexistent
mailman:*:91:91:Mailman User:/usr/local/mailman:/sbin/nologin
gdm:*:92:92:GDM Sandbox:/:/sbin/nologin
jabber:*:93:93:Jabber Daemon:/nonexistent:/nonexistent
p4admin:*:94:94:Perforce admin:/usr/local/perforce:/sbin/nologin
interch:*:95:95:Interchange user:/usr/local/interchange:/sbin/nologin
fido:*:111:111:Fido System:/usr/local/fido:/bin/sh
drweb:*:426:426:Dr.Web Mail Scanner:/nonexistent:/sbin/nologin

¤³¤Î¥ê¥¹¥È¤òºÇ¿·¤Î¾õÂÖ¤ËÊݤĤ¿¤á¤Ë¤â¡¢ ¤³¤ÎÈϰϤΠUID ¤ä GID ¤òͽÌ󤹤ë¤è¤¦¤Ê port ¤òºî¤Ã¤¿¤ê¡¢ ´û¸¤Î port ¤Ë¤½¤Î¤è¤¦¤Ê²þÊѤò¹Ô¤Ê¤Ã¤Æ¤ï¤¿¤·¤¿¤Á¤ËÁ÷¤ë¤È¤­¤Ë¤Ï UID ¤ÎͽÌó¤Ë´Ø¤¹¤ëÃí°Õ½ñ¤­¤ò¤Ä¤±¤Æ¤¯¤À¤µ¤¤¡£


15.12 ¹çÍýŪ¤Ê port

Makefile ¤Ïñ½ã¤«¤ÄŬÀڤǤ¢¤ë¤Ù¤­¤Ç¤¹¡£¤â¤·¡¢ Makefile ¤ò¿ô¹Ôû¤«¤¯¤Ç¤­¤¿¤ê¡¢ ¤â¤Ã¤ÈÆÉ¤ß¤ä¤¹¤¯¤Ç¤­¤ë¤Î¤Ç¤¢¤ì¤Ð¤½¤¦¤·¤Æ¤¯¤À¤µ¤¤¡£ ¤¿¤È¤¨¤Ð¡¢ ¥·¥§¥ë¤Î if ¹½Ê¸¤ò»È¤¦¤«¤ï¤ê¤Ë make ¤Î .if ¹½Ê¸¤ò»È¤¦¡¢ EXTRACT* ¤ÎºÆÄêµÁ¤ÇÂåÍѤǤ­¤ë¤Î¤Ç¤¢¤ì¤Ð do-extract ¤òºÆÄêµÁ¤·¤Ê¤¤¡¢ CONFIGURE_ARGS += --prefix=${PREFIX} ¤È¤¹¤ë¤«¤ï¤ê¤Ë GNU_CONFIGURE ¤È¤¹¤ë¡¢¤Ê¤É¤Ç¤¹¡£


15.13 CC ¤ª¤è¤Ó CXX ¤Îº½Å

Port ¤Ï CC ¤ª¤è¤Ó CXX ÊÑ¿ô¤òº½Å¤¹¤Ù¤­¤Ç¤¹¡£¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ï¡¢Makefile ¤Ë NO_PACKAGE=ignores either cc or cxx ¤òÄɲ䷤Ƥ¯¤À¤µ¤¤¡£

CC ¤È CXX ÊÑ¿ô¤òº½Å¤·¤Æ¤¤¤ë Makefile ¤ÎÎã¤ò¼¡¤Ë¼¨¤·¤Þ¤¹¡£?= ¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£

CC ?= gcc
CXX ?= g++

¤³¤Á¤é¤Ï¡¢CC ÊÑ¿ô¤â CXX ÊÑ¿ô¤âº½Å¤·¤Æ¤¤¤Ê¤¤Îã¤Ç¤¹¡£

CC = gcc
CXX = g++

FreeBSD ¥·¥¹¥Æ¥à¾å¤Ç¤Ï¡¢CC ¤ª¤è¤Ó CFLAGS ÊÑ¿ô¤Ï¡¢¤É¤Á¤é¤â /etc/make.conf ¤ÇÄêµÁ¤Ç¤­¤Þ¤¹¡£ºÇ½é¤ÎÎã¤Ç¤Ï¡¢¥·¥¹¥Æ¥àÁ´ÂΤÎÄêµÁ¤òÊݸ¤·¤Æ¤¤¤ë /etc/make.conf ¤ÇÃͤ¬¤¹¤Ç¤ËÀßÄꤵ¤ì¤Æ¤Ê¤¤¾ì¹ç¤Ë¸Â¤Ã¤Æ¡¢ÃͤòÀßÄꤷ¤Þ¤¹¡£ 2 ÈÖÌܤÎÎã¤Ç¤Ï¡¢¤¹¤Ç¤ËÀßÄꤵ¤ì¤Æ¤¤¤¿ÆâÍÆ¤ò¾å½ñ¤­¤·¤Æ¤·¤Þ¤¤¤Þ¤¹¡£


15.14 CFLAGS ¤Îº½Å

CFLAGS ÊÑ¿ô¤Ïº½Å¤¹¤Ù¤­¤Ç¤¹¡£ port ¤¬¤³¤ì¤ò̵»ë¤¹¤ë¾ì¹ç¤Ï¡¢ NO_PACKAGE=ignores cflags ¤ò Makefile ¤Ë²Ã¤¨¤Æ¤¯¤À¤µ¤¤¡£

CFLAGS ÊÑ¿ô¤ò¤­¤Á¤ó¤È¹Íθ¤·¤¿ Makefile ¤ÎÎã¤ò°Ê²¼¤Ë¼¨¤·¤Þ¤¹¡£ += ¤ÎÉôʬ¤ËÃíÌܤ·¤Æ¤¯¤À¤µ¤¤¡£

CFLAGS += -Wall -Werror

¼¡¤Ï CFLAGS ÊÑ¿ô¤ò¹Íθ¤·¤Ê¤¤ Makefile ¤ÎÎã¤Ç¤¹¡£

CFLAGS = -Wall -Werror

CFLAGS ÊÑ¿ô¤Ï¡¢FreeBSD ¥·¥¹¥Æ¥à¤Î /etc/make.conf ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ ºÇ½é¤ÎÎã¤Ç¤Ï´û¸¤ÎÄêµÁ¤òÊݸ¤·¤Ä¤Ä CFLAGS ÊÑ¿ô¤Ë¥ª¥×¥·¥ç¥ó¥Õ¥é¥°¤òÄɲ䷤Ƥ¤¤ë¤Î¤ËÂФ·¡¢ ÆóÈÖÌܤÎÎã¤Ç¤Ï´û¸¤ÎÄêµÁ¤ò¤¹¤Ù¤ÆÌµ¸ú¤Ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤Þ¤¹¡£


15.15 ¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó (ÀßÄê) ¥Õ¥¡¥¤¥ë

¤â¤·¤¢¤Ê¤¿¤Î port ¤¬ÀßÄê¥Õ¥¡¥¤¥ë¤ò PREFIX/etc ¤ËÃÖ¤¯É¬Íפ¬¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤ì¤òñ½ã¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤·¤¿¤ê¡¢ pkg-plist ¤Ë²Ã¤¨¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£ ¤³¤¦¤·¤Æ¤·¤Þ¤¦¤È pkg_delete ¤Ë¤è¤Ã¤Æ¥æ¡¼¥¶¤¬¶ìÏ«¤·¤Æºî¤Ã¤¿¥Õ¥¡¥¤¥ë¤¬¾Ã¤¨¤Æ¤·¤Þ¤Ã¤¿¤ê¡¢ ¿·¤·¤¯¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë»þ¤Ë¾å½ñ¤­¤µ¤ì¤Æ¤·¤Þ¤Ã¤¿¤ê¤·¤Þ¤¹¡£

¤«¤ï¤ê¤Ë¸«ËܤȤʤë¥Õ¥¡¥¤¥ë¤ò¥µ¥Õ¥£¥Ã¥¯¥¹ (filename.sample ¤¬Îɤ¤¤Ç¤·¤ç¤¦) ¤òÉÕ¤±¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¡¢ ¥½¥Õ¥È¥¦¥§¥¢¤òư¤«¤¹Á°¤Ë¥æ¡¼¥¶¤¬¤½¤Î¥Õ¥¡¥¤¥ë¤ò¥³¥Ô¡¼¤·¤ÆÊÔ½¸¤ò¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤³¤È¤òÃΤ餻¤Þ¤·¤ç¤¦¡£


15.16 ¥Õ¥£¡¼¥É¥Ð¥Ã¥¯

port ¤òºî¤ë¤¿¤á¤Ë¥½¥Õ¥È¥¦¥§¥¢¤ËÊѹ¹¤ò²Ã¤¨¤¿¤é¡¢ ¤Ê¤ë¤Ù¤¯¸¶ºî¼Ô¤Ë¤½¤Î»Ý¤òÅÁ¤¨¤Æ¥Ñ¥Ã¥ÁÅù¤òÁ÷¤Ã¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤ì¤é¤¬¼¡¤Î¥ê¥ê¡¼¥¹¤Ë¼è¤êÆþ¤ì¤é¤ì¤ì¤Ð¥¢¥Ã¥×¥°¥ì¡¼¥É¤¬³Ú¤Ë¤Ê¤ê¤Þ¤¹¡£


15.17 README.html

README.html ¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤ò´Þ¤á¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£ ¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢cvs ¥³¥ì¥¯¥·¥ç¥ó¤Î°ìÉô¤Ç¤Ï¤Ê¤¯¡¢ make readme ¥³¥Þ¥ó¥É¤ÇÀ¸À®¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤Ç¤¹¡£


15.18 Port ¤Ë BROKEN, FORBIDDEN ¤Ê¤É¤Î°õ¤ò¤Ä¤±¤ë

¤¢¤ë port ¤Ë¥»¥­¥å¥ê¥Æ¥£ÀȼåÀ­¤¬¤¢¤ë¤³¤È¤¬È½ÌÀ¤·¤¿¤ê¡¢ º¬ËÜŪ¤Ë²õ¤ì¤Æ¤·¤Þ¤¤½¤Àµ¤Ë²¿»þ´Ö¤â¤ÎÃí°Õ¿¼¤¤ºî¶È¤¬É¬Íפˤʤ俤ꡢ ´ðËÜŪ¤Ë¤ÏÇÑ¤ì¤Æ¤·¤Þ¤Ã¤¿¤â¤Î¤Î¡¢ ²¿¤é¤«¤ÎÍýͳ¤Ç ports ¥Ä¥ê¡¼¤Ë¤Ï»Ä¤µ¤ì¤ë (¤â¤Á¤í¤ó¤¢¤È¤Ç½¤Àµ¤·¤Þ¤¹¤è¤Í?) ¤È¤¤¤¦Æü¤¬Íè¤ë¤Î¤ÏÈò¤±¤é¤ì¤Þ¤»¤ó¡£ ¤¢¤ë port ¤¬²õ¤ì¤Æ¤¤¤ë¤³¤È¤ò¼¨¤¹¤¿¤á¤Ë¡¢port ¤Î Makefile ¤Ç¤Ï 3 ¤Ä¤Î make ÊÑ¿ô¤¬»È¤¨¤Þ¤¹¡£°Ê²¼¤Î make ÊÑ¿ô¤ÎÃͤϡ¢ ¤½¤Î port ¤¬²õ¤ì¤Æ¤¤¤ëÍýͳ¤òÀâÌÀ¤¹¤ë¤¿¤á¤Ë¥æ¡¼¥¶¤Ë¼¨¤µ¤ì¤Þ¤¹¡£ ¤½¤ì¤¾¤ì¤Î make ÊÑ¿ô¤Ï¡¢¥æ¡¼¥¶¤È Makefiles ¤ò½èÍý¤¹¤ë¼«Æ°²½¥·¥¹¥Æ¥à¤ËÂФ·¤Æº¬ËÜŪ¤Ë°Û¤Ê¤ë°ÕÌ£¤òÅÁ¤¨¤Þ¤¹¤Î¤Ç¡¢ Àµ¤·¤¤ make ÊÑ¿ô¤ò¤ª»È¤¤¤¯¤À¤µ¤¤¡£

  • BROKEN ¤Ï¡¢Æ°ºî¤·¤Ê¤¤¤¿¤á¥¤¥ó¥¹¥È¡¼¥ë¤¹¤Ù¤­¤Ç¤Ê¤¤ port ÍѤΤâ¤Î¤Ç¤¹¡£¤³¤ì¤Ï¡¢¥æ¡¼¥¶¤¬¤½¤Î port ¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Þ¤¹¤¬¡¢ BROKEN ¤È¤µ¤ì¤¿ port ¤Ï Bento ¥¯¥é¥¹¥¿¤Ç°ú¤­Â³¤­¥Ó¥ë¥É¤µ¤ì¤Þ¤¹¡£ ¥æ¡¼¥¶¤Ë¤Ï port ¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¤Û¤·¤¯¤Ê¤¤¤±¤ì¤É¤â Bento ¤Ç¤Ï¥Ó¥ë¥É¤·¤Æ¤Û¤·¤¤¾ì¹ç¤Ï¡¢port ¤ò BROKEN ¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

  • FORBIDDEN ¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£ÀȼåÀ­¤¬¤¢¤Ã¤¿¤ê¡¢¤½¤Î port ¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤È FreeBSD ¥·¥¹¥Æ¥à¤Î°ÂÁ´À­¤Ë½ÅÂç¤Ê·üǰ¤òÀ¸¤¸¤ë (¤¿¤È¤¨¤Ð¡¢¥»¥­¥å¥¢¤Ç¤Ê¤¤¤È¤¤¤¦É¾È½¤¬¤¢¤ë¥×¥í¥°¥é¥à¤ä¡¢ ÍÆ°×¤Ë°­ÍѤǤ­¤ë¥µ¡¼¥Ó¥¹¤òÄ󶡤¹¤ë¥×¥í¥°¥é¥à¤Ê¤É) port ÍѤΤâ¤Î¤Ç¤¹¡£ ¤¢¤ë¥½¥Õ¥È¥¦¥§¥¢¤Î°ìÉô¤ËÀȼåÀ­¤¬¤¢¤ë¤³¤È¤¬È½ÌÀ¤·¡¢ ½¤Àµ¤¬¥ê¥ê¡¼¥¹¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï FORBIDDEN ¤Ë¤¹¤Ù¤­¤Ç¤¹¡£ ÍýÁÛŪ¤Ë¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£ÀȼåÀ­¤¬È¯¸«¤µ¤ì¤¿»þ¤Ï¡¢ ÀȼåÀ­¤òÊú¤¨¤¿ FreeBSD ¥Û¥¹¥È¤Î¿ô¤ò¸º¤é¤¹¤¿¤á¤Ë¡¢ ¤¿¤À¤Á¤Ë ports ¤ò¹¹¿·¤¹¤Ù¤­¤Ç¤¹ (²æ¡¹¤Ï¡¢¥»¥­¥å¥¢¤Ç¤¢¤ë¤È¤¤¤¦É¾È½¤òÆÀ¤¿¤¤¤Î¤Ç¤¹)¡£ ¤·¤«¤·¡¢ÀȼåÀ­¤¬¸øÉ½¤µ¤ì¤Æ¤«¤é¡¢ ÀȼåÀ­¤òÊú¤¨¤¿¥½¥Õ¥È¥¦¥§¥¢¤Î¿·¤·¤¤ÈǤ¬¥ê¥ê¡¼¥¹¤µ¤ì¤ë¤Þ¤Ç¤Ë̵»ë¤Ç¤­¤Ê¤¤»þ´Ö¤¬¤¢¤¯¤³¤È¤¬¤Þ¤Þ¤¢¤ê¤Þ¤¹¡£ ¥»¥­¥å¥ê¥Æ¥£°Ê³°¤ÎÍýͳ¤Ç port ¤ò FORBIDDEN ¤Ë¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£

  • IGNORE ¤Ï¡¢¤É¤ó¤ÊÍýͳ¤Ç¤¢¤ì¥Ó¥ë¥É¤¹¤Ù¤­¤Ç¤Ï¤Ê¤¤ port ÍѤǤ¹¡£ ¥æ¡¼¥¶¤â Bento ¥¯¥é¥¹¥¿ ¤â¡¢¤É¤ó¤Ê¾õ¶·¤Ç¤¢¤ì IGNORE ¤È¤µ¤ì¤¿ port ¤Ï¥Ó¥ë¥É¤·¤Þ¤»¤ó¡£ ±³¤À¤È»×¤¦¤Ê¤é¡¢port ¤Î¥Ó¥ë¥É¤ò˸¤²¤ë¤Î¤Ë IGNORE ¤ò»È¤Ã¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£

¤³¤ÎÊÑ¿ô¤ò»È¤¦¤Î¤Ï¡¢port ¤¬¹¹¿·¤Ç¤­¤Ê¤¤¾ì¹ç¤ÎºÇ¸å¤Î¼êÃʤˤ·¤Æ¤¯¤À¤µ¤¤¡£ ¤º¤Ã¤È²õ¤ì¤¿¤Þ¤Þ¤Î port ¤Ï¡¢ports ¥Ä¥ê¡¼¤«¤é´°Á´¤Ëºï½ü¤¹¤Ù¤­¤Ç¤¹¡£


15.19 ¤½¤Î¾½ô¡¹

¥Õ¥¡¥¤¥ë pkg-descr ¤È pkg-plist ¤Ï¤½¤ì¤¾¤ìÆó½Å¤Ë¥Á¥§¥Ã¥¯¤·¤Æ¤¯¤À¤µ¤¤¡£ ºÆ¸¡Æ¤¤·¤Æ¤â¤Ã¤ÈÎɤ¤µ­½Ò¤¬¤¢¤ì¤Ð¤½¤ì¤ËÃÖ¤­¤«¤¨¤Æ¤¯¤À¤µ¤¤¡£

GNU General Public License (GNU°ìÈ̸øÍ­»ÈÍѵöÂú) ¤Î¥³¥Ô¡¼¤Ï (¤¹¤Ç¤Ë¤¢¤ë¤Î¤Ç) ¥³¥Ô¡¼¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£ ¤ª´ê¤¤¤·¤Þ¤¹¡£

ˡΧ¤Ë´Ø¤¹¤ë¤³¤È¤Ë¤Ï½½Ê¬Ãí°Õ¤ò¤Ï¤é¤Ã¤Æ¤¯¤À¤µ¤¤¡£ ¤ï¤¿¤·¤¿¤Á¤ËˡΧ¤ËÈ¿¤¹¤ë¤è¤¦¤Ê·Á¤Ç¥½¥Õ¥È¥¦¥§¥¢¤ÎÇÛÉÛ¤ò¤µ¤»¤Ê¤¤¤Ç¤¯¤À¤µ¤¤!


15.20 º¤¤Ã¤¿¤é¡Ä

¤ï¤¿¤·¤¿¤Á¤Ë¼ÁÌä¤òÁ÷¤ëÁ°¤Ë¡¢ ´û¸¤Î port ¤ÎÎã¤È bsd.port.mk ¤ò¤Á¤ã¤ó¤ÈÆÉ¤ó¤Ç¤¯¤À¤µ¤¤! ;)

¤½¤ì¤Ç¤â¤ï¤«¤é¤Ê¤¤¤³¤È¤¬¤¢¤Ã¤¿¤é°ì¿Í¤ÇǺ¤Þ¤Ê¤¤¤Ç¤É¤ó¤É¤ó¼ÁÌ䤷¤Æ¤¯¤À¤µ¤¤! :-)


Chapter 16 Makefile ¤Î¥µ¥ó¥×¥ë

¤³¤ì¤Ï port ¤Î Makefile ¤òºî¤ëºÝ¤Î¤ª¼êËܤǤ¹¡£ ¤«¤®¤«¤Ã¤³ ([]) Æâ¤Î¥³¥á¥ó¥È¤Ï˺¤ì¤º¤Ë¼è¤Ã¤Æ¤¯¤À¤µ¤¤¡£

ÊÑ¿ô¤Î½çÈÖ¡¢ÃÊÍî¤Î´Ö¤Î¶õ¹Ô¤Ê¤É¡¢ Makefile ¤òºî¤ë¤È¤­¤Ï¤Ê¤ë¤Ù¤¯¤³¤Î·Á¼°¤Ë½¾¤Ã¤Æ¤¯¤À¤µ¤¤¡£ ¤³¤Î·Á¼°¤Ï½ÅÍפʾðÊ󤬴Êñ¤Ë¸«¤Ä¤±¤é¤ì¤ë¤è¤¦¤ËÀ߷פµ¤ì¤Æ¤¤¤Þ¤¹¡£ portlint ¤ò»È¤Ã¤Æ Makefile ¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤³¤È¤¬¿ä¾©¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

[¥Ø¥Ã¥À ... ¤É¤Î¤è¤¦¤Ê port ¤Î Makefile ¤«¤¹¤°¤Ë¤ï¤«¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹]
# New ports collection makefile for:    xdvi
["version required" ¹Ô¤Ï¡¢PORTVERSION ÊÑ¿ô¤Ç¤Ï port ¤Î¥Ð¡¼¥¸¥ç¥ó¤ò
½½Ê¬¤Ëɽ¸½¤Ç¤­¤Ê¤¤¾ì¹ç¤Ë¤Î¤ßɬÍפǤ¹¡£]
# Date created: 26 May 1995
[¤³¤Î¥½¥Õ¥È¥¦¥§¥¢¤òºÇ½é¤Ë FreeBSD ¤Ë port ¤·¤¿¿Í¤Î̾Á°¡¢¤Ä¤Þ¤ê¡¢
 ¤³¤Î Makefile ¤ÎºÇ½é¤ÎÈǤò½ñ¤¤¤¿¿Í¤Ç¤¹¡£¤³¤Î port ¤ò¥¢¥Ã¥×¥°¥ì¡¼
 ¥É¤¹¤ë¤È¤­¡¢¤³¤Î¹Ô¤âÊѤ¨¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£]
# Whom:         Satoshi Asami <asami@FreeBSD.org>
#
# $FreeBSD$
[ ^^^^^^^^^ ¤³¤ÎÉôʬ¤Ï¡¢CVS ¥Ä¥ê¡¼¤ËÆþ¤ì¤ë»þ¤Ë¼«Æ°Åª¤Ë RCS ¤Î ID ʸ»úÎó¤Ë
 ÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹¡£]
#

[port ¼«ÂΡ¢¤ª¤è¤Ó¥ª¥ê¥¸¥Ê¥ë¤Î¥½¡¼¥¹¤ò¼è¤Ã¤Æ¤¯¤ë¤È¤³¤í¤òµ­½Ò¤¹¤ëÉôʬ¡£
 ºÇ½é¤Ïɬ¤º PORTNAME ¤È PORTVERSION, ¤½¤·¤ÆÉ¬Íפʤé PKGNAME,
 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
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

[°Í¸¤¹¤ëport -- ¤Ê¤¤¾ì¹ç¤â¤¢¤ê¤Þ¤¹]
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
[GNU autoconf ¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤¿ "configure" ¥¹¥¯¥ê¥×¥È¤òÁö¤é¤»¤¿¤¤¤Ê¤é¡Ä]
GNU_CONFIGURE=  yes
[/usr/bin/make¤Ç¤Ê¤¯¡¢GNU make ¤ò»È¤ï¤Ê¤¤¤È¤¤¤±¤Ê¤¤¤Ê¤é¡Ä]
USE_GMAKE=      yes
[¤³¤ì¤¬ X ¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¡¢"xmkmf -a" ¤òÁö¤é¤»¤¿¤¤¤Ê¤é¡Ä]
USE_IMAKE=      yes
[¤Ê¤É¤Ê¤É]

[²¼¤ÎÊý¤Î¥ë¡¼¥ë¤Ç»È¤¦Èóɸ½à¤ÎÊÑ¿ô]
MY_FAVORITE_RESPONSE=   "yeah, right"

[¤½¤·¤Æ¡¢ÆÃÊ̤ʥ¿¡¼¥²¥Ã¥È¡¢»ÈÍѽç¤Ë]
pre-fetch:
        i go fetch something, yeah

post-patch:
        i need to do something after patch, great

pre-install:
        and then some more stuff before installing, wow

[ºÇ¸å¤Ë¤Ïɬ¤º]
.include <bsd.port.mk>

Chapter 17 ¥Ñ¥Ã¥­¥ó¥°¥ê¥¹¥È¤Î¼«Æ°À¸À®

¤Þ¤º¡¢¤¢¤Ê¤¿¤Î port ¤Ë pkg-plist ¤¬¤Ê¤¤¤³¤È¤ò½ü¤±¤Ð´°À®¤·¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£

¼¡¤Ë¡¢¤¢¤Ê¤¿¤Î port ¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë°ì»þ¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¤Æ¡¢ °Í¸¤¹¤ë¤â¤Î¤ò¤¹¤Ù¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¤¯¤À¤µ¤¤¡£ port-type ¤Ï X ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤Ï¤Ê¤¤ port ¤Ë¤Ä¤¤¤Æ¤Ï local¡¢ XFree86 4 ¤Þ¤¿¤Ï¤½¤ì¤è¤êÁ°¤Î XFree86 ¤Î¥Ç¥£¥ì¥¯¥È¥ê³¬Áؤ˥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë ports ¤Ë¤Ä¤¤¤Æ¤Ï¡¢¤½¤ì¤¾¤ì x11-4 ¤Þ¤¿¤Ï x11 ¤Ë¤¹¤Ù¤­¤Ç¤¹¡£

# mkdir /var/tmp/port-name
# mtree -U -f /etc/mtree/BSD.port-type.dist -d -e -p /var/tmp/port-name
# make depends PREFIX=/var/tmp/port-name

¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê¹½Â¤¤ò¿·¤·¤¤¥Õ¥¡¥¤¥ë¤ËÊݸ¤·¤Æ¤¯¤À¤µ¤¤¡£

# (cd /var/tmp/port-name && find -d * -type d) | sort -r > OLD-DIRS

¤â¤·¤¢¤Ê¤¿¤Î port ¤¬ PREFIX ¤Ë¤Á¤ã¤ó¤È½¾¤¦¤Ê¤é¡¢ ¤³¤³¤Ç port ¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¥Ñ¥Ã¥­¥ó¥°¥ê¥¹¥È¤òºî¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

# make install PREFIX=/var/tmp
# (cd /var/tmp/port-name && find -d * \! -type d) | sort > pkg-plist

¿·¤·¤¯À¸À®¤µ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤Ï¤¹¤Ù¤Æ¥Ñ¥Ã¥­¥ó¥°¥ê¥¹¥È¤ËÄɲ乤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

# (cd /var/tmp/port-name && find -d * -type d) | sort -r | comm -13 OLD-DIRS - | sed -e 's#^#@dirrm #' >> pkg-plist

ºÇ¸å¤Ë¥Ñ¥Ã¥­¥ó¥°¥ê¥¹¥È¤ò¼ê¤ÇÀ°¤¨¤ëɬÍפ¬¤¢¤ê¤Þ¤¹; ¤¹¤Ù¤Æ¤¬¼«Æ°²½¤µ¤ì¤Æ¤¤¤ë¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ¥Þ¥Ë¥å¥¢¥ë¤Ï¥Ñ¥Ã¥­¥ó¥°¥ê¥¹¥È¤Ëµ­½Ò¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢ port ¤Î Makefile Ãæ¤Î MANn ¤Ë µ­½Ò¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ ¥æ¡¼¥¶ÀßÄê¥Õ¥¡¥¤¥ë¤Ïºï½ü¤¹¤ë¤« filename.sample ¤È¤·¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ ¤Þ¤¿ info/dir ¥Õ¥¡¥¤¥ë¤Ï¥ê¥¹¥È¤Ë´Þ¤á¤º¡¢ info ¥Õ¥¡¥¤¥ë¤Ëµ­½Ò¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢ ŬÀÚ¤Ê install-info ¹Ô¤ËÄɲ䷤ʤ±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ port ¤Ë¤è¤Ã¤Æ¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¥é¥¤¥Ö¥é¥ê¤Ï¡¢ ¶¦Í­¥é¥¤¥Ö¥é¥ê ¤Î¥»¥¯¥·¥ç¥ó¤Ç¼¨¤·¤¿¤è¤¦¤Ëµ­ºÜ¤µ¤ì¤ë¤Ù¤­¤Ç¤¹¡£

¤Þ¤¿¤Ï¡¢/usr/ports/Tools/scripts/ ¤Ë¤¢¤ë plist ¥¹¥¯¥ê¥×¥È¤ò»È¤Ã¤Æ¥Ñ¥Ã¥­¥ó¥°¥ê¥¹¥È¤ò¼«Æ°Åª¤ËÀ¸À®¤·¤Æ¤¯¤À¤µ¤¤¡£


Chapter 18 ¤³¤Îʸ½ñ¤È ports ¥·¥¹¥Æ¥à¤ÎÊѹ¹

¤â¤·¤¢¤Ê¤¿¤¬¡¢¤¿¤¯¤µ¤ó¤Î ports ¤ÎÊݼé¤ò¤·¤Æ¤¤¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢ FreeBSD ports ¥á¡¼¥ê¥ó¥°¥ê¥¹¥È ¤ÎÆâÍÆ¤òÆÉ¤à¤³¤È¤ò¹Í¤¨¤Æ¤¯¤À¤µ¤¤¡£ ports ¤Î¤·¤¯¤ß¤Ë¤Ä¤¤¤Æ¤Î½ÅÍפÊÊѹ¹ÅÀ¤Ï¤³¤³¤Ë ¥¢¥Ê¥¦¥ó¥¹¤µ¤ì¤Þ¤¹¡£ ºÇ¿·¤ÎÊѹ¹ÅÀ¤Ë¤Ä¤¤¤Æ¤Ï¡¢¤¤¤Ä¤Ç¤â¡¢ bsd.port.mk ¤Î CVS ¥í¥°¤Ç¾ÜºÙ¤Ê¾ðÊó¤òÆÀ¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

port ¥á¥ó¥Æ¥Ê¤òÊä½õ¤¹¤ë¤Û¤«¤Î¥ê¥½¡¼¥¹¤È¤·¤Æ¡¢ ¥Ñ¥Ã¥±¡¼¥¸¥Ó¥ë¥Éµ­Ï¿¤È ¥¨¥é¡¼°ìÍ÷¡¢¤ª¤è¤ÓFreeBSD Ports distfiles Ä´ºº ¤¬¤¢¤ê¤Þ¤¹¡£


FreeBSD ports ¥·¥¹¥Æ¥à¤Ë´Ø¤¹¤ë¼ÁÌä¤Ï¡¢(±Ñ¸ì¤Ç) <ports@FreeBSD.org> ¤Ø¡¢
¤³¤Îʸ½ñ¤Î¸¶Ê¸¤Ë´Ø¤¹¤ë¤ªÌ䤤¹ç¤ï¤»¤Ï¡¢(±Ñ¸ì¤Ç) <doc@FreeBSD.org> ¤Þ¤Ç¤ª´ê¤¤¤·¤Þ¤¹¡£