<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[116934] trunk/dports/python/py-obspy</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="https://trac.macports.org/changeset/116934">116934</a></dd>
<dt>Author</dt> <dd>macsforever2000@macports.org</dd>
<dt>Date</dt> <dd>2014-02-10 13:07:25 -0800 (Mon, 10 Feb 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>py-obspy: Update to version 0.9.0. Add dependency on py-flake8. (#42438)</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkdportspythonpyobspyPortfile">trunk/dports/python/py-obspy/Portfile</a></li>
<li><a href="#trunkdportspythonpyobspyfilespatchsetuppydiff">trunk/dports/python/py-obspy/files/patch-setup.py.diff</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkdportspythonpyobspyPortfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/python/py-obspy/Portfile (116933 => 116934)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/python/py-obspy/Portfile        2014-02-10 21:06:33 UTC (rev 116933)
+++ trunk/dports/python/py-obspy/Portfile        2014-02-10 21:07:25 UTC (rev 116934)
</span><span class="lines">@@ -4,49 +4,63 @@
</span><span class="cx"> PortSystem          1.0
</span><span class="cx"> PortGroup           python 1.0
</span><span class="cx"> 
</span><ins>+set _name           obspy
+set _n              [string index ${_name} 0]
+
</ins><span class="cx"> name                py-obspy
</span><del>-version             0.8.4
-revision            2
</del><ins>+version             0.9.0
</ins><span class="cx"> categories-append   science
</span><span class="cx"> platforms           darwin
</span><ins>+license             LGPL-3
+
</ins><span class="cx"> maintainers         bo.ingv.it:Peter.Danecek openmaintainer
</span><span class="cx"> 
</span><del>-license             LGPL-3
-
</del><span class="cx"> description         Python framework for processing seismological data
</span><span class="cx"> 
</span><del>-long_description    ObsPy is an open-source project dedicated to provide a Python \
-                    framework for processing seismological data. It provides \
-                    support for file formats and signal processing routines \
-                    which allow the manipulation, analysis and visualization \
-                    of seismological time series. The goal of the ObsPy project is \
-                    to facilitate rapid application development for seismology.
</del><ins>+long_description    \
+    This port provides a development snapshot of the ObsPy package. \
+    ObsPy is an open-source project dedicated to provide a Python framework \
+    for processing seismological data. It provides support for file formats \
+    and signal processing routines which allow the manipulation, analysis \
+    and visualization of seismological time series. The goal of the ObsPy \
+    project is to facilitate rapid application development for seismology.
</ins><span class="cx"> 
</span><del>-homepage            http://obspy.org/
</del><ins>+homepage            http://www.obspy.org/
</ins><span class="cx"> 
</span><span class="cx"> use_zip             yes
</span><del>-distname            obspy-${version}
-master_sites        https://pypi.python.org/packages/source/o/obspy/
</del><ins>+distname            ${_name}-${version}
+master_sites        https://pypi.python.org/packages/source/${_n}/${_name}/
</ins><span class="cx"> 
</span><del>-checksums           md5     9da79d3a0604d433085ad4dc0e430100 \
-                    rmd160  4a5b6e486304cd4e0a96d94ddc8bf88eb0a6f574 \
-                    sha256  6e9e0a5c0e673ae41d64ca265d4abdadf2b83a60ff27c516a8dbb0e2b38965cf
</del><ins>+checksums           md5     f720f675e66e8b2b6518e41b9ab9ada4 \
+                    rmd160  b58932bc76e1bd21a2280d78aa868c767e3491b1 \
+                    sha256  91367c7d1b63a4289b4a0ee84d49978d7523776da10629aa40a3aab197fad5e7
</ins><span class="cx"> 
</span><span class="cx"> python.versions     26 27
</span><span class="cx"> 
</span><span class="cx"> if {${name} ne ${subport}} {
</span><del>-    depends_build-append    port:py${python.version}-setuptools
</del><ins>+    depends_build-append    port:py${python.version}-numpy
+    # Note: setuptools required only for developers
+
</ins><span class="cx">     depends_lib-append      port:py${python.version}-numpy \
</span><span class="cx">                             port:py${python.version}-scipy \
</span><span class="cx">                             port:py${python.version}-lxml \
</span><span class="cx">                             port:py${python.version}-suds \
</span><del>-                            port:py${python.version}-sqlalchemy
</del><ins>+                            port:py${python.version}-sqlalchemy \
+                            port:py${python.version}-matplotlib
</ins><span class="cx"> 
</span><ins>+    # Note: Required for post-installation testing only
+    depends_run-append      port:py${python.version}-flake8 \
+                            port:py${python.version}-nose \
+                            port:py${python.version}-mock
+
</ins><span class="cx">     # py-scipy is not universal
</span><span class="cx">     universal_variant       no
</span><span class="cx"> 
</span><ins>+    # Note: temporary workaround for numpy.distutils behaviour
</ins><span class="cx">     patchfiles              patch-setup.py.diff
</span><span class="cx"> 
</span><ins>+    # Check if and how to use compiler portgroup ...
+    #
</ins><span class="cx">     set gcc_versions {4.3 4.4 4.5 4.6 4.7 4.8 4.9}
</span><span class="cx">     set default_fortran_variant +gcc48
</span><span class="cx"> 
</span><span class="lines">@@ -86,11 +100,14 @@
</span><span class="cx">             depends_build-append port:gcc${ver_no_dot}
</span><span class="cx"> 
</span><span class="cx">             configure.fc  ${prefix}/bin/gfortran-mp-${ver}
</span><del>-            compiler.library_path ${prefix}/lib/gcc${ver_no_dot}
</del><ins>+            configure.f77 ${prefix}/bin/gfortran-mp-${ver}
+            configure.f90 ${prefix}/bin/gfortran-mp-${ver}
</ins><span class="cx">         }
</span><span class="cx">     }
</span><ins>+
+    livecheck.type  none
+} else {
+    livecheck.type  regex
+    livecheck.url   [lindex ${master_sites} 0]
+    livecheck.regex &quot;&gt;${_name}-(\\d+(\\.\\d+)+)\\${extract.suffix}&lt;&quot;
</ins><span class="cx"> }
</span><del>-
-livecheck.type      regex
-livecheck.url       ${master_sites}
-livecheck.regex     &quot;&gt;obspy-(\\d+\\.\\d+\\.\\d+)\\.zip&lt;&quot;
</del></span></pre></div>
<a id="trunkdportspythonpyobspyfilespatchsetuppydiff"></a>
<div class="modfile"><h4>Modified: trunk/dports/python/py-obspy/files/patch-setup.py.diff (116933 => 116934)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/python/py-obspy/files/patch-setup.py.diff        2014-02-10 21:06:33 UTC (rev 116933)
+++ trunk/dports/python/py-obspy/files/patch-setup.py.diff        2014-02-10 21:07:25 UTC (rev 116934)
</span><span class="lines">@@ -1,30 +1,35 @@
</span><span class="cx"> --- setup.orig.py
</span><span class="cx"> +++ setup.py
</span><del>-@@ -27,7 +27,6 @@
- from distutils.unixccompiler import UnixCCompiler
- from setuptools import find_packages, setup
- from setuptools.extension import Extension
--import distribute_setup
- import glob
- import os
- import platform
-@@ -370,8 +369,8 @@
-             # otherwise we just use the original compile method
-             UnixCCompiler.linker_so = None
-             return self._original_compile(obj, src, *args, **kwargs)
--        UnixCCompiler.linker_so = [&quot;gfortran&quot;]
--        self.compiler_so = [&quot;gfortran&quot;]
-+        UnixCCompiler.linker_so = [os.environ.get(&quot;FC&quot;)]
-+        self.compiler_so = [os.environ.get(&quot;FC&quot;)]
-         cc_args = ['-c', '-fno-underscoring']
-         cc_args.append('-fPIC')
-         try:
-@@ -629,8 +628,6 @@
</del><ins>+@@ -434,7 +434,10 @@
+     libname = _get_lib_name(&quot;tau&quot;)
+     files = glob.glob(os.path.join(path, &quot;*.f&quot;))
+     # compiler specific options
+-    kwargs = {'libraries': []}
++    # 2014-02-10, petr -- modification needed below
++    kwargs = {}
++    kwargs.update({'libraries': []})
++    kwargs.update({'extra_link_args': []})
+     # XXX: The build subdirectory is difficult to determine if installed
+     # via pypi or other means. I could not find a reliable way of doing it.
+     new_interface_path = os.path.join(&quot;build&quot;, libname + os.extsep + &quot;pyf&quot;)
+@@ -452,6 +455,20 @@
+     # gfortran the option -lgcov is required
+     if os.environ.get('OBSPY_C_COVERAGE', &quot;&quot;):
+         kwargs['libraries'].append('gcov')
++
++    # 2014-02-10, petr -- workaround for unexpected numpy.distutils behaviour
++    #   This hot fix is needed for Macports. Macports sets `LDFLAGS` via
++    #   `Python Portgroup` to control build architecture setings.
++    #   For Fortran extentions this causes the default link arguments to be
++    #   canceled, which does not correspond to C bevavior. The fix below adds
++    #   these arguments manually.
++    #
++    #   Should probably be adressed in numpy.distutils.
++    #
++    if platform.system() == 'Darwin':
++        kwargs['extra_link_args'].append('-bundle')
++        kwargs['extra_link_args'].append('-undefined dynamic_lookup')
++
+     config.add_extension(libname, files, **kwargs)
</ins><span class="cx">  
</span><del>- 
- def setupPackage(gfortran=True, ccompiler=True):
--    # automatically install distribute if the user does not have it installed
--    distribute_setup.use_setuptools()
-     # use lib2to3 for Python 3.x
-     if sys.version_info[0] == 3:
-         convert2to3()
</del><ins>+     add_data_files(config)
</ins></span></pre>
</div>
</div>

</body>
</html>