aboutsummaryrefslogtreecommitdiffstats
path: root/net-p2p/py-bittorrent/Makefile
blob: ecbe998c76140cfce81acbdef813be47c218995b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# New ports collection makefile for:    BitTorrent
# Date created:     Sun Mar 16 06:34:12 UTC 2003
# Whom:         Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>
#
# $FreeBSD$
#

PORTNAME=   BitTorrent
PORTVERSION=    4.0.2
PORTEPOCH=  1
CATEGORIES?=    net python
MASTER_SITES=   http://www.bittorrent.com/dl/ \
        ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= ${PORTNAME:L}
PKGNAMEPREFIX=  ${PYTHON_PKGNAMEPREFIX}

MAINTAINER= lioux@FreeBSD.org
COMMENT?=   A peer-to-peer tool for distributing files written in Python

USE_PYTHON= yes
USE_PYDISTUTILS=    yes
USE_REINPLACE=  yes

CONFLICTS=  py??-*[Bb]it[Tt]orrent* py??-*[Bb]it[Tt]ornado* btqueue*

PORTDOCS=   LICENSE.txt \
        redirdonate.html \
        README.txt credits.txt

.ifdef(NOPORTDOCS)
EXTRA_PATCHES+= ${FILESDIR}/extra-noportdocs-setup.py
.endif

.include <bsd.port.pre.mk>

.if ${ARCH} != "i386"
WITHOUT_PSYCO=  yes
.endif

# required for GUI
.ifndef(WITHOUT_GUI)
RUN_DEPENDS+=   ${PYTHON_SITELIBDIR}/pygtk.py:${PORTSDIR}/x11-toolkits/py-gtk2

PLIST_FILES+=   \
        bin/btmaketorrentgui.py \
        bin/btdownloadgui.py \
        share/pixmaps/BitTorrent/bittorrent.ico \
        share/pixmaps/BitTorrent/broken.png \
        share/pixmaps/BitTorrent/finished.png \
        share/pixmaps/BitTorrent/info.png \
        share/pixmaps/BitTorrent/logo/bittorrent_32.png \
        share/pixmaps/BitTorrent/logo/bittorrent_96.png \
        share/pixmaps/BitTorrent/pause.png \
        share/pixmaps/BitTorrent/paused.png \
        share/pixmaps/BitTorrent/play.png \
        share/pixmaps/BitTorrent/queued.png \
        share/pixmaps/BitTorrent/remove.png \
        share/pixmaps/BitTorrent/running.png

PLIST_SUB+= GUI=""
.else
EXTRA_PATCHES+= ${FILESDIR}/extra-nogui-patch-setup.py

PLIST_SUB+= GUI="@comment "
.endif
# required for PSYCO
.ifndef(WITHOUT_PSYCO)
RUN_DEPENDS+=   ${PYTHON_SITELIBDIR}/psyco/_psyco.so:${PORTSDIR}/devel/py-psyco

EXTRA_PATCHES+= \
        ${FILESDIR}/extra-psyco-patch-btdownloadcurses.py \
        ${FILESDIR}/extra-psyco-patch-btdownloadgui.py \
        ${FILESDIR}/extra-psyco-patch-btdownloadheadless.py \
        ${FILESDIR}/extra-psyco-patch-btlaunchmany.py \
        ${FILESDIR}/extra-psyco-patch-btlaunchmanycurses.py \
        ${FILESDIR}/extra-psyco-patch-btmaketorrent.py \
        ${FILESDIR}/extra-psyco-patch-btmaketorrentgui.py \
        ${FILESDIR}/extra-psyco-patch-btreannouce.py \
        ${FILESDIR}/extra-psyco-patch-btrename.py \
        ${FILESDIR}/extra-psyco-patch-btshowmetainfo.py \
        ${FILESDIR}/extra-psyco-patch-bttrack.py

PLIST_FILES+=   \
        ${PYTHON_SITELIBDIR:S|^${PYTHONBASE}/||}/BitTorrent/PSYCO.py \
        ${PYTHON_SITELIBDIR:S|^${PYTHONBASE}/||}/BitTorrent/PSYCO.pyc \
        ${PYTHON_SITELIBDIR:S|^${PYTHONBASE}/||}/BitTorrent/PSYCO.pyo
.endif

pre-everything::
.ifndef(WITHOUT_GUI)
    @${ECHO_MSG} '===> Define WITHOUT_GUI to disable GUI installation'
.endif
.ifndef(WITHOUT_PSYCO)
    @${ECHO_MSG} '===> Define WITHOUT_PSYCO to disable devel/py-psyco optimization'
.endif

post-patch:
    @${FIND} ${WRKSRC} -type f | \
        ${XARGS} -x -n 10 \
        ${REINPLACE_CMD} -E \
        -e 's|/usr/bin/env python.*|${LOCALBASE}/bin/python|'
.ifndef(WITHOUT_PSYCO)
# activate psyco optimization
    @${ECHO_CMD} 'psyco = 1' > ${WRKSRC}/BitTorrent/PSYCO.py
.endif

post-install:
# set proper permissions
    @${CHMOD} -R ${SHAREMODE} \
        ${PREFIX}/${PYTHON_SITELIBDIR:S|^${PYTHONBASE}/||}/BitTorrent
    @${CHMOD} ${SHAREMODE} ${PREFIX}/${PYTHON_SITELIBDIR:S|^${PYTHONBASE}/||}/BitTorrent
    @${CHMOD} a+x ${PREFIX}/${PYTHON_SITELIBDIR:S|^${PYTHONBASE}/||}/BitTorrent
.ifndef(WITHOUT_GUI)
# pixmaps
    @${CHMOD} -R ${SHAREMODE} \
        ${PREFIX}/share/pixmaps/${PORTNAME}/*
    @${CHMOD} a+x \
        ${PREFIX}/share/pixmaps/${PORTNAME}/logo
.endif
.ifndef(NOPORTDOCS)
# docs
    @${CHMOD} -R ${SHAREMODE} \
        ${DOCSDIR}/*
.endif

.include <bsd.port.post.mk>