diff --git a/.gitignore b/.gitignore index a91dd09..f4d899e 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,4 @@ varnish-2.1.3.tar.gz /varnish-5.2.1.tgz /pkg-varnish-cache-0ad2f22.tar.gz /varnish-6.0.0.tgz +/varnish-6.0.1.tgz diff --git a/sources b/sources index 9541cdf..45b8c5a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ +SHA512 (varnish-6.0.1.tgz) = 057cb69ae6a4d980401effb7561d3a9b537216d8626fdf4e7bcc75971958517f51b6bd7f7af86c11bc92a2e77876831c577736dfcd11447ad0128f222c5ad138 SHA512 (pkg-varnish-cache-0ad2f22.tar.gz) = b66c05f74f9bd62ddf16ab3e7904f4e74993bd1406aaebf20d4dca840198430da9f5e746af22778f1a73063113ac19b6f8127d77ff71c30c246fd5fab5ed78da -SHA512 (varnish-6.0.0.tgz) = 39bae462fe40bda9b7c93114ab8256c838a7d67f1a9f7397c37ad090163a33232676120eb7609d0512684a563d8e02c1c2ff5e1b9da0ddedef2250db51c3cc79 diff --git a/varnish-6.0.1_fix_bug2668.patch b/varnish-6.0.1_fix_bug2668.patch new file mode 100644 index 0000000..93539fa --- /dev/null +++ b/varnish-6.0.1_fix_bug2668.patch @@ -0,0 +1,96 @@ +Based on fix for upstream bug #2668, see +https://github.com/varnishcache/varnish-cache/commit/9bdc5f75d661a1659c4df60799612a7524a6caa7 + + +diff -Naur ../varnish-6.0.1.orig/bin/varnishtest/gensequences ./bin/varnishtest/gensequences +--- ../varnish-6.0.1.orig/bin/varnishtest/gensequences 2018-08-29 11:48:32.000000000 +0200 ++++ ./bin/varnishtest/gensequences 2018-09-27 12:18:20.946853383 +0200 +@@ -149,6 +149,7 @@ + + if (l_prefix_name[p] != "teken_state_init") { + print ""; ++ print "\tt->t_last = 0;"; + print "\tteken_state_switch(t, teken_state_init);"; + } + print "}"; +diff -Naur ../varnish-6.0.1.orig/bin/varnishtest/sequences ./bin/varnishtest/sequences +--- ../varnish-6.0.1.orig/bin/varnishtest/sequences 2018-08-29 11:48:32.000000000 +0200 ++++ ./bin/varnishtest/sequences 2018-09-27 12:18:50.193581932 +0200 +@@ -113,3 +113,6 @@ + + # VT52 compatibility + #DECID VT52 DECID ^[ Z ++ ++# ECMA-48 ++REP Repeat last graphic char ^[ [ b n +diff -Naur ../varnish-6.0.1.orig/bin/varnishtest/teken.h ./bin/varnishtest/teken.h +--- ../varnish-6.0.1.orig/bin/varnishtest/teken.h 2018-08-29 11:48:32.000000000 +0200 ++++ ./bin/varnishtest/teken.h 2018-09-27 12:18:20.947853442 +0200 +@@ -153,6 +153,7 @@ + + unsigned int t_utf8_left; + teken_char_t t_utf8_partial; ++ teken_char_t t_last; + + unsigned int t_curscs; + teken_scs_t *t_saved_curscs; +diff -Naur ../varnish-6.0.1.orig/bin/varnishtest/teken_subr.h ./bin/varnishtest/teken_subr.h +--- ../varnish-6.0.1.orig/bin/varnishtest/teken_subr.h 2018-08-29 11:48:32.000000000 +0200 ++++ ./bin/varnishtest/teken_subr.h 2018-09-27 12:18:20.947853442 +0200 +@@ -777,10 +777,11 @@ + } + + static void +-teken_subr_do_putchar(const teken_t *t, const teken_pos_t *tp, teken_char_t c, ++teken_subr_do_putchar(teken_t *t, const teken_pos_t *tp, teken_char_t c, + int width) + { + ++ t->t_last = c; + if (t->t_stateflags & TS_INSERT && + tp->tp_col < t->t_winsize.tp_col - width) { + teken_rect_t ctr; +@@ -1313,3 +1314,12 @@ + t->t_stateflags &= ~TS_WRAPPED; + teken_funcs_cursor(t); + } ++ ++static void ++teken_subr_repeat_last_graphic_char(teken_t *t, unsigned int rpts) ++{ ++ ++ for (; t->t_last != 0 && rpts > 0; rpts--) ++ teken_subr_regular_character(t, t->t_last); ++} ++ +diff -Naur ../varnish-6.0.1.orig/bin/varnishtest/tests/a00001.vtc ./bin/varnishtest/tests/a00001.vtc +--- ../varnish-6.0.1.orig/bin/varnishtest/tests/a00001.vtc 2018-08-29 11:48:32.000000000 +0200 ++++ ./bin/varnishtest/tests/a00001.vtc 2018-09-27 12:18:20.948853501 +0200 +@@ -204,6 +204,27 @@ + process p4 -expect-text 21 11 "Enter choice number (0 - 12):" + process p4 -screen_dump + ++# 11. Test non-VT100 (e.g., VT220, XTERM) terminals ++process p4 -writehex "31 31 0d" ++process p4 -expect-text 0 0 "Menu 11: Non-VT100 Tests" ++ ++process p4 -writehex "37 0d" ++process p4 -expect-text 0 0 "Menu 11.7: Miscellaneous ISO-6429 (ECMA-48) Tests" ++ ++process p4 -writehex "32 0d" ++process p4 -expect-text 0 0 "Push " ++process p4 -screen_dump ++process p4 -expect-text 20 1 "Test Repeat (REP)" ++process p4 -expect-text 1 1 " ++ " ++process p4 -expect-text 2 2 " ++ " ++process p4 -expect-text 17 17 " ++ " ++process p4 -expect-text 18 18 "*++*" ++process p4 -writehex "0d" ++process p4 -expect-text 0 0 "Menu 11.7: Miscellaneous ISO-6429 (ECMA-48) Tests" ++process p4 -writehex "30 0d" ++process p4 -expect-text 0 0 "Menu 11: Non-VT100 Tests" ++process p4 -writehex "30 0d" ++ + # 0. Exit + process p4 -writehex "30 0d" + process p4 -expect-text 12 30 "That's all, folks!" diff --git a/varnish.spec b/varnish.spec index 7d881a7..548bd7b 100644 --- a/varnish.spec +++ b/varnish.spec @@ -18,8 +18,8 @@ Summary: High-performance HTTP accelerator Name: varnish -Version: 6.0.0 -Release: 2%{?dist} +Version: 6.0.1 +Release: 1%{?dist} License: BSD Group: System Environment/Daemons URL: https://www.varnish-cache.org/ @@ -29,13 +29,17 @@ Patch1: varnish-5.1.1.fix_ld_library_path_in_doc_build.patch Patch4: varnish-4.0.3_fix_varnish4_selinux.el6.patch Patch9: varnish-5.1.1.fix_python_version.patch -# https://github.com/varnishcache/varnish-cache/commit/5220c394232c25bb7a807a35e7394059ecefa821#diff-2279587378a4426edde05f42e1acca5e -Patch11: varnish-6.0.0.fix_el6_fortify_source.patch +# based on https://github.com/varnishcache/varnish-cache/commit/9bdc5f75d661a1659c4df60799612a7524a6caa7 +Patch12: varnish-6.0.1_fix_bug2668.patch Obsoletes: varnish-libs %if %{with python3} +%if 0%{?rhel} == 6 +BuildRequires: python34-docutils +%else BuildRequires: python3-sphinx, python3-docutils +%endif %else %if 0%{?rhel} >= 6 BuildRequires: python-sphinx @@ -49,7 +53,6 @@ BuildRequires: pcre-devel BuildRequires: pkgconfig BuildRequires: gcc BuildRequires: make -BuildRequires: graphviz BuildRequires: nghttp2 %if 0%{?rhel} == 6 @@ -105,7 +108,11 @@ Varnish Cache is a high-performance HTTP accelerator Requires: %{name} = %{version}-%{release} %if %{with python3} +%if 0%{?rhel} == 6 +Requires: python34 +%else Requires: python3 +%endif %else Requires: python %endif @@ -141,8 +148,8 @@ sed -i '8 i\RPM_BUILD_ROOT=%{buildroot}' find-provides %if 0%{?rhel} == 6 %patch4 -p0 %patch9 -p0 -%patch11 -p0 %endif +%patch12 -p1 %build %if 0%{?rhel} == 6 @@ -156,12 +163,15 @@ export LDFLAGS=" -pie" export CFLAGS="%{optflags} -ffloat-store -fexcess-precision=standard" %endif %if 0%{?rhel} >= 6 -export CFLAGS="%{optflags} -fPIC -ffloat-store" +export CFLAGS="%{optflags} -fno-exceptions -fPIC -ffloat-store" %endif %endif # Man pages are prebuilt. No need to regenerate them. export RST2MAN=/bin/true +%if %{with python3} +export PYTHON=/usr/bin/python3 +%endif %configure --disable-static \ %ifarch aarch64 @@ -184,10 +194,12 @@ pushd lib/libvarnishapi/.libs ln -s libvarnishapi.so libvarnishapi.so.1 popd -# Upstream github issue #2265 %if 0%{?rhel} == 6 +# Upstream github issue #22650 sed -i 's/-Werror$//g;' bin/varnishd/Makefile sed -i 's/-Werror$//g;' lib/libvarnishapi/Makefile +# Workaround old readline/curses, ref upstream github issue #2550 +sed -i 's/vcl1/ vcl1/;' bin/varnishtest/tests/u00011.vtc %endif make %{?_smp_mflags} V=1 @@ -377,6 +389,14 @@ fi %changelog +* Thu Sep 27 2018 Ingvar Hagelund - 6.0.1-1 +- New upstream release +- Removed graphciz from BuildRequires. It is not used +- Removed patch for fortify_source on el6. It is merged upstream +- Small workaround for test suite problem with old readline/curses on el6 +- Now fully using bcond_with python3, for simpler future deprication of python2 +- Added -fno-exceptions to CFLAGS on el6, see upstream issue #2793 + * Sat Jul 14 2018 Fedora Release Engineering - 6.0.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild