commit:     790eacc3bfd3de90926563fcba33343a9dedbfd7
Author:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
AuthorDate: Sat Aug  6 23:48:52 2016 +0000
Commit:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
CommitDate: Sat Aug  6 23:50:45 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=790eacc3

dev-libs/skyutils: new revision to fix build bugs.

This new revision updates to EAPI=6, and adds a patch that enables the
build to complete with -Werror=format-security. It also adds an
"sslv3" USE flag, because there is at least one package
(app-mobilephone/smssend) which should require skyutils to be build
against OpenSSL with sslv3 support.

Gentoo-Bug: 521114
Gentoo-Bug: 588326

Package-Manager: portage-2.2.28

 .../files/fix-Wformat-security-warnings.patch      | 40 +++++++++++++++++++++
 dev-libs/skyutils/metadata.xml                     | 14 ++++++--
 dev-libs/skyutils/skyutils-2.8-r3.ebuild           | 36 -------------------
 dev-libs/skyutils/skyutils-2.8-r4.ebuild           | 41 ++++++++++++++++++++++
 4 files changed, 92 insertions(+), 39 deletions(-)

diff --git a/dev-libs/skyutils/files/fix-Wformat-security-warnings.patch 
b/dev-libs/skyutils/files/fix-Wformat-security-warnings.patch
new file mode 100644
index 0000000..c7fb19b
--- /dev/null
+++ b/dev-libs/skyutils/files/fix-Wformat-security-warnings.patch
@@ -0,0 +1,40 @@
+From 40a157d2161fdd8709a777de6625fbd1b93efed3 Mon Sep 17 00:00:00 2001
+From: Michael Orlitzky <[email protected]>
+Date: Sat, 6 Aug 2016 19:23:48 -0400
+Subject: [PATCH 1/1] src/skyutils.h: fix two missing format strings in
+ SU_SYSLOG_FN.
+
+The SU_SYSLOG_FN(x,y) macro could be defined as either syslog(x,y) or
+printf(y), both of which are missing the trivial format string
+"%s". This commit adds it, so that the project builds with no
+-Wformat-security warnings.
+
+Gentoo-Bug: 521114
+---
+ src/skyutils.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/skyutils.h b/src/skyutils.h
+index 8b7d59d..f77c9fd 100644
+--- a/src/skyutils.h
++++ b/src/skyutils.h
+@@ -279,14 +279,14 @@ void SU_PrintDebug(int Level,char *Txt, ...);
+ #ifdef __unix__
+ #define SU_PrintDebug(x,...) /* If you have an error here, remove 'x,...' 
from the () */
+ #include <syslog.h>
+-#define SU_SYSLOG_FN(x,y) syslog(x,y)
++#define SU_SYSLOG_FN(x,y) syslog(x,"%s",y)
+ #else /* !__unix__ */
+ #define SU_PrintDebug() /* Avoid compilation warnings */
+ extern FILE *SU_LogFile;
+ #define SU_SYSLOG_FN(x,y) SU_WriteToLogFile(SU_LogFile,y)
+ #endif /* __unix__ */
+ #else /* DEBUG */
+-#define SU_SYSLOG_FN(x,y) printf(y)
++#define SU_SYSLOG_FN(x,y) printf("%s",y)
+ #endif /* !DEBUG */
+ #ifdef _WIN32
+ #define SU_SLEEP(x) Sleep(x*1000)
+-- 
+2.7.3
+

diff --git a/dev-libs/skyutils/metadata.xml b/dev-libs/skyutils/metadata.xml
index ba72cb0..deb5277 100644
--- a/dev-libs/skyutils/metadata.xml
+++ b/dev-libs/skyutils/metadata.xml
@@ -1,7 +1,15 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
 <pkgmetadata>
-       <!-- maintainer-needed -->
-       <longdescription>This library contains many useful functions such as
-chained lists, string manipulation, socket, and the HTTP 
protocol.</longdescription>
+  <!-- maintainer-needed -->
+  <longdescription>
+    This library contains many useful functions such as chained lists,
+    string manipulation, socket, and the HTTP protocol.
+  </longdescription>
+
+  <use>
+    <flag name="sslv3">
+      Require OpenSSL to be built with the old SSLv3 protocol enabled.
+    </flag>
+  </use>
 </pkgmetadata>

diff --git a/dev-libs/skyutils/skyutils-2.8-r3.ebuild 
b/dev-libs/skyutils/skyutils-2.8-r3.ebuild
deleted file mode 100644
index 9078880..0000000
--- a/dev-libs/skyutils/skyutils-2.8-r3.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-inherit eutils flag-o-matic autotools
-
-DESCRIPTION="Library of assorted C utility functions"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"; # was 
"http://zekiller.skytech.org/coders_en.html";
-SRC_URI="mirror://gentoo/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE="libressl ssl"
-
-DEPEND="ssl? (
-       !libressl? ( dev-libs/openssl:0= )
-       libressl? ( dev-libs/libressl:0= )
-)"
-
-src_prepare() {
-       sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.in || die
-       epatch "${FILESDIR}"/${P}-libs.patch
-       eautoreconf
-}
-
-src_configure() {
-       append-flags -D_GNU_SOURCE
-       econf `use_enable ssl` || die "./configure failed"
-}
-
-src_install () {
-       emake DESTDIR="${D}" install || die "make install failed"
-       dodoc AUTHORS ChangeLog
-}

diff --git a/dev-libs/skyutils/skyutils-2.8-r4.ebuild 
b/dev-libs/skyutils/skyutils-2.8-r4.ebuild
new file mode 100644
index 0000000..252add2
--- /dev/null
+++ b/dev-libs/skyutils/skyutils-2.8-r4.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+inherit flag-o-matic autotools
+
+DESCRIPTION="Library of assorted C utility functions"
+# Was: http://zekiller.skytech.org/coders_en.html
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage";
+SRC_URI="mirror://gentoo/${P}.tar.gz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="libressl ssl sslv3"
+REQUIRED_USE="sslv3? ( ssl? ( !libressl ) )"
+
+DEPEND="ssl? (
+       !libressl? ( dev-libs/openssl:0=[sslv3?] )
+       libressl? ( dev-libs/libressl:0= )
+)"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+       "${FILESDIR}/${P}-libs.patch"
+       "${FILESDIR}/fix-Wformat-security-warnings.patch"
+)
+
+src_prepare() {
+       default
+       sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.in \
+               || die 'failed to rename AM_CONFIG_HEADER macro'
+
+       eautoreconf
+}
+
+src_configure() {
+       append-flags -D_GNU_SOURCE
+       econf $(use_enable ssl)
+}

Reply via email to