# -*- 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               python 1.0
# PortGroup               github 1.0

# github.setup should be performed before name directive, otherwise port name becomes incorrect
# github.setup            named-data PyCCN 86514defb2862231020750bc447dc0377a407592
# checksums               rmd160  eb78fb0a5985ec6260e28cf03cb0747b9b04804b \
#                         sha256  4bfa2734e2b0dcaa886083c65292c014daca87ca631a9363184da59ff9c429dd

fetch.type              git
git.url                 /Users/cawka/Devel/ndn/PyCCN
git.branch              9e6064ae55c6f3ee88f1ae94605a8e5d01c5a8e7

name                    py-pyccn
homepage                https://github.com/remap/PyCCN
license                 BSD
version                 0.2
revision                2

python.versions         27
python.default_version  27

categories	            net ccnx python
platforms	            darwin
maintainers             ucla.edu:alexander.afanasyev

description	            PyCCN - CCN bindings for Python

long_description        A "thin" implementation, which supports Python \
                        objects corresponding to the major CCNx entities - Interest, ContentObject, and \
                        so on, as well as some support objects.  The C code is mostly just responsible \
                        for marshaling data back and forth between the formats, though there are some \
                        useful functions for key generation/access included.

depends_lib-append	    port:ccnx

use_configure           yes

configure.cmd           ./waf configure

pre-configure {
    configure.env-append    PYTHONDIR=${python.pkgd} \
                            PYTHONARCHDIR=${python.pkgd}
    configure.python        ${python.bin}
}

configure.args-append   --ccnx=${prefix}

build.cmd               ./waf
build.target            build

destroot.cmd            ./waf
destroot.target         install
destroot.destdir        --destdir=${destroot}

