<pre style='margin:0'>
Ryan Schmidt (ryandesign) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/5f268b68181aafb9a0186c0be98715b4627da0b4">https://github.com/macports/macports-ports/commit/5f268b68181aafb9a0186c0be98715b4627da0b4</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 5f268b68181aafb9a0186c0be98715b4627da0b4
</span>Author: Ryan Schmidt <ryandesign@macports.org>
AuthorDate: Fri Jul 16 03:00:08 2021 -0500

<span style='display:block; white-space:pre;color:#404040;'>    memcachedb: Fix implicit declaration of functions
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Add an upstream patch to fix implicit declaration of functions and
</span><span style='display:block; white-space:pre;color:#404040;'>    other issues. Indicate BSD license. Project has moved to GitHub.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/63244
</span><span style='display:block; white-space:pre;color:#404040;'>    See: https://trac.macports.org/ticket/53467
</span>---
 sysutils/memcachedb/Portfile           |  20 ++---
 sysutils/memcachedb/files/64-bit.patch | 147 +++++++++++++++++++++++++++++++++
 2 files changed, 157 insertions(+), 10 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/memcachedb/Portfile b/sysutils/memcachedb/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 97d0b8ca355..bbfc9e16d60 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/memcachedb/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/memcachedb/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,13 +1,18 @@
</span> # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
 
 PortSystem                  1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup                   github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup                stvchu memcachedb 1.2.0 v
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision                    3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums                   rmd160  023e26d09b4ceae751bd7717c769a3b5c1e214d6 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            sha256  6eba6e5adda1bc23db6bbcf4930537ccdc33fa00402ed91157faadeb86996e0f \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            size    149236
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-name                        memcachedb
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-version                     1.2.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision                    2
</span> categories                  sysutils
 platforms                   darwin
 maintainers                 gmail.com:cofyc.jackson
<span style='display:block; white-space:pre;background:#e0ffe0;'>+license                     BSD
</span> 
 description                 A distributed key-value storage system designed \
                             for persistent.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -23,19 +28,14 @@ long_description            MemcacheDB is a distributed key-value storage \
</span>                             of features including transaction and replication \
                             are supported.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-homepage                    http://memcachedb.org/
