[95835] trunk/dports/lang

Ryan Schmidt ryandesign at macports.org
Tue Jul 24 06:27:35 PDT 2012


On Jul 24, 2012, at 06:51, vince at macports.org wrote:

> Revision: 95835
>          https://trac.macports.org/changeset/95835
> Author:   vince at macports.org
> Date:     2012-07-24 04:51:17 -0700 (Tue, 24 Jul 2012)
> Log Message:
> -----------
> Original submission tag 3.2.2012-07-17
> 
> Added Paths:
> -----------
>    trunk/dports/lang/eero-devel/
>    trunk/dports/lang/eero-devel/Portfile


> +fetch {
> +    set ee              "https://nodeload.github.com/eerolanguage/"
> +    
> +    ui_msg "Fetching eero-llvm tag ${eero_tag}…"
> +    curl fetch ${ee}llvm-trunk/tarball/${eero_tag} \
> +            ${workpath}/llvm.tgz
> +    ui_msg "Now fetching eero-clang tag ${eero_tag}…"
> +    curl fetch ${ee}clang-trunk/tarball/${eero_tag} \
> +            ${workpath}/clang.tgz
> +}
> +
> +checksum {
> +}
> +
> +extract {
> +    system "cd ${workpath} && \
> +            tar xfz llvm.tgz && \
> +            mv eero* eero-devel && \
> +            mv clang.tgz ${worksrcpath}/tools && \
> +            cd ${worksrcpath}/tools && \
> +            tar xfz clang.tgz && \
> +            mv eero* clang"
> +}

I don't understand why it was necessary to override the standard fetch, checksum and extract phases.

By overriding the standard fetch phase you're eliminating the distfile caching MacPorts offers. This means a user who has to rebuild or reinstall a port will be forced to download the same distfile again.

You're also preventing us from mirroring the distfile on our mirror servers, and preventing users from using our mirror servers. This could result in slower download times, or even download failure if github were ever down.

By overriding the checksum phase with an empty block, you're eliminating the guarantee MacPorts offers that the distfile a user downloaded is the same one the portfile author tested. A malicious distfile could be placed on the server and without the checksum phase MacPorts will happily install it.


In other news, the port currently has a syntax error somewhere:

Can't map the URL 'file://.' to a port description file ("invalid command name "}"").
Please verify that the directory and portfile syntax are correct.
To use the current port, you must be in a port's directory.

Also it's missing the standard modeline and $Id$ lines.

The port's whitespace is inconsistent, using spaces on some lines and tabs on others. Please use only spaces, at 4 spaces per indent.

The pre-activate block you copied from another port is not needed in this port.



More information about the macports-dev mailing list