From 61b8aad6dca2d91f8765958e9dbd6ec9f7f546b3 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Wed, 5 Dec 2012 10:50:22 -0700 Subject: [PATCH] Restore gets patch Rebuild for hdf5 1.8.10 --- octave-gets.patch | 86 +++++++++++++++++++++++++++++++++++++++++++++++ octave.spec | 8 ++++- 2 files changed, 93 insertions(+), 1 deletion(-) create mode 100644 octave-gets.patch diff --git a/octave-gets.patch b/octave-gets.patch new file mode 100644 index 0000000..c7b8914 --- /dev/null +++ b/octave-gets.patch @@ -0,0 +1,86 @@ +diff -up octave-3.6.2-rc2/libgnu/stdio.in.h.gets octave-3.6.2-rc2/libgnu/stdio.in.h +--- octave-3.6.2-rc2/libgnu/stdio.in.h.gets 2012-05-24 12:46:13.000000000 -0600 ++++ octave-3.6.2-rc2/libgnu/stdio.in.h 2012-05-24 16:29:54.813734894 -0600 +@@ -1,12 +1,10 @@ +-/* -*- buffer-read-only: t -*- vi: set ro: */ +-/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ + /* A GNU-like . + + Copyright (C) 2004, 2007-2012 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 3, or (at your option) ++ the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, +@@ -15,8 +13,7 @@ + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ ++ along with this program; if not, see . */ + + #if __GNUC__ >= 3 + @PRAGMA_SYSTEM_HEADER@ +@@ -55,7 +52,8 @@ + #include + + /* Get off_t and ssize_t. Needed on many systems, including glibc 2.8 +- and eglibc 2.11.2. */ ++ and eglibc 2.11.2. ++ May also define off_t to a 64-bit type on native Windows. */ + #include + + /* The __attribute__ feature is available in gcc versions 2.5 and later. +@@ -701,22 +699,11 @@ _GL_WARN_ON_USE (getline, "getline is un + # endif + #endif + +-#if @GNULIB_GETS@ +-# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@ +-# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +-# undef gets +-# define gets rpl_gets +-# endif +-_GL_FUNCDECL_RPL (gets, char *, (char *s) _GL_ARG_NONNULL ((1))); +-_GL_CXXALIAS_RPL (gets, char *, (char *s)); +-# else +-_GL_CXXALIAS_SYS (gets, char *, (char *s)); +-# undef gets +-# endif +-_GL_CXXALIASWARN (gets); + /* It is very rare that the developer ever has full control of stdin, +- so any use of gets warrants an unconditional warning. Assume it is +- always declared, since it is required by C89. */ ++ so any use of gets warrants an unconditional warning; besides, C11 ++ removed it. */ ++#undef gets ++#if HAVE_RAW_DECL_GETS + _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); + #endif + +@@ -781,7 +768,7 @@ _GL_CXXALIASWARN (pclose); + #elif defined GNULIB_POSIXCHECK + # undef pclose + # if HAVE_RAW_DECL_PCLOSE +-_GL_WARN_ON_USE (pclose, "popen is unportable - " ++_GL_WARN_ON_USE (pclose, "pclose is unportable - " + "use gnulib module pclose for more portability"); + # endif + #endif +@@ -1056,9 +1043,9 @@ _GL_WARN_ON_USE (snprintf, "snprintf is + # endif + #endif + +-/* Some people would argue that sprintf should be handled like gets +- (for example, OpenBSD issues a link warning for both functions), +- since both can cause security holes due to buffer overruns. ++/* Some people would argue that all sprintf uses should be warned about ++ (for example, OpenBSD issues a link warning for it), ++ since it can cause security holes due to buffer overruns. + However, we believe that sprintf can be used safely, and is more + efficient than snprintf in those safe cases; and as proof of our + belief, we use sprintf in several gnulib modules. So this header diff --git a/octave.spec b/octave.spec index 48c62de..30bf78a 100644 --- a/octave.spec +++ b/octave.spec @@ -9,7 +9,7 @@ Name: octave Version: 3.6.4 -Release: 0.1.rc0%{?dist} +Release: 0.2.rc0%{?dist} Summary: A high-level language for numerical computations Epoch: 6 Group: Applications/Engineering @@ -21,6 +21,7 @@ Source0: ftp://alpha.gnu.org/gnu/octave/octave-%{version}%{rctag}.tar.bz2 %endif # RPM macros for helping to build Octave packages Source1: macros.octave +Patch0: octave-gets.patch # https://savannah.gnu.org/bugs/index.php?32839 # Fix building packages from directories Patch2: octave-3.4.0-pkgbuilddir.patch @@ -83,6 +84,7 @@ This package contains documentation for Octave. %prep %setup -q -n %{name}-%{version}%{?rctag} +%patch0 -p1 -b .gets %patch2 -p1 -b .pkgbuilddir # Check permissions @@ -255,6 +257,10 @@ fi %changelog +* Wed Dec 05 2012 Orion Poplawski - 6:3.6.4-0.2.rc0 +- Restore gets patch +- Rebuild for hdf5 1.8.10 + * Wed Oct 17 2012 Orion Poplawski - 6:3.6.4-0.1.rc0 - Update to 3.6.4-rc0 - Drop sparse patch applied upstream