<p>Em 22/07/2011 00:49, <<a href="mailto:igalic@users.sourceforge.net">igalic@users.sourceforge.net</a>> escreveu:<br>
><br>
> Revision: 15181<br>
>          <a href="http://gar.svn.sourceforge.net/gar/?rev=15181&view=rev">http://gar.svn.sourceforge.net/gar/?rev=15181&view=rev</a><br>
> Author:   igalic<br>
> Date:     2011-07-21 23:48:37 +0000 (Thu, 21 Jul 2011)<br>
><br>
> Log Message:<br>
> -----------<br>
> Add logrotate base. Warning: This Makefile is as of yet untestet.<br>
><br>
> Modified Paths:<br>
> --------------<br>
>    csw/mgar/pkg/logrotate/trunk/Makefile<br>
>    csw/mgar/pkg/logrotate/trunk/checksums<br>
><br>
> Added Paths:<br>
> -----------<br>
>    csw/mgar/pkg/logrotate/<br>
>    csw/mgar/pkg/logrotate/trunk/files/001-makefu.patch<br>
>    csw/mgar/pkg/logrotate/trunk/files/002-strndup.patch<br>
>    csw/mgar/pkg/logrotate/trunk/files/003-test.patch<br>
>    csw/mgar/pkg/logrotate/trunk/files/004-alloca.patch<br>
>    csw/mgar/pkg/logrotate/trunk/files/005-gzippath.patch<br>
>    csw/mgar/pkg/logrotate/trunk/files/006-mbrtowc_empty.patch<br>
>    csw/mgar/pkg/logrotate/trunk/files/007-warn-unreached.patch<br>
><br>
> Modified: csw/mgar/pkg/logrotate/trunk/Makefile<br>
> ===================================================================<br>
> --- csw/mgar/pkg/template/trunk/Makefile        2011-07-21 22:40:34 UTC (rev 15180)<br>
> +++ csw/mgar/pkg/logrotate/trunk/Makefile       2011-07-21 23:48:37 UTC (rev 15181)<br>
> @@ -2,187 +2,64 @@<br>
>  # Distributed under the terms of the GNU General Public License v2<br>
>  # $Id$<br>
><br>
> -## This file contains comments to guide you through various GAR settings.<br>
> -## Please remove unnecessary comments before committing your code to the code<br>
> -## repository. The comments to remove are marked with double hashes.<br>
> -## If you want to remove them all in-place, use:<br>
> -## gsed -i -e '/^##/d' Makefile<br>
> -##<br>
> -## For more information about GAR variables, please see:<br>
> -## <a href="https://sourceforge.net/apps/trac/gar/wiki/GAR%20Variable%20Reference">https://sourceforge.net/apps/trac/gar/wiki/GAR%20Variable%20Reference</a><br>
> -##<br>
> -NAME = mypkg<br>
> -VERSION = 1.0<br>
> -##<br>
> -## The category that your software fits in. This is not a descriptive field, but<br>
> -## influences the build process. Depending on the CATEGORIES setting, different<br>
> -## Makefiles are included from gar/categories/ in your trunk directory, which<br>
> -## adjust the build settings for the respective category.<br>
> -##<br>
> -## Possible settings are:<br>
> -## apps, cpan, devel, gnome, java, kde, lang, lib, meta, net, python, server,<br>
> -## utils, x11, xfce, xorg, xtra<br>
> -CATEGORIES = lib<br>
> -##<br>
> -## A one-line description of the package, which will appear in the pkginfo.<br>
> -DESCRIPTION = <please fill in><br>
> -##<br>
> -## A longer description of the package. This is only for descriptive purposes<br>
> -## inside the Makefile and is not used elsewhere.<br>
> +NAME = logrotate<br>
> +VERSION = 3.8.0<br>
> +CATEGORIES = apps<br>
> +<br>
> +DESCRIPTION = rotates, compresses, and mails system logs<br>
> +<br>
>  define BLURB<br>
> -  <please fill in><br>
> +   The logrotate utility is designed to simplify the administration of log files on a system which generates a lot of log files.<br>
> +   Logrotate allows for the automatic rotation compression, removal and mailing of log files.<br>
> +   Logrotate can be set to handle a log file daily, weekly, monthly or when the log file gets to a certain size.<br>
>  endef<br>
> -##<br>
> -## Upstream URL that should show up in the VENDOR field as well as on<br>
> -## <a href="http://opencsw.org/packages/">http://opencsw.org/packages/</a><packagename>.<br>
> -SPKG_SOURCEURL =<br>
> -##<br>
> -## Whitespace-separated list of URLs to download the source package from.<br>
> -## There are presets: $(SF_MIRRORS), $(GNU_MIRRORS) and $(GOOGLE_MIRROR),<br>
> -## $(PYPI_MIRROR)<br>
> -MASTER_SITES =<br>
> -##<br>
> -## SF_PROJ is required if you set $(MASTER_SITES) to $(SF_MIRRORS) and the<br>
> -## Sourceforge project name differs from $(NAME). Specifies the Sourceforge<br>
> -## project name of the software you wish to download.<br>
> -## SF_PROJ =<br>
> -##<br>
> -## A list of space separated patch filenames from files/ that are to be applied<br>
> -## to the extracted software before the ./configure stage. Patches need to be<br>
> -## included in the DISTFILES variable as well.<br>
> -## PATCHFILES =<br>
> -##<br>
> -## Whitespace-separated list of files which comprise this build. mGAR will look<br>
> -## for the files in the $(FILEDIR) (trunk/files) directory and on the<br>
> -## $(MASTER_SITES).<br>
> +<br>
> +SPKG_SOURCEURL = <a href="https://fedorahosted.org/logrotate/">https://fedorahosted.org/logrotate/</a><br>
> +MASTER_SITES = <a href="https://fedorahosted.org/releases/l/o/logrotate/">https://fedorahosted.org/releases/l/o/logrotate/</a><br>
> +<br>
> +PATCHFILES  = 001-makefu.patch<br>
> +PATCHFILES += 002-strndup.patch<br>
> +PATCHFILES += 003-test.patch<br>
> +PATCHFILES += 004-alloca.patch<br>
> +PATCHFILES += 005-gzippath.patch<br>
> +PATCHFILES += 006-mbrtowc_empty.patch<br>
> +PATCHFILES += 007-warn-unreached.patch<br>
> +<br>
>  DISTFILES  = $(NAME)-$(VERSION).tar.gz<br>
> -##<br>
> -## We define upstream file regex so we can be notifed of new upstream software<br>
> -## release<br>
> -## UFILES_REGEX = $(NAME)-(\d+(?:\.\d+)*).tar.gz<br>
> -##<br>
> -## Catalog name is the name to be used with pkg{-get,util} -i <pkgname>.<br>
> -## It is different from the system package name, which by convention is CSWpkgname.<br>
> -## CATALOGNAME =<br>
> -##<br>
> -## Set to 1 to mark the package as architecture-independent.<br>
> -## ARCHALL = 0<br>
> -##<br>
> -## A list of files / patterns that should be excluded from the package. Amends<br>
> -## the default list of excluded filenames $(MERGE_EXCLUDE_DEFAULT), which<br>
> -## contains things like libtool .la files and files with a leading ~.<br>
> -## EXTRA_MERGE_EXCLUDE_FILES =<br>
> -##<br>
> -## A list of space separated package names that should be marked as<br>
> -## incompatible with the current package. This will go into the depend file.<br>
> -## When a user has one of the incompatible packages installed and installs<br>
> -## your package, he will be prompted that the incompatible package must be<br>
> -## removed. He will however not be prevented to install your package without<br>
> -## removing the conflicting package first.<br>
> -## INCOMPATIBLE_PKGS =<br>
> -##<br>
> -##  The name of the license file that should be included in your package. Defaults<br>
> -##  to COPYING. See <a href="http://sourceforge.net/apps/trac/gar/wiki/CopyRight">http://sourceforge.net/apps/trac/gar/wiki/CopyRight</a> for details<br>
> -##  on including and displaying licenses.<br>
> -## LICENSE =<br>
> -##<br>
> -## A list of space separated package names that should be produced from your<br>
> -## Makefile. This is used when a software has different components that can be<br>
> -## packaged and used individually (think runtime libraries, client tools, server<br>
> -## files, development headers). You don't need to set this when you just want to<br>
> -## produce one package.<br>
> -##<br>
> -## When you set this variable to include more than one package, you also need to<br>
> -## set PKGFILES_CSWpkgname for each package (except for the first one in your<br>
> -## $(PACKAGES) list) to define which files go into each package. The first<br>
> -## package from $(PACKAGES) one will hold all files that are not matched by<br>
> -## PKGFILES_ for other packages.<br>
> -## PACKAGES =<br>
> -##<br>
> -## If specified, GAR feeds the almost-final package prototype file to<br>
> -## $(PROTOTYPE_FILTER) and reads the final package prototype file from it.<br>
> -## $(PROTOTYPE_FILTER) is usually a sed/awk/perl one-liner, which was mostly used<br>
> -## to prepare the prototype file for use with cswclassutils (see<br>
> -## $(SPKG_CLASSES)). Now that there are convenience variables for cswclassutils,<br>
> -## you will rarely have to use this. A still valid use case would be to change<br>
> -## the file permissions of a file to be set-UID.<br>
> -## See <a href="http://wiki.opencsw.org/cswclassutils-package">http://wiki.opencsw.org/cswclassutils-package</a> for common usage information<br>
> -## PROTOTYPE_FILTER =<br>
> -##<br>
> -## cswclassutils settings<br>
> -##<br>
> -## A list of action classes. Possible values are:<br>
> -## none cswpreserveconf cswcpsampleconf cswpycompile cswusergroup cswinitsmf<br>
> -##     cswinetd cswetcservices<br>
> -## The class 'cswinitsmf' must be the last class listed. When you use cswclassutils,<br>
> -## you need to add CSWcswclassutils to RUNTIME_DEP_PKGS.<br>
> -## SPKG_CLASSES = none<br>
> -## Simplified settings for classes:<br>
> -## PRESERVECONF =<br>
> -## SAMPLECONF =<br>
> -## INITSMF =<br>
> -## USERGROUP =<br>
> -## ETCSERVICES = <file containing an entry for /etc/services><br>
> -## INETDCONF = <file containing an inetd.conf formatted entry><br>
> -## A list of runtime package dependencies in the form of CSWfoo.<br>
> -## RUNTIME_DEP_PKGS =<br>
> -##<br>
> -## A list of packages necessary to build this package<br>
> -## BUILD_DEP_PKGS = $(RUNTIME_DEP_PKGS)<br>
> -##<br>
> -## When using non-empty $(PACKAGES):<br>
> -## RUNTIME_DEP_PKGS_CSWpkgname =<br>
> -## SPKG_DESC_CSWpkgname =<br>
> -## PKGFILES_CSWpkgname =<br>
> -## CATALOGNAME_CSWpkgname =<br>
> -##<br>
> -## A list of space separated directories where objects should be stripped in<br>
> -## addition to the bin/ and sbin/ directories.<br>
> -## STRIP_DIRS =<br>
> -##<br>
> -## Define a custom target for the configure phase. When you set this, the target<br>
> -## that will be used instead of configure: target, is named<br>
> -## configure-$(CONFIGURE_SCRIPTS) and you will need to define it in your Makefile<br>
> -## after including gar/<a href="http://gar.include.mk">gar.include.mk</a>. If you want to skip the configure phase<br>
> -## completely (for example when your software doesn't need to be compiled) assign<br>
> -## this variable an empty value. The procedure works for configure, build,<br>
> -## install and test steps.<br>
> -## CONFIGURE_SCRIPTS =<br>
> -## BUILD_SCRIPTS =<br>
> -## INSTALL_SCRIPTS =<br>
> -## TEST_SCRIPTS =<br>
> -##<br>
> -## Compilation settings<br>
> -##<br>
> -## The build directory.<br>
> -## WORKSRC = $(WORKDIR)/$(NAME)-$(VERSION)<br>
> -##<br>
> -## BUILD_ARGS is passed as an argument to gmake during the build phase. Use this<br>
> -## for example, if you need to override Makefile variables.<br>
> -## BUILD_ARGS =<br>
> -##<br>
> -## Arguments passed to the ./configure script.<br>
> -CONFIGURE_ARGS = $(DIRPATHS)<br>
> -##<br>
> -## BUILD64 =<br>
> -## CONFIGURE_ENV =<br>
> -## EXTRA_CFLAGS =<br>
> -## EXTRA_LDFLAGS =<br>
> -## EXTRA_INC =<br>
> -## EXTRA_LIB =<br>
> -## GARFLAVOR =<br>
> -## INSTALL_ARGS =<br>
> -## OPT_FLAGS_SOS = -xO3<br>
> -## OPT_FLAGS_GCC = -O2 -pipe<br>
> -##<br>
> -## The compiler to use. This can be also: SOS11, GCC3, GCC4.<br>
> -## Specifying GNU will default to GCC4, specifying SUN will default to SOS12<br>
> -## GARCOMPILER = SOS12<br>
> -##<br>
> -# Remove the following rules and uncomment the<br>
> -# include before building.<br>
> -all: .DEFAULT<br>
> -.DEFAULT:<br>
> -       @true<br>
> +DISTFILES += 001-makefu.patch<br>
> +DISTFILES += 002-strndup.patch<br>
> +DISTFILES += 003-test.patch<br>
> +DISTFILES += 005-gzippath.patch<br>
> +DISTFILES += 006-mbrtowc_empty.patch<br>
> +DISTFILES += 007-warn-unreached.patch</p>
<p>PATCHFILES imply distribution, you can skip listing patches here.</p>
<p>><br>
> -#include gar/<a href="http://category.mk">category.mk</a><br>
> +RUNTIME_DEP_PKGS = CSWlibpopt<br>
> +BUILD_DEP_PKGS   = $(RUNTIME_DEP_PKGS)<br>
> +<br>
> +CONFIGURE_SCRIPTS =<br>
> +TEST_TARGET = test<br>
> +<br>
> +# "optimize"<br>
> +NOISALIST = 1<br>
> +<br>
> +# Don't ask, it doesn't work otherwise.<br>
> +export EXTRA_CFLAGS = -I$(includedir)<br>
> +export EXTRA_LDFLAGS = -L$(libdir)<br>
> +export PREFIX = $(DESTDIR)<br>
> +export BASEDIR = $(prefix)<br>
> +export MANDIR = $(mandir)<br>
> +<br>
> +include gar/<a href="http://category.mk">category.mk</a><br>
> +<br>
> +# This is a hack, as I have no idea what's going wrong.</p>
<p>Let us know if you figure it out!</p>
<p>> +pre-test-modulated:<br>
> +        @( cd $(WORKSRC) ; \<br>
> +                rm -f .depend )<br>
> +<br>
> +pre-install-modulated:<br>
> +        @( cd $(WORKSRC) ; \<br>
> +                rm -f .depend )<br>
> +<br>
> +pre-build-modulated:<br>
> +        @( cd $(WORKSRC) ; \<br>
> +                rm -f .depend )<br>
><br>
> Modified: csw/mgar/pkg/logrotate/trunk/checksums<br>
> ===================================================================<br>
> --- csw/mgar/pkg/template/trunk/checksums       2011-07-21 22:40:34 UTC (rev 15180)<br>
> +++ csw/mgar/pkg/logrotate/trunk/checksums      2011-07-21 23:48:37 UTC (rev 15181)<br>
> @@ -0,0 +1,8 @@<br>
> +590f77c13077a4c384dbec7ca9c5f242 logrotate-3.8.0.tar.gz<br>
> +59ed81c960568f086b9e59388807f6a3  001-makefu.patch<br>
> +5603f2be02e6fd4bbd8d57a4f3e9dcd4  002-strndup.patch<br>
> +02f36862d4e190a7eb920bd816ca4927  003-test.patch<br>
> +e98fb00c0ea9c7c0102e2029292308dd  004-alloca.patch<br>
> +d6232a06412a2302a582abdc51607518  005-gzippath.patch<br>
> +27ac9259ade93a47f71779d396c6a096  006-mbrtowc_empty.patch<br>
> +384b011461b8aef679a884051dc25015  007-warn-unreached.patch<br>
><br>
> Added: csw/mgar/pkg/logrotate/trunk/files/001-makefu.patch<br>
> ===================================================================<br>
> --- csw/mgar/pkg/logrotate/trunk/files/001-makefu.patch                         (rev 0)<br>
> +++ csw/mgar/pkg/logrotate/trunk/files/001-makefu.patch 2011-07-21 23:48:37 UTC (rev 15181)<br>
> @@ -0,0 +1,40 @@<br>
> +--- logrotate-3.8.0/Makefile   2011-06-21 08:12:03.000000000 +0000<br>
> ++++ logrotate-3.8.0-solfix/Makefile    2011-06-27 01:08:10.876632251 +0000<br>
> +@@ -41,16 +41,14 @@<br>
> +<br>
> + # Solaris using gcc</p>
<p>If you haven't yet, try to push these additions upstream.</p>
<p>> + ifeq ($(OS_NAME),SunOS)<br>
> +-    CFLAGS = -I/opt/baw/include -D_GNU_SOURCE -D$(OS_NAME) -DVERSION=\"$(VERSION)\" $(RPM_OPT_FLAGS) $(LFS)<br>
> ++    CFLAGS = -D_GNU_SOURCE -D$(OS_NAME) -DVERSION=\"$(VERSION)\" $(RPM_OPT_FLAGS) $(LFS)<br>
> +     CC ?= gcc<br>
> +     CPP = $(CC) -E -M<br>
> +     INSTALL = /usr/ucb/install<br>
> +     ifeq ($(CC),cc)<br>
> +         CPP = cc -xM<br>
> +     endif<br>
> +-      ifeq ($(BASEDIR),)<br>
> +-      BASEDIR = /usr/local<br>
> +-    endif<br>
> ++    BASEDIR ?= /usr/local<br>
> + endif<br>
> +<br>
> + # Red Hat Linux<br>
> +@@ -83,7 +81,7 @@<br>
> + endif<br>
> +<br>
> + BINDIR = $(BASEDIR)/sbin<br>
> +-MANDIR = $(BASEDIR)/man<br>
> ++MANDIR ?= $(BASEDIR)/man<br>
> +<br>
> + #--------------------------------------------------------------------------<br>
> +<br>
> +@@ -95,6 +93,9 @@<br>
> + LDFLAGS = -g<br>
> + endif<br>
> +<br>
> ++LDFLAGS += $(EXTRA_LDFLAGS) $(EXTRA_LIBS)<br>
> ++CFLAGS  += $(EXTRA_CPPFLAGS) $(EXTRA_CFLAGS)<br>
> ++<br>
> + ifeq (.depend,$(wildcard .depend))<br>
> + TARGET=$(PROG)<br>
> + else<br>
><br>
> Added: csw/mgar/pkg/logrotate/trunk/files/002-strndup.patch<br>
> ===================================================================<br>
> --- csw/mgar/pkg/logrotate/trunk/files/002-strndup.patch                                (rev 0)<br>
> +++ csw/mgar/pkg/logrotate/trunk/files/002-strndup.patch        2011-07-21 23:48:37 UTC (rev 15181)<br>
> @@ -0,0 +1,32 @@<br>
> +--- logrotate-3.8.0/config.c   Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/config.c    Sun Jun 26 22:54:39 2011<br>
> +@@ -74,6 +74,29 @@<br>
> +<br>
> + #endif<br>
> +<br>
> ++#if !defined(strndup)<br>
> ++char *strndup(const char *s, size_t n)<br>
> ++{<br>
> ++      size_t nAvail;<br>
> ++      char *p;<br>
> ++<br>
> ++      if(!s)<br>
> ++              return NULL;<br>
> ++<br>
> ++      /* min() */<br>
> ++      nAvail = strlen(s) + 1;<br>
> ++      if ( (n + 1) < nAvail)<br>
> ++              nAvail = n + 1;<br>
> ++<br>
> ++      p = malloc(nAvail);<br>
> ++      if (!p)<br>
> ++              return NULL;<br>
> ++      memcpy(p, s, nAvail);<br>
> ++      p[nAvail - 1] = 0;<br>
> ++      return p;<br>
> ++}<br>
> ++#endif<br>
> ++<br>
> + enum {<br>
> +       STATE_DEFAULT = 2,<br>
> +       STATE_SKIP_LINE = 4,<br>
><br>
> Added: csw/mgar/pkg/logrotate/trunk/files/003-test.patch<br>
> ===================================================================<br>
> --- csw/mgar/pkg/logrotate/trunk/files/003-test.patch                           (rev 0)<br>
> +++ csw/mgar/pkg/logrotate/trunk/files/003-test.patch   2011-07-21 23:48:37 UTC (rev 15181)<br>
> @@ -0,0 +1,117 @@<br>
> +diff -ur logrotate-3.8.0/test/test logrotate-3.8.0-solfix/test/test<br>
> +--- logrotate-3.8.0/test/test   Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/test/test    Sun Jun 26 23:08:30 2011<br>
> +@@ -17,7 +17,7 @@<br>
> +     input=test-config.$<a href="http://1.in">1.in</a><br>
> +     output=test-config.$1<br>
> +     sed "s,&DIR&,$PWD,g" < $input > $output<br>
> +-    config_crc=$(md5sum $output)<br>
> ++    config_crc=$(gmd5sum $output)<br>
> + }<br>
> +<br>
> + createlog() {<br>
> +@@ -118,7 +118,7 @@<br>
> +            echo expected: \'$expected\'<br>
> +            exit 2<br>
> +        fi<br>
> +-       echo "$config_crc" | md5sum -c - 2>&1 > /dev/null<br>
> ++       echo "$config_crc" | gmd5sum -c - 2>&1 > /dev/null<br>
> +        if [ $? != 0 ]; then<br>
> +                echo "config file $output has been altered: MD5 sum mismatch"<br>
> +                exit 3<br>
> +diff -ur logrotate-3.8.0/test/<a href="http://test-config.11.in">test-config.11.in</a> logrotate-3.8.0-solfix/test/<a href="http://test-config.11.in">test-config.11.in</a><br>
> +--- logrotate-3.8.0/test/<a href="http://test-config.11.in">test-config.11.in</a>      Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/test/<a href="http://test-config.11.in">test-config.11.in</a>       Sun Jun 26 23:02:28 2011<br>
> +@@ -11,7 +11,7 @@<br>
> +<br>
> +     postrotate<br>
> +        touch scriptout<br>
> +-       echo $(cat scriptout) foo > foo<br>
> ++       echo `cat scriptout` foo > foo<br>
> +        mv foo scriptout<br>
> +     endscript<br>
> + }<br>
> +diff -ur logrotate-3.8.0/test/<a href="http://test-config.3.in">test-config.3.in</a> logrotate-3.8.0-solfix/test/<a href="http://test-config.3.in">test-config.3.in</a><br>
> +--- logrotate-3.8.0/test/<a href="http://test-config.3.in">test-config.3.in</a>       Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/test/<a href="http://test-config.3.in">test-config.3.in</a>        Sun Jun 26 23:03:29 2011<br>
> +@@ -8,7 +8,7 @@<br>
> +<br>
> +     postrotate<br>
> +        touch scriptout<br>
> +-       echo $(cat scriptout) foo > foo<br>
> ++       echo `cat scriptout` foo > foo<br>
> +        mv foo scriptout<br>
> +     endscript<br>
> + }<br>
> +diff -ur logrotate-3.8.0/test/<a href="http://test-config.4.in">test-config.4.in</a> logrotate-3.8.0-solfix/test/<a href="http://test-config.4.in">test-config.4.in</a><br>
> +--- logrotate-3.8.0/test/<a href="http://test-config.4.in">test-config.4.in</a>       Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/test/<a href="http://test-config.4.in">test-config.4.in</a>        Sun Jun 26 23:03:39 2011<br>
> +@@ -9,7 +9,7 @@<br>
> +<br>
> +     postrotate<br>
> +        touch scriptout<br>
> +-       echo $(cat scriptout) foo > foo<br>
> ++       echo `cat scriptout` foo > foo<br>
> +        mv foo scriptout<br>
> +     endscript<br>
> + }<br>
> +diff -ur logrotate-3.8.0/test/<a href="http://test-config.5.in">test-config.5.in</a> logrotate-3.8.0-solfix/test/<a href="http://test-config.5.in">test-config.5.in</a><br>
> +--- logrotate-3.8.0/test/<a href="http://test-config.5.in">test-config.5.in</a>       Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/test/<a href="http://test-config.5.in">test-config.5.in</a>        Sun Jun 26 23:03:51 2011<br>
> +@@ -9,7 +9,7 @@<br>
> +<br>
> +     postrotate<br>
> +        touch scriptout<br>
> +-       echo $(cat scriptout) foo > foo<br>
> ++       echo `cat scriptout` foo > foo<br>
> +        mv foo scriptout<br>
> +     endscript<br>
> + }<br>
> +diff -ur logrotate-3.8.0/test/<a href="http://test-config.6.in">test-config.6.in</a> logrotate-3.8.0-solfix/test/<a href="http://test-config.6.in">test-config.6.in</a><br>
> +--- logrotate-3.8.0/test/<a href="http://test-config.6.in">test-config.6.in</a>       Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/test/<a href="http://test-config.6.in">test-config.6.in</a>        Sun Jun 26 23:04:09 2011<br>
> +@@ -10,7 +10,7 @@<br>
> +<br>
> +     postrotate<br>
> +        touch scriptout<br>
> +-       echo $(cat scriptout) foo > foo<br>
> ++       echo `cat scriptout` foo > foo<br>
> +        mv foo scriptout<br>
> +     endscript<br>
> + }<br>
> +diff -ur logrotate-3.8.0/test/<a href="http://test-config.7.in">test-config.7.in</a> logrotate-3.8.0-solfix/test/<a href="http://test-config.7.in">test-config.7.in</a><br>
> +--- logrotate-3.8.0/test/<a href="http://test-config.7.in">test-config.7.in</a>       Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/test/<a href="http://test-config.7.in">test-config.7.in</a>        Sun Jun 26 23:04:23 2011<br>
> +@@ -10,7 +10,7 @@<br>
> +<br>
> +     postrotate<br>
> +        touch scriptout<br>
> +-       echo $(cat scriptout) foo > foo<br>
> ++       echo `cat scriptout` foo > foo<br>
> +        mv foo scriptout<br>
> +     endscript<br>
> + }<br>
> +diff -ur logrotate-3.8.0/test/<a href="http://test-config.8.in">test-config.8.in</a> logrotate-3.8.0-solfix/test/<a href="http://test-config.8.in">test-config.8.in</a><br>
> +--- logrotate-3.8.0/test/<a href="http://test-config.8.in">test-config.8.in</a>       Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/test/<a href="http://test-config.8.in">test-config.8.in</a>        Sun Jun 26 23:04:36 2011<br>
> +@@ -11,7 +11,7 @@<br>
> +<br>
> +     postrotate<br>
> +        touch scriptout<br>
> +-       echo $(cat scriptout) foo > foo<br>
> ++       echo `cat scriptout` foo > foo<br>
> +        mv foo scriptout<br>
> +     endscript<br>
> + }<br>
> +diff -ur logrotate-3.8.0/test/<a href="http://test-config.9.in">test-config.9.in</a> logrotate-3.8.0-solfix/test/<a href="http://test-config.9.in">test-config.9.in</a><br>
> +--- logrotate-3.8.0/test/<a href="http://test-config.9.in">test-config.9.in</a>       Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/test/<a href="http://test-config.9.in">test-config.9.in</a>        Sun Jun 26 23:04:47 2011<br>
> +@@ -11,7 +11,7 @@<br>
> +<br>
> +     postrotate<br>
> +        touch scriptout<br>
> +-       echo $(cat scriptout) foo > foo<br>
> ++       echo `cat scriptout` foo > foo<br>
> +        mv foo scriptout<br>
> +     endscript<br>
> + }<br>
><br>
> Added: csw/mgar/pkg/logrotate/trunk/files/004-alloca.patch<br>
> ===================================================================<br>
> --- csw/mgar/pkg/logrotate/trunk/files/004-alloca.patch                         (rev 0)<br>
> +++ csw/mgar/pkg/logrotate/trunk/files/004-alloca.patch 2011-07-21 23:48:37 UTC (rev 15181)<br>
> @@ -0,0 +1,18 @@<br>
> +--- logrotate-3.8.0/config.c   Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/config.c    Sun Jun 26 23:54:28 2011<br>
> +@@ -1,5 +1,5 @@<br>
> + #include <sys/queue.h><br>
> +-#ifdef _ALLOCA_H<br>
> ++#ifndef _ALLOCA_H<br>
> + #include <alloca.h><br>
> + #else<br>
> + #include <limits.h><br>
> +--- logrotate-3.8.0/logrotate.c        Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/logrotate.c Sun Jun 26 23:35:19 2011<br>
> +@@ -1,5 +1,5 @@<br>
> + #include <sys/queue.h><br>
> +-#ifdef _ALLOCA_H<br>
> ++#ifndef _ALLOCA_H<br>
> + #include <alloca.h><br>
> + #else<br>
> + #include <limits.h><br>
><br>
> Added: csw/mgar/pkg/logrotate/trunk/files/005-gzippath.patch<br>
> ===================================================================<br>
> --- csw/mgar/pkg/logrotate/trunk/files/005-gzippath.patch                               (rev 0)<br>
> +++ csw/mgar/pkg/logrotate/trunk/files/005-gzippath.patch       2011-07-21 23:48:37 UTC (rev 15181)<br>
> @@ -0,0 +1,16 @@<br>
> +diff -ur logrotate-3.8.0/config.h logrotate-3.8.0-sol10fix/config.h<br>
> +--- logrotate-3.8.0/config.h   2011-06-21 10:12:02.000000000 +0200<br>
> ++++ logrotate-3.8.0-sol10fix/config.h  2011-07-22 01:37:57.603640585 +0200<br>
> +@@ -13,9 +13,9 @@<br>
> +<br>
> + #ifdef SunOS<br>
> + #define DEFAULT_MAIL_COMMAND "/usr/bin/mailx"<br>
> +-#define COMPRESS_COMMAND "/usr/local/bin/gzip"<br>
> +-#define UNCOMPRESS_COMMAND "/usr/local/bin/gunzip"<br>
> +-#define STATEFILE "/var/log/logrotate.status"<br>
> ++#define COMPRESS_COMMAND "/opt/csw/bin/gzip"<br>
> ++#define UNCOMPRESS_COMMAND "/opt/csw/bin/gunzip"<br>
> ++#define STATEFILE "/var/opt/csw/log/logrotate.status"<br>
> + #endif<br>
> +<br>
> + #ifdef __NetBSD__<br>
><br>
> Added: csw/mgar/pkg/logrotate/trunk/files/006-mbrtowc_empty.patch<br>
> ===================================================================<br>
> --- csw/mgar/pkg/logrotate/trunk/files/006-mbrtowc_empty.patch                          (rev 0)<br>
> +++ csw/mgar/pkg/logrotate/trunk/files/006-mbrtowc_empty.patch  2011-07-21 23:48:37 UTC (rev 15181)<br>
> @@ -0,0 +1,11 @@<br>
> +--- logrotate-3.8.0/config.c   Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/config.c    Mon Jun 27 20:57:53 2011<br>
> +@@ -166,7 +166,7 @@<br>
> +<br>
> +       chptr = start;<br>
> +<br>
> +-      while( (len = mbrtowc(&pwc, chptr, strlen(chptr), NULL)) != 0 ) {<br>
> ++        while( (len = mbrtowc(&pwc, chptr, strlen(chptr), NULL)) != 0 && strlen(chptr) != 0) {<br>
> +               if( len == (size_t)(-1) || len == (size_t)(-2) || !iswprint(pwc) || iswblank(pwc) ) {<br>
> +                   message(MESS_ERROR, "%s:%d bad %s path %s\n",<br>
> +                           configFile, lineNum, key, start);<br>
><br>
> Added: csw/mgar/pkg/logrotate/trunk/files/007-warn-unreached.patch<br>
> ===================================================================<br>
> --- csw/mgar/pkg/logrotate/trunk/files/007-warn-unreached.patch                         (rev 0)<br>
> +++ csw/mgar/pkg/logrotate/trunk/files/007-warn-unreached.patch 2011-07-21 23:48:37 UTC (rev 15181)<br>
> @@ -0,0 +1,35 @@<br>
> +--- logrotate-3.8.0/config.c    Tue Jun 21 08:12:02 2011<br>
> ++++ logrotate-3.8.0-solfix/config.c     Mon Jun 27 20:29:25 2011<br>
> +@@ -1133,5 +1133,5 @@<br>
> +                                               }<br>
> +                                       }<br>
> +-                                      else continue;<br>
> ++<br>
> + #if 0<br>
> +                                       if (stat(newlog->oldDir, &sb)) {<br>
> +@@ -1178,5 +1178,4 @@<br>
> +                                               }<br>
> +                                       }<br>
> +-                                      else continue;<br>
> +<br>
> +                                       if (access(newlog->compress_prog, X_OK)) {<br>
> +@@ -1209,5 +1208,4 @@<br>
> +                                               }<br>
> +                                       }<br>
> +-                                      else continue;<br>
> +<br>
> +                                       if (access(newlog->uncompress_prog, X_OK)) {<br>
> +@@ -1245,5 +1243,5 @@<br>
> +                                                       goto error;<br>
> +                                               }<br>
> +-                                      } else continue;<br>
> ++                                      }<br>
> +<br>
> +                                       if (poptParseArgvString(options,<br>
> +@@ -1278,5 +1276,5 @@<br>
> +                                                       goto error;<br>
> +                                               }<br>
> +-                                      } else continue;<br>
> ++                                      }<br>
> +<br>
> +                                       message(MESS_DEBUG, "compress_ext is now %s\n",<br>
><br>
></p>
<p>It is a large chunk of work, very cool! Let's see if we can push the changes upstream.</p>
<p>Maciej</p>