summaryrefslogtreecommitdiff
path: root/www/dansguardian
diff options
context:
space:
mode:
authorsborrill <sborrill@pkgsrc.org>2013-07-11 14:05:14 +0000
committersborrill <sborrill@pkgsrc.org>2013-07-11 14:05:14 +0000
commit76b62f8091057fae21ed6092934f2d3923ffbc7b (patch)
treeb09daf145664195a815fef2a6aee8f757755cd40 /www/dansguardian
parent458f54db3ce522748b82877751dabc79a40dc702 (diff)
downloadpkgsrc-76b62f8091057fae21ed6092934f2d3923ffbc7b.tar.gz
Fix build with 64-bit time_t
Diffstat (limited to 'www/dansguardian')
-rw-r--r--www/dansguardian/distinfo4
-rw-r--r--www/dansguardian/patches/patch-String.cpp33
-rw-r--r--www/dansguardian/patches/patch-String.hpp13
3 files changed, 49 insertions, 1 deletions
diff --git a/www/dansguardian/distinfo b/www/dansguardian/distinfo
index 5ae9799c531..00aaccb7942 100644
--- a/www/dansguardian/distinfo
+++ b/www/dansguardian/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.4 2011/11/25 22:24:39 joerg Exp $
+$NetBSD: distinfo,v 1.5 2013/07/11 14:05:14 sborrill Exp $
SHA1 (dansguardian-2.8.0.6.source.tar.gz) = 6d82eed13536a64a2f6711fa221756fa0bfe19f0
RMD160 (dansguardian-2.8.0.6.source.tar.gz) = cf3493b26b4fcd5b366a6fe472e3c6c9e3cfe6d3
@@ -10,6 +10,8 @@ SHA1 (patch-FatController.cpp) = 1e3eb5d866f5ec5edda9f3e6e8e7a2b107e99d04
SHA1 (patch-ListContainer.cpp) = e38034615e831c9dd45eb861f97a6c2cf381e631
SHA1 (patch-RegExp.cpp) = a1b56dedd627afaaf00aac8285874b508db348d4
SHA1 (patch-Socket.cpp) = f8c6f13266f33bb03ffac57ca4734708640b1c77
+SHA1 (patch-String.cpp) = 543ac3b2a04666cbe1560a9431e5d3040c80aeac
+SHA1 (patch-String.hpp) = beda3ffb28fa1dcd00f6383e9896b3fdbf7de1fa
SHA1 (patch-SysV.cpp) = bc173150d4663d90672298361589bfd8919d519b
SHA1 (patch-UDSocket.cpp) = d047b546a9bee74ff8dbccfe66bf75f2e61738a5
SHA1 (patch-aa) = c4af2622ee48dedb15f5a22874c1c1bff5ea51ef
diff --git a/www/dansguardian/patches/patch-String.cpp b/www/dansguardian/patches/patch-String.cpp
new file mode 100644
index 00000000000..410a9f2ced0
--- /dev/null
+++ b/www/dansguardian/patches/patch-String.cpp
@@ -0,0 +1,33 @@
+$NetBSD: patch-String.cpp,v 1.1 2013/07/11 14:05:14 sborrill Exp $
+
+Fix build with 64-bit time_t
+--- String.cpp.orig 2013-07-11 14:43:00.000000000 +0100
++++ String.cpp 2013-07-11 14:46:38.000000000 +0100
+@@ -102,6 +102,27 @@
+ }
+ #endif
+
++#ifdef __GCCVER3
++ String::String(const long long num) {
++ std::ostringstream buf;
++ buf << num << std::ends;
++ std::string s = buf.str();
++ char* bs = (char*)s.c_str();
++ int l = strlen(bs);
++ data = new char[l + 1];
++ memcpy(data, bs, l);
++ sl = l;
++ data[sl] = '\0';
++ }
++#else
++ String::String(const long long num) {
++ std::ostrstream buf;
++ buf << num << std::ends;
++ data = buf.str(); // with side effect: it calls buf.freeze()
++ sl = buf.pcount() - 1;
++ }
++#endif
++
+ String::String(const char* bs, int len) {
+ data = new char[len + 1];
+ memcpy(data, bs, len);
diff --git a/www/dansguardian/patches/patch-String.hpp b/www/dansguardian/patches/patch-String.hpp
new file mode 100644
index 00000000000..7130bbaff38
--- /dev/null
+++ b/www/dansguardian/patches/patch-String.hpp
@@ -0,0 +1,13 @@
+$NetBSD: patch-String.hpp,v 1.1 2013/07/11 14:05:14 sborrill Exp $
+
+Fix build with 64-bit time_t
+--- String.hpp.orig 2013-07-11 14:41:21.000000000 +0100
++++ String.hpp 2013-07-11 14:41:38.000000000 +0100
+@@ -38,6 +38,7 @@
+ String(const String& s);
+ String(const int num);
+ String(const long num);
++ String(const long long num);
+ String(const char bs[], int len);
+ String(const char bs[], int start, int len);
+ friend ostream & operator << (ostream & out, const String& s);