<!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>[138998] trunk/dports/devel/fsvs</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/138998">138998</a></dd>
<dt>Author</dt> <dd>ryandesign@macports.org</dd>
<dt>Date</dt> <dd>2015-07-26 23:51:24 -0700 (Sun, 26 Jul 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>fsvs: update to 1.2.6; add apr dependency; add patch for clang compatibility; use expand operator instead of eval</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkdportsdevelfsvsPortfile">trunk/dports/devel/fsvs/Portfile</a></li>
<li><a href="#trunkdportsdevelfsvsfilespatchconfigurediff">trunk/dports/devel/fsvs/files/patch-configure.diff</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkdportsdevelfsvsfilespatchclangdiff">trunk/dports/devel/fsvs/files/patch-clang.diff</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkdportsdevelfsvsPortfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/devel/fsvs/Portfile (138997 => 138998)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/devel/fsvs/Portfile        2015-07-27 06:15:58 UTC (rev 138997)
+++ trunk/dports/devel/fsvs/Portfile        2015-07-27 06:51:24 UTC (rev 138998)
</span><span class="lines">@@ -4,7 +4,7 @@
</span><span class="cx"> PortSystem                  1.0
</span><span class="cx"> 
</span><span class="cx"> name                        fsvs
</span><del>-version                     1.2.5
</del><ins>+version                     1.2.6
</ins><span class="cx"> categories                  devel
</span><span class="cx"> platforms                   darwin
</span><span class="cx"> maintainers                 ryandesign openmaintainer
</span><span class="lines">@@ -23,14 +23,16 @@
</span><span class="cx">                             http://download.fsvs-software.org/old/
</span><span class="cx"> use_bzip2                   yes
</span><span class="cx"> 
</span><del>-checksums                   rmd160  7bc9e87c5e4949f715208c0c589c8ee6c3339f22 \
-                            sha256  3c957d29e0e568d46ce2fd659a88ed6ea93a05267bdc11dc93131a88b7cb44d2
</del><ins>+checksums                   rmd160  425fca5adbca8c9f51e1687861773f95e1721202 \
+                            sha256  819551340b0124542af7ef0c6af74275a9b7689b736643766eb1b332d77b1a81
</ins><span class="cx"> 
</span><span class="cx"> depends_lib                 port:subversion \
</span><ins>+                            port:apr \
</ins><span class="cx">                             port:gdbm \
</span><span class="cx">                             port:pcre
</span><span class="cx"> 
</span><span class="cx"> patchfiles                  patch-configure.diff \
</span><ins>+                            patch-clang.diff \
</ins><span class="cx">                             patch-src-Makefile.in.diff
</span><span class="cx"> 
</span><span class="cx"> configure.cflags-append     -fnested-functions
</span><span class="lines">@@ -46,10 +48,10 @@
</span><span class="cx">                             ${destroot}${prefix}/etc/fsvs/svn/auth/ssl.client-passphrase
</span><span class="cx"> 
</span><span class="cx"> post-destroot {
</span><del>-    eval xinstall -m 644 [glob ${worksrcpath}/doc/*.1] ${destroot}${prefix}/share/man/man1
-    eval xinstall -m 644 [glob ${worksrcpath}/doc/*.5] ${destroot}${prefix}/share/man/man5
</del><ins>+    xinstall -m 644 {*}[glob ${worksrcpath}/doc/*.1] ${destroot}${prefix}/share/man/man1
+    xinstall -m 644 {*}[glob ${worksrcpath}/doc/*.5] ${destroot}${prefix}/share/man/man5
</ins><span class="cx">     
</span><del>-    set docdir ${destroot}${prefix}/share/doc/${name}
</del><ins>+    set docdir ${destroot}${prefix}/share/doc/${subport}
</ins><span class="cx">     xinstall -d ${docdir}
</span><span class="cx">     xinstall -m 644 -W ${worksrcpath} \
</span><span class="cx">         CHANGES \
</span></span></pre></div>
<a id="trunkdportsdevelfsvsfilespatchclangdiff"></a>
<div class="addfile"><h4>Added: trunk/dports/devel/fsvs/files/patch-clang.diff (0 => 138998)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/devel/fsvs/files/patch-clang.diff                                (rev 0)
+++ trunk/dports/devel/fsvs/files/patch-clang.diff        2015-07-27 06:51:24 UTC (rev 138998)
</span><span class="lines">@@ -0,0 +1,333 @@
</span><ins>+Index: fsvs/src/props.c
+===================================================================
+--- src/props.c        (revision 2473)
++++ src/props.c        (revision 2474)
+@@ -1,5 +1,5 @@
+ /************************************************************************
+- * Copyright (C) 2007-2009 Philipp Marek.
++ * Copyright (C) 2007-2009,2015 Philipp Marek.
+  *
+  * This program is free software;  you can redistribute it and/or modify
+  * it under the terms of the GNU General Public License version 3 as
+@@ -442,7 +442,7 @@

+ /** -.
+  * Wrapper for prp__fetch(). */
+-int prp__get(hash_t db, const char *keycp, datum *value)
++int prp__get(hash_t db, char * const keycp, datum *value)
+ {
+   static datum key;

+@@ -567,6 +567,7 @@
+         char **normalized;


++        db=NULL;
+         status=0;
+         output=stdout;
+         if (argc&lt;2) ac__Usage_this();
+@@ -636,6 +637,7 @@


+         status=0;
++        db=NULL;
+         if (argc&lt;2) ac__Usage_this();

+         /* Check name for special values. */
+@@ -893,6 +895,7 @@
+         int status, rv;
+         datum key;

++        status=0;
+         rv = prp__open_byestat( sts, GDBM_READER, &amp;db);
+         if (rv == ENOENT)
+                 goto done;
+Index: fsvs/src/props.h
+===================================================================
+--- src/props.h        (revision 2473)
++++ src/props.h        (revision 2474)
+@@ -63,7 +63,7 @@
+                 hash_t *db);
+ /** Get a value, addressed by a string; key length is calculated inclusive 
+  * the \c \\0. */
+-int prp__get(hash_t db, const char *keycp, datum *value);
++int prp__get(hash_t db, char * const keycp, datum *value);
+ /** Store the value; basic function. */
+ int prp__store(hash_t db, datum key, datum value);
+ /** Get first key. */
+Index: fsvs/src/waa.c
+===================================================================
+--- src/waa.c        (revision 2473)
++++ src/waa.c        (revision 2474)
+@@ -1,5 +1,5 @@
+ /************************************************************************
+- * Copyright (C) 2005-2009 Philipp Marek.
++ * Copyright (C) 2005-2009,2015 Philipp Marek.
+  *
+  * This program is free software;  you can redistribute it and/or modify
+  * it under the terms of the GNU General Public License version 3 as
+@@ -378,7 +378,7 @@


+ /** Returns the MD5 of the given path, taking the softroot into account. */
+-int waa___get_path_md5(const char const *path, 
++int waa___get_path_md5(const char * path, 
+                 unsigned char digest[APR_MD5_DIGESTSIZE])
+ {
+         int status;
+@@ -769,12 +769,8 @@
+                 &quot;\t&quot;;
+         static const char readme_2[]=&quot;\n&quot;;

+-        inline int w(const char *buffer, int l)
+-        {
+-                return write(hdl, buffer, l) != l;
+-        }
++#define w(_buffer, _l) (write(hdl, _buffer, _l) != _l)

+-
+         STOPIF( waa__open(directory, name, O_CREAT | O_WRONLY, &amp;hdl), NULL);
+         STOPIF_CODE_ERR( 
+                         w(readme_1, sizeof(readme_1)-1) ||
+@@ -784,6 +780,8 @@
+                         &quot;Cannot create the readme file.&quot;);
+         STOPIF( waa__close(hdl, 0), NULL);

++#undef w
++
+ ex:
+         return status;
+ }
+@@ -3005,7 +3003,7 @@
+ /** -.
+  * The \a dir must be absolute; this function makes an own copy, so the 
+  * value will be unchanged. */
+-int waa__set_working_copy(const char const *wc_dir)
++int waa__set_working_copy(const char * const wc_dir)
+ {
+         int status;

+@@ -3022,7 +3020,7 @@
+ /** -.
+  * The \a dir must be absolute; this function makes an own copy, so the 
+  * value will be unchanged. */
+-int waa__create_working_copy(const char const *wc_dir)
++int waa__create_working_copy(const char * const wc_dir)
+ {
+         int status;
+         char *dir;
+Index: fsvs/src/waa.h
+===================================================================
+--- src/waa.h        (revision 2473)
++++ src/waa.h        (revision 2474)
+@@ -1,5 +1,5 @@
+ /************************************************************************
+- * Copyright (C) 2005-2009 Philipp Marek.
++ * Copyright (C) 2005-2009,2015 Philipp Marek.
+  *
+  * This program is free software;  you can redistribute it and/or modify
+  * it under the terms of the GNU General Public License version 3 as
+@@ -283,10 +283,10 @@
+ int waa__find_base(struct estat *root, int *argc, char ***args);

+ /** Creates the WAA and CONF directories needed for \a wc_path. */
+-int waa__create_working_copy(const char const *wc_dir);
++int waa__create_working_copy(const char * const wc_dir);
+ /** Stores the path of the working copy.
+  * Not needed if waa__find_common_base or similar is called. */
+-int waa__set_working_copy(const char const *wc_dir);
++int waa__set_working_copy(const char * const wc_dir);


+ /** \name Building paths for FSVS's datafiles.
+Index: fsvs/src/commit.c
+===================================================================
+--- src/commit.c        (revision 2473)
++++ src/commit.c        (revision 2474)
+@@ -1,5 +1,5 @@
+ /************************************************************************
+- * Copyright (C) 2005-2009 Philipp Marek.
++ * Copyright (C) 2005-2009,2015 Philipp Marek.
+  *
+  * This program is free software;  you can redistribute it and/or modify
+  * it under the terms of the GNU General Public License version 3 as
+@@ -241,7 +241,8 @@

+ /* Convenience function; checks for \c FSVS_PROP_COMMIT_PIPE.
+  * By putting that here we can avoid sending most of the parameters. */
+-inline int send_a_prop(void *baton, int store_encoder,
++// inline
++int send_a_prop(void *baton, int store_encoder,
+                 struct estat *sts, change_any_prop_t function,
+                 char *key, svn_string_t *value,
+                 apr_pool_t *pool)
+Index: fsvs/src/racallback.c
+===================================================================
+--- src/racallback.c        (revision 2473)
++++ src/racallback.c        (revision 2474)
+@@ -1,5 +1,5 @@
+ /************************************************************************
+- * Copyright (C) 2005-2009 Philipp Marek.
++ * Copyright (C) 2005-2009,2015 Philipp Marek.
+  *
+  * This program is free software;  you can redistribute it and/or modify
+  * it under the terms of the GNU General Public License version 3 as
+@@ -293,7 +293,8 @@
+ }


+-inline int cb___store_prop(struct estat *sts, 
++// inline
++int cb___store_prop(struct estat *sts, 
+                 const char *utf8_name, const svn_string_t *value,
+                 apr_pool_t *pool)
+ {
+Index: fsvs/src/status.c
+===================================================================
+--- src/status.c        (revision 2473)
++++ src/status.c        (revision 2474)
+@@ -134,29 +134,29 @@


+ /** Meta-data status string. */
+-inline char * st___meta_string(int status_bits, int flags)
++char * st___meta_string(int status_bits, int flags)
+ {
+-  static char buffer[4];
+-        int prop;
++    static char buffer[4];
++    int prop;

+-        prop=(status_bits &amp; FS_PROPERTIES) | (flags &amp; RF_PUSHPROPS);
++    prop=(status_bits &amp; FS_PROPERTIES) | (flags &amp; RF_PUSHPROPS);

+-  if (opt__is_verbose() &gt; 0)
+-  {
+-    buffer[0] = status_bits &amp; FS_META_MTIME ?  't' : '.';
+-    buffer[1] = status_bits &amp; 
+-      (FS_META_OWNER | FS_META_GROUP | FS_META_UMODE) ?  'p' : '.';
+-    buffer[2] = prop ?  'P' : '.';
+-    buffer[3] = 0;
+-  }
+-  else
+-  {
+-    buffer[0] = status_bits &amp; FS_META_CHANGED ? 'm' : 
+-                        prop ? 'P' : '.';
+-    buffer[1]=0;
+-  }
++    if (opt__is_verbose() &gt; 0)
++    {
++        buffer[0] = status_bits &amp; FS_META_MTIME ?  't' : '.';
++        buffer[1] = status_bits &amp; 
++            (FS_META_OWNER | FS_META_GROUP | FS_META_UMODE) ?  'p' : '.';
++        buffer[2] = prop ?  'P' : '.';
++        buffer[3] = 0;
++    }
++    else
++    {
++        buffer[0] = status_bits &amp; FS_META_CHANGED ? 'm' : 
++            prop ? 'P' : '.';
++        buffer[1]=0;
++    }

+-  return buffer;
++    return buffer;
+ }


+Index: fsvs/src/helper.c
+===================================================================
+--- src/helper.c        (revision 2473)
++++ src/helper.c        (revision 2474)
+@@ -1,5 +1,5 @@
+ /************************************************************************
+- * Copyright (C) 2005-2009 Philipp Marek.
++ * Copyright (C) 2005-2009,2015 Philipp Marek.
+  *
+  * This program is free software;  you can redistribute it and/or modify
+  * it under the terms of the GNU General Public License version 3 as
+@@ -1582,6 +1582,7 @@


+         status=0;
++        path=NULL;
+         switch (opt__get_int(OPT__PATH))
+         {
+                 case PATH_WCRELATIVE:
+@@ -1958,7 +1959,7 @@
+ /** -.
+  * If \a source is not \c NULL \a len bytes are copied.
+  * The buffer is \b always \c \\0 terminated. */
+-int hlp__strnalloc(int len, char **dest, const char const *source)
++int hlp__strnalloc(int len, char **dest, const char * const source)
+ {
+         int status;

+@@ -1974,7 +1975,7 @@

+ /** -. */
+ int hlp__strmnalloc(int len, char **dest, 
+-                const char const *source, ...)
++                const char * source, ...)
+ {
+         int status;
+         va_list vl;
+Index: fsvs/src/log.c
+===================================================================
+--- src/log.c        (revision 2473)
++++ src/log.c        (revision 2474)
+@@ -1,5 +1,5 @@
+ /************************************************************************
+- * Copyright (C) 2007-2009 Philipp Marek.
++ * Copyright (C) 2007-2009,2015 Philipp Marek.
+  *
+  * This program is free software;  you can redistribute it and/or modify
+  * it under the terms of the GNU General Public License version 3 as
+@@ -404,7 +404,7 @@
+                 case 2:
+                         opt__set_int(OPT__LOG_MAXREV, 
+                                         PRIO_DEFAULT,
+-                                        abs(opt_target_revision-opt_target_revision2)+1);
++                                        labs(opt_target_revision-opt_target_revision2)+1);
+                         break;
+                 default:
+                         BUG(&quot;how many&quot;);
+Index: fsvs/src/helper.h
+===================================================================
+--- src/helper.h        (revision 2473)
++++ src/helper.h        (revision 2474)
+@@ -1,5 +1,5 @@
+ /************************************************************************
+- * Copyright (C) 2005-2009 Philipp Marek.
++ * Copyright (C) 2005-2009,2015 Philipp Marek.
+  *
+  * This program is free software;  you can redistribute it and/or modify
+  * it under the terms of the GNU General Public License version 3 as
+@@ -181,13 +181,13 @@
+  * and so I'd have to use casts everywhere, which wouldn't help the 
+  * type-safety anyway. */
+ /** Allocates a buffer in \a *dest, and copies \a source. */
+-int hlp__strnalloc(int len, char **dest, const char const *source);
++int hlp__strnalloc(int len, char **dest, const char * const source);
+ /** Like \c hlp__strnalloc, but concatenates strings until a \c NULL is 
+  * found. */
+ int hlp__strmnalloc(int len, char **dest, 
+-                const char const *source, ...) __attribute__((sentinel));
++                const char * source, ...) __attribute__((sentinel));
+ /** Own implementation of \c strdup(), possibly returning \c ENOMEM. */
+-inline static int hlp__strdup(char **dest, const char const *src)
++inline static int hlp__strdup(char **dest, const char * const src)
+ { return hlp__strnalloc(strlen(src), dest, src); }        
+ /** Error returning \c calloc(); uses \c (void**) \a output. */
+ int hlp__calloc(void *output, size_t nmemb, size_t count);
+Index: fsvs/CHANGES
+===================================================================
+--- CHANGES        (revision 2473)
++++ CHANGES        (revision 2474)
+@@ -1,5 +1,6 @@
+ Changes since 1.2.6
+ - Updates for GCC 5
++- Updates for Clang

+ Changes since 1.2.5
+ - Fix for segfault on deleted properties, eg. &quot;svn:owner&quot;.
</ins></span></pre></div>
<a id="trunkdportsdevelfsvsfilespatchconfigurediff"></a>
<div class="modfile"><h4>Modified: trunk/dports/devel/fsvs/files/patch-configure.diff (138997 => 138998)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/devel/fsvs/files/patch-configure.diff        2015-07-27 06:15:58 UTC (rev 138997)
+++ trunk/dports/devel/fsvs/files/patch-configure.diff        2015-07-27 06:51:24 UTC (rev 138998)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><del>---- configure.orig        2012-07-10 02:51:43.000000000 -0500
-+++ configure        2012-07-12 21:29:10.000000000 -0500
-@@ -4252,7 +4252,7 @@
</del><ins>+--- configure.orig        2015-07-25 09:35:10.000000000 -0500
++++ configure        2015-07-26 12:30:44.000000000 -0500
+@@ -4251,7 +4251,7 @@
</ins><span class="cx">  
</span><span class="cx">  
</span><span class="cx">  ##################################### Header files
</span><span class="lines">@@ -9,7 +9,7 @@
</span><span class="cx">  # The subversion headers do a #include &lt;apr_pools.h&gt;, so the APR libraries
</span><span class="cx">  # *have* to be directly specified.
</span><span class="cx">  # Furthermore there's apr-1/ as directory name, depending on apr version.
</span><del>-@@ -4334,7 +4334,7 @@
</del><ins>+@@ -4333,7 +4333,7 @@
</ins><span class="cx">  $as_echo &quot;$as_me: \&quot;CFLAGS=$CFLAGS\&quot;&quot; &gt;&amp;6;}
</span><span class="cx">  
</span><span class="cx">  ##################################### Linker
</span><span class="lines">@@ -18,12 +18,3 @@
</span><span class="cx">  
</span><span class="cx">  
</span><span class="cx">  # Check whether --with-aprlib was given.
</span><del>-@@ -4987,7 +4987,7 @@
- /* end confdefs.h.  */

-   #include &quot;src/preproc.h&quot;
--  int main(int argc, char *args)
-+  int main(int argc, char *args[])
-   {
-           if (_BITCOUNT( (S_IFMT &gt;&gt; MODE_T_SHIFT_BITS) + 1) == 1)
-           return 0;
</del></span></pre>
</div>
</div>

</body>
</html>