From 7ef2291f68b16dd0e5c53ee0e760a39c089e048a Mon Sep 17 00:00:00 2001 From: =?utf8?q?Kacper=20Ko=C5=82odziej?= Date: Fri, 10 Mar 2017 22:23:42 +0100 Subject: [PATCH] dev-libs/tvision: Fix gcc-6 compilation errors Gentoo-bug: 594176 Package-Manager: Portage-2.3.4, Repoman-2.3.2 Closes: https://github.com/gentoo/gentoo/pull/4182 --- .../files/tvision-2.1.0_pre2-gcc6.patch | 149 ++++++++++++++++++ dev-libs/tvision/tvision-2.1.0_pre2-r3.ebuild | 3 +- 2 files changed, 151 insertions(+), 1 deletion(-) create mode 100644 dev-libs/tvision/files/tvision-2.1.0_pre2-gcc6.patch diff --git a/dev-libs/tvision/files/tvision-2.1.0_pre2-gcc6.patch b/dev-libs/tvision/files/tvision-2.1.0_pre2-gcc6.patch new file mode 100644 index 000000000000..30f8ade33547 --- /dev/null +++ b/dev-libs/tvision/files/tvision-2.1.0_pre2-gcc6.patch @@ -0,0 +1,149 @@ +Fix gcc-6 compilation errors; bug 594176 + +--- a/classes/tdesktop.cc ++++ b/classes/tdesktop.cc +@@ -26,6 +26,10 @@ Modified cursor behavior while desktop locked by Salvador E. Tropea (SET) + #define Uses_TVCodePage + #include + ++#include ++ ++using std::abs; ++ + TDeskInit::TDeskInit( TBackground *(*cBackground)( TRect ) ) : + createBackground( cBackground ) + { +--- a/classes/tdisplay.cc ++++ b/classes/tdisplay.cc +@@ -22,6 +22,10 @@ same used in original Turbo Vision for compatibility purposes. + #define Uses_TVCodePage + #include + ++#include ++ ++using std::abs; ++ + // Remove me please! + int TDisplay::dual_display=0; + +--- a/classes/tvtext1.cc ++++ b/classes/tvtext1.cc +@@ -110,10 +110,10 @@ + char TCheckBoxes::button[] = " [ ] "; + char TCheckBoxes::obutton[] = " [ ] "; + +-TScrollChars TScrollBar::vChars = {30, 31, 177, 254, 178}; // ±þ² +-TScrollChars TScrollBar::ovChars = {30, 31, 177, 254, 178}; // ±þ² +-TScrollChars TScrollBar::hChars = {17, 16, 177, 254, 178}; // ±þ² +-TScrollChars TScrollBar::ohChars = {17, 16, 177, 254, 178}; // ±þ² ++TScrollChars TScrollBar::vChars = {30, 31, (char) 177, (char) 254, (char) 178}; // ±þ² ++TScrollChars TScrollBar::ovChars = {30, 31, (char) 177, (char) 254, (char) 178}; // ±þ² ++TScrollChars TScrollBar::hChars = {17, 16, (char) 177, (char) 254, (char) 178}; // ±þ² ++TScrollChars TScrollBar::ohChars = {17, 16, (char) 177, (char) 254, (char) 178}; // ±þ² + + char TButton::shadows[] = "\xDC\xDB\xDF"; // ÜÛß + char TButton::oshadows[] = "\xDC\xDB\xDF"; // ÜÛß +--- a/classes/x11/x11src.cc ++++ b/classes/x11/x11src.cc +@@ -94,6 +94,10 @@ + #define TIMER_ALARM SIGALRM + #endif + ++#include ++ ++using std::abs; ++ + const unsigned foWmin=5, foHmin=7, foWmax=20, foHmax=32; + const int cursorDelay=300000; + +@@ -2555,49 +2559,49 @@ Cursor TScreenX11::busyCursor, + TScreenX11::leftPtr; + char TScreenX11::busyCursorMap[]= + { +- 0xff, 0xff, 0xff, 0x1f, +- 0xfd, 0xff, 0xff, 0x1f, +- 0xf9, 0xff, 0xff, 0x1f, +- 0xf1, 0xff, 0xff, 0x1f, +- 0xe1, 0x7f, 0xc0, 0x1f, +- 0xc1, 0x7f, 0xc0, 0x1f, +- 0x81, 0x3f, 0x80, 0x1f, +- 0x01, 0x9f, 0x3b, 0x1f, +- 0x01, 0xce, 0x7b, 0x1e, +- 0xc1, 0xef, 0xfb, 0x1e, +- 0xc9, 0xef, 0xf1, 0x18, +- 0x9d, 0xef, 0xf1, 0x18, +- 0x9f, 0xef, 0xfe, 0x18, +- 0x3f, 0x6f, 0xff, 0x1e, +- 0x3f, 0xcf, 0x7f, 0x1e, +- 0xff, 0x9f, 0x3f, 0x1f, +- 0xff, 0x3f, 0x80, 0x1f, +- 0xff, 0x7f, 0xc0, 0x1f, +- 0xff, 0x7f, 0xc0, 0x1f, +- 0xff, 0xff, 0xff, 0x1f ++ (char)0xff, (char)0xff, (char)0xff, (char)0x1f, ++ (char)0xfd, (char)0xff, (char)0xff, (char)0x1f, ++ (char)0xf9, (char)0xff, (char)0xff, (char)0x1f, ++ (char)0xf1, (char)0xff, (char)0xff, (char)0x1f, ++ (char)0xe1, (char)0x7f, (char)0xc0, (char)0x1f, ++ (char)0xc1, (char)0x7f, (char)0xc0, (char)0x1f, ++ (char)0x81, (char)0x3f, (char)0x80, (char)0x1f, ++ (char)0x01, (char)0x9f, (char)0x3b, (char)0x1f, ++ (char)0x01, (char)0xce, (char)0x7b, (char)0x1e, ++ (char)0xc1, (char)0xef, (char)0xfb, (char)0x1e, ++ (char)0xc9, (char)0xef, (char)0xf1, (char)0x18, ++ (char)0x9d, (char)0xef, (char)0xf1, (char)0x18, ++ (char)0x9f, (char)0xef, (char)0xfe, (char)0x18, ++ (char)0x3f, (char)0x6f, (char)0xff, (char)0x1e, ++ (char)0x3f, (char)0xcf, (char)0x7f, (char)0x1e, ++ (char)0xff, (char)0x9f, (char)0x3f, (char)0x1f, ++ (char)0xff, (char)0x3f, (char)0x80, (char)0x1f, ++ (char)0xff, (char)0x7f, (char)0xc0, (char)0x1f, ++ (char)0xff, (char)0x7f, (char)0xc0, (char)0x1f, ++ (char)0xff, (char)0xff, (char)0xff, (char)0x1f + }; + char TScreenX11::busyCursorMask[]= + { +- 0xfc, 0xff, 0xff, 0x1f, +- 0xf8, 0xff, 0xff, 0x1f, +- 0xf0, 0xff, 0xff, 0x1f, +- 0xe0, 0x3f, 0x80, 0x1f, +- 0xc0, 0x3f, 0x80, 0x1f, +- 0x80, 0x3f, 0x80, 0x1f, +- 0x00, 0x1f, 0x00, 0x1f, +- 0x00, 0x0e, 0x00, 0x1e, +- 0x00, 0x04, 0x00, 0x1c, +- 0x00, 0x04, 0x00, 0x10, +- 0x80, 0x07, 0x00, 0x10, +- 0x08, 0x07, 0x00, 0x10, +- 0x0c, 0x07, 0x00, 0x10, +- 0x1f, 0x06, 0x00, 0x10, +- 0x1f, 0x06, 0x00, 0x1c, +- 0x3f, 0x0f, 0x00, 0x1e, +- 0xff, 0x1f, 0x00, 0x1f, +- 0xff, 0x3f, 0x80, 0x1f, +- 0xff, 0x3f, 0x80, 0x1f, +- 0xff, 0x3f, 0x80, 0x1f ++ (char)0xfc, (char)0xff, (char)0xff, (char)0x1f, ++ (char)0xf8, (char)0xff, (char)0xff, (char)0x1f, ++ (char)0xf0, (char)0xff, (char)0xff, (char)0x1f, ++ (char)0xe0, (char)0x3f, (char)0x80, (char)0x1f, ++ (char)0xc0, (char)0x3f, (char)0x80, (char)0x1f, ++ (char)0x80, (char)0x3f, (char)0x80, (char)0x1f, ++ (char)0x00, (char)0x1f, (char)0x00, (char)0x1f, ++ (char)0x00, (char)0x0e, (char)0x00, (char)0x1e, ++ (char)0x00, (char)0x04, (char)0x00, (char)0x1c, ++ (char)0x00, (char)0x04, (char)0x00, (char)0x10, ++ (char)0x80, (char)0x07, (char)0x00, (char)0x10, ++ (char)0x08, (char)0x07, (char)0x00, (char)0x10, ++ (char)0x0c, (char)0x07, (char)0x00, (char)0x10, ++ (char)0x1f, (char)0x06, (char)0x00, (char)0x10, ++ (char)0x1f, (char)0x06, (char)0x00, (char)0x1c, ++ (char)0x3f, (char)0x0f, (char)0x00, (char)0x1e, ++ (char)0xff, (char)0x1f, (char)0x00, (char)0x1f, ++ (char)0xff, (char)0x3f, (char)0x80, (char)0x1f, ++ (char)0xff, (char)0x3f, (char)0x80, (char)0x1f, ++ (char)0xff, (char)0x3f, (char)0x80, (char)0x1f + }; + + /* This is the function which creates cursors. On success it return + diff --git a/dev-libs/tvision/tvision-2.1.0_pre2-r3.ebuild b/dev-libs/tvision/tvision-2.1.0_pre2-r3.ebuild index b013170a41d1..01dccfa54ed6 100644 --- a/dev-libs/tvision/tvision-2.1.0_pre2-r3.ebuild +++ b/dev-libs/tvision/tvision-2.1.0_pre2-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2012 Gentoo Foundation +# Copyright 1999-2017 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 inherit eutils multilib @@ -24,6 +24,7 @@ src_unpack() { epatch "${FILESDIR}"/${P}-gcc44.patch epatch "${FILESDIR}"/${P}-ldconfig.patch epatch "${FILESDIR}"/${P}-flags.patch + epatch "${FILESDIR}"/${P}-gcc6.patch } src_compile() { -- 2.26.2