summaryrefslogtreecommitdiff
path: root/lang/python23/Makefile.common
blob: 8f1824a54972796f858574847cfd585c286d1ddc (plain)
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
# $NetBSD: Makefile.common,v 1.40 2008/11/10 19:41:47 wiz Exp $
#

DISTNAME=	Python-2.3.7
CATEGORIES=	lang python
MASTER_SITES=	ftp://ftp.python.org/pub/python/2.3.7/ \
		http://www.python.org/ftp/python/2.3.7/
EXTRACT_SUFX=	.tgz

MAINTAINER=	recht@NetBSD.org
HOMEPAGE=	http://www.python.org/
COMMENT=	Interpreted, interactive, object-oriented programming language

USE_LANGUAGES=		c c++
GNU_CONFIGURE=		yes
CONFIGURE_ARGS+=	--enable-shared
CONFIGURE_ARGS+=	OPT=${CFLAGS:M*:Q}

# fdatasync()
LIBS.SunOS+=		-lrt

REPLACE_INTERPRETER+=	python
REPLACE.python.old=	.*python
REPLACE.python.new=	${PREFIX}/bin/python${PY_VER_SUFFIX}
REPLACE_FILES.python=	Lib/cgi.py Lib/bsddb/dbshelve.py Lib/idlelib/idle \
			Lib/idlelib/idle.py Lib/test/test_bz2.py \
			Lib/test/test_largefile.py Lib/test/test_optparse.py
CHECK_INTERPRETER_SKIP=	lib/python${PY_VER_SUFFIX}/test/test_pep263.py

.include "../../mk/bsd.prefs.mk"

PLIST_SRC=	${.CURDIR}/../../lang/python23/PLIST.common
.if exists(${.CURDIR}/../../lang/python23/PLIST.${OPSYS})
PLIST_SRC+=	${.CURDIR}/../../lang/python23/PLIST.${OPSYS}
.endif
PLIST_SRC+=	${.CURDIR}/../../lang/python23/PLIST.common_end

.if ${OPSYS} == "NetBSD"
PRIVILEGED_STAGES+=	clean
.endif

.if ${OPSYS} == "Darwin" || ${OPSYS} == "Interix"
PY_PLATNAME=	${LOWER_OPSYS}
.elif ${OPSYS} == "IRIX"
PY_PLATNAME=	${LOWER_OPSYS:C/\..*//}
.elif ${OPSYS} == "SunOS"
PY_PLATNAME=	sunos${OS_VERSION:C/\..*//}
.else
PY_PLATNAME=	${LOWER_OPSYS}${OS_VERSION:C/\..*//}
.endif
PLIST_SUBST+=	PY_PLATNAME=${PY_PLATNAME:Q}

.if (${MACHINE_ARCH} == "alpha") || (${MACHINE_ARCH} == "amd64") || \
    (${MACHINE_ARCH} == "sparc64") || (${MACHINE_ARCH} == "x86_64") || \
    (defined(ABI) && ${ABI} == "64")
IS_64BIT_PLATFORM?=	yes
.else
IS_64BIT_PLATFORM?=	no
.endif

# the dl module isn't built for 64 bit archs and Darwin
PLIST_VARS+=		dl
.if empty(IS_64BIT_PLATFORM:M[yY][eE][sS]) && \
    (${OPSYS} != "Darwin") && (${OPSYS} != "Interix")
PLIST.dl=		yes
.endif

# setup.py causes some modules to be built if the platform is *not* 64bit.
PLIST_VARS+=		extra-so
.if !empty(IS_64BIT_PLATFORM:M[nN][oO])
PLIST.extra-so=		yes
.endif

# ossaudiodev is only available on x86 for the following platforms
PLIST_VARS+=		oss
.if (${MACHINE_ARCH} == "i386") && \
    (${PY_PLATNAME} == "linux2" || ${PY_PLATNAME} == "freebsd4" || \
     ${PY_PLATNAME} == "freebsd5")
PLIST.oss=		yes
.elif (${MACHINE_ARCH} == "x86_64") && (${PY_PLATNAME} == "linux2")
PLIST.oss=		yes
.endif

# Make sure python modules can link correctly
.if ${OPSYS} == "Darwin"
INSTALL_UNSTRIPPED=	yes
.endif

PLIST_VARS+=	bsddb dll nis
.if ${OPSYS} == "IRIX"
.  if ${ABI} != "64"
PLIST.nis=	yes
.  endif
.else
.  include "../../mk/bdb.buildlink3.mk"
MAKE_ENV+=	PY_BDB_TYPE=${BDB_TYPE:Q}
MAKE_ENV+=	PY_BDB_INCDIRS=${BDBBASE}/${BUILDLINK_INCDIRS.${BDB_TYPE}}
MAKE_ENV+=	PY_BDB_LIBDIRS=${BDBBASE}/lib
MAKE_ENV+=	PY_BDB_LIBS=${BDB_LIBS:Q}
PLIST.bsddb=	yes
PLIST.dll=	yes
.  if ${OPSYS} == "Interix"
CONFIGURE_ENV+=	ac_cv_header_stropts_h=no
.  else
PLIST.nis=	yes
.  endif
.endif

PLIST_SUBST+=	PY_VER_SUFFIX=${PY_VER_SUFFIX:Q}

TEST_TARGET=	test
INSTALL_TARGET=	altinstall

post-extract:
	${MV} ${WRKSRC}/Tools/scripts/pydoc ${WRKSRC}/Tools/scripts/pydoc${PY_VER_SUFFIX}

USE_GNU_READLINE=	# defined
BUILDLINK_DEPMETHOD.readline=		build

.include "../../archivers/bzip2/buildlink3.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
.include "../../devel/readline/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
.include "../../mk/dlopen.buildlink3.mk"
.include "../../mk/oss.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"