</span> master_sites                googlecode
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums                   sha1    fe817ed3a340a65dd6998f35d87a0d9555830d04 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                            rmd160  023e26d09b4ceae751bd7717c769a3b5c1e214d6
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> configure.args              --with-libevent=${prefix}
 
 depends_lib                 port:libevent \
                             port:db47
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles                  64-bit.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> configure.cflags-append     -I${prefix}/include/db47
 configure.ldflags-append    -L${prefix}/lib/db47
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.type              regex
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.regex             MemcacheDB (\\d+(?:\\.\\d+)*) is released
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/memcachedb/files/64-bit.patch b/sysutils/memcachedb/files/64-bit.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..ff378f0bfb1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/memcachedb/files/64-bit.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,147 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fix some warnings on 64-bit compiler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/stvchu/memcachedb/commit/9f601db6d4965bf9c254cb2bfaa1639ce6375ec9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- item.c.orig    2008-10-14 00:40:58.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ item.c 2021-07-16 02:57:13.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -188,18 +188,18 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     ntotal = ITEM_ntotal(it);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (ntotal > settings.item_buf_size){
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (settings.verbose > 1) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            fprintf(stderr, "ntotal: %d, use free() directly.\n", ntotal);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            fprintf(stderr, "ntotal: %"PRIuS", use free() directly.\n", ntotal);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         free(it);   
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }else{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (0 != item_add_to_freelist(it)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             if (settings.verbose > 1) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                fprintf(stderr, "ntotal: %d, add a item buffer to freelist fail, use free() directly.\n", ntotal);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                fprintf(stderr, "ntotal: %"PRIuS", add a item buffer to freelist fail, use free() directly.\n", ntotal);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             free(it);   
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }else{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             if (settings.verbose > 1) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                fprintf(stderr, "ntotal: %d, add a item buffer to freelist.\n", ntotal);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                fprintf(stderr, "ntotal: %"PRIuS", add a item buffer to freelist.\n", ntotal);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- memcachedb.c.orig      2008-10-14 00:40:58.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ memcachedb.c   2021-07-16 02:57:13.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -837,26 +837,26 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* !WIN32 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         STATS_LOCK();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT pid %u\r\n", pid);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT uptime %ld\r\n", now - stats.started);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT time %ld\r\n", now);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT pid %ld\r\n", (long)pid);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT uptime %"PRIuS"\r\n", now - stats.started);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT time %"PRIuS"\r\n", now);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         pos += sprintf(pos, "STAT version " VERSION "\r\n");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT pointer_size %d\r\n", 8 * sizeof(void *));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT pointer_size %"PRIuS"\r\n", 8 * sizeof(void *));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifndef WIN32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         pos += sprintf(pos, "STAT rusage_user %ld.%06ld\r\n", usage.ru_utime.tv_sec, usage.ru_utime.tv_usec);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         pos += sprintf(pos, "STAT rusage_system %ld.%06ld\r\n", usage.ru_stime.tv_sec, usage.ru_stime.tv_usec);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* !WIN32 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT ibuffer_size %u\r\n", settings.item_buf_size);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT curr_connections %u\r\n", stats.curr_conns - 1); /* ignore listening conn */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT total_connections %u\r\n", stats.total_conns);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT connection_structures %u\r\n", stats.conn_structs);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT cmd_get %llu\r\n", stats.get_cmds);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT cmd_set %llu\r\n", stats.set_cmds);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT get_hits %llu\r\n", stats.get_hits);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT get_misses %llu\r\n", stats.get_misses);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT bytes_read %llu\r\n", stats.bytes_read);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT bytes_written %llu\r\n", stats.bytes_written);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pos += sprintf(pos, "STAT threads %u\r\n", settings.num_threads);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT item_buf_size %"PRIuS"\r\n", settings.item_buf_size);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT curr_connections %"PRIu32"\r\n", stats.curr_conns - 1); /* ignore listening conn */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT total_connections %"PRIu32"\r\n", stats.total_conns);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT connection_structures %"PRIu32"\r\n", stats.conn_structs);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT cmd_get %"PRIu64"\r\n", stats.get_cmds);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT cmd_set %"PRIu64"\r\n", stats.set_cmds);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT get_hits %"PRIu64"\r\n", stats.get_hits);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT get_misses %"PRIu64"\r\n", stats.get_misses);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT bytes_read %"PRIu64"\r\n", stats.bytes_read);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT bytes_written %"PRIu64"\r\n", stats.bytes_written);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        pos += sprintf(pos, "STAT threads %d\r\n", settings.num_threads);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         pos += sprintf(pos, "END");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         STATS_UNLOCK();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         out_string(c, temp);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1196,7 +1196,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (delta >= value) value = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         else value -= delta;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    vlen = sprintf(buf, "%llu", value);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    vlen = sprintf(buf, "%"PRId64, value);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     /* flags was already lost - so recover them from ITEM_suffix(it) */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     flags = (int) strtol(ITEM_suffix(old_it), (char **) NULL, 10);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1412,8 +1412,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         process_stat(c, tokens, ntokens);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } else if (ntokens >= 2 && ntokens <= 3 && (strcmp(tokens[COMMAND_TOKEN].value, "flush_all") == 0)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        out_string(c, "OK");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        out_string(c, "ERROR");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } else if (ntokens == 2 && (strcmp(tokens[COMMAND_TOKEN].value, "version") == 0)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- memcachedb.h.orig      2008-10-14 00:40:58.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ memcachedb.h   2021-07-16 02:57:13.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -81,10 +81,29 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # include <unistd.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* 64-bit Portable printf */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* printf macros for size_t, in the style of inttypes.h */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef _LP64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define __PRIS_PREFIX "z"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define __PRIS_PREFIX
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Use these macros after a % in a printf format string
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   to get correct 32/64 bit behavior, like this:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   size_t size = records.size();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   printf("%"PRIuS"\n", size); */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define PRIdS __PRIS_PREFIX "d"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define PRIxS __PRIS_PREFIX "x"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define PRIuS __PRIS_PREFIX "u"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define PRIXS __PRIS_PREFIX "X"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define PRIoS __PRIS_PREFIX "o"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct stats {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    unsigned int  curr_conns;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    unsigned int  total_conns;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    unsigned int  conn_structs;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    uint32_t      curr_conns;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    uint32_t      total_conns;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    uint32_t      conn_structs;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     uint64_t      get_cmds;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     uint64_t      set_cmds;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     uint64_t      get_hits;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- stats.c.orig   2008-10-14 00:40:58.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ stats.c        2021-07-16 02:57:13.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -18,6 +18,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "memcachedb.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <db.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void stats_bdb(char *temp){
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- thread.c.orig  2008-10-14 00:40:58.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ thread.c       2021-07-16 02:57:13.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -329,7 +329,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     pthread_cond_signal(&init_cond);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     pthread_mutex_unlock(&init_lock);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return (void*) event_base_loop(me->base, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    event_base_loop(me->base, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return NULL; 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span></pre><pre style='margin:0'>

</pre>