# $Id: Portfile 92438 2012-04-28 17:50:05Z jeremyhu@macports.org $

PortSystem              1.0

name                    dyld-headers
version                 195.6
revision                1
categories              devel
maintainers             mfeiri jeremyhu openmaintainer
homepage                http://opensource.apple.com/source/dyld/
master_sites            http://opensource.apple.com/tarballs/dyld/
platforms               darwin
license                 APSL-2.0
description             Header files for the dynamic linker
long_description        Provides header files and man pages for the dynamic \
                        linking and loading facilities in Mac OS X and Darwin

distname                dyld-${version}
checksums               rmd160  440c49f641e45a7bce459aaea2c4fe0dd0385351 \
                        sha256  69296e9b4192bdac778ea899fffc18b02be62b51b5e8474b4cf85ae5f2b08aa4

post-patch {
    reinplace "s|/usr/local|${prefix}|g" \
            ${worksrcpath}/dyld.xcodeproj/project.pbxproj
    reinplace "s|/usr|${prefix}|g" \
            ${worksrcpath}/dyld.xcodeproj/project.pbxproj

    foreach header [glob ${worksrcpath}/include/{,*/}*.h] {
        if {${os.major} < 11} {
            reinplace "s|__MAC_10_7|__MAC_NA|g" ${header}
            reinplace "s|AVAILABLE_MAC_OS_X_VERSION_10_\\(.\\)_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_7|AVAILABLE_MAC_OS_X_VERSION_10_\\1_AND_LATER|" ${header}
            reinplace "s|AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER|__attribute__((unavailable))|g" ${header}
        }
        if {${os.major} < 10} {
            reinplace "s|__MAC_10_6|__MAC_NA|g" ${header}
            reinplace "s|AVAILABLE_MAC_OS_X_VERSION_10_\\(.\\)_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_6|AVAILABLE_MAC_OS_X_VERSION_10_\\1_AND_LATER|" ${header}
            reinplace "s|AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER|__attribute__((unavailable))|g" ${header}
        }
        if {${os.major} < 9} {
            reinplace "s|__MAC_10_5|__MAC_NA|g" ${header}
            reinplace "s|AVAILABLE_MAC_OS_X_VERSION_10_\\(.\\)_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_5|AVAILABLE_MAC_OS_X_VERSION_10_\\1_AND_LATER|" ${header}
            reinplace "s|AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER|__attribute__((unavailable))|g" ${header}

            reinplace "s|Availability.h|AvailabilityMacros.h|g" ${header}
            reinplace "s|__OSX_AVAILABLE_STARTING(__MAC_NA,.*)|__attribute__((unavailable))|g" ${header}
            reinplace "s|__OSX_AVAILABLE_BUT_DEPRECATED(__MAC_NA,.*)|__attribute__((unavailable))|g" ${header}
            reinplace "s|__OSX_AVAILABLE_STARTING(__MAC_10_\\(\[^,\]*\\),.*)|AVAILABLE_MAC_OS_X_VERSION_10_\\1_AND_LATER|g" ${header}
            reinplace "s|__OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_\\(\[^,\]*\\),__MAC_NA,.*)|AVAILABLE_MAC_OS_X_VERSION_10_\\1_AND_LATER|g" ${header}
            reinplace "s|__OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_\\(\[^,\]*\\),__MAC_10_\\(\[^,\]*\\),.*)|AVAILABLE_MAC_OS_X_VERSION_10_\\1_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_\\2|g" ${header}
        }
    }
}

supported_archs         noarch
use_configure no
build {}

destroot {
    system "ditto ${worksrcpath}/include ${destroot}${prefix}/include"
    #system "ditto ${worksrcpath}/doc/man ${destroot}${prefix}/share/man"
}

livecheck.type          regex
livecheck.regex         "dyld-(\[\\d.\]+)"
