<!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>[116967] trunk/dports/textproc/cicada</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/116967">116967</a></dd>
<dt>Author</dt> <dd>hum@macports.org</dd>
<dt>Date</dt> <dd>2014-02-11 06:00:59 -0800 (Tue, 11 Feb 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>cicada: update to 0.3.1; add sentence.hpp to build; replace with openmpi-default; add optflags; fix expressions.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkdportstextproccicadaPortfile">trunk/dports/textproc/cicada/Portfile</a></li>
<li><a href="#trunkdportstextproccicadafilespatchconfigurediff">trunk/dports/textproc/cicada/files/patch-configure.diff</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkdportstextproccicadafilessentencehpp">trunk/dports/textproc/cicada/files/sentence.hpp</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkdportstextproccicadaPortfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/textproc/cicada/Portfile (116966 => 116967)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/textproc/cicada/Portfile        2014-02-11 13:53:32 UTC (rev 116966)
+++ trunk/dports/textproc/cicada/Portfile        2014-02-11 14:00:59 UTC (rev 116967)
</span><span class="lines">@@ -4,7 +4,7 @@
</span><span class="cx"> PortSystem          1.0
</span><span class="cx"> 
</span><span class="cx"> name                cicada
</span><del>-version             0.3.0
</del><ins>+version             0.3.1
</ins><span class="cx"> categories          textproc
</span><span class="cx"> maintainers         hum openmaintainer
</span><span class="cx"> 
</span><span class="lines">@@ -16,12 +16,12 @@
</span><span class="cx"> license             LGPL-3+
</span><span class="cx"> 
</span><span class="cx"> master_sites        ${homepage}
</span><del>-checksums           rmd160  895cc333fa335ec74fb1808b1cea72e01c556179 \
-                    sha256  dd2102812953a6d1093fe23688ddf7f80fe86e98cd0e9f217ad650a5beb5b524
</del><ins>+checksums           rmd160  26aa37cc9783bfe4a4f92f7005f07304a1c24dbb \
+                    sha256  58a68e108315ab4cb11c659fd38cb9edf761f5601eb04d4cdd9ab23149e0b6d3
</ins><span class="cx"> 
</span><span class="cx"> depends_lib         port:expgram \
</span><span class="cx">                     port:boost \
</span><del>-                    port:openmpi \
</del><ins>+                    port:openmpi-default \
</ins><span class="cx">                     port:icu
</span><span class="cx"> 
</span><span class="cx"> depends_build       port:py27-docutils \
</span><span class="lines">@@ -30,29 +30,35 @@
</span><span class="cx"> patchfiles          patch-configure.diff \
</span><span class="cx">                     patch-samples.diff
</span><span class="cx"> 
</span><ins>+post-extract {
+    copy ${filespath}/sentence.hpp ${worksrcpath}/cicada/
+}
+
+configure.optflags  -O3
+
</ins><span class="cx"> post-build {
</span><span class="cx">     system -W ${worksrcpath}/doc &quot;${build.cmd} index.html&quot;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> post-destroot {
</span><span class="cx">     # install additional documents.
</span><del>-    set dest_doc ${destroot}${prefix}/share/doc/${name}
-    xinstall -d ${dest_doc}
</del><ins>+    set docdir ${prefix}/share/doc/${name}
+    xinstall -d ${destroot}${docdir}
</ins><span class="cx">     xinstall -m 644 -W ${worksrcpath} \
</span><span class="cx">         COPYING.GPL COPYING.LGPL FAQ LICENSE NEWS.rst README.rst TODO.rst \
</span><span class="cx">         doc/index.html \
</span><del>-        ${dest_doc}
</del><ins>+        ${destroot}${docdir}
</ins><span class="cx">     foreach rst [glob ${worksrcpath}/doc/*.rst] {
</span><del>-        xinstall -m 644 ${rst} ${dest_doc}
</del><ins>+        xinstall -m 644 ${rst} ${destroot}${docdir}
</ins><span class="cx">     }
</span><span class="cx">     # install sample data and scripts.
</span><span class="cx">     xinstall -d ${destroot}${prefix}/share/examples
</span><del>-    set dest_ex ${destroot}${prefix}/share/examples/${name}
-    copy ${worksrcpath}/samples ${dest_ex}
</del><ins>+    set exdir ${prefix}/share/examples/${name}
+    copy ${worksrcpath}/samples ${destroot}${exdir}
</ins><span class="cx">     foreach f {Makefile Makefile.am Makefile.in} {
</span><del>-        delete ${dest_ex}/${f}
</del><ins>+        delete ${destroot}${exdir}/${f}
</ins><span class="cx">     }
</span><del>-    foreach sh [glob ${dest_ex}/*/*.sh ${dest_ex}/*/*/*.sh ${dest_ex}/*/*/*/*.sh] {
</del><ins>+    foreach sh [glob ${destroot}${exdir}/*/*.sh ${destroot}${exdir}/*/*/*.sh ${destroot}${exdir}/*/*/*/*.sh] {
</ins><span class="cx">         reinplace &quot;s|@PREFIX@|${prefix}|g&quot; ${sh}
</span><span class="cx">     }
</span><span class="cx"> }
</span><span class="lines">@@ -63,4 +69,4 @@
</span><span class="cx"> 
</span><span class="cx"> livecheck.type      regex
</span><span class="cx"> livecheck.url       [lindex ${master_sites} 0]
</span><del>-livecheck.regex     ${name}-(\[0-9.\]+)\\.tar
</del><ins>+livecheck.regex     &quot;${name}-(\\d+(?:\\.\\d+)*)${extract.suffix}&quot;
</ins></span></pre></div>
<a id="trunkdportstextproccicadafilespatchconfigurediff"></a>
<div class="modfile"><h4>Modified: trunk/dports/textproc/cicada/files/patch-configure.diff (116966 => 116967)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/textproc/cicada/files/patch-configure.diff        2014-02-11 13:53:32 UTC (rev 116966)
+++ trunk/dports/textproc/cicada/files/patch-configure.diff        2014-02-11 14:00:59 UTC (rev 116967)
</span><span class="lines">@@ -1,20 +1,11 @@
</span><del>---- configure.orig        2013-10-26 06:39:46.000000000 +0900
-+++ configure        2013-10-26 18:58:40.000000000 +0900
-@@ -16576,7 +16576,7 @@
</del><ins>+--- configure.orig        2014-01-12 09:47:00.000000000 +0900
++++ configure        2014-02-09 16:22:12.000000000 +0900
+@@ -20750,7 +20750,7 @@
</ins><span class="cx">  
</span><del>- # Check for binaries...
- # Extract the first word of &quot;rst2man.py&quot;, so it can be a program name with args.
--set dummy rst2man.py; ac_word=$2
-+set dummy rst2man-2.7.py; ac_word=$2
- { $as_echo &quot;$as_me:${as_lineno-$LINENO}: checking for $ac_word&quot; &gt;&amp;5
- $as_echo_n &quot;checking for $ac_word... &quot; &gt;&amp;6; }
- if ${ac_cv_path_RST2MAN+:} false; then :
-@@ -16626,7 +16626,7 @@
</del><span class="cx">  
</span><del>- 
- # Extract the first word of &quot;rst2html.py&quot;, so it can be a program name with args.
--set dummy rst2html.py; ac_word=$2
-+set dummy rst2html-2.7.py; ac_word=$2
- { $as_echo &quot;$as_me:${as_lineno-$LINENO}: checking for $ac_word&quot; &gt;&amp;5
- $as_echo_n &quot;checking for $ac_word... &quot; &gt;&amp;6; }
- if ${ac_cv_path_RST2HTML+:} false; then :
</del><ins>+ ### check for MPI
+-for ac_prog in openmpic++ openmpicxx openmpiCC mpic++ mpicxx mpiCC
++for ac_prog in mpicxx-openmpi-mp openmpic++ openmpicxx openmpiCC mpic++ mpicxx mpiCC
+ do
+   # Extract the first word of &quot;$ac_prog&quot;, so it can be a program name with args.
+ set dummy $ac_prog; ac_word=$2
</ins></span></pre></div>
<a id="trunkdportstextproccicadafilessentencehpp"></a>
<div class="addfile"><h4>Added: trunk/dports/textproc/cicada/files/sentence.hpp (0 => 116967)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/textproc/cicada/files/sentence.hpp                                (rev 0)
+++ trunk/dports/textproc/cicada/files/sentence.hpp        2014-02-11 14:00:59 UTC (rev 116967)
</span><span class="lines">@@ -0,0 +1,157 @@
</span><ins>+// -*- mode: c++ -*-
+//
+//  Copyright(C) 2010-2011 Taro Watanabe &lt;taro.watanabe@nict.go.jp&gt;
+//
+
+#ifndef __CICADA__SENTENCE__HPP__
+#define __CICADA__SENTENCE__HPP__ 1
+
+#include &lt;iostream&gt;
+#include &lt;vector&gt;
+#include &lt;string&gt;
+
+#include &lt;cicada/symbol.hpp&gt;
+
+#include &lt;utils/hashmurmur3.hpp&gt;
+#include &lt;utils/piece.hpp&gt;
+
+namespace cicada
+{
+
+  class Sentence
+  {
+  public:
+    typedef cicada::Symbol  symbol_type;
+    typedef cicada::Symbol  word_type;
+    
+  private:
+    typedef std::vector&lt;word_type, std::allocator&lt;word_type&gt; &gt; sent_type;
+
+  public:
+    typedef sent_type::size_type              size_type;
+    typedef sent_type::difference_type        difference_type;
+    typedef sent_type::value_type             value_type;
+    
+    typedef sent_type::iterator               iterator;
+    typedef sent_type::const_iterator         const_iterator;
+    typedef sent_type::reverse_iterator       reverse_iterator;
+    typedef sent_type::const_reverse_iterator const_reverse_iterator;
+    typedef sent_type::reference              reference;
+    typedef sent_type::const_reference        const_reference;
+    
+  public:
+    Sentence() : __sent() {}
+    Sentence(size_type __n) : __sent(__n) {}
+    Sentence(size_type __n, const word_type&amp; __word) : __sent(__n, __word) {}
+    template &lt;typename Iterator&gt;
+    Sentence(Iterator first, Iterator last) : __sent(first, last) {}
+    Sentence(const utils::piece&amp; x) { assign(x); }
+    
+    void assign(size_type __n, const word_type&amp; __word) { __sent.assign(__n, __word); }
+    template &lt;typename Iterator&gt;
+    void assign(Iterator first, Iterator last) { __sent.assign(first, last); }
+    void assign(const utils::piece&amp; x);
+    
+    bool assign(std::string::const_iterator&amp; iter, std::string::const_iterator end);
+    bool assign(utils::piece::const_iterator&amp; iter, utils::piece::const_iterator end);
+    
+    // insert/erase...
+    iterator insert(iterator pos, const word_type&amp; word) { return __sent.insert(pos, word); }
+    void insert(iterator pos, size_type n, const word_type&amp; word) { __sent.insert(pos, n, word); }
+    template &lt;typename Iterator&gt;
+    void insert(iterator pos, Iterator first, Iterator last) { __sent.insert(pos, first, last); }
+    
+    iterator erase(iterator pos) { return __sent.erase(pos); }
+    iterator erase(iterator first, iterator last) { return __sent.erase(first, last); }
+    
+    void push_back(const word_type&amp; word) { __sent.push_back(word); }
+    void pop_back() { __sent.pop_back(); }
+    
+    void swap(Sentence&amp; __x) { __sent.swap(__x.__sent); }
+    
+    void clear() { __sent.clear(); }
+    void reserve(size_type __n) { __sent.reserve(__n); }
+    void resize(size_type __n) { __sent.resize(__n); }
+    void resize(size_type __n, const word_type&amp; __word) { __sent.resize(__n, __word); }
+
+    size_type size() const { return __sent.size(); }
+    bool empty() const { return __sent.empty(); }
+    
+    inline const_iterator begin() const { return __sent.begin(); }
+    inline       iterator begin()       { return __sent.begin(); }
+    
+    inline const_iterator end() const { return __sent.end(); }
+    inline       iterator end()       { return __sent.end(); }
+    
+    inline const_reverse_iterator rbegin() const { return __sent.rbegin(); }
+    inline       reverse_iterator rbegin()       { return __sent.rbegin(); }
+    
+    inline const_reverse_iterator rend() const { return __sent.rend(); }
+    inline       reverse_iterator rend()       { return __sent.rend(); }
+    
+    inline const_reference operator[](size_type pos) const { return __sent[pos]; }
+    inline       reference operator[](size_type pos)       { return __sent[pos]; }
+
+    inline const_reference front() const { return __sent.front(); }
+    inline       reference front()       { return __sent.front(); }
+    
+    inline const_reference back() const { return __sent.back(); }
+    inline       reference back()       { return __sent.back(); }
+    
+  public:
+    
+    friend
+    size_t hash_value(Sentence const&amp; x);
+    
+    friend
+    std::ostream&amp; operator&lt;&lt;(std::ostream&amp; os, const Sentence&amp; x);
+    friend
+    std::istream&amp; operator&gt;&gt;(std::istream&amp; is, Sentence&amp; x);
+    
+    friend
+    bool operator==(const Sentence&amp; x, const Sentence&amp; y);
+    friend
+    bool operator!=(const Sentence&amp; x, const Sentence&amp; y);
+    friend
+    bool operator&lt;(const Sentence&amp; x, const Sentence&amp; y);
+    friend
+    bool operator&gt;(const Sentence&amp; x, const Sentence&amp; y);
+    friend
+    bool operator&lt;=(const Sentence&amp; x, const Sentence&amp; y);
+    friend
+    bool operator&gt;=(const Sentence&amp; x, const Sentence&amp; y);
+    
+  private:
+    sent_type __sent;
+  };
+  
+  inline
+  size_t hash_value(Sentence const&amp; x) { return utils::hashmurmur3&lt;size_t&gt;()(x.__sent.begin(), x.__sent.end(), 0); }
+  
+  inline
+  bool operator==(const Sentence&amp; x, const Sentence&amp; y) { return x.__sent == y.__sent; }
+  inline
+  bool operator!=(const Sentence&amp; x, const Sentence&amp; y) { return x.__sent != y.__sent; }
+  inline
+  bool operator&lt;(const Sentence&amp; x, const Sentence&amp; y) { return x.__sent &lt; y.__sent; }
+  inline
+  bool operator&gt;(const Sentence&amp; x, const Sentence&amp; y) { return x.__sent &gt; y.__sent; }
+  inline
+  bool operator&lt;=(const Sentence&amp; x, const Sentence&amp; y) { return x.__sent &lt;= y.__sent; }
+  inline
+  bool operator&gt;=(const Sentence&amp; x, const Sentence&amp; y) { return x.__sent &gt;= y.__sent; }
+  
+  
+  
+};
+
+namespace std
+{
+  inline
+  void swap(cicada::Sentence&amp; x, cicada::Sentence&amp; y)
+  {
+    x.swap(y);
+  }
+};
+
+#endif
</ins></span></pre>
</div>
</div>

</body>
</html>