<!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>[121866] trunk/dports/genealogy/gramps</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/121866">121866</a></dd>
<dt>Author</dt> <dd>devans@macports.org</dd>
<dt>Date</dt> <dd>2014-07-09 13:00:48 -0700 (Wed, 09 Jul 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>gramps: update to version 4.0.3 using python PortGroup, now supports gtk3 and both python 2 and 3.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkdportsgenealogygrampsPortfile">trunk/dports/genealogy/gramps/Portfile</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkdportsgenealogygrampsfilespatchgrampsgenutilsresourcepathpydiff">trunk/dports/genealogy/gramps/files/patch-gramps-gen-utils-resourcepath.py.diff</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkdportsgenealogygrampsfilespatchconfigurediff">trunk/dports/genealogy/gramps/files/patch-configure.diff</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkdportsgenealogygrampsPortfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/genealogy/gramps/Portfile (121865 => 121866)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/genealogy/gramps/Portfile        2014-07-09 18:47:46 UTC (rev 121865)
+++ trunk/dports/genealogy/gramps/Portfile        2014-07-09 20:00:48 UTC (rev 121866)
</span><span class="lines">@@ -4,7 +4,11 @@
</span><span class="cx"> PortSystem              1.0
</span><span class="cx"> 
</span><span class="cx"> name                    gramps
</span><del>-version                 3.4.8
</del><ins>+conflicts               gramps3
+
+PortGroup               python 1.0
+
+version                 4.0.3
</ins><span class="cx"> license                 GPL-2
</span><span class="cx"> categories              genealogy python
</span><span class="cx"> platforms               darwin
</span><span class="lines">@@ -16,68 +20,80 @@
</span><span class="cx"> long_description        GRAMPS is a genealogy program to store, edit, \
</span><span class="cx">                         and research genealogical data.  It provides \
</span><span class="cx">                         advanced capabilities for research, analysis, and \
</span><del>-                        correlation to potentially fill relationship gaps.
</del><ins>+                        correlation to potentially fill relationship gaps. This \
+                        version is based on gtk3 and supports both python 2 and 3. \
+                        To use the legacy gtk2 version, install port gramps3.
</ins><span class="cx"> 
</span><span class="cx"> homepage                http://www.gramps-project.org/
</span><span class="cx"> master_sites            sourceforge:gramps
</span><span class="cx"> 
</span><del>-checksums               rmd160  b7928b50962ecb4a5895e072a7fab52d76718faa \
-                        sha256  fea75da181c489ce2d61de6ada14b71cec21169f46265b9f22b59a6bab441002
</del><ins>+checksums               rmd160  f03a316a0749a3a589edbda95e786a15b21b342c \
+                        sha256  13985235d27332af461311399a90a5280a7aa516d08bcb4979d3d9edc9c7d7bf
</ins><span class="cx"> 
</span><del>-depends_build           port:pkgconfig \
-                        port:intltool \
-                        port:gnome-doc-utils
</del><ins>+depends_build-append    port:intltool
</ins><span class="cx"> 
</span><del>-# librsvg is required at least for icons in dialogs
-
-depends_lib             port:librsvg \
-                        port:aspell-dict-en \
</del><ins>+depends_lib-append      port:desktop-file-utils \
</ins><span class="cx">                         port:shared-mime-info \
</span><del>-                        port:desktop-file-utils \
-                        path:bin/dot:graphviz
</del><ins>+                        port:xdg-utils \
+                        port:gtk3 \
+                        port:gtkspell3 \
+                        port:osm-gps-map \
+                        port:gexiv2 \
+                        path:lib/pkgconfig/webkitgtk-3.0.pc:webkit-gtk3 \
+                        path:bin/dot:graphviz \
+                        port:ghostscript \
+                        port:goocanvas2
</ins><span class="cx"> 
</span><del>-patchfiles              patch-configure.diff
</del><ins>+patchfiles              patch-gramps-gen-utils-resourcepath.py.diff
</ins><span class="cx"> 
</span><del>-# update intltool.m4 and autoreconf
-
-post-patch {
-    copy -force ${prefix}/share/aclocal/intltool.m4 ${worksrcpath}/m4
</del><ins>+platform darwin {
+    if {${configure.cxx_stdlib} eq &quot;libstdc++&quot;} {
+       depends_lib-delete path:lib/pkgconfig/webkitgtk-3.0.pc:webkit-gtk3
+       depends_lib-append path:lib/pkgconfig/webkitgtk-3.0.pc:webkit-gtk3-2.0
+    }
</ins><span class="cx"> }
</span><span class="cx"> 
</span><del>-use_autoreconf          yes
-autoreconf.args         -fvi
</del><ins>+#
+# supports python27 and python3 &gt;= 3.2
+# python 3 versions require py-bsddb3 for database access, not yet tested with python34
+#
</ins><span class="cx"> 
</span><del>-configure.args          --disable-mime-install
</del><ins>+variant python27 conflicts python32 python33 description {Use Python 2.7} {
+    python.default_version  27
+    depends_lib-append  port:py27-gobject3 \
+                        port:py27-pyicu \
+                        port:py27-Pillow
+}
</ins><span class="cx"> 
</span><del>-variant python26 conflicts python27 description {Use python 2.6} {
-    depends_lib-append  port:py26-gtkspell \
-                        port:py26-enchant \
-                        port:py26-webkitgtk \
-                        port:py26-osmgpsmap \
-                        port:py26-exiv2 \
-                        port:py26-pil \
-                        port:py26-pyicu
-    configure.python    ${prefix}/bin/python2.6
</del><ins>+variant python32 conflicts python27 python33 description {Use Python 3.2} {
+    python.default_version  32
+    depends_lib-append  port:py32-gobject3 \
+                        port:py32-pyicu \
+                        port:py32-Pillow \
+                        port:py32-bsddb3
</ins><span class="cx"> }
</span><span class="cx"> 
</span><del>-variant python27 conflicts python26 description {Use python 2.7} {
-    depends_lib-append  port:py27-gtkspell \
-                        port:py27-enchant \
-                        port:py27-webkitgtk \
-                        port:py27-osmgpsmap \
-                        port:py27-exiv2 \
-                        port:py27-pil \
-                        port:py27-pyicu
-    configure.python    ${prefix}/bin/python2.7
</del><ins>+variant python33 conflicts python27 python32 description {Use Python 3.3} {
+    python.default_version  33
+    depends_lib-append  port:py33-gobject3 \
+                        port:py33-pyicu \
+                        port:py33-Pillow \
+                        port:py33-bsddb3
</ins><span class="cx"> }
</span><span class="cx"> 
</span><del>-if {![variant_isset python26]} {
</del><ins>+if {![variant_isset python32] &amp;&amp; ![variant_isset python33]} {
</ins><span class="cx">     default_variants +python27
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+post-destroot {
+    reinplace &quot;s|${destroot}${python.prefix}|${prefix}|&quot; ${destroot}${python.pkgd}/gramps/gen/utils/resource-path
+    delete ${destroot}${prefix}/share
+    move ${destroot}${python.prefix}/share ${destroot}${prefix}
+}
+
</ins><span class="cx"> post-activate {
</span><ins>+    system &quot;${prefix}/bin/update-desktop-database ${prefix}/share/applications&quot;
</ins><span class="cx">     system &quot;${prefix}/bin/update-mime-database ${prefix}/share/mime&quot;
</span><del>-    system &quot;${prefix}/bin/update-desktop-database ${prefix}/share/applications&quot;
</del><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> notes {
</span><span class="lines">@@ -96,6 +112,16 @@
</span><span class="cx"> Also, use XML format for any data migration. Moving to another machine, sending data to a family member,
</span><span class="cx"> copying to another user on the same machine -- all of these cases should use XML.
</span><span class="cx"> 
</span><ins>+***** IMPORTANT *****
+
+Beginning with GRAMPS 4.0, GRAMPS supports either python2 or python3.  If you plan to use python3, please MAKE A BACKUP
+of your data using your old python2 version before attempting to load your family tree in GRAMPS 4.0 with python3.  The python3
+versions use a different database interface with a new database format that is not compatible with the python2 versions. On startup,
+GRAMPS 4.0 python3 will ask you if you want to reformat your database.  Once this has been done, your database will no longer be usable
+with python2 versions.
+
+***** MAKE A BACKUP! *****
+
</ins><span class="cx"> For detailed backup instructions, see the online GRAMPS documentation at http://www.gramps-project.org/wiki/index.php?title=How_to_make_a_backup
</span><span class="cx"> 
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkdportsgenealogygrampsfilespatchconfigurediff"></a>
<div class="delfile"><h4>Deleted: trunk/dports/genealogy/gramps/files/patch-configure.diff (121865 => 121866)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/genealogy/gramps/files/patch-configure.diff        2014-07-09 18:47:46 UTC (rev 121865)
+++ trunk/dports/genealogy/gramps/files/patch-configure.diff        2014-07-09 20:00:48 UTC (rev 121866)
</span><span class="lines">@@ -1,14 +0,0 @@
</span><del>---- configure.orig        2012-08-23 12:02:19.000000000 -0700
-+++ configure        2012-09-17 08:34:25.000000000 -0700
-@@ -5600,9 +5600,9 @@



--  PYTHON_PREFIX='${prefix}'
-+  PYTHON_PREFIX=`$PYTHON -c 'import sys; print sys.prefix;'`

--  PYTHON_EXEC_PREFIX='${exec_prefix}'
-+  PYTHON_EXEC_PREFIX=`$PYTHON -c 'import sys; print sys.exec_prefix;'`



</del></span></pre></div>
<a id="trunkdportsgenealogygrampsfilespatchgrampsgenutilsresourcepathpydiff"></a>
<div class="addfile"><h4>Added: trunk/dports/genealogy/gramps/files/patch-gramps-gen-utils-resourcepath.py.diff (0 => 121866)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/genealogy/gramps/files/patch-gramps-gen-utils-resourcepath.py.diff                                (rev 0)
+++ trunk/dports/genealogy/gramps/files/patch-gramps-gen-utils-resourcepath.py.diff        2014-07-09 20:00:48 UTC (rev 121866)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+--- gramps/gen/utils/resourcepath.py.orig        2013-10-05 00:29:32.000000000 -0700
++++ gramps/gen/utils/resourcepath.py        2013-10-05 00:30:14.000000000 -0700
+@@ -66,7 +66,7 @@
+             try:
+                 with io.open(resource_file, encoding='utf-8',
+                                 errors='strict') as fp:
+-                    resource_path = fp.readline()
++                    resource_path = fp.readline().rstrip('\n')
+             except UnicodeError as err:
+                 LOG.exception(&quot;Encoding error while parsing resource path&quot;, err)
+                 sys.exit(1)
</ins></span></pre>
</div>
</div>

</body>
</html>