2008-05-10 17:10:24 +00:00
|
|
|
# $OpenBSD: Makefile.inc,v 1.55 2008/05/10 17:10:24 deanna Exp $
|
2002-05-11 21:35:13 +00:00
|
|
|
|
|
|
|
# IMPORTANT! If you make any changes to the Python ports, be sure
|
|
|
|
# to also update files/CHANGES.OpenBSD for your change. This is a
|
|
|
|
# requirement of the PSF license, if it constitutes a change to
|
|
|
|
# Python itself.
|
2002-02-15 19:42:18 +00:00
|
|
|
|
2006-10-10 19:08:06 +00:00
|
|
|
SHARED_ONLY= Yes
|
|
|
|
|
2007-09-16 00:27:05 +00:00
|
|
|
COMMENT-main= interpreted object-oriented programming language
|
|
|
|
COMMENT-expat= expat module for Python
|
|
|
|
COMMENT-bsddb= Berkeley db module for Python
|
|
|
|
COMMENT-gdbm= GNU dbm module for Python
|
|
|
|
COMMENT-idle= IDE for Python
|
|
|
|
COMMENT-mpz= GNU arbitrary magnitude integer module for Python
|
|
|
|
COMMENT-tests= Python test suite
|
|
|
|
COMMENT-tkinter=tk GUI module for Python
|
|
|
|
COMMENT-tools= extra tools for Python
|
|
|
|
COMMENT-sqlite= sqlite database module for Python
|
|
|
|
COMMENT-bz2= bz2 module for Python
|
2002-02-15 19:42:18 +00:00
|
|
|
|
2006-11-24 20:48:23 +00:00
|
|
|
PKGNAME-main= python-${VERSION}${PATCHLEVEL}${PKG_PATCHLEVEL}
|
2002-02-15 19:42:18 +00:00
|
|
|
DISTNAME= Python-${VERSION}${PATCHLEVEL}
|
|
|
|
CATEGORIES= lang
|
2005-11-11 09:45:29 +00:00
|
|
|
MASTER_SITES= http://www.python.org/ftp/${PSUBDIR}/ \
|
|
|
|
http://python.mirrors.pair.com/pub/${PSUBDIR}/
|
2008-02-27 00:30:47 +00:00
|
|
|
PSUBDIR?= python/${VERSION}${PATCHLEVEL}
|
2002-02-15 19:42:18 +00:00
|
|
|
EXTRACT_SUFX= .tgz
|
|
|
|
|
|
|
|
HOMEPAGE= http://www.python.org/
|
|
|
|
|
2004-11-04 22:14:11 +00:00
|
|
|
MAINTAINER= Aleksander Piotrowski <alek@openbsd.org>
|
2003-12-13 15:03:07 +00:00
|
|
|
|
2002-05-11 21:35:13 +00:00
|
|
|
# PSF license <http://www.python.org/${VERSION}/license.html>
|
|
|
|
# A summary of changes to Python is required to be distributed
|
2002-02-15 19:42:18 +00:00
|
|
|
PERMIT_PACKAGE_CDROM= Yes
|
|
|
|
PERMIT_PACKAGE_FTP= Yes
|
|
|
|
PERMIT_DISTFILES_CDROM= Yes
|
|
|
|
PERMIT_DISTFILES_FTP= Yes
|
|
|
|
|
2006-11-01 21:11:55 +00:00
|
|
|
PSEUDO_FLAVORS= no_expat no_gdbm no_idle no_mpz no_tkinter no_bsddb no_bz2 \
|
|
|
|
no_sqlite
|
2002-02-15 19:42:18 +00:00
|
|
|
FLAVOR?=
|
|
|
|
|
2006-11-24 20:48:23 +00:00
|
|
|
MULTI_PACKAGES= -main -tests -tools
|
2002-02-15 19:42:18 +00:00
|
|
|
|
2002-03-23 04:34:22 +00:00
|
|
|
# All subpackages depend on the main python package.
|
|
|
|
|
2006-11-24 20:48:23 +00:00
|
|
|
RUN_DEPENDS= :python-${VERSION}${PATCHLEVEL}${PKG_PATCHLEVEL}:lang/python/${VERSION},-main
|
2005-03-03 23:20:47 +00:00
|
|
|
LIB_DEPENDS=
|
2006-11-24 20:48:23 +00:00
|
|
|
|
|
|
|
RUN_DEPENDS-main=
|
2007-01-10 16:57:56 +00:00
|
|
|
WANTLIB-main= ssl panel m crypto c util z readline pthread ncurses stdc++
|
2006-11-24 20:48:23 +00:00
|
|
|
|
2007-10-25 21:05:33 +00:00
|
|
|
LIB_DEPENDS-bsddb= lib/db4/db.>=4:db-4.*:databases/db/v4
|
2006-11-24 20:48:23 +00:00
|
|
|
LIB_DEPENDS-gdbm= gdbm.>=3::databases/gdbm
|
|
|
|
LIB_DEPENDS-bz2= bz2::archivers/bzip2
|
|
|
|
RUN_DEPENDS-idle= ${RUN_DEPENDS} \
|
|
|
|
::lang/python/${VERSION},-tkinter
|
2007-05-07 15:43:33 +00:00
|
|
|
LIB_DEPENDS-tkinter= tcl84:tcl-8.4.*:lang/tcl/8.4 \
|
|
|
|
tk84:tk-8.4.*:x11/tk/8.4
|
|
|
|
WANTLIB-tkinter= X11
|
2006-11-24 20:48:23 +00:00
|
|
|
LIB_DEPENDS-mpz= gmp::devel/gmp
|
2007-04-28 10:06:24 +00:00
|
|
|
WANTLIB-expat= expat
|
2006-11-24 20:48:23 +00:00
|
|
|
LIB_DEPENDS-sqlite= sqlite3.>=8.7::databases/sqlite3
|
2002-03-23 04:34:22 +00:00
|
|
|
|
2006-11-01 21:11:55 +00:00
|
|
|
SETUP_PY= "s,!!LOCALBASE!!,${LOCALBASE},g" \
|
|
|
|
"s,!!X11BASE!!,${X11BASE},g"
|
|
|
|
|
2007-10-30 13:35:18 +00:00
|
|
|
.if empty(FLAVOR:L:Mno_bsddb) && ${VERSION} == "2.5"
|
2006-11-01 21:11:55 +00:00
|
|
|
SETUP_PY+= "s,!!USE_BSDDB!!,1,g"
|
|
|
|
MULTI_PACKAGES+=-bsddb
|
|
|
|
.else
|
|
|
|
SETUP_PY+= "s,!!USE_BSDDB!!,0,g"
|
2003-12-31 17:40:20 +00:00
|
|
|
.endif
|
|
|
|
|
2003-12-13 15:03:07 +00:00
|
|
|
.if empty(FLAVOR:L:Mno_gdbm)
|
2006-11-01 21:11:55 +00:00
|
|
|
SETUP_PY+= "s,!!USE_GDBM!!,1,g"
|
|
|
|
MULTI_PACKAGES+=-gdbm
|
|
|
|
.else
|
|
|
|
SETUP_PY+= "s,!!USE_GDBM!!,0,g"
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if empty(FLAVOR:L:Mno_bz2)
|
|
|
|
SETUP_PY+= "s,!!USE_BZ2!!,1,g"
|
|
|
|
MULTI_PACKAGES+=-bz2
|
|
|
|
.else
|
|
|
|
SETUP_PY+= "s,!!USE_BZ2!!,0,g"
|
2003-12-13 15:03:07 +00:00
|
|
|
.endif
|
|
|
|
|
|
|
|
.if empty(FLAVOR:L:Mno_idle) && empty(FLAVOR:L:Mno_tkinter)
|
2006-11-01 21:11:55 +00:00
|
|
|
MULTI_PACKAGES+=-idle
|
2003-12-13 15:03:07 +00:00
|
|
|
.endif
|
|
|
|
|
2002-02-15 19:42:18 +00:00
|
|
|
.if empty(FLAVOR:L:Mno_tkinter)
|
2006-11-13 11:20:24 +00:00
|
|
|
USE_X11= Yes
|
2006-11-01 21:11:55 +00:00
|
|
|
SETUP_PY+= "s,!!USE_TKINTER!!,1,g"
|
|
|
|
MULTI_PACKAGES+=-tkinter
|
2002-02-15 19:42:18 +00:00
|
|
|
.else
|
2006-11-01 21:11:55 +00:00
|
|
|
SETUP_PY+= "s,!!USE_TKINTER!!,0,g"
|
2002-02-15 19:42:18 +00:00
|
|
|
.endif
|
|
|
|
|
2005-06-06 20:47:04 +00:00
|
|
|
.if empty(FLAVOR:L:Mno_mpz) && ${VERSION} == "2.3"
|
2006-11-01 21:11:55 +00:00
|
|
|
SETUP_PY+= "s,!!USE_MPZ!!,1,g"
|
|
|
|
MULTI_PACKAGES+=-mpz
|
|
|
|
.else
|
|
|
|
SETUP_PY+= "s,!!USE_MPZ!!,0,g"
|
2002-02-15 19:42:18 +00:00
|
|
|
.endif
|
|
|
|
|
2005-12-17 12:45:39 +00:00
|
|
|
.if empty(FLAVOR:L:Mno_expat)
|
2006-11-01 21:11:55 +00:00
|
|
|
SETUP_PY+= "s,!!USE_EXPAT!!,1,g"
|
|
|
|
MULTI_PACKAGES+=-expat
|
|
|
|
.else
|
|
|
|
SETUP_PY+= "s,!!USE_EXPAT!!,0,g"
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if empty(FLAVOR:L:Mno_sqlite) && ${VERSION} == "2.5"
|
|
|
|
SETUP_PY+= "s,!!USE_SQLITE!!,1,g"
|
|
|
|
MULTI_PACKAGES+=-sqlite
|
|
|
|
.else
|
|
|
|
SETUP_PY+= "s,!!USE_SQLITE!!,0,g"
|
2002-02-15 19:42:18 +00:00
|
|
|
.endif
|
|
|
|
|
2003-12-13 15:03:07 +00:00
|
|
|
FULLPKGNAME-expat= python-expat-${VERSION}${PATCHLEVEL}${PKG_PATCHLEVEL}
|
2005-05-23 20:39:36 +00:00
|
|
|
FULLPKGNAME-bsddb= python-bsddb-${VERSION}${PATCHLEVEL}${PKG_PATCHLEVEL}
|
2003-12-13 15:03:07 +00:00
|
|
|
FULLPKGNAME-gdbm= python-gdbm-${VERSION}${PATCHLEVEL}${PKG_PATCHLEVEL}
|
|
|
|
FULLPKGNAME-idle= python-idle-${VERSION}${PATCHLEVEL}${PKG_PATCHLEVEL}
|
2002-10-08 02:52:25 +00:00
|
|
|
FULLPKGNAME-mpz= python-mpz-${VERSION}${PATCHLEVEL}${PKG_PATCHLEVEL}
|
2003-12-13 15:03:07 +00:00
|
|
|
FULLPKGNAME-tests= python-tests-${VERSION}${PATCHLEVEL}${PKG_PATCHLEVEL}
|
2002-10-08 02:52:25 +00:00
|
|
|
FULLPKGNAME-tkinter= python-tkinter-${VERSION}${PATCHLEVEL}${PKG_PATCHLEVEL}
|
2003-12-13 15:03:07 +00:00
|
|
|
FULLPKGNAME-tools= python-tools-${VERSION}${PATCHLEVEL}${PKG_PATCHLEVEL}
|
2006-11-01 21:11:55 +00:00
|
|
|
FULLPKGNAME-sqlite= python-sqlite-${VERSION}${PATCHLEVEL}${PKG_PATCHLEVEL}
|
|
|
|
FULLPKGNAME-bz2= python-bz2-${VERSION}${PATCHLEVEL}${PKG_PATCHLEVEL}
|
2002-02-15 19:42:18 +00:00
|
|
|
|
2007-09-26 14:02:23 +00:00
|
|
|
AUTOCONF_VERSION?=2.59
|
2006-11-01 21:11:55 +00:00
|
|
|
CONFIGURE_STYLE=autoconf
|
|
|
|
CONFIGURE_ARGS+=${CONFIGURE_SHARED}
|
2004-05-15 06:43:23 +00:00
|
|
|
# --srcdir is needed for systrace to work correctly
|
2006-11-01 21:11:55 +00:00
|
|
|
CONFIGURE_ARGS+=--with-fpectl --with-threads --srcdir=${WRKSRC}
|
|
|
|
CONFIGURE_ARGS+=--enable-ipv6
|
2002-02-15 19:42:18 +00:00
|
|
|
|
2004-08-08 15:38:00 +00:00
|
|
|
# THREAD_STACK_SIZE value might be changed by particular python release
|
2006-11-01 21:11:55 +00:00
|
|
|
THREAD_STACK_SIZE?=0x20000
|
2004-08-08 15:38:00 +00:00
|
|
|
|
2002-02-15 19:42:18 +00:00
|
|
|
REGRESS_TARGET= test
|
|
|
|
|
2004-04-06 02:39:23 +00:00
|
|
|
.if ${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "sparc64"
|
2006-10-02 20:29:40 +00:00
|
|
|
PKG_ARGS+= -Dmm=0
|
2002-02-15 19:42:18 +00:00
|
|
|
.else
|
2006-10-02 20:29:40 +00:00
|
|
|
PKG_ARGS+= -Dmm=1
|
2002-02-15 19:42:18 +00:00
|
|
|
.endif
|
|
|
|
|
2006-11-08 19:00:19 +00:00
|
|
|
# The ctypes module is not supported on all platforms (in particular, ARM)
|
|
|
|
.if ${VERSION} == "2.5"
|
|
|
|
. if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" || \
|
|
|
|
${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64" || \
|
|
|
|
${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "m68k" || \
|
|
|
|
${MACHINE_ARCH} == "powerpc"
|
|
|
|
PKG_ARGS+= -Dctypes=1
|
|
|
|
. else
|
|
|
|
PKG_ARGS+= -Dctypes=0
|
|
|
|
. endif
|
|
|
|
.endif
|
|
|
|
|
2004-08-08 15:38:00 +00:00
|
|
|
CONFIGURE_ENV+= OPT='${CFLAGS} -DTHREAD_STACK_SIZE=${THREAD_STACK_SIZE} -fPIC' \
|
2007-10-20 06:55:54 +00:00
|
|
|
LDFLAGS='-L${WRKSRC}' \
|
|
|
|
SVNVERSION=no
|
2005-12-27 19:41:21 +00:00
|
|
|
MAKE_FLAGS+= LDLIBRARY=libpython${VERSION}.so.${LIBpython${VERSION}_VERSION} \
|
2004-04-18 12:13:58 +00:00
|
|
|
LD_LIBRARY_PATH=${WRKSRC} PATH="${WRKDIST}:${PORTPATH}"
|
2008-01-04 17:48:33 +00:00
|
|
|
FAKE_FLAGS+= RANLIB=:
|
2002-02-15 19:42:18 +00:00
|
|
|
|
2008-02-27 00:30:47 +00:00
|
|
|
ALL_TARGET?= all ${WRKSRC}/Lib/plat-openbsd4
|
2002-02-15 19:42:18 +00:00
|
|
|
|
|
|
|
post-configure:
|
|
|
|
@cd ${WRKSRC} && ${MAKE_PROGRAM} Makefile
|
2006-11-01 21:11:55 +00:00
|
|
|
for i in ${SETUP_PY}; do \
|
|
|
|
perl -pi -e "$$i" ${WRKSRC}/setup.py; \
|
|
|
|
done
|
2002-02-15 19:42:18 +00:00
|
|
|
|
|
|
|
post-install:
|
2003-12-30 17:05:30 +00:00
|
|
|
${INSTALL_SCRIPT} ${WRKSRC}/Tools/scripts/pydoc \
|
|
|
|
${PREFIX}/bin/pydoc${VERSION}
|
2003-12-13 15:03:07 +00:00
|
|
|
@sed -e "s,@VERSION@,${VERSION},g" -e "s,@LOCALBASE@,${LOCALBASE},g" \
|
|
|
|
${FILESDIR}/idle > ${WRKSRC}/idle
|
|
|
|
${INSTALL_SCRIPT} ${WRKSRC}/idle ${PREFIX}/bin/idle${VERSION}
|
2002-02-15 19:42:18 +00:00
|
|
|
@cd ${WRKSRC}; tar -cf - Tools | (cd ${PREFIX}/lib/python${VERSION}; \
|
|
|
|
tar -xf -)
|
2002-05-11 21:35:13 +00:00
|
|
|
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/python${VERSION}
|
|
|
|
${INSTALL_DATA} ${FILESDIR}/CHANGES.OpenBSD \
|
|
|
|
${PREFIX}/share/doc/python${VERSION}/CHANGES.OpenBSD
|
2008-05-10 17:10:24 +00:00
|
|
|
.if ${VERSION} == 2.5
|
|
|
|
${INSTALL_DATA_DIR} ${PREFIX}/share/emacs/site-lisp
|
|
|
|
${INSTALL_DATA} ${WRKSRC}/Misc/python-mode.el \
|
|
|
|
${PREFIX}/share/emacs/site-lisp
|
|
|
|
.endif
|
|
|
|
|