aboutsummaryrefslogtreecommitdiffstats
path: root/lang/python/Makefile
blob: 4d5ee3d79e1a90c48ad6abcc8dd0d7ee89dce778 (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
# Created by: jkh
# $FreeBSD$

PORTNAME=   python
PORTVERSION=    ${PYTHON_DEFAULT}
PORTREVISION=   1
PORTEPOCH=  2
CATEGORIES= lang python ipv6
MASTER_SITES=   # empty
DISTFILES=  # empty
EXTRACT_ONLY=   # empty

MAINTAINER= python@FreeBSD.org
COMMENT=    The "meta-port" for the default version of Python interpreter

USE_PYTHON_RUN= yes
NO_BUILD=   yes
PYTHON_NO_DEPENDS=  yes

PLIST_FILES=    bin/2to3 \
        bin/idle \
        bin/pydoc \
        bin/python \
        bin/python-config \
        bin/python-shared \
        bin/python-shared-config

.include <bsd.port.pre.mk>

.if ${PYTHON_MAJOR_VER} == 2
RUN_DEPENDS+=   python2:${PORTSDIR}/lang/python2
PLIST_FILES+=   bin/smtpd.py
.elif ${PYTHON_MAJOR_VER} == 3
RUN_DEPENDS+=   python3:${PORTSDIR}/lang/python3
.endif

do-install:
.for file in python python-shared
    ${LN} -sf ${file}${PYTHON_MAJOR_VER} ${STAGEDIR}${PREFIX}/bin/${file}
.endfor
    ${LN} -sf 2to3-${PYTHON_MAJOR_VER} ${STAGEDIR}${PREFIX}/bin/2to3
.if ${PYTHON_MAJOR_VER} == 2
    ${LN} -sf smtpd${PYTHON_MAJOR_VER}.py ${STAGEDIR}${PREFIX}/bin/smtpd.py
.for file in idle pydoc
    ${LN} -sf ${file}${PYTHON_MAJOR_VER} ${STAGEDIR}${PREFIX}/bin/${file}
.endfor
.elif ${PYTHON_MAJOR_VER} == 3
.for file in idle pydoc
    ${LN} -sf ${file}${PYTHON_MAJOR_VER}-${PYTHON_VER} \
        ${STAGEDIR}${PREFIX}/bin/${file}
.endfor
.endif
    ${LN} -sf python${PYTHON_MAJOR_VER}-config \
        ${STAGEDIR}${PREFIX}/bin/python-config
    ${LN} -sf python-shared${PYTHON_MAJOR_VER}-config \
        ${STAGEDIR}${PREFIX}/bin/python-shared-config

# Major upgrade support
PORTUPGRADE_CMD=    ${LOCALBASE}/sbin/portupgrade

.if defined(USE_PORTMASTER)
PORTUPGRADE_CMD=    ${LOCALBASE}/sbin/portmaster
.endif

.if defined(WITH_PKGNG)
PKG_LIST=   ${PKG_BIN} query -a '%n-%v'
PKG_LIST_FILES= ${PKG_INFO} -l
.else
PKG_LIST=   ${PKG_INFO} -Ea
PKG_LIST_FILES= ${PKG_INFO} -L
.endif

upgrade-site-packages:
    @if [ ! -x ${PORTUPGRADE_CMD} ]; then \
        ${ECHO_MSG} "Please install ports-mgmt/portupgrade."; \
        ${FALSE}; \
     fi

    @GREP_ARGS="-q"; \
    for ver in `echo ${_PYTHON_ALLBRANCHES:C/${PYTHON_VER}//}`; do \
        GREP_ARGS="$${GREP_ARGS} -e lib/python$$ver"; \
    done; \
    UPD=""; \
    for pkg in `${PKG_LIST}`; do \
        ${PKG_LIST_FILES} $${pkg} | ${GREP} $${GREP_ARGS} && \
            UPD="$${UPD} $${pkg}"; \
    done; \
    if [ "$${UPD}" ]; then \
        if [ -n ${PORTUPGRADE_ARGS} ]; then \
            ${PORTUPGRADE_CMD} ${PORTUPGRADE_ARGS} -f $${UPD}; \
        else \
            ${PORTUPGRADE_CMD} -f $${UPD}; \
        fi; \
    fi; \

.include <bsd.port.post.mk>