[133168] trunk/dports/sysutils

Ryan Schmidt ryandesign at macports.org
Sun Mar 1 23:19:16 PST 2015


> On Feb 22, 2015, at 11:53 AM, raimue at macports.org wrote:
> 
> Revision
> 133168
> Author
> raimue at macports.org
> Date
> 2015-02-22 09:53:02 -0800 (Sun, 22 Feb 2015)
> Log Message
> 
> sysutils/optool:
> New port, an editor for Mach-O binaries
> 
> Added Paths
> 
> 	• trunk/dports/sysutils/optool/
> 	• trunk/dports/sysutils/optool/Portfile
> 	• trunk/dports/sysutils/optool/files/
> 	• trunk/dports/sysutils/optool/files/patch-ldflags-objc.diff
> Diff
> 
> Added: trunk/dports/sysutils/optool/Portfile (0 => 133168)
> 
> --- trunk/dports/sysutils/optool/Portfile	                        (rev 0)
> +++ trunk/dports/sysutils/optool/Portfile	2015-02-22 17:53:02 UTC (rev 133168)
> 
> @@ -0,0 +1,56 @@
> 
> +# -*- 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$
> +
> +PortSystem          1.0
> +PortGroup           github 1.0
> +PortGroup           xcode 1.0
> +
> +github.setup        alexzielenski optool 0.1
> +categories          sysutils
> +platforms           darwin
> +maintainers         raimue openmaintainer
> +license             BSD
> +
> +description         Editor for Mach-O binaries
> +
> +long_description \
> +    optool is a tool which interfaces with Mach-O binaries in order to insert \
> +    or remove load commands, strip code signatures, resign, and remove ASLR.
> +
> +# optool depends on these libraries
> +set argparser_commit 2802076
> +set coreparse_commit 1be510a
> +
> +master_sites-append https://github.com/mysteriouspants/ArgumentParser/archive/${argparser_commit}.tar.gz?dummy=:argparser \
> +                    https://github.com/beelsebob/CoreParse/archive/${coreparse_commit}.tar.gz?dummy=:coreparse
> +
> +distfiles-append    argparser-${argparser_commit}.tar.gz:argparser \
> +                    coreparse-${coreparse_commit}.tar.gz:coreparse
> +
> +checksums           ${name}-${version}.tar.gz \
> +                    rmd160  d044c322651023bd87c1e2dc29b90d97d7207a0e \
> +                    sha256  4f6e815f86c4f7f63fe82118f5e52acb54ef61c40bd1195493715c9fde267f90 \
> +                    argparser-${argparser_commit}.tar.gz \
> +                    rmd160  dbb60b1d0194d264c477fedc19bfe894b5dbd1d3 \
> +                    sha256  cd4272e8a8cad6d8080c6ddf964b4c469337fdf61bb06cc0aed6de1daa7bd91f \
> +                    coreparse-${coreparse_commit}.tar.gz \
> +                    rmd160  a0e7cd15c6c927d2ead9f997553044c060a52023 \
> +                    sha256  3c468346405aa65f34b275fd23a94b600fbd60111ded67ec5d64ddfc462ef76e
> +
> +post-extract {
> +    # Replace empty directories with the real library sources
> +    delete ${worksrcpath}/${name}/FSArgumentParser
> +    move [glob ${workpath}/ArgumentParser-${argparser_commit}*] ${worksrcpath}/${name}/FSArgumentParser
> +    delete ${worksrcpath}/${name}/FSArgumentParser/CoreParse
> +    move [glob ${workpath}/CoreParse-${coreparse_commit}*] ${worksrcpath}/${name}/FSArgumentParser/CoreParse
> +}

I've had to do this kind of thing enough times myself (e.g. with MongoHub, MyPaint-devel), and now I see others like you doing it, that it's probably time for me to enhance the github portgroup to automate this.

Still wish developers would provide proper release tarballs which would obviate the need...



More information about the macports-dev mailing list