1 # $NetBSD: Makefile,v 1.21 2009/09/12 22:24:06 tron Exp $
4 PKGNAME= python25-2.5.4
6 CATEGORIES= lang python
7 MASTER_SITES= http://www.python.org/ftp/python/2.5.4/
10 MAINTAINER= recht@NetBSD.org
11 HOMEPAGE= http://www.python.org/
12 COMMENT= Interpreted, interactive, object-oriented programming language
14 PKG_DESTDIR_SUPPORT= user-destdir
16 # Remember to update pkgsrc/lang/python/srcdist.mk when version changes
18 CONFLICTS+= python-[0-9]*
21 CONFIGURE_ARGS+= --with-threads
22 CONFIGURE_ARGS+= --enable-shared
23 CONFIGURE_ARGS+= OPT=${CFLAGS:M*:Q}
24 CONFIGURE_ARGS+= --with-system-ffi
30 PTHREAD_OPTS+= require
31 .include "../../mk/pthread.buildlink3.mk"
32 .if ${PTHREAD_TYPE} == "pth"
33 CONFIGURE_ARGS+= --with-pth
36 .include "../../mk/bsd.prefs.mk"
43 PLIST_SRC= ${.CURDIR}/../../lang/python25/PLIST.common
44 .if exists(${.CURDIR}/../../lang/python25/PLIST.${OPSYS})
45 PLIST_SRC+= ${.CURDIR}/../../lang/python25/PLIST.${OPSYS}
48 .if ${OPSYS} == "NetBSD"
49 PRIVILEGED_STAGES+= clean
52 .if ${OPSYS} == "Darwin" || ${OPSYS} == "Interix"
53 PY_PLATNAME= ${LOWER_OPSYS}
55 .elif ${OPSYS} == "IRIX"
56 PY_PLATNAME= ${LOWER_OPSYS:C/\..*//}
57 .elif ${OPSYS} == "SunOS"
58 PY_PLATNAME= sunos${OS_VERSION:C/\..*//}
59 .elif ${OPSYS} == "HPUX"
62 PY_PLATNAME= ${LOWER_OPSYS}${OS_VERSION:C/\..*//}
64 PLIST_SUBST+= PY_PLATNAME=${PY_PLATNAME:Q}
66 .if (${MACHINE_ARCH} == "alpha") || (${MACHINE_ARCH} == "amd64") || \
67 (${MACHINE_ARCH} == "sparc64") || (${MACHINE_ARCH} == "x86_64") || \
68 (defined(ABI) && ${ABI} == "64")
69 IS_64BIT_PLATFORM?= yes
71 IS_64BIT_PLATFORM?= no
74 # the dl module isn't built for 64 bit archs
76 .if empty(IS_64BIT_PLATFORM:M[yY][eE][sS])
80 # builds additional modules if OpenSSL < 0.9.8
81 PLIST_VARS+= openssl097
82 CHECK_BUILTIN.openssl:= no
83 .include "../../security/openssl/builtin.mk"
84 CHECK_BUILTIN.openssl:= yes
85 .if !empty(USE_BUILTIN.openssl:M[yY][eE][sS]) && \
86 !empty(BUILTIN_PKG.openssl:Mopenssl-0.9.[67]*)
90 # setup.py causes some modules to be built if the platform is *not* 64bit.
92 .if !empty(IS_64BIT_PLATFORM:M[nN][oO])
96 # ossaudiodev is only available on x86 for the following platforms
98 .if (${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64") && \
99 (${PY_PLATNAME} == "linux2" || ${OPSYS} == "FreeBSD")
103 # Make sure python modules can link correctly
104 .if ${OPSYS} == "Darwin"
105 INSTALL_UNSTRIPPED= yes
107 . if empty(OS_VERSION:M[1-9].*)
108 CFLAGS+= -D_DARWIN_C_SOURCE
112 PLIST_VARS+= bsddb dll nis no-nis
113 .if ${OPSYS} == "IRIX"
120 . include "../../mk/bdb.buildlink3.mk"
121 MAKE_ENV+= PY_BDB_TYPE=${BDB_TYPE}
122 MAKE_ENV+= PY_BDB_INCDIRS=${BUILDLINK_INCDIRS.${BDB_TYPE}:S,^,${BDBBASE}/,:Q}
123 MAKE_ENV+= PY_BDB_LIBDIRS=${BDBBASE}/lib
126 . if ${OPSYS} != "NetBSD" || exists(/usr/bin/ypcat)
133 .if defined(BUILDLINK_TRANSFORM)
134 MAKE_ENV+= PY_BDB_TRANSFORM=${BUILDLINK_TRANSFORM:Q}
137 PLIST_SUBST+= PY_VER_SUFFIX=${PY_VER_SUFFIX:Q}
140 INSTALL_TARGET= altinstall
142 REPLACE_INTERPRETER+= py25
143 REPLACE.py25.old= .*python[^ ]*
144 REPLACE.py25.new= ${PREFIX}/bin/python${PY_VER_SUFFIX}
145 REPLACE_FILES.py25= Lib/cgi.py # explicitly demanded to be patched
146 REPLACE_FILES.py25+= Lib/bsddb/dbshelve.py Lib/test/test_bz2.py
147 REPLACE_FILES.py25+= Lib/test/test_largefile.py Lib/test/test_optparse.py
150 ${MV} ${WRKSRC}/Lib/smtpd.py ${WRKSRC}/Lib/smtpd${PY_VER_SUFFIX}.py
151 ${MV} ${WRKSRC}/Tools/scripts/pydoc ${WRKSRC}/Tools/scripts/pydoc${PY_VER_SUFFIX}
153 .if ${OPSYS} == "HPUX"
155 ${LN} -fs ${DESTDIR}${PREFIX}/lib/libpython2.5.sl \
156 ${DESTDIR}${PREFIX}/lib/libpython2.5.sl.1.0
159 USE_GNU_READLINE= yes
160 BUILDLINK_DEPMETHOD.readline= build
162 .include "../../archivers/bzip2/buildlink3.mk"
163 .include "../../devel/gettext-lib/buildlink3.mk"
164 .include "../../devel/libffi/buildlink3.mk"
165 .include "../../devel/readline/buildlink3.mk"
166 .include "../../devel/zlib/buildlink3.mk"
167 .include "../../security/openssl/buildlink3.mk"
168 .include "../../mk/dlopen.buildlink3.mk"
169 .include "../../mk/oss.buildlink3.mk"
170 .include "../../mk/bsd.pkg.mk"