summaryrefslogtreecommitdiff
path: root/net-libs/wvstreams
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-08-25 10:45:55 +0100
committerV3n3RiX <venerix@redcorelinux.org>2020-08-25 10:45:55 +0100
commit3cf7c3ef441822c889356fd1812ebf2944a59851 (patch)
treec513fe68548b40365c1c2ebfe35c58ad431cdd77 /net-libs/wvstreams
parent05b8b0e0af1d72e51a3ee61522941bf7605cd01c (diff)
gentoo resync : 25.08.2020
Diffstat (limited to 'net-libs/wvstreams')
-rw-r--r--net-libs/wvstreams/Manifest4
-rw-r--r--net-libs/wvstreams/files/wvstreams-4.6.1_p14-llvm.patch412
-rw-r--r--net-libs/wvstreams/files/wvstreams-4.6.1_p14-xplc-module.patch25
-rw-r--r--net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild2
4 files changed, 442 insertions, 1 deletions
diff --git a/net-libs/wvstreams/Manifest b/net-libs/wvstreams/Manifest
index 16ef13db6e38..4a5c2999076e 100644
--- a/net-libs/wvstreams/Manifest
+++ b/net-libs/wvstreams/Manifest
@@ -3,10 +3,12 @@ AUX wvstreams-4.6.1-autoconf.patch 701 BLAKE2B 1d76fab4056d78be9491439166c6c2563
AUX wvstreams-4.6.1-gcc47.patch 1308 BLAKE2B 4c49bb694eb50452f3d158ef9e8c80978614c94d9e482e55434ab3aa9ec62468b7fa87c737d2812f56c8acd6a221234f80548ccae65f20e46d7e7ba2b1ad3748 SHA512 cfac44a0c80d58e67d4a3be17cca3008f6c7bba02b434701fcf07a1209220edf93b4d0dc1f478456e07e28f9e39ab9d19a52a07ad1f9ecd09028ef5446cebfa5
AUX wvstreams-4.6.1-parallel-make.patch 1882 BLAKE2B 03c40c90d63c72065ad29dcb7436a37e5d5037595c285671a5c7c1b76a74723e63ac7eba024326e7452b4c9af507b2925609faed0496c384c04980044dea28b6 SHA512 d7fffbd7940495f2e34d3317b8f0066f6caa98e213df00bf31e3f42fa6821c9fd017e3052f7ff98303a8d8bb61d9b24a14b87ddd18199038e083e42cf253c17e
AUX wvstreams-4.6.1_p14-libressl.patch 3457 BLAKE2B f5c1a3ee44007fc3ca7c08be91ed9fbee84939bb09a02d699a2da7aa60238762a0d38fd8be5e7bb3aab891fa8b99f4c0de2a206e6db58fdc12c5adeaebf18700 SHA512 5561021c6ebeb9fc8255eb42be799dc23d32e368cb2662cbb78e5f5258392983bd9b5174954f1262062be1fe5638941255bd612760d1373d5682c139dcaf3ee4
+AUX wvstreams-4.6.1_p14-llvm.patch 11598 BLAKE2B a7f4019da421702ecfedc461079ad39a4b3776b3fb570ae50ddff64c0d2f9d4bd3752050daf1143d7bf86e62c33cb823f4a4f5b76c618f3b51908ff706dd1b9a SHA512 db0856afd7c0bcf976ef697c300817efbb2d4cf22f4c0832e87011025c9b43f7aab64ee335de2acee2dda7a59412a138e44ca89bb8b6df010b871bde427d16e3
+AUX wvstreams-4.6.1_p14-xplc-module.patch 806 BLAKE2B 066262f3e42617dbae0ff982af21933b1567f23119f9f83152afb1f8da8ea79fdc09f6b01a01ecb03626c7007b70d52f921f1f637089a9813d061dcc9de3dc9c SHA512 e1b74f6481cc55b1f6750d08c2f4ae4d11575e99cfd94b5bcc658f54ac4756e885dac98a82eb7f2b6e02d33f1b4ac75b91087640e3195deff8887d752ee2e0c0
AUX wvstreams-99999-openssl-ldflags.patch 349 BLAKE2B d8df661e5219b7890e338ed21a570194a93d64142ce6e96f81c141cdb4ae33c6e785fe863278347e2b7903df13a5390305a18568fca9880c2ac45534458671ec SHA512 a8b90e1bbda676ba4303c7a31fc896955c3a0aea0ba4d8a69514210a4baa1cc4228de43b648788cfca2e6b607040daaa520568c7d15b258d04b803bba6375637
AUX wvstreams-99999-soname.patch 273 BLAKE2B ef364e25848b4727a0e8b75f155ac2807f1d8cc976ea72af3191ca25a0dbb5d4345030812fad7af839e1c126db185b6ce48fb50d2211e810954f2f714717854e SHA512 c8388a5ac1e0bbbf1574c97004ae7381a466a7182614cc7345cc3f9639771e6696ce32ce03b98604a05618be03c30cb95079085e7c1c935c42dcfe5e9453f886
DIST wvstreams_4.6.1-14.debian.tar.xz 21124 BLAKE2B 2af6ec180c3130dd7def733e5ea569fd0a81cd2c2411daca25e6042dcbe78792bafc4b13f1c1fffddb6cd66273f11c62f54b415c975cbea0af052b18ff0955d1 SHA512 93ea7c4fbab542bd552d6e91ae0c49a27ad8aded177ae6474943acb08d204ab31eac49b3f416b4d90a38ea697f3641c09651a64f9c40d12543d454aadf2ad9e4
DIST wvstreams_4.6.1.orig.tar.gz 1118456 BLAKE2B 62243d9adc6ff5d01b7dfeb2ce24e8e530914e6ac4540e542dc3cee31e00d32211ad1c6085d7f5bd6e5fd85ff66e8c93afa37cec81f976590ba150f039dc8580 SHA512 59d64e527d86394b768b35254bf95ea59c412c0e092393ea3c84ec3202949150439bb6093bd7350b64ad4767acdb8feb38806c03de4e5cf238ed893f41db4a4a
-EBUILD wvstreams-4.6.1_p14-r1.ebuild 2188 BLAKE2B 11f2844a2643c0baabfe21bf735730fb3e659e5371fbf723ec3054dcbc79df471242c7135ecf579eb9fabd0ee64474f7ab464c236fab16e37dbc7ac248254d8b SHA512 e2fbfbbcdcd637cbb02f524cf5cd064f5d606fc259c9fb58c006d5a1eeec531bbf0db17cb2c555a4a937a977b6fe17d51c5100a6915d532c2108429ca099a739
+EBUILD wvstreams-4.6.1_p14-r1.ebuild 2279 BLAKE2B e0eaac5509b28f0fe5091ff87bae959eb5e23e312e22ba67fd938e3a9f30eace1fc3bc95bc162a8187f61814c9b3f3c2a78f5c5f60363b0dd83e724aee581c54 SHA512 714dff120d673caa3f93a6db3ea3946c5c15b29ee6f087a397bf055b4898481fb71429ee8b727259d1fab485756a10e7ac2b1d417ee6802d912aa5cc1156e100
EBUILD wvstreams-99999.ebuild 1994 BLAKE2B e18ee55f383342113ea3e7015a209bb1ba13baa8dd300f9393c463c379a5d656a595ba3a3efc1fc19fdbc05b18adc03b95c9002c06f8a29b69bee2eb3de8d15f SHA512 a6346862fd514dc5d320c233c85f1ae90111d285ad6e2593546c69f91aeb65b8d753ccbdf8b663e9787a98a81c0e560ef2709cfb5a7c91ea156c96475e704445
MISC metadata.xml 567 BLAKE2B 75e97c66b9091dd12ae8cabfc3f1f80b772e7cc835d5fe6fc4399dc837ca0576d567af45186bfdaeaefb862938f82d0b75c339ec73fcb0a5f6abe2b81ce8ed83 SHA512 11ce01ce8844fa3c43e8175c36a0f76266ce43acc9d6ed86156bfddc0b8e5f5ede6ecac9518e329c48fa46a448e57021496e46f9282d6d0cc81133ac9488c437
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1_p14-llvm.patch b/net-libs/wvstreams/files/wvstreams-4.6.1_p14-llvm.patch
new file mode 100644
index 000000000000..156d198a440c
--- /dev/null
+++ b/net-libs/wvstreams/files/wvstreams-4.6.1_p14-llvm.patch
@@ -0,0 +1,412 @@
+--- a/include/uniconf.h
++++ b/include/uniconf.h
+@@ -434,7 +434,7 @@
+ */
+ class UniConf::Iter : public UniConf::IterBase
+ {
+- UniConfGen::Iter *it;
++ IUniConfGen::Iter *it;
+
+ public:
+ /** Creates an iterator over the direct children of a branch. */
+@@ -465,7 +465,7 @@
+ */
+ class UniConf::RecursiveIter : public UniConf::IterBase
+ {
+- UniConfGen::Iter *it;
++ IUniConfGen::Iter *it;
+
+ public:
+ /** Creates a recursive iterator over a branch. */
+--- a/include/uniconfgen.h
++++ b/include/uniconfgen.h
+@@ -153,8 +153,50 @@
+ */
+ virtual bool haschildren(const UniConfKey &key) = 0;
+
+- /** The abstract iterator type (see below) */
+- class Iter;
++ /**
++ * An abstract iterator over keys and values in a generator.
++ *
++ * Unlike other WvStreams iterators, this one declares virtual methods so
++ * that UniConfGen implementations can supply the right behaviour
++ * through a common interface that does not depend on static typing.
++ *
++ * The precise traversal sequence is defined by the iterator implementation.
++ *
++ * The iterator need not support concurrent modifications of the underlying
++ * data structures.
++ *
++ * TODO: Consider changing this rule depending on observed usage patterns.
++ */
++ class Iter
++ {
++ public:
++ /** Destroys the iterator. */
++ virtual ~Iter() { }
++
++ /**
++ * Rewinds the iterator.
++ * Must be called prior to the first invocation of next().
++ */
++ virtual void rewind() = 0;
++
++ /**
++ * Seeks to the next element in the sequence.
++ * Returns true if that element exists.
++ * Must be called prior to the first invocation of key().
++ */
++ virtual bool next() = 0;
++
++ /** Returns the current key. */
++ virtual UniConfKey key() const = 0;
++
++ /**
++ * Returns the value of the current key. You could just do a get(),
++ * but maybe your generator has a more efficient way.
++ */
++ virtual WvString value() const = 0;
++ };
++
++
+
+ /** A concrete null iterator type (see below) */
+ class NullIter;
+@@ -214,7 +256,7 @@
+ public:
+ /** Destroys the UniConfGen and may discard uncommitted data. */
+ virtual ~UniConfGen();
+-
++
+ /***** Notification API *****/
+
+ /**
+@@ -300,70 +342,28 @@
+ protected:
+ // A naive implementation of setv() that uses only set().
+ void setv_naive(const UniConfPairList &pairs);
+-};
+-
+-DeclareWvList(IUniConfGen);
+-DeclareWvList2(UniConfGenList, IUniConfGen);
+-
+
+-/**
+- * An abstract iterator over keys and values in a generator.
+- *
+- * Unlike other WvStreams iterators, this one declares virtual methods so
+- * that UniConfGen implementations can supply the right behaviour
+- * through a common interface that does not depend on static typing.
+- *
+- * The precise traversal sequence is defined by the iterator implementation.
+- *
+- * The iterator need not support concurrent modifications of the underlying
+- * data structures.
+- *
+- * TODO: Consider changing this rule depending on observed usage patterns.
+- */
+-class UniConfGen::Iter
+-{
+ public:
+- /** Destroys the iterator. */
+- virtual ~Iter() { }
+-
+- /**
+- * Rewinds the iterator.
+- * Must be called prior to the first invocation of next().
+- */
+- virtual void rewind() = 0;
+-
+ /**
+- * Seeks to the next element in the sequence.
+- * Returns true if that element exists.
+- * Must be called prior to the first invocation of key().
+- */
+- virtual bool next() = 0;
+-
+- /** Returns the current key. */
+- virtual UniConfKey key() const = 0;
+-
+- /**
+- * Returns the value of the current key. You could just do a get(),
+- * but maybe your generator has a more efficient way.
++ * An iterator that's always empty.
++ * This is handy if you don't have anything good to iterate over.
+ */
+- virtual WvString value() const = 0;
++ class NullIter : public UniConfGen::Iter
++ {
++ public:
++ /***** Overridden members *****/
++
++ virtual void rewind() { }
++ virtual bool next() { return false; }
++ virtual UniConfKey key() const { return UniConfKey::EMPTY; }
++ virtual WvString value() const { return WvString(); }
++ };
+ };
+
++DeclareWvList(IUniConfGen);
++DeclareWvList2(UniConfGenList, IUniConfGen);
++
+
+-/**
+- * An iterator that's always empty.
+- * This is handy if you don't have anything good to iterate over.
+- */
+-class UniConfGen::NullIter : public UniConfGen::Iter
+-{
+-public:
+- /***** Overridden members *****/
+-
+- virtual void rewind() { }
+- virtual bool next() { return false; }
+- virtual UniConfKey key() const { return UniConfKey::EMPTY; }
+- virtual WvString value() const { return WvString(); }
+-};
+
+
+ #endif // __UNICONFGEN_H
+--- a/include/unifastregetgen.h
++++ b/include/unifastregetgen.h
+@@ -42,7 +42,6 @@
+ virtual bool haschildren(const UniConfKey &key);
+
+ private:
+- IUniConfGen *inner;
+ UniConfValueTree *tree;
+
+ protected:
+--- a/include/unifiltergen.h
++++ b/include/unifiltergen.h
+@@ -68,8 +68,8 @@
+ virtual bool exists(const UniConfKey &key);
+ virtual bool haschildren(const UniConfKey &key);
+ virtual bool isok();
+- virtual Iter *iterator(const UniConfKey &key);
+- virtual Iter *recursiveiterator(const UniConfKey &key);
++ virtual IUniConfGen::Iter *iterator(const UniConfKey &key);
++ virtual IUniConfGen::Iter *recursiveiterator(const UniConfKey &key);
+
+ protected:
+ /**
+--- a/include/unihashtree.h
++++ b/include/unihashtree.h
+@@ -62,10 +62,11 @@
+ UniHashTreeBase *xparent; /*!< the parent of this subtree */
+ Container *xchildren; /*!< the hash table of children */
+
+-private:
+ void _setparent(UniHashTreeBase *parent);
+ UniHashTreeBase *_root() const;
+
++private:
++
+ /** Called by a child to link itself to this node. */
+ void link(UniHashTreeBase *node);
+
+--- a/include/unimountgen.h
++++ b/include/unimountgen.h
+@@ -103,8 +103,8 @@
+ virtual void commit();
+ virtual bool refresh();
+ virtual void flush_buffers() { }
+- virtual Iter *iterator(const UniConfKey &key);
+- virtual Iter *recursiveiterator(const UniConfKey &key);
++ virtual IUniConfGen::Iter *iterator(const UniConfKey &key);
++ virtual IUniConfGen::Iter *recursiveiterator(const UniConfKey &key);
+
+ private:
+ /** Find the active generator for a given key. */
+--- a/include/wvmoniker.h
++++ b/include/wvmoniker.h
+@@ -72,7 +72,7 @@
+ // from IObject, which is very important. The 'for' avoids a
+ // warning.
+ for(IObject *silly = (T *)NULL; silly; )
+- ;
++ silly = (T *)NULL;
+ };
+ };
+
+--- a/include/wvpushdir.h
++++ b/include/wvpushdir.h
+@@ -27,12 +27,11 @@
+
+ WvPushDir(WvStringParm new_dir)
+ {
+-#ifdef MACOS
+- old_dir = static_cast<char *>(calloc(PATH_MAX, sizeof(char *)));
+- getcwd(old_dir, PATH_MAX);;
+-#else
+- old_dir = get_current_dir_name();
+-#endif
++ old_dir = new char[2048];
++ if (!getcwd(old_dir, 2048)) {
++ errnum = errno;
++ return;
++ }
+ dir_handle = opendir(old_dir);
+ if (chdir(new_dir) == -1)
+ errnum = errno;
+--- a/include/wvscatterhash.h
++++ b/include/wvscatterhash.h
+@@ -183,7 +183,7 @@
+ Iter(WvScatterHash &_table) : IterBase(_table) { }
+ Iter(const Iter &other) : IterBase(other) { }
+
+- unsigned char *getstatus() { return &xstatus[index-1]; }
++ unsigned char *getstatus() { return &this->xstatus[index-1]; }
+
+ T *ptr() const
+ { return (T *)(get()); }
+--- a/include/wvserialize.h
++++ b/include/wvserialize.h
+@@ -60,6 +60,7 @@
+ return htons(i);
+ }
+
++#ifndef ntohll
+ /**
+ * Helper functions to convert 64 bit ints to and from host byteorder
+ */
+@@ -80,6 +81,7 @@
+ return (((uint64_t)htonl(n)) << 32) | htonl(n >> 32);
+ #endif
+ }
++#endif
+
+ /**
+ * A helper function that serializes different types of integers. Since
+--- a/include/wvtask.h
++++ b/include/wvtask.h
+@@ -24,6 +24,7 @@
+ #include "wvstreamsdebugger.h"
+ #include "wvstringlist.h"
+ #include "setjmp.h"
++#define _XOPEN_SOURCE
+ #include <ucontext.h>
+
+ #define WVTASK_MAGIC 0x123678
+--- a/uniconf/unicachegen.cc
++++ b/uniconf/unicachegen.cc
+@@ -69,7 +69,7 @@
+
+ void UniCacheGen::loadtree(const UniConfKey &key)
+ {
+- UniConfGen::Iter *i = inner->recursiveiterator(key);
++ IUniConfGen::Iter *i = inner->recursiveiterator(key);
+ if (!i) return;
+
+ //assert(false);
+--- a/uniconf/uniconfgen.cc
++++ b/uniconf/uniconfgen.cc
+@@ -104,7 +104,7 @@
+
+ hold_delta();
+
+- Iter *it = iterator(key);
++ IUniConfGen::Iter *it = iterator(key);
+ if (it)
+ {
+ it->rewind();
+@@ -257,7 +257,7 @@
+ };
+
+
+-UniConfGen::Iter *UniConfGen::recursiveiterator(const UniConfKey &key)
++IUniConfGen::Iter *UniConfGen::recursiveiterator(const UniConfKey &key)
+ {
+ return new _UniConfGenRecursiveIter(this, key);
+ }
+--- a/uniconf/unifiltergen.cc
++++ b/uniconf/unifiltergen.cc
+@@ -134,7 +134,7 @@
+ }
+
+
+-UniConfGen::Iter *UniFilterGen::iterator(const UniConfKey &key)
++IUniConfGen::Iter *UniFilterGen::iterator(const UniConfKey &key)
+ {
+ UniConfKey mapped_key;
+ if (xinner && keymap(key, mapped_key))
+@@ -144,7 +144,7 @@
+ }
+
+
+-UniConfGen::Iter *UniFilterGen::recursiveiterator(const UniConfKey &key)
++IUniConfGen::Iter *UniFilterGen::recursiveiterator(const UniConfKey &key)
+ {
+ UniConfKey mapped_key;
+ if (xinner && keymap(key, mapped_key))
+--- a/uniconf/unifstreegen.cc
++++ b/uniconf/unifstreegen.cc
+@@ -62,7 +62,7 @@
+ log("Key '%s' not found.\n", key);
+ }
+
+- virtual Iter *recursiveiterator(const UniConfKey &key)
++ virtual IUniConfGen::Iter *recursiveiterator(const UniConfKey &key)
+ {
+ // don't try to optimize this like UniMountGen does, because we're
+ // going to mount things *as* we iterate through them, not sooner.
+--- a/uniconf/unimountgen.cc
++++ b/uniconf/unimountgen.cc
+@@ -305,7 +305,7 @@
+ return strcmp(*l, *r);
+ }
+
+-UniMountGen::Iter *UniMountGen::iterator(const UniConfKey &key)
++IUniConfGen::Iter *UniMountGen::iterator(const UniConfKey &key)
+ {
+ UniGenMount *found = findmount(key);
+ if (found)
+@@ -345,7 +345,7 @@
+ // FIXME: this function will be rather slow if you try to iterate over multiple
+ // generators and the latency level is high (as is the case with e.g.: the tcp generator).
+ // the fast path will only kick in if you iterate over a single generator.
+-UniMountGen::Iter *UniMountGen::recursiveiterator(const UniConfKey &key)
++IUniConfGen::Iter *UniMountGen::recursiveiterator(const UniConfKey &key)
+ {
+ UniGenMount *found = findmountunder(key);
+ if (found)
+--- a/utils/t/wvpushdir.t.cc
++++ b/utils/t/wvpushdir.t.cc
+@@ -15,14 +15,9 @@
+
+ WVPASS(newpushdir.isok());
+
+-#ifdef MACOS
+- char *pwd = static_cast<char *>(calloc(PATH_MAX,sizeof(char *)));
+- getcwd(pwd,PATH_MAX);
+-#else
+- char *pwd = get_current_dir_name();
+-#endif
++ char pwd[1024] = "";
++ getcwd(pwd, sizeof(pwd));
+ WVPASSEQ(pwd, dir);
+- free(pwd);
+
+ unlink(dir);
+ }
+--- a/utils/wvpam.cc
++++ b/utils/wvpam.cc
+@@ -5,6 +5,7 @@
+ * A WvStream that authenticates with PAM before allowing any reading or
+ * writing. See wvpam.h.
+ */
++#include <pwd.h>
+ #include "wvlog.h"
+ #include "wvpam.h"
+ #include "wvautoconf.h"
+--- a/xplc/modulemgr.cc
++++ b/xplc/modulemgr.cc
+@@ -23,6 +23,7 @@
+ #include <assert.h>
+ #include "modulemgr.h"
+ #include <xplc/IModuleLoader.h>
++#include <unistd.h>
+
+ #include "config.h"
+
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1_p14-xplc-module.patch b/net-libs/wvstreams/files/wvstreams-4.6.1_p14-xplc-module.patch
new file mode 100644
index 000000000000..a7d931c3d814
--- /dev/null
+++ b/net-libs/wvstreams/files/wvstreams-4.6.1_p14-xplc-module.patch
@@ -0,0 +1,25 @@
+--- a/include/xplc/module.h
++++ b/include/xplc/module.h
+@@ -100,19 +100,19 @@
+ * XPLC module magic number. This is to ensure that it is in fact a
+ * valid XPLC module that has been loaded.
+ */
+- unsigned long magic;
++ signed long magic;
+ /**
+ * The XPLC module ABI version that this module conforms to. This
+ * should always be the first member of the XPLC_ModuleInfo
+ * structure, as the meaning of the following members depend on it.
+ */
+- unsigned int version_major;
++ signed int version_major;
+ /**
+ * The XPLC module ABI sub-version that this module conforms
+ * to. This is used for optional and backward-compatible changes in
+ * the module ABI.
+ */
+- unsigned int version_minor;
++ signed int version_minor;
+
+ /**
+ * Description string for the module.
diff --git a/net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild b/net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild
index 69bea4fae032..06f36322819b 100644
--- a/net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild
+++ b/net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild
@@ -43,6 +43,8 @@ PATCHES=(
"${FILESDIR}"/${PN}-4.6.1-gcc47.patch
"${FILESDIR}"/${PN}-4.6.1-parallel-make.patch
"${FILESDIR}"/${PN}-4.6.1-_DEFAULT_SOURCE.patch
+ "${FILESDIR}"/${PN}-4.6.1_p14-xplc-module.patch
+ "${FILESDIR}"/${PN}-4.6.1_p14-llvm.patch
)
S=${WORKDIR}/${P/_p*}