¡¡¡¡Ä³Ð© port£¬ ÌØ±ðÊÇ p5- port£¬ »áÐèÒª¸ù¾ÝÅäÖÃÑ¡Ïî (»ò¶ÔÓÚ p5- port ¶øÑÔ£¬ perl µÄ°æ±¾) À´ÐÞ¸ÄËüÃÇµÄ pkg-plist¡£ Ϊ¼ò»¯ÕâÒ»¹¤×÷£¬ ÔÚ pkg-plist ÖÐµÄ %%OSREL%%¡¢ %%PERL_VER%%£¬ ÒÔ¼° %%PERL_VERSION%% ½«×Ô¶¯½øÐÐÏàÓ¦µÄÌæ»»¡£ ÆäÖУ¬ %%OSREL%% µÄÖµÊDzÙ×÷ϵͳÒÔÊýÖµ±íʾµÄ°æ±¾ (ÀýÈç 4.9)¡£ %%PERL_VERSION%% ºÍ %%PERL_VER%% ÊÇ perl µÄÍêÕû°æ±¾ºÅ (ÀýÈç 5.8.9)¡£Ðí¶àÆäËüÓë port ÎĵµÎļþÓÐ¹ØµÄ %%±äÁ¿%% ÔÚ ÏàÓ¦ÕÂ½Ú ÖнøÐÐÁ˽éÉÜ¡£
¡¡¡¡Èç¹ûÄú»¹ÐèÒª½øÐÐÆäËüµÄÌæ»»£¬ ¿ÉÒÔͨ¹ý½« PLIST_SUB ±äÁ¿ÉèÖÃΪһ×é ±äÁ¿=Öµ ¶ÔÀ´ÊµÏÖ¡£ ÆäÖУ¬ %%VAR%% ±íʾÔÚ pkg-plist Öн«±» Öµ Ìæ»»µÄÄÇЩÎÄ×Ö¡£
¡¡¡¡¾ÙÀýÀ´Ëµ£¬ Èç¹û port ÐèÒª°ÑºÜ¶àÎļþ·Åµ½ºÍ°æ±¾ÓйصÄĿ¼ÖУ¬ ¿ÉÒÔÔÚ Makefile Öа´ÕÕÀàËÆÏÂÃæµÄÀý×Ó£º
OCTAVE_VERSION= 2.0.13 PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}
¡¡¡¡²¢ÔÚ pkg-plist Öн«¾ßÌåµÄ°æ±¾Ì滻Ϊ %%OCTAVE_VERSION%%¡£ ÕâÑù£¬ ÔÚÉý¼¶ port ʱ£¬ ¾Í²»ÐèÒªÔÙµ½ pkg-plist ÖÐÐÞ¸ÄÄǼ¸Ê® (»òÕߣ¬ ÓÐʱÉõÖÁÊÇÉϰÙ) ÐеÄÄÚÈÝÁË¡£
¡¡¡¡Èç¹ûÄúµÄ port ÐèÒª¸ù¾ÝÒ»¶¨µÄÅäÖÃÀ´ÓÐÌõ¼þµØ°²×°Ò»Ð©Îļþ£¬ ͨ³£µÄ×ö·¨ÊÇÔÚ pkg-plist ÖÐÁгöÕâЩÎļþʱ£¬ ÔÚ¶ÔÓ¦ÐеĿªÍ·¼ÓÉÏ %%TAG%%£¬ ²¢½« TAG дµ½ Makefile ÖÐµÄ PLIST_SUB ±äÁ¿ÖУ¬ ¸ù¾ÝÐèÒªÌæ»»µô£¬ »òÌæ»»Îª @comment£¬ ºóÕß±íʾÈôò°ü¹¤¾ßºöÂÔÕâÐУº
.if defined(WITH_X11) PLIST_SUB+= X11="" .else PLIST_SUB+= X11="@comment " .endif
¡¡¡¡ÓëÖ®¶ÔÓ¦£¬ ÔÚ pkg-plist ÖУº
%%X11%%bin/foo-gui
¡¡¡¡ÕâÒ»Ìæ»»¹ý³Ì (ÒÔ¼°¼ÓÈë Áª»úÊÖ²á µÄ¹ý³Ì)£¬ »áÔÚ pre-install ºÍ do-install Á½¸ö target Ö®¼ä£¬ ͨ¹ý¶ÁÈ¡ PLIST ²¢Ð´Èë TMPPLIST (ĬÈÏÇé¿öÏ£¬ ÊÇ£º WRKDIR/.PLIST.mktmp) À´Íê³É¡£ Òò´Ë£¬ Èç¹ûÄúµÄ port ¶¯Ì¬Éú³É PLIST£¬ ¾ÍÐèÒªÔÚ pre-install ֮ǰÍê³É¡£ ÁíÍ⣬ Èç¹ûÄúµÄ port ÐèÒª±à¼ËùÉú³ÉµÄÎļþ£¬ ÔòÐèÒªÔÚ post-install ÖвÙ×÷ÃûΪ TMPPLIST µÄÄǸöÎļþ¡£
¡¡¡¡ÁíÒ»ÖÖ¿ÉÐеÄÐÞ¸Ä×°Ïäµ¥µÄ·½·¨£¬ ÔòÊǸù¾Ý PLIST_FILES ºÍ PLIST_DIRS ÕâÁ½¸ö±äÁ¿µÄÉèÖÃÀ´½øÐС£ ËüÃǵÄÖµ»á×÷ΪĿ¼ÃûÁ¬Í¬ PLIST µÄÄÚÈÝÒ»ÆðдÈë TMPPLIST¡£ ÔÚ PLIST_FILES ºÍ PLIST_DIRS ÖÐÁгöµÄÃû×Ö£¬ »á¾ÀúÇ°ÃæËù½éÉÜµÄ %%±äÁ¿%% Ìæ»»¹ý³Ì¡£ ³ý´ËÖ®Í⣬ ÔÚ PLIST_FILES ÖÐÁгöµÄÎļþ£¬ »á²»¼ÓÈκÎÐ޸ĵڳöÏÖÔÚ×îÖÕµÄ×°Ïäµ¥ÖУ¬ ¶ø @dirrm ½«×÷Ϊǰ׺¼Óµ½ PLIST_DIRS ËùÁеÄÃû×Ö֮ǰ¡£ ΪÁ˴ﵽĿµÄ£¬ PLIST_FILES ºÍ PLIST_DIRS ±ØÐëÔÚд TMPPLIST ֮ǰ£¬ Ò²¾ÍÊÇÔÚ pre-install »ò¸üÔçµÄ½×¶Î½øÐÐÉèÖá£