[arch-commits] Commit in logrotate/trunk (PKGBUILD logrotate-3.8.0-noasprintf.patch)

Allan McRae allan at archlinux.org
Mon Aug 22 13:02:58 UTC 2011


    Date: Monday, August 22, 2011 @ 09:02:58
  Author: allan
Revision: 136071

fix compile issue with hardened CFLAGS

Added:
  logrotate/trunk/logrotate-3.8.0-noasprintf.patch
Modified:
  logrotate/trunk/PKGBUILD

----------------------------------+
 PKGBUILD                         |    8 ++++-
 logrotate-3.8.0-noasprintf.patch |   55 +++++++++++++++++++++++++++++++++++++
 2 files changed, 61 insertions(+), 2 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2011-08-22 12:43:48 UTC (rev 136070)
+++ PKGBUILD	2011-08-22 13:02:58 UTC (rev 136071)
@@ -4,7 +4,7 @@
 
 pkgname=logrotate
 pkgver=3.8.0
-pkgrel=1
+pkgrel=2
 pkgdesc="Rotates system logs automatically"
 arch=('i686' 'x86_64')
 url="https://fedorahosted.org/logrotate/"
@@ -13,15 +13,19 @@
 depends=('popt' 'cron' 'gzip')
 backup=('etc/logrotate.conf')
 source=(https://fedorahosted.org/releases/l/o/logrotate/logrotate-${pkgver}.tar.gz
+        logrotate-3.8.0-noasprintf.patch
         logrotate.conf
         logrotate.cron.daily)
 md5sums=('590f77c13077a4c384dbec7ca9c5f242'
+         '624801859beb9abe7958b6392c854d72'
          '462a5f364717461537eb2ae6394ad23e'
          '8e23d5d4cc29b1e055b24df87e355cdc')
 
 build() {
   cd "$srcdir/${pkgname}-${pkgver}"
-  
+
+  patch -Np1 -i "$srcdir"/logrotate-3.8.0-noasprintf.patch
+
   sed -i 's|#define DEFAULT_MAIL_COMMAND .*|#define DEFAULT_MAIL_COMMAND "/usr/bin/mail"|'\
     config.h
   sed -i "s|CFLAGS = -Wall|CFLAGS = -Wall $CFLAGS|" Makefile

Added: logrotate-3.8.0-noasprintf.patch
===================================================================
--- logrotate-3.8.0-noasprintf.patch	                        (rev 0)
+++ logrotate-3.8.0-noasprintf.patch	2011-08-22 13:02:58 UTC (rev 136071)
@@ -0,0 +1,55 @@
+diff '--exclude-from=/home/dang/.scripts/diffrc' -up -ruN logrotate-3.8.0.orig/config.c logrotate-3.8.0/config.c
+--- logrotate-3.8.0.orig/config.c	2011-06-21 04:12:02.000000000 -0400
++++ logrotate-3.8.0/config.c	2011-07-12 13:47:36.274319050 -0400
+@@ -41,39 +41,6 @@
+ #endif
+ #endif
+ 
+-#if !defined(asprintf)
+-#include <stdarg.h>
+-
+-int asprintf(char **string_ptr, const char *format, ...)
+-{
+-	va_list arg;
+-	char *str;
+-	int size;
+-	int rv;
+-
+-	va_start(arg, format);
+-	size = vsnprintf(NULL, 0, format, arg);
+-	size++;
+-	va_start(arg, format);
+-	str = malloc(size);
+-	if (str == NULL) {
+-		va_end(arg);
+-		/*
+-		 * Strictly speaking, GNU asprintf doesn't do this,
+-		 * but the caller isn't checking the return value.
+-		 */
+-		fprintf(stderr, "failed to allocate memory\\n");
+-		exit(1);
+-	}
+-	rv = vsnprintf(str, size, format, arg);
+-	va_end(arg);
+-
+-	*string_ptr = str;
+-	return (rv);
+-}
+-
+-#endif
+-
+ enum {
+ 	STATE_DEFAULT = 2,
+ 	STATE_SKIP_LINE = 4,
+diff '--exclude-from=/home/dang/.scripts/diffrc' -up -ruN logrotate-3.8.0.orig/logrotate.h logrotate-3.8.0/logrotate.h
+--- logrotate-3.8.0.orig/logrotate.h	2011-06-21 04:12:02.000000000 -0400
++++ logrotate-3.8.0/logrotate.h	2011-07-12 13:47:38.949285608 -0400
+@@ -66,8 +66,5 @@ extern int numLogs;
+ extern int debug;
+ 
+ int readAllConfigPaths(const char **paths);
+-#if !defined(asprintf)
+-int asprintf(char **string_ptr, const char *format, ...);
+-#endif
+ 
+ #endif




More information about the arch-commits mailing list