# -*- 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

PortSystem          1.0
PortGroup           python 1.0

name                py-jellyfish
version             1.2.0
revision            0

license             BSD
maintainers         nomaintainer

description         A library for doing approximate and phonetic matching \
                    of strings.
long_description    {*}${description}

homepage            https://github.com/jamesturk/jellyfish

checksums           ${distname}${extract.suffix} \
                    rmd160  1c361a6e452ad93c96d7eb6f72e86639d15b92f8 \
                    sha256  5c7d73db4045dcc53b6efbfea21f3d3da432d3e052dc51827574d1a447fc23b4 \
                    size    364693

python.versions     39 310 311 312 313

set cryptography_darwin_min_ver 11

if {${name} ne ${subport}} {
    # Legacy systems support
    # https://github.com/jamesturk/jellyfish/issues/219
    if {${os.platform} eq "darwin" && ${os.major} < ${cryptography_darwin_min_ver}} {
        version         0.10.0
        revision        0
        checksums       ${distname}${extract.suffix} \
                        rmd160  135c8cb64f7201993257eb00543f8113b96e8aef \
                        sha256  c58d221cca1b91fe9afe8cf30a721904054533add4482075c9980c809f7d05bd \
                        size    125949
        depends_build-append \
                    port:py${python.version}-setuptools
        depends_test-append \
                    port:py${python.version}-pytest
        pre-test {
            test.env    PYTHONPATH=[glob -nocomplain ${worksrcpath}/build/lib*]
        }
        test.run        yes
        test.cmd        py.test-${python.branch}
        test.target     ${worksrcpath}/build/lib*/jellyfish/test.py
        # Keeps its own block for destroot to avoid accidental breakage:
        post-destroot {
            set docdir ${prefix}/share/doc/${subport}
            xinstall -d ${destroot}${docdir}
            xinstall -m 0644 -W ${worksrcpath} LICENSE README.md \
                ${destroot}${docdir}
        }
    } else {
        PortGroup       cargo_fetch 1.0

        python.pep517_backend   maturin

        test.run        yes
        test.env-append PYTHONPATH=${destroot}${python.pkgd}

        post-destroot {
            set docdir ${prefix}/share/doc/${subport}
            xinstall -d ${destroot}${docdir}
            xinstall -m 0644 -W ${worksrcpath} LICENSE README.md \
                ${destroot}${docdir}
        }

        # egrep -e '^(name|version|checksum) = ' Cargo.lock | perl -pe 's/^(?:name|version|checksum) = "(.+)"/$1/' | tr '\n' ' ' | perl -pe 's|([0-9a-f]{64})|\1 \\\n|g' | pbcopy
        cargo.crates \
            ahash 0.8.11 e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011 \
            autocfg 1.4.0 ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26 \
            cfg-if 1.0.0 baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd \
            csv 1.3.1 acdc4883a9c96732e4733212c01447ebd805833b7275a73ca3ee080fd77afdaf \
            csv-core 0.1.12 7d02f3b0da4c6504f86e9cd789d8dbafab48c2321be74e9987593de5a894d93d \
            getrandom 0.2.15 c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7 \
            heck 0.5.0 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea \
            indoc 2.0.6 f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd \
            itoa 1.0.15 4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c \
            libc 0.2.171 c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6 \
            memchr 2.7.4 78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3 \
            memoffset 0.9.1 488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a \
            num-traits 0.2.19 071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841 \
            once_cell 1.21.3 42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d \
            portable-atomic 1.11.0 350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e \
            proc-macro2 1.0.94 a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84 \
            pyo3 0.24.0 7f1c6c3591120564d64db2261bec5f910ae454f01def849b9c22835a84695e86 \
            pyo3-build-config 0.24.0 e9b6c2b34cf71427ea37c7001aefbaeb85886a074795e35f161f5aecc7620a7a \
            pyo3-ffi 0.24.0 5507651906a46432cdda02cd02dd0319f6064f1374c9147c45b978621d2c3a9c \
            pyo3-macros 0.24.0 b0d394b5b4fd8d97d48336bb0dd2aebabad39f1d294edd6bcd2cccf2eefe6f42 \
            pyo3-macros-backend 0.24.0 fd72da09cfa943b1080f621f024d2ef7e2773df7badd51aa30a2be1f8caa7c8e \
            quote 1.0.40 1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d \
            ryu 1.0.20 28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f \
            serde 1.0.219 5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6 \
            serde_derive 1.0.219 5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00 \
            smallvec 1.14.0 7fcf8323ef1faaee30a44a340193b1ac6814fd9b7b4e88e9d4519a3e4abe1cfd \
            syn 2.0.100 b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0 \
            target-lexicon 0.13.2 e502f78cdbb8ba4718f566c418c52bc729126ffd16baee5baa718cf25dd5a69a \
            tinyvec 1.9.0 09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71 \
            tinyvec_macros 0.1.1 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20 \
            unicode-ident 1.0.18 5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512 \
            unicode-normalization 0.1.24 5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956 \
            unicode-segmentation 1.12.0 f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493 \
            unindent 0.2.4 7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3 \
            version_check 0.9.5 0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a \
            wasi 0.11.0+wasi-snapshot-preview1 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423 \
            zerocopy 0.7.35 1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0 \
            zerocopy-derive 0.7.35 fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e \
    }
}
