svn commit: r348866 - head/ports-mgmt/poudriere-devel
Adam Weinberger
adamw at adamw.org
Sun Mar 23 17:49:10 UTC 2014
On 23 Mar 2014, at 12:20, Bryan Drewery wrote:
> On 3/23/2014 11:18 AM, Mathieu Arnold wrote:
>>
>>
>> +--On 23 mars 2014 11:15:51 -0500 Bryan Drewery
>> <bdrewery at FreeBSD.org>
>> wrote:
>> | On 3/23/2014 11:11 AM, Mathieu Arnold wrote:
>> |> +--On 23 mars 2014 15:40:11 +0000 Bryan Drewery
>> <bdrewery at FreeBSD.org>
>> |> wrote:
>> |> | .include <bsd.port.options.mk>
>> |> |
>> |> | +post-install:
>> |> | .if ${PORT_OPTIONS:MZSH}
>> |> | -PLIST_FILES+= share/zsh/site-functions/_poudriere
>> |> | -PLIST_DIRSTRY+= share/zsh/site-functions
>> |> | -PLIST_DIRSTRY+= share/zsh/
>> |> | -.else
>> |> | -MAKE_ENV+= NO_ZSH=yes
>> |> | + @${MKDIR} ${STAGEDIR}${PREFIX}/share/zsh/site-functions/
>> |> | + ${INSTALL_DATA} ${WRKSRC}/completions/zsh/_poudriere \
>> |> | + ${STAGEDIR}${PREFIX}/share/zsh/site-functions/
>> |> | .endif
>> |>
>> |> I think you could do without the include and always install the
>> file.
>> |>
>> |
>> | What?
>>
>> Replace:
>>
>> .include <bsd.port.options.mk>
>>
>> post-install:
>> .if ${PORT_OPTIONS:MZSH}
>> @${MKDIR} ${STAGEDIR}${PREFIX}/share/zsh/site-functions/
>> ${INSTALL_DATA} ${WRKSRC}/completions/zsh/_poudriere \
>> ${STAGEDIR}${PREFIX}/share/zsh/site-functions/
>> .endif
>>
>> With:
>>
>> post-install:
>> @${MKDIR} ${STAGEDIR}${PREFIX}/share/zsh/site-functions/
>> ${INSTALL_DATA} ${WRKSRC}/completions/zsh/_poudriere \
>> ${STAGEDIR}${PREFIX}/share/zsh/site-functions/
>>
>> The package won't register the file if the option is disabled, and it
>> removes the need for make to parse bsd.port.mk twice.
>>
>
> And then there is a stage orphan.
>
> No.
Staging only installs things listed in the plist. If the ZSH option is
enabled, that file is in the plist. Stage orphans are files that never
get installed, no matter which options are selected.
The poudriere-devel port installs things into DATDIR without checking
whether NOPORTDATA is defined. The port installs manpages without
checked whether NO_INSTALL_MANPAGES is defined. Yet, magically, those
options continue to work. Just install everything into STAGEDIR, and let
the plist do the heavy lifting for you.
# Adam
--
Adam Weinberger
adamw at adamw.org
http://www.adamw.org
More information about the svn-ports-all
mailing list