[arch-commits] Commit in varnish/trunk (2 files)

Dave Reisner dreisner at archlinux.org
Fri Nov 24 23:31:35 UTC 2017


    Date: Friday, November 24, 2017 @ 23:31:34
  Author: dreisner
Revision: 310834

upgpkg: varnish 5.2.1-1

- switch to github source
- backport fix for building with python3

Added:
  varnish/trunk/hack-up-vcstools-to-work-with-python-2-and-3.patch
Modified:
  varnish/trunk/PKGBUILD

----------------------------------------------------+
 PKGBUILD                                           |   28 +++++---
 hack-up-vcstools-to-work-with-python-2-and-3.patch |   66 +++++++++++++++++++
 2 files changed, 84 insertions(+), 10 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2017-11-24 22:34:20 UTC (rev 310833)
+++ PKGBUILD	2017-11-24 23:31:34 UTC (rev 310834)
@@ -5,7 +5,7 @@
 # Contributor: Roberto Alsina <ralsina at kde.org>
 
 pkgname=varnish
-pkgver=5.1.3
+pkgver=5.2.1
 pkgrel=1
 pkgdesc="High-performance HTTP accelerator"
 arch=('x86_64')
@@ -12,25 +12,33 @@
 url="https://www.varnish-cache.org/"
 license=('BSD')
 depends=('gcc' 'libedit' 'pcre')
-makedepends=('python-docutils')
+makedepends=('python-docutils' 'python')
 optdepends=('python: needed for vmod development')
 backup=('etc/varnish/default.vcl')
+options=('!buildflags')
 install=$pkgname.install
-source=("https://repo.varnish-cache.org/source/$pkgname-$pkgver.tar.gz"
+source=("https://github.com/varnishcache/varnish-cache/archive/varnish-$pkgver.tar.gz"
+        hack-up-vcstools-to-work-with-python-2-and-3.patch
         varnish-vcl-reload
         varnish.service
         varnish.sysusers)
-sha256sums=('7439c93ca581340f3722b8c790160f46dc6c5328188e4c0bc233c42f3f04a54e'
+sha256sums=('f44decf0f382a2ac76aaaa2478167a6b41909a3f6179eeefce402d19e694aba0'
+            '97a00962474a5bf97fd71e4c0e792861157aa8ac872fc9c5636b763f11445e8c'
             '0369e3e735e4c6150f08677df8b7cdae1a36ea75fd0e03734abe814a94312f80'
             '069904391237641eb770e8bc3989d18a3b3a9cb2374b9cd525235bfbb49b6b1d'
             'b58dd6b00eb81c75e4bb30421b85b2be88c049d5b72a8ee553ba690a5414972b')
 
+prepare() {
+  cd "varnish-cache-varnish-$pkgver"
+
+  patch -Np1 <"$srcdir/hack-up-vcstools-to-work-with-python-2-and-3.patch"
+
+  ./autogen.sh
+}
+
 build() {
-  cd "$pkgname-$pkgver"
+  cd "varnish-cache-varnish-$pkgver"
 
-  # https://github.com/varnishcache/varnish-cache/issues/1875
-  [[ $CARCH == i686 ]] && CFLAGS+=' -fexcess-precision=standard'
-
   ./configure \
     --prefix=/usr \
     --sysconfdir=/etc \
@@ -41,7 +49,7 @@
 }
 
 check() {
-  cd "$pkgname-$pkgver"
+  cd "varnish-cache-varnish-$pkgver"
 
   # Sometimes fails on i686 in address remapping test. Not sure if flaky
   # test or otherwise...
@@ -49,7 +57,7 @@
 }
 
 package() {
-  cd "$pkgname-$pkgver"
+  cd "varnish-cache-varnish-$pkgver"
 
   make DESTDIR="$pkgdir" install
 

Added: hack-up-vcstools-to-work-with-python-2-and-3.patch
===================================================================
--- hack-up-vcstools-to-work-with-python-2-and-3.patch	                        (rev 0)
+++ hack-up-vcstools-to-work-with-python-2-and-3.patch	2017-11-24 23:31:34 UTC (rev 310834)
@@ -0,0 +1,66 @@
+From 17c92e43fda114bf5341e51d752e882238b8fe8c Mon Sep 17 00:00:00 2001
+From: Nils Goroll <nils.goroll at uplex.de>
+Date: Thu, 5 Oct 2017 13:39:23 +0200
+Subject: [PATCH] hack up vsctool to work with python 2 and 3
+
+StringIO does not exist any more in python3, yet requiring 2.7 would
+not pave the path forward, so try to be compatible with both.
+
+Works for me on Python 2.7.9 and Python 3.4
+
+I would appreciate if someone more fluent in serpentinous programming
+language reviewed and/or rewrote this.
+---
+ lib/libvcc/vsctool.py | 24 ++++++++++++++++++++----
+ 1 file changed, 20 insertions(+), 4 deletions(-)
+
+diff --git a/lib/libvcc/vsctool.py b/lib/libvcc/vsctool.py
+index 854968e3b..829c6e518 100644
+--- a/lib/libvcc/vsctool.py
++++ b/lib/libvcc/vsctool.py
+@@ -37,7 +37,10 @@
+ import json
+ import sys
+ import gzip
+-import StringIO
++try:
++    import StringIO
++except ImportError:
++    import io
+ import collections
+ import struct
+ 
+@@ -54,9 +57,22 @@
+ 	"format":	[ "integer", FORMATS],
+ }
+ 
++# http://python3porting.com/problems.html#bytes-strings-and-unicode
++if sys.version_info < (3,):
++    def b(x):
++        return x
++else:
++    import codecs
++    def b(x):
++        return codecs.latin_1_encode(x)[0]
++
+ def gzip_str(s):
+-	out = StringIO.StringIO()
+-	gzip.GzipFile(fileobj=out, mode="w").write(s)
++	try:
++		out = StringIO.StringIO()
++	except NameError:
++		out = io.BytesIO()
++
++	gzip.GzipFile(fileobj=out, mode="w").write(b(s))
+ 	out.seek(4)
+ 	out.write(struct.pack("<L", 0x12bfd58))
+ 	return out.getvalue()
+@@ -285,7 +301,7 @@ class rst_vsc(directive):
+ 	def __init__(self, s):
+ 		super(rst_vsc, self).__init__(s)
+ 
+-		for i,v in PARAMS.iteritems():
++		for i,v in PARAMS.items():
+ 			if v is not True:
+ 				self.do_default(i, v[0], v[1])
+ 



More information about the arch-commits mailing list