aboutsummaryrefslogtreecommitdiffstats
path: root/lang/python26/Makefile
blob: 06e31e8b738e0ecac1229cbdf09ad758b3cdde8f (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
127
128
129
130
131
132
133
134
135
136
# New ports collection makefile for:    python
# Date created:         08 August 1995
# Whom:                 jkh
#
# $FreeBSD$
#

PORTNAME=   python
PORTVERSION=    2.0
CATEGORIES= lang python
MASTER_SITES=   http://www.python.org/ftp/python/2.0/ \
        http://SunSITE.Informatik.RWTH-Aachen.DE/python/ftp/python/2.0/
DISTFILES=  ${PYTHON_DISTFILE}

MAINTAINER?=    tg@FreeBSD.org

DIST_SUBDIR=    python
WRKSRC=     ${PYTHON_WRKSRC}
GNU_CONFIGURE=  yes
CONFIGURE_ARGS= --with-fpectl
CONFIGURE_ENV=  OPT="${CFLAGS}"
INSTALL_TARGET= install
PLIST=      ${WRKDIR}/PLIST
MAN1=       python.1

USE_PYTHON= yes
PYTHON_VERSION= python2.0
PYTHON_NO_DEPENDS=  yes

#
# The standard setup file
#
SETUP_FILE= Setup

#
# If you don't want to use Python's thread module, you need to set
# WITHOUT_THREADS.
#
LIBC_R!=    /sbin/ldconfig -r | grep c_r || true
.if (${LIBC_R} != "") && !defined(WITHOUT_THREADS)
CONFIGURE_ARGS+=    --with-threads
CFLAGS+=        -D_THREAD_SAFE
CONFIGURE_ENV+=     LDFLAGS="-pthread ${LDFLAGS}"
.else
CONFIGURE_ARGS+=    --without-threads
.endif

#
# OpenSSL support is built on machines that have it
#
.if exists(/etc/ssl/openssl.cnf)
SETUP_LOCAL+=   Setup.OpenSSL
.endif

#
# The mpz module is built on machines with a full source tree
#
.if exists(/usr/src/contrib/libgmp/gmp-impl.h)
SETUP_LOCAL+=   Setup.gmp
PLIST_GMP=  ${PKGDIR}/pkg-plist.gmp
.endif

#
# Install the Tools by default. It contains scripts ranging from an IDE
# to a web tree checker, to a collection of simple scripts that are useful
# while extending or managing Python.
#
.if !defined(WITHOUT_TOOLS)
PLIST_TOOLS=    ${PKGDIR}/pkg-plist.Tools
.endif

#
# Install Demo/ by default.
#
.if !defined(WITHOUT_DEMO)
PLIST_DEMO= ${PKGDIR}/pkg-plist.Demo
DEMODIR=    ${PREFIX}/share/examples/python
.endif

post-configure:
    ${CP} ${FILESDIR}/${SETUP_FILE} ${WRKSRC}/Modules/Setup
.for file in ${SETUP_LOCAL}
    ${CAT} ${FILESDIR}/${file} >> ${WRKSRC}/Modules/Setup.local
.endfor

.include <bsd.port.pre.mk>

.if ${OSVERSION} < 400000
LIB_DEPENDS+=   ncurses.5:${PORTSDIR}/devel/ncurses
CFLAGS+=    -I${LOCALBASE}/include/ncurses -I${LOCALBASE}/include
CONFIGURE_ENV+= LDFLAGS="-L${LOCALBASE}/lib"
.endif

.if ${OSVERSION} >= 500000 && ${OSVERSION} < 500005
CONFIGURE_ARGS+= --with-libs='-lxpg4'
.endif
.if ${OSVERSION} < 400020
CONFIGURE_ARGS+= --with-libs='-lxpg4'
.endif

.if ${OSVERSION} >= 500000
PLATFORMS=plat-freebsd2 plat-freebsd3 plat-freebsd4
.elif ${OSVERSION} >= 400000
PLATFORMS=plat-freebsd2 plat-freebsd3 plat-freebsd5
.elif ${OSVERSION} >= 300000
PLATFORMS=plat-freebsd2 plat-freebsd4 plat-freebsd5
.else
PLATFORMS=plat-freebsd3 plat-freebsd4 plat-freebsd5
.endif

pre-install:
.for platform in ${PLATFORMS}
    ${MKDIR} ${PREFIX}/lib/${PYTHON_VERSION}/${platform}
.for file in FCNTL.py IN.py SOCKET.py TERMIOS.py regen
    ${INSTALL_DATA} ${WRKSRC}/Lib/${platform}/${file} \
        ${PREFIX}/lib/${PYTHON_VERSION}/${platform}/
.endfor
.endfor
    @sort -r -o ${PLIST} ${PLIST_GMP} ${PLIST_TOOLS} ${PLIST_DEMO} ${PKGDIR}/pkg-plist

post-install:
    strip ${PREFIX}/bin/python
    @${MKDIR} ${PREFIX}/share/emacs/site-lisp
    ${INSTALL_DATA} ${WRKSRC}/Misc/python-mode.el ${PREFIX}/share/emacs/site-lisp
    @${MKDIR} ${PYTHON_SITELIBDIR}
.if !defined(WITHOUT_TOOLS)
    @cd ${WRKSRC}; tar -c --exclude='*CVS*' -f - Tools | \
        (cd ${PYTHON_LIBDIR}; tar xf -)
.endif
.if !defined(WITHOUT_DEMO)
    @${MKDIR} ${DEMODIR}
    @cd ${WRKSRC}/Demo; tar -c --exclude='*CVS*' -f - * | \
        (cd ${DEMODIR}; tar xf -)
.endif

.include <bsd.port.post.mk>