Date: Wed, 28 Jun 2017 02:37:53 +0000 (UTC) From: "Danilo G. Baio" <dbaio@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r444534 - in head/lang: python27 python33 python34 python35 python36 Message-ID: <201706280237.v5S2brwZ051089@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dbaio Date: Wed Jun 28 02:37:53 2017 New Revision: 444534 URL: https://svnweb.freebsd.org/changeset/ports/444534 Log: lang/python{27,33,34,35,36}: Make Python curses module work with Unicode Use readline from ports (USES= readline:port) and patch setup.py to ignore readline from base. The patch is necessary for FreeBSD < 1100000, as after this the readline library became an INTERNALLIB, see base r268461 [1] Link devel/readline against termcapw instead of termcap is part of this change, see ports r444463 [2] Note that this is the **ports** approach for getting Python curses module working with Unicode. The other way is splitting libncurses into separate libncurses and libtinfo in base, for which an open issue exists [3]. Apart from Python language ports, at least www/rtv and sysutils/py-ranger ports have been tested to work correctly (display Unicode) after this change. [1] https://svnweb.freebsd.org/changeset/base/268461 [2] https://svnweb.freebsd.org/changeset/ports/444463 [3] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=197317 PR: 171246, 197317 Reported by: Vitaly Magerya <vmagerya gmail com> Reviewed by: garga, koobs, miwi, sunpoet Approved by: garga (mentor), sunpoet (python, with hat) Differential Revision: https://reviews.freebsd.org/D11127 Modified: head/lang/python27/Makefile head/lang/python33/Makefile head/lang/python34/Makefile head/lang/python35/Makefile head/lang/python36/Makefile Modified: head/lang/python27/Makefile ============================================================================== --- head/lang/python27/Makefile Wed Jun 28 01:43:43 2017 (r444533) +++ head/lang/python27/Makefile Wed Jun 28 02:37:53 2017 (r444534) @@ -2,7 +2,7 @@ PORTNAME= python27 PORTVERSION= ${PYTHON_PORTVERSION} -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= lang python ipv6 MASTER_SITES= PYTHON/ftp/python/${PORTVERSION} DISTNAME= Python-${PORTVERSION} @@ -15,7 +15,7 @@ LICENSE= PSFL BROKEN_SSL= openssl-devel -USES= cpe ncurses pathfix pkgconfig readline ssl tar:xz shebangfix +USES= cpe ncurses pathfix pkgconfig readline:port ssl tar:xz shebangfix PATHFIX_MAKEFILEIN= Makefile.pre.in USE_LDCONFIG= yes GNU_CONFIGURE= yes @@ -115,6 +115,13 @@ PLIST_SUB+= NO_NIS="" .endif post-patch: +# readline shared library is present on base before FreeBSD 11 - r268461 +# force setup.py ignore base and use readline from ports +.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1100000 + ${REINPLACE_CMD} -e \ + "s|lib_dirs,\ \'readline\'|[\'${LOCALBASE}/lib\',\ \'.\'],\ \'readline\'|" \ + ${WRKSRC}/setup.py +.endif ${REINPLACE_CMD} -e 's|/usr/local/bin/python|${python_CMD}|' \ ${WRKSRC}/Lib/cgi.py @${REINPLACE_CMD} -e \ Modified: head/lang/python33/Makefile ============================================================================== --- head/lang/python33/Makefile Wed Jun 28 01:43:43 2017 (r444533) +++ head/lang/python33/Makefile Wed Jun 28 02:37:53 2017 (r444534) @@ -2,7 +2,7 @@ PORTNAME= python33 PORTVERSION= ${PYTHON_PORTVERSION} -PORTREVISION= 9 +PORTREVISION= 10 CATEGORIES= lang python ipv6 MASTER_SITES= PYTHON/ftp/python/${PORTVERSION} DISTNAME= Python-${PORTVERSION} @@ -16,7 +16,7 @@ LICENSE= PSFL DEPRECATED= No longer receives bug fixes, only security updates. Please update to Python 3.6 EXPIRATION_DATE= 2017-09-01 -USES= cpe ncurses pathfix pkgconfig readline ssl tar:xz shebangfix +USES= cpe ncurses pathfix pkgconfig readline:port ssl tar:xz shebangfix PATHFIX_MAKEFILEIN= Makefile.pre.in USE_LDCONFIG= yes GNU_CONFIGURE= yes @@ -108,6 +108,13 @@ PLIST_SUB+= NO_NIS="" .endif post-patch: +# readline shared library is present on base before FreeBSD 11 - r268461 +# force setup.py ignore base and use readline from ports +.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1100000 + ${REINPLACE_CMD} -e \ + "s|lib_dirs,\ \'readline\'|[\'${LOCALBASE}/lib\',\ \'.\'],\ \'readline\'|" \ + ${WRKSRC}/setup.py +.endif ${REINPLACE_CMD} -e 's|/usr/local/bin/python|${python_CMD}|' \ ${WRKSRC}/Lib/cgi.py .if !exists(/usr/bin/ypcat) || defined(WITHOUT_NIS) Modified: head/lang/python34/Makefile ============================================================================== --- head/lang/python34/Makefile Wed Jun 28 01:43:43 2017 (r444533) +++ head/lang/python34/Makefile Wed Jun 28 02:37:53 2017 (r444534) @@ -3,7 +3,7 @@ PORTNAME= python34 PORTVERSION= ${PYTHON_PORTVERSION} -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= lang python ipv6 MASTER_SITES= PYTHON/ftp/python/${PORTVERSION} DISTNAME= Python-${PORTVERSION} @@ -14,7 +14,7 @@ COMMENT= Interpreted object-oriented programming langu LICENSE= PSFL -USES= cpe ncurses pathfix pkgconfig readline ssl tar:xz shebangfix +USES= cpe ncurses pathfix pkgconfig readline:port ssl tar:xz shebangfix PATHFIX_MAKEFILEIN= Makefile.pre.in USE_LDCONFIG= yes GNU_CONFIGURE= yes @@ -117,6 +117,13 @@ PLIST_SUB+= NO_NIS="" .endif post-patch: +# readline shared library is present on base before FreeBSD 11 - r268461 +# force setup.py ignore base and use readline from ports +.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1100000 + ${REINPLACE_CMD} -e \ + "s|lib_dirs,\ \'readline\'|[\'${LOCALBASE}/lib\',\ \'.\'],\ \'readline\'|" \ + ${WRKSRC}/setup.py +.endif ${REINPLACE_CMD} -e 's|/usr/local/bin/python|${python_CMD}|' \ ${WRKSRC}/Lib/cgi.py Modified: head/lang/python35/Makefile ============================================================================== --- head/lang/python35/Makefile Wed Jun 28 01:43:43 2017 (r444533) +++ head/lang/python35/Makefile Wed Jun 28 02:37:53 2017 (r444534) @@ -3,7 +3,7 @@ PORTNAME= python PORTVERSION= ${PYTHON_PORTVERSION} -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= lang python ipv6 MASTER_SITES= PYTHON/ftp/python/${PYTHON_PORTVERSION} PKGNAMESUFFIX= ${PYTHON_SUFFIX} @@ -17,7 +17,7 @@ LICENSE= PSFL BROKEN_SSL= openssl-devel -USES= cpe ncurses pathfix pkgconfig readline ssl tar:xz shebangfix +USES= cpe ncurses pathfix pkgconfig readline:port ssl tar:xz shebangfix PATHFIX_MAKEFILEIN= Makefile.pre.in USE_LDCONFIG= yes GNU_CONFIGURE= yes @@ -127,6 +127,13 @@ PLIST_SUB+= NO_NIS="" .endif post-patch: +# readline shared library is present on base before FreeBSD 11 - r268461 +# force setup.py ignore base and use readline from ports +.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1100000 + ${REINPLACE_CMD} -e \ + "s|lib_dirs,\ \'readline\'|[\'${LOCALBASE}/lib\',\ \'.\'],\ \'readline\'|" \ + ${WRKSRC}/setup.py +.endif ${REINPLACE_CMD} -e 's|/usr/local/bin/python|${python_CMD}|' \ ${WRKSRC}/Lib/cgi.py Modified: head/lang/python36/Makefile ============================================================================== --- head/lang/python36/Makefile Wed Jun 28 01:43:43 2017 (r444533) +++ head/lang/python36/Makefile Wed Jun 28 02:37:53 2017 (r444534) @@ -3,7 +3,7 @@ PORTNAME= python PORTVERSION= ${PYTHON_PORTVERSION} -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= lang python ipv6 MASTER_SITES= PYTHON/ftp/python/${PYTHON_PORTVERSION} PKGNAMESUFFIX= ${PYTHON_SUFFIX} @@ -15,7 +15,7 @@ COMMENT= Interpreted object-oriented programming langu LICENSE= PSFL -USES= cpe ncurses pathfix pkgconfig readline ssl tar:xz shebangfix +USES= cpe ncurses pathfix pkgconfig readline:port ssl tar:xz shebangfix PATHFIX_MAKEFILEIN= Makefile.pre.in USE_LDCONFIG= yes GNU_CONFIGURE= yes @@ -124,6 +124,13 @@ PLIST_SUB+= NO_NIS="" .endif post-patch: +# readline shared library is present on base before FreeBSD 11 - r268461 +# force setup.py ignore base and use readline from ports +.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1100000 + ${REINPLACE_CMD} -e \ + "s|lib_dirs,\ \'readline\'|[\'${LOCALBASE}/lib\',\ \'.\'],\ \'readline\'|" \ + ${WRKSRC}/setup.py +.endif ${REINPLACE_CMD} -e 's|/usr/local/bin/python|${python_CMD}|' \ ${WRKSRC}/Lib/cgi.py
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201706280237.v5S2brwZ051089>