[107013] trunk/dports/devel

Ryan Schmidt ryandesign at macports.org
Sat Jun 15 18:29:49 PDT 2013


On Jun 14, 2013, at 07:32, ram at macports.org wrote:

> Revision: 107013
>          https://trac.macports.org/changeset/107013
> Author:   ram at macports.org
> Date:     2013-06-14 05:32:42 -0700 (Fri, 14 Jun 2013)
> Log Message:
> -----------
> devel/globus-core: new port (#39280)

Some comments below.


> Added: trunk/dports/devel/globus-core/Portfile
> ===================================================================
> --- trunk/dports/devel/globus-core/Portfile	                        (rev 0)
> +++ trunk/dports/devel/globus-core/Portfile	2013-06-14 12:32:42 UTC (rev 107013)
> @@ -0,0 +1,94 @@
> +# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
> +# $Id$
> +
> +set perl_vendor_lib [ exec sh -c "eval \"\`perl -V:installvendorlib\`\" ; echo \$installvendorlib" ]

At the time this line is run, you cannot assume that perl has already been installed.


> +if {$build_arch == "x86_64" || $build_arch == "ppc64"} {
> +    set flavor gcc64pthr
> +    set enable64 yes
> +} else {
> +    set flavor gcc32pthr
> +    set enable64 no
> +}

What happens when the user selects the universal variant? You may need to use the muniversal portgroup.


> +depends_run             port:p5-xml-dom \
> +                        port:p5-xml-parser
> +
> +depends_build           port:grid-packaging-tools \
> +                        port:p5-xml-dom \
> +                        port:p5-xml-parser \
> +                        port:libtool \
> +                        port:autoconf \
> +                        port:automake

Must depend on the specific subport of the p5-* ports that you want, and probably do something to inform the build system to use that perl. Unless there is a specific requirement for a newer or older version, it should be perl5.12 because that is the default in MacPorts at this time.


> +pre-configure {
> +    file delete -force ${worksrcpath}/autom4te.cache
> +    reinplace "s/libtoolize/glibtoolize/g" ${worksrcpath}/bootstrap
> +    system "cd ${worksrcpath} && \
> +        GLOBUS_LOCATION=${prefix} GPT_LOCATION=${prefix} ./bootstrap"
> +}

Should use 'system -W … "…"' instead of 'system "cd … && …"'.


> +post-destroot {
> +    # These scripts are intended to be sourced, not executed
> +    system "chmod 644 ${destroot}${prefix}/share/globus/globus-build-env-*.sh"
> +}

Should use [file attributes -permissions] instead of running a shell to run chmod. [glob] and [eval] may also be helpful.




More information about the macports-dev mailing list