diff options
Diffstat (limited to 'x11-toolkits/py-wxPython28/Makefile')
-rw-r--r-- | x11-toolkits/py-wxPython28/Makefile | 158 |
1 files changed, 141 insertions, 17 deletions
diff --git a/x11-toolkits/py-wxPython28/Makefile b/x11-toolkits/py-wxPython28/Makefile index 77280d349b9f..8ae423b56cb4 100644 --- a/x11-toolkits/py-wxPython28/Makefile +++ b/x11-toolkits/py-wxPython28/Makefile @@ -16,8 +16,6 @@ DISTNAME= ${PORTNAME}-src-${PORTVERSION} MAINTAINER= neal@nelson.name COMMENT= Python bindings for the wxWidgets/GTK GUI toolkit -LIB_DEPENDS= wx_gtk2_core-2.6:${PORTSDIR}/x11-toolkits/wxgtk26 \ - wx_gtk2_gizmos-2.6:${PORTSDIR}/x11-toolkits/wxgtk26-contrib RUN_DEPENDS= ${PYTHON_SITELIBDIR}/OpenGL/__init__.py:${PORTSDIR}/graphics/py-opengl WRKSRC= ${WRKDIR}/${DISTNAME}/wxPython @@ -25,37 +23,163 @@ WRKSRC= ${WRKDIR}/${DISTNAME}/wxPython USE_GMAKE= yes USE_PYTHON= yes USE_PYDISTUTILS=yes -PYDISTUTILS_BUILDARGS= WX_CONFIG="${WX_CONFIG}" -PYDISTUTILS_CONFIGUREARGS+= WX_CONFIG="${WX_CONFIG}" +USE_REINPLACE= yes +PYDISTUTILS_BUILDARGS= \ + WX_CONFIG="${WX_CONFIG}" \ + WXPORT="${WXPORT}" +PYDISTUTILS_CONFIGUREARGS= ${PYDISTUTILS_BUILDARGS} DEMO_DIR= ${PYTHONPREFIX_SITELIBDIR}/wxPython/demo +WXPORT= gtk2 -INSTALLS_SHLIB= yes -LDCONFIG_DIRS= %%PREFIX%%/%%PYTHON_SITELIBDIR%%/wx-2.6-gtk2-ansi/wx/ +post-extract: +# only keep the scripts we need + @${RM} ${WRKSRC}/scripts/*.py + +post-patch: +# fix python location + @${REINPLACE_CMD} -E \ + -e 's|/usr/bin/env python|${PYTHON_CMD}|' \ + ${WRKSRC}/scripts/* + @${RM} ${WRKSRC}/scripts/*.bak + +pre-configure: +# uphold PREFIX + @${REINPLACE_CMD} -E \ + -e "s|([[:space:]]*WXPREFIX[[:space:]]*=).*$$|\1'${PREFIX}'|" \ + ${CONFIGURE_WRKSRC}/config.py post-build: - @${PYTHON_CMD} ${PYTHON_LIBDIR}/compileall.py ${WRKSRC}/demo +# Shared amongst ansi/unicode installations +.if defined(WITH_COMMON_ONLY) +. for dir in demo wxversion + @${PYTHON_CMD} ${PYTHON_LIBDIR}/compileall.py ${WRKSRC}/${dir} + @${PYTHON_CMD} -O ${PYTHON_LIBDIR}/compileall.py ${WRKSRC}/${dir} +. endfor +.endif .if !defined(DEBUG_FLAGS) @${FIND} ${WRKSRC} -name "*.so" | ${XARGS} ${STRIP_CMD} .endif -post-install: +.include <bsd.port.pre.mk> + +# are we ready for unicode? +.if defined(WITH_UNICODE) +. if ${OSVERSION} < 500000 +IGNORE= Systems prior to FreeBSD 5.0 do not support Unicode +. endif +.endif + +# build dependencies +.if defined(WITH_UNICODE) +BUILD_DEPENDS+= ${WX_CONFIG}:${PORTSDIR}/x11-toolkits/wxgtk26-unicode + +WX_CONFIG= ${X11BASE}/bin/wxgtk2u-2.6-config +.else +BUILD_DEPENDS+= ${WX_CONFIG}:${PORTSDIR}/x11-toolkits/wxgtk26 + +WX_CONFIG= ${X11BASE}/bin/wxgtk2-2.6-config +.endif + +# wx version +.if exists(${WX_CONFIG}) +WX_VERSION!= ${WX_CONFIG} --release + +PLIST_SUB+= WX_VERSION=${WX_VERSION} +.endif + +.if defined(WITH_COMMON_ONLY) +## These are not shared amongst installations +PKGNAMESUFFIX= -common + +PYDISTUTILS_BUILDARGS+= \ + INSTALL_MULTIVERSION=1 +.else +## These are shared +RUN_DEPENDS+= ${PYTHON_SITELIBDIR}/wxversion.py:${PORTSDIR}/x11-toolkits/py-wxPython26-common + +PYDISTUTILS_BUILDARGS+= \ + NO_HEADERS=1 \ + NO_SCRIPTS=1 \ + INSTALL_MULTIVERSION=0 +INSTALLS_SHLIB= yes + +. if defined(WITH_UNICODE) +LIB_DEPENDS+= wx_gtk2u_core-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26-unicode \ + wx_gtk2u_gizmos-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26-unicode-contrib + +PKGNAMESUFFIX= -unicode + +PYDISTUTILS_BUILDARGS+= \ + UNICODE=1 +WX_PYTHON_DIR= wx-${WX_VERSION}-${WXPORT}-unicode +. else +LIB_DEPENDS+= wx_gtk2_core-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26 \ + wx_gtk2_gizmos-2.6.0:${PORTSDIR}/x11-toolkits/wxgtk26-contrib + +WX_PYTHON_DIR=wx-${WX_VERSION}-${WXPORT}-ansi +. endif # defined(WITH_UNICODE) + +# plist substitutions and library dirs +PLIST_SUB+= WX_PYTHON_DIR=${WX_PYTHON_DIR} +LDCONFIG_DIRS+= %%PREFIX%%/%%PYTHON_SITELIBDIR%%/%%WX_PYTHON_DIR%%/wx/ + +.endif # !defined(WITH_COMMON_ONLY) + +# install arguments +PYDISTUTILS_INSTALLARGS:= ${PYDISTUTILS_INSTALLARGS} ${PYDISTUTILS_BUILDARGS} + +## Shared amongst ansi/unicode installations +# XXX - Override do-install since I was not able to tell setup.py to +# do the right thing +.if defined(WITH_COMMON_ONLY) +do-install: +# DEMO @${MKDIR} ${DEMO_DIR} -.for glob in *.py *.pyc +.for glob in *.py *.pyc *.pyo @${INSTALL_DATA} ${WRKSRC}/demo/${glob} ${DEMO_DIR} .endfor .for dir in bitmaps bmp_source data @${MKDIR} ${DEMO_DIR}/${dir} -.for glob in * +. for glob in * @${INSTALL_DATA} ${WRKSRC}/demo/${dir}/${glob} ${DEMO_DIR}/${dir} +. endfor .endfor +# header files + @${MKDIR} ${PREFIX}/include/wx-${WX_VERSION}/wx/wxPython/i_files +.for glob in *.i *.py + @${INSTALL_DATA} ${WRKSRC}/src/${glob} \ + ${PREFIX}/include/wx-${WX_VERSION}/wx/wxPython/i_files .endfor + @${INSTALL_DATA} ${WRKSRC}/include/wx/wxPython/*.h \ + ${PREFIX}/include/wx-${WX_VERSION}/wx/wxPython +# scripts + @${INSTALL_SCRIPT} ${WRKSRC}/scripts/* ${PREFIX}/bin +## wxversion + @${MKDIR} ${PYTHON_SITELIBDIR:C@^${LOCALBASE}@${PREFIX}@} +# wxversion script + @${INSTALL_DATA} ${WRKSRC}/wxversion/* \ + ${PYTHON_SITELIBDIR:C@^${LOCALBASE}@${PREFIX}@} +.endif # defined(WITH_COMMON_ONLY) -.include <bsd.port.pre.mk> - -WX_CONFIG= ${X11BASE}/bin/wxgtk2-2.6-config - -CONFIGURE_ARGS+= --enable-gtk2 -PYDISTUTILS_BUILDARGS+= WXPORT=gtk2 -PYDISTUTILS_INSTALLARGS:= ${PYDISTUTILS_INSTALLARGS} ${PYDISTUTILS_BUILDARGS} +post-install: +.if !defined(WITH_COMMON_ONLY) +# fix installation permissions + ${CHMOD} -R a+rX \ + ${PYTHON_SITELIBDIR:C@^${LOCALBASE}@${PREFIX}@}/${WX_PYTHON_DIR} +.endif +## +# wxversion wxPython available list +## +.if defined(WITH_COMMON_ONLY) +# create the file + @${ECHO_CMD} -n >> \ + ${PYTHON_SITELIBDIR:C@^${LOCALBASE}@${PREFIX}@}/wx.pth +.else +# add ansi/unicode to the available list + @${ECHO_CMD} ${WX_PYTHON_DIR} >> \ + ${PYTHON_SITELIBDIR:C@^${LOCALBASE}@${PREFIX}@}/wx.pth +.endif + @${CHMOD} ${SHAREMODE} \ + ${PYTHON_SITELIBDIR:C@^${LOCALBASE}@${PREFIX}@}/wx.pth .include <bsd.port.post.mk> |