[109052] trunk/dports/python/py-matplotlib
stromnov at macports.org
stromnov at macports.org
Wed Aug 7 02:49:15 PDT 2013
Revision: 109052
https://trac.macports.org/changeset/109052
Author: stromnov at macports.org
Date: 2013-08-07 02:49:15 -0700 (Wed, 07 Aug 2013)
Log Message:
-----------
py-matplotlib: update to version 1.3.0
Modified Paths:
--------------
trunk/dports/python/py-matplotlib/Portfile
trunk/dports/python/py-matplotlib/files/patch-setup.cfg.diff
trunk/dports/python/py-matplotlib/files/patch-setupext.py.diff
Added Paths:
-----------
trunk/dports/python/py-matplotlib/files/patch-setup.py.diff
Modified: trunk/dports/python/py-matplotlib/Portfile
===================================================================
--- trunk/dports/python/py-matplotlib/Portfile 2013-08-07 09:48:04 UTC (rev 109051)
+++ trunk/dports/python/py-matplotlib/Portfile 2013-08-07 09:49:15 UTC (rev 109052)
@@ -5,9 +5,10 @@
PortGroup python 1.0
PortGroup github 1.0
-github.setup matplotlib matplotlib 1.2.1 v
+github.setup matplotlib matplotlib 1.3.0 v
name py-matplotlib
+revision 0
categories-append graphics math
platforms darwin
license {PSF BSD}
@@ -30,8 +31,8 @@
homepage http://matplotlib.org/
-checksums rmd160 c27142f1d6665bc6a748f601558045e7d801dbef \
- sha256 52e18972aed85f30b05cef41778ec77685df6012f0598cd216e996de9b9ea29b
+checksums rmd160 61554fbe3c97f82e0d8d605beb63f00230589497 \
+ sha256 fccf0a0ae9578c570455c38df414da2c795253371816b77e66c0a959f7c117ff
if {${name} != ${subport}} {
depends_build-append \
@@ -39,19 +40,20 @@
depends_lib-append port:freetype \
port:libpng \
+ port:py${python.version}-numpy \
port:py${python.version}-tz \
port:py${python.version}-dateutil \
- port:py${python.version}-numpy \
+ port:py${python.version}-parsing \
+ port:py${python.version}-six \
port:py${python.version}-pyobjc-cocoa
- patchfiles patch-setupext.py.diff \
- patch-setup.cfg.diff
+ patchfiles-append patch-setup.cfg.diff \
+ patch-setupext.py.diff
- build.env MPLIB_BASE="${prefix}" PKG_CONFIG_PATH="${python.prefix}/lib/pkgconfig/"
+ build.env PKG_CONFIG_PATH="${python.prefix}/lib/pkgconfig"
post-patch {
- reinplace "s|@@MPORTS_PREFIX@@|${prefix}|" ${worksrcpath}/setupext.py
- reinplace "s|@@PYTHON_BRANCH@@|${prefix}|" ${worksrcpath}/setupext.py
+ reinplace "s|@@PREFIX@@|${prefix}|" ${worksrcpath}/setup.cfg
}
# build fails with gcc-4.0 on Leopard, use gcc-4.2 (#37069)
@@ -63,17 +65,21 @@
if {${name} != ${subport}} {
xinstall -m 755 -d ${destroot}${prefix}/share/doc/${subport} \
${destroot}${prefix}/share/${subport}
- xinstall -m 644 -W ${worksrcpath} CHANGELOG README.txt TODO \
+ xinstall -m 644 -W ${worksrcpath} CHANGELOG README.rst TODO matplotlibrc.template \
${destroot}${prefix}/share/doc/${subport}
file copy ${worksrcpath}/examples \
${destroot}${prefix}/share/${subport}
}
}
- variant cairo description "Enable Cairo backends" {
- depends_lib-append port:py${python.version}-cairo
+ variant webagg description "Enable WebAgg backend" {
+ depends_run-append port:py${python.version}-tornado
+ }
+
+ variant tkinter description "Enable tkAgg backend" {
+ depends_lib-append port:py${python.version}-tkinter
post-patch {
- reinplace "s|MP_Cairo=False|MP_Cairo=True|" ${worksrcpath}/setupext.py
+ reinplace "s|^tkagg=False|tkagg=True|" ${worksrcpath}/setup.cfg
}
}
@@ -85,35 +91,45 @@
}
}
- variant tkinter description "Enable tkAgg backend" {
- depends_lib-append port:py${python.version}-tkinter
+ variant qt4 description "Enable QT4Agg backend" {
+ depends_lib-append port:py${python.version}-pyqt4
post-patch {
- reinplace "s|^tkagg=False|tkagg=True|" ${worksrcpath}/setup.cfg
+ reinplace "s|^qt4agg=False|qt4agg=True|" ${worksrcpath}/setup.cfg
}
}
- variant qt4 description "Enable QT4Agg backend" {
- depends_lib-append port:py${python.version}-pyqt4
+ variant pyside description "Enable PySide backend" {
+ depends_lib-append port:py${python.version}-pyside
+ patchfiles-append patch-setup.py.diff
post-patch {
- reinplace "s|MP_QT4=False|MP_QT4=True|" ${worksrcpath}/setupext.py
+ reinplace "s|^pyside=False|pyside=True|" ${worksrcpath}/setup.cfg
}
}
- variant latex description "Enable LaTeX support" {
- depends_lib-append bin:latex:texlive
+ variant cairo description "Enable Cairo backends" {
+ depends_lib-append port:py${python.version}-cairo
post-patch {
- reinplace "s|MP_LaTeX=False|MP_LaTeX=True|" ${worksrcpath}/setupext.py
+ reinplace "s|^cairo=False|cairo=True|" ${worksrcpath}/setup.cfg
}
}
+ variant dvipng description "Enable dvipng support" {
+ depends_run-append port:dvipng
+ }
+
variant ghostscript description "Enable GhostScript support" {
- depends_lib-append port:ghostscript
- post-patch {
- reinplace "s|MP_GhostScript=False|MP_GhostScript=True|" ${worksrcpath}/setupext.py
- }
+ depends_run-append port:ghostscript
}
- if { ![variant_isset gtk2] && ![variant_isset tkinter] && ![variant_isset qt4] } {
+ variant latex description "Enable LaTeX support" {
+ depends_run-append bin:latex:texlive
+ }
+
+ variant pdftops description "Enable pdftops support" {
+ depends_run-append bin:pdftops:poppler
+ }
+
+ if { ![variant_isset gtk2] && ![variant_isset tkinter] && ![variant_isset qt4] && ![variant_isset pyside] } {
default_variants +tkinter
}
Modified: trunk/dports/python/py-matplotlib/files/patch-setup.cfg.diff
===================================================================
--- trunk/dports/python/py-matplotlib/files/patch-setup.cfg.diff 2013-08-07 09:48:04 UTC (rev 109051)
+++ trunk/dports/python/py-matplotlib/files/patch-setup.cfg.diff 2013-08-07 09:49:15 UTC (rev 109052)
@@ -1,12 +1,27 @@
---- setup.cfg 1970-01-01 01:00:00.000000000 +0100
-+++ setup.cfg 2012-02-02 23:16:14.000000000 +0000
-@@ -0,0 +1,9 @@
+--- setup.cfg 2013-08-07 11:50:33.000000000 +0400
++++ setup.cfg 2013-08-07 11:54:34.000000000 +0400
+@@ -0,0 +1,24 @@
+[gui_support]
++agg=False
++tkagg=False
+gtk=False
+gtkagg=False
-+tkagg=False
++gtk3agg=False
++gtk3cairo=False
+wxagg=False
+macosx=True
++windowing=False
++qt4agg=False
++pyside=False
++cairo=False
+
++[packages]
++sample_data=True
++toolkits=True
++tests=False
++
+[rc_options]
+backend=MacOSX
++
++[directories]
++basedirlist=@@PREFIX@@
Added: trunk/dports/python/py-matplotlib/files/patch-setup.py.diff
===================================================================
--- trunk/dports/python/py-matplotlib/files/patch-setup.py.diff (rev 0)
+++ trunk/dports/python/py-matplotlib/files/patch-setup.py.diff 2013-08-07 09:49:15 UTC (rev 109052)
@@ -0,0 +1,10 @@
+--- setup.py.orig 2013-08-07 12:15:32.000000000 +0400
++++ setup.py 2013-08-07 12:15:45.000000000 +0400
+@@ -86,6 +86,7 @@
+ # work will be selected as the default backend.
+ setupext.BackendMacOSX(),
+ setupext.BackendQt4(),
++ setupext.BackendPySide(),
+ setupext.BackendGtk3Agg(),
+ setupext.BackendGtk3Cairo(),
+ setupext.BackendGtkAgg(),
Modified: trunk/dports/python/py-matplotlib/files/patch-setupext.py.diff
===================================================================
--- trunk/dports/python/py-matplotlib/files/patch-setupext.py.diff 2013-08-07 09:48:04 UTC (rev 109051)
+++ trunk/dports/python/py-matplotlib/files/patch-setupext.py.diff 2013-08-07 09:49:15 UTC (rev 109052)
@@ -1,252 +1,71 @@
---- setupext.py 2012-11-08 10:38:38.000000000 -0600
-+++ setupext.py 2012-11-17 10:46:42.000000000 -0600
-@@ -57,7 +57,7 @@
- basedir = defaultdict(lambda: ['/usr/local', '/usr'], {
- # execptions to the ['/usr/local', '/usr'] defaults
- 'win32' : ['win32_static',],
-- 'darwin' : ['/usr/local/', '/usr', '/usr/X11', '/opt/local'],
-+ 'darwin' : ['@@MPORTS_PREFIX@@'],
- 'sunos5' : [os.getenv('MPLIB_BASE') or '/usr/local',],
- 'gnu0' : ['/usr'],
- 'aix5' : ['/usr/local'],
-@@ -386,6 +386,7 @@
- [os.path.join(p, 'lib64') for p in basedirlist ] )
+--- setupext.py.orig 2013-08-06 23:52:36.000000000 +0400
++++ setupext.py 2013-08-07 12:05:00.000000000 +0400
+@@ -1234,6 +1234,18 @@
+ ext.library_dirs.extend([os.path.join(sys.prefix, 'dlls')])
- module.include_dirs.extend(incdirs)
-+ module.include_dirs.extend(['@@MPORTS_PREFIX@@/include/python@@PYTHON_BRANCH@@'])
- module.include_dirs.append('.')
- module.library_dirs.extend(libdirs)
+ elif sys.platform == 'darwin':
++ tcl_lib_dir = tk_lib_dir = os.path.join(get_base_dirs()[0], 'lib')
++ result = self.parse_tcl_config(tcl_lib_dir, tk_lib_dir)
++ if result is None:
++ raise SystemExit("Tcl/Tk not found, aborting")
++
++ (tcl_lib_dir, tcl_inc_dir, tcl_lib,
++ tk_lib_dir, tk_inc_dir, tk_lib) = result
++ ext.include_dirs.extend([tcl_inc_dir, tk_inc_dir])
++ ext.library_dirs.extend([tcl_lib_dir, tk_lib_dir])
++ ext.libraries.extend([tcl_lib, tk_lib])
++
++ return
+ # this config section lifted directly from Imaging - thanks to
+ # the effbot!
-@@ -404,33 +405,43 @@
- return '.'.join(temp)
+@@ -1476,6 +1488,9 @@
+ name = "gtk3agg"
- def check_for_qt():
-- try:
-- import pyqtconfig
-- except ImportError:
-+ MP_QT=False
-+ if MP_QT:
-+ try:
-+ import pyqtconfig
-+ except ImportError:
-+ print_status("Qt", "no")
-+ return False
-+ else:
-+ try:
-+ qt_version = pyqtconfig.Configuration().qt_version
-+ qt_version = convert_qt_version(qt_version)
-+ except AttributeError:
-+ qt_version = "<unknown>"
-+ print_status("Qt", "Qt: %s, PyQt: %s" %
-+ (qt_version,
-+ pyqtconfig.Configuration().pyqt_version_str))
-+ return True
-+ else:
- print_status("Qt", "no")
- return False
-- else:
-- try:
-- qt_version = pyqtconfig.Configuration().qt_version
-- qt_version = convert_qt_version(qt_version)
-- except AttributeError:
-- qt_version = "<unknown>"
-- print_status("Qt", "Qt: %s, PyQt: %s" %
-- (qt_version,
-- pyqtconfig.Configuration().pyqt_version_str))
-- return True
+ def check(self):
++ if self.get_config() is False:
++ raise CheckFailed("skipping due to configuration")
++
+ if 'TRAVIS' in os.environ:
+ raise CheckFailed("Can't build with Travis")
- def check_for_qt4():
-- try:
-- from PyQt4 import pyqtconfig
-- except ImportError:
-+ MP_QT4=False
-+ if MP_QT4:
-+ try:
-+ from PyQt4 import pyqtconfig
-+ except ImportError:
-+ print_status("Qt4", "no")
-+ return False
-+ else:
-+ print_status("Qt4", "Qt: %s, PyQt4: %s" %
-+ (convert_qt_version(pyqtconfig.Configuration().qt_version),
-+ pyqtconfig.Configuration().pyqt_version_str))
-+ return True
-+ else:
- print_status("Qt4", "no")
- return False
-- else:
-- print_status("Qt4", "Qt: %s, PyQt4: %s" %
-- (convert_qt_version(pyqtconfig.Configuration().qt_version),
-- pyqtconfig.Configuration().pyqt_version_str))
-- return True
+@@ -1534,6 +1549,9 @@
+ name = "gtk3cairo"
- def check_for_pyside():
- try:
-@@ -445,14 +456,19 @@
- return True
+ def check(self):
++ if self.get_config() is False:
++ raise CheckFailed("skipping due to configuration")
++
+ if 'TRAVIS' in os.environ:
+ raise CheckFailed("Can't build with Travis")
- def check_for_cairo():
-- try:
-- import cairo
-- except ImportError:
-+ MP_Cairo=False
-+ if MP_Cairo:
-+ try:
-+ import cairo
-+ except ImportError:
-+ print_status("Cairo", "no")
-+ return False
-+ else:
-+ print_status("Cairo", cairo.version)
-+ return True
-+ else:
- print_status("Cairo", "no")
- return False
-- else:
-- print_status("Cairo", cairo.version)
-- return True
+@@ -1562,6 +1580,9 @@
+ name = "wxagg"
- def check_provide_pytz():
- if options['provide_pytz'] is True:
-@@ -531,36 +547,51 @@
+ def check(self):
++ if self.get_config() is False:
++ raise CheckFailed("skipping due to configuration")
++
+ try:
+ import wxversion
+ except ImportError:
+@@ -1661,6 +1682,9 @@
+ return '.'.join(temp)
+ def check(self):
++ if self.get_config() is False:
++ raise CheckFailed("skipping due to configuration")
++
+ try:
+ from PyQt4 import pyqtconfig
+ except ImportError:
+@@ -1695,6 +1719,9 @@
+ name = "cairo"
- def check_for_dvipng():
-- try:
-- stdin, stdout = run_child_process('dvipng -version')
-- print_status("dvipng", stdout.readlines()[1].decode().split()[-1])
-- return True
-- except (IndexError, ValueError):
-+ MP_LaTeX=False
-+ if MP_LaTeX:
-+ try:
-+ stdin, stdout = run_child_process('dvipng -version')
-+ print_status("dvipng", stdout.readlines()[1].decode().split()[-1])
-+ return True
-+ except (IndexError, ValueError):
-+ print_status("dvipng", "no")
-+ return False
-+ else:
- print_status("dvipng", "no")
- return False
-
- def check_for_ghostscript():
-- try:
-- if sys.platform == 'win32':
-- command = 'gswin32c --version'
-- else:
-- command = 'gs --version'
-- stdin, stdout = run_child_process(command)
-- print_status("ghostscript", stdout.read().decode()[:-1])
-- return True
-- except (IndexError, ValueError):
-+ MP_GhostScript=False
-+ if MP_GhostScript:
-+ try:
-+ if sys.platform == 'win32':
-+ command = 'gswin32c --version'
-+ else:
-+ command = 'gs --version'
-+ stdin, stdout = run_child_process(command)
-+ print_status("ghostscript", stdout.read().decode()[:-1])
-+ return True
-+ except (IndexError, ValueError):
-+ print_status("ghostscript", "no")
-+ return False
-+ else:
- print_status("ghostscript", "no")
- return False
-
- def check_for_latex():
-- try:
-- stdin, stdout = run_child_process('latex -version')
-- line = stdout.readlines()[0].decode()
-- pattern = '(3\.1\d+)|(MiKTeX \d+.\d+)'
-- match = re.search(pattern, line)
-- print_status("latex", match.group(0))
-- return True
-- except (IndexError, ValueError, AttributeError):
-+ MP_LaTeX=False
-+ if MP_LaTeX:
-+ try:
-+ stdin, stdout = run_child_process('latex -version')
-+ line = stdout.readlines()[0].decode()
-+ pattern = '(3\.1\d+)|(MiKTeX \d+.\d+)'
-+ match = re.search(pattern, line)
-+ print_status("latex", match.group(0))
-+ return True
-+ except (IndexError, ValueError, AttributeError):
-+ print_status("latex", "no")
-+ return False
-+ else:
- print_status("latex", "no")
- return False
-
-@@ -974,10 +1005,10 @@
- return tcl_lib, tcl_inc, 'tcl' + tk_ver, tk_lib, tk_inc, 'tk' + tk_ver
-
- def hardcoded_tcl_config():
-- tcl_inc = "/usr/local/include"
-- tk_inc = "/usr/local/include"
-- tcl_lib = "/usr/local/lib"
-- tk_lib = "/usr/local/lib"
-+ tcl_inc = "@@MPORTS_PREFIX@@/include"
-+ tk_inc = "@@MPORTS_PREFIX@@/include"
-+ tcl_lib = "@@MPORTS_PREFIX@@/lib"
-+ tk_lib = "@@MPORTS_PREFIX@@/lib"
- return tcl_lib, tcl_inc, 'tcl', tk_lib, tk_inc, 'tk'
-
- def add_tk_flags(module):
-@@ -998,52 +1029,6 @@
- raise RuntimeError('No tk/win32 support for this python version yet')
- module.library_dirs.extend([os.path.join(sys.prefix, 'dlls')])
-
-- elif sys.platform == 'darwin':
-- # this config section lifted directly from Imaging - thanks to
-- # the effbot!
--
-- # First test for a MacOSX/darwin framework install
-- from os.path import join, exists
-- framework_dirs = [
-- join(os.getenv('HOME'), '/Library/Frameworks'),
-- '/Library/Frameworks',
-- '/System/Library/Frameworks/',
-- ]
--
-- # Find the directory that contains the Tcl.framework and Tk.framework
-- # bundles.
-- # XXX distutils should support -F!
-- tk_framework_found = 0
-- for F in framework_dirs:
-- # both Tcl.framework and Tk.framework should be present
-- for fw in 'Tcl', 'Tk':
-- if not exists(join(F, fw + '.framework')):
-- break
-- else:
-- # ok, F is now directory with both frameworks. Continure
-- # building
-- tk_framework_found = 1
-- break
-- if tk_framework_found:
-- # For 8.4a2, we must add -I options that point inside the Tcl and Tk
-- # frameworks. In later release we should hopefully be able to pass
-- # the -F option to gcc, which specifies a framework lookup path.
-- #
-- tk_include_dirs = [
-- join(F, fw + '.framework', H)
-- for fw in ('Tcl', 'Tk')
-- for H in ('Headers', 'Versions/Current/PrivateHeaders')
-- ]
--
-- # For 8.4a2, the X11 headers are not included. Rather than include a
-- # complicated search, this is a hard-coded path. It could bail out
-- # if X11 libs are not found...
-- # tk_include_dirs.append('/usr/X11R6/include')
-- frameworks = ['-framework', 'Tcl', '-framework', 'Tk']
-- module.include_dirs.extend(tk_include_dirs)
-- module.extra_link_args.extend(frameworks)
-- module.extra_compile_args.extend(frameworks)
--
- # you're still here? ok we'll try it this way...
- else:
- success = False
+ def check(self):
++ if self.get_config() is False:
++ raise CheckFailed("skipping due to configuration")
++
+ try:
+ import cairo
+ except ImportError:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20130807/cecfd73f/attachment-0001.html>
More information about the macports-changes
mailing